diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..31a6da2
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,6 @@
+# JetBrains IDE
+.idea/
+*.iml
+
+# Bazel
+bazel-*
diff --git a/BUILD.bazel b/BUILD.bazel
new file mode 100644
index 0000000..08390af
--- /dev/null
+++ b/BUILD.bazel
@@ -0,0 +1,105 @@
+load("@io_bazel_rules_go//go:def.bzl", "go_library")
+
+cc_library(
+ name = "vulkan_headers",
+ hdrs = glob(["vulkan/*"]),
+)
+
+go_library(
+ name = "vulkan",
+ srcs = [
+ "cgo_helpers.c",
+ "cgo_helpers.go",
+ "cgo_helpers.h",
+ "const.go",
+ "doc.go",
+ "errors.go",
+ "init.go",
+ "types.go",
+ "util.go",
+ "vk_bridge.c",
+ "vk_bridge.h",
+ "vk_debug_android.go",
+ "vk_default_loader.c",
+ "vk_default_loader.h",
+ "vk_null32.go",
+ "vk_null64.go",
+ "vk_wrapper.h",
+ "vk_wrapper_android.c",
+ "vk_wrapper_desktop.c",
+ "vk_wrapper_ios.m",
+ "vulkan.go",
+ "vulkan_android.go",
+ "vulkan_darwin.go",
+ "vulkan_freebsd.go",
+ "vulkan_ios.go",
+ "vulkan_linux.go",
+ ],
+ cdeps = [":vulkan_headers"] + select({
+ "@io_bazel_rules_go//go/platform:darwin": [
+ "@com_github_goki_vulkan_mac_deps//:vulkan_mac_deps",
+ ],
+ "//conditions:default": [],
+ }),
+ cgo = True,
+ clinkopts = select({
+ "@io_bazel_rules_go//go/platform:android": [
+ "-Wl,--no-warn-mismatch",
+ "-lm_hard",
+ "-llog",
+ ],
+ "@io_bazel_rules_go//go/platform:darwin": [
+ "-F/Library/Frameworks",
+ "-framework Cocoa",
+ "-framework IOKit",
+ "-framework IOSurface",
+ "-framework QuartzCore",
+ "-framework Metal",
+ "-lc++",
+ ],
+ "@io_bazel_rules_go//go/platform:freebsd": [
+ "-L/usr/local/lib",
+ "-ldl",
+ "-lvulkan",
+ ],
+ "@io_bazel_rules_go//go/platform:linux": [
+ "-ldl",
+ ],
+ "//conditions:default": [],
+ }) + select({
+ "@io_bazel_rules_go//go/platform:ios_arm64": [
+ "-framework Foundation",
+ "-framework Metal",
+ "-framework QuartzCore",
+ "-framework MoltenVK",
+ "-lc++",
+ ],
+ "//conditions:default": [],
+ }),
+ copts = [
+ "-I.",
+ "-DVK_NO_PROTOTYPES",
+ ] + select({
+ "@io_bazel_rules_go//go/platform:android": [
+ "-DVK_USE_PLATFORM_ANDROID_KHR",
+ "-D__ARM_ARCH_7A__",
+ "-D_NDK_MATH_NO_SOFTFP=1",
+ "-mfpu=vfp",
+ "-mfloat-abi=hard",
+ "-march=armv7-a",
+ ],
+ "@io_bazel_rules_go//go/platform:darwin": [
+ "-DVK_USE_PLATFORM_MACOS_MVK",
+ "-Wno-deprecated-declarations",
+ ],
+ "//conditions:default": [],
+ }) + select({
+ "@io_bazel_rules_go//go/platform:ios_arm64": [
+ "-x objective-c",
+ "-DVK_USE_PLATFORM_IOS_MVK",
+ ],
+ "//conditions:default": [],
+ }),
+ importpath = "github.com/goki/vulkan",
+ visibility = ["//visibility:public"],
+)
diff --git a/Makefile b/Makefile
index cfb9ff4..df6b286 100644
--- a/Makefile
+++ b/Makefile
@@ -8,3 +8,30 @@ clean:
test:
go build
+
+# NOTE: MUST update version number here prior to running 'make release'
+VERS=v1.0.6
+PACKAGE=vulkan
+GIT_COMMIT=`git rev-parse --short HEAD`
+VERS_DATE=`date -u +%Y-%m-%d\ %H:%M`
+VERS_FILE=version.go
+
+release:
+ /bin/rm -f $(VERS_FILE)
+ @echo "// WARNING: auto-generated by Makefile release target -- run 'make release' to update" > $(VERS_FILE)
+ @echo "" >> $(VERS_FILE)
+ @echo "package $(PACKAGE)" >> $(VERS_FILE)
+ @echo "" >> $(VERS_FILE)
+ @echo "const (" >> $(VERS_FILE)
+ @echo " GoVersion = \"$(VERS)\"" >> $(VERS_FILE)
+ @echo " GitCommit = \"$(GIT_COMMIT)\" // the commit JUST BEFORE the release" >> $(VERS_FILE)
+ @echo " VersionDate = \"$(VERS_DATE)\" // UTC" >> $(VERS_FILE)
+ @echo ")" >> $(VERS_FILE)
+ @echo "" >> $(VERS_FILE)
+ goimports -w $(VERS_FILE)
+ /bin/cat $(VERS_FILE)
+ git commit -am "$(VERS) release -- $(VERS_FILE) updated"
+ git tag -a $(VERS) -m "$(VERS) release"
+ git push
+ git push origin --tags
+
diff --git a/README.md b/README.md
index cbc4452..0722ee9 100644
--- a/README.md
+++ b/README.md
@@ -1,69 +1,22 @@
-# Golang Bindings for Vulkan API ![version-1.1.88](https://img.shields.io/badge/version-1.1.88-lightgrey.svg) [![GoDoc](https://godoc.org/github.com/vulkan-go/vulkan?status.svg)](https://godoc.org/github.com/vulkan-go/vulkan)
+# Golang Bindings for Vulkan API ![version-1.3.239](https://img.shields.io/badge/version-1.3.239-lightgrey.svg) [![GoDoc](https://pkg.go.dev/badge/github.com/goki/vulkan.svg)](https://pkg.go.dev/github.com/goki/vulkan)
-Package [vulkan](https://github.com/vulkan-go/vulkan) provides Go bindings for [Vulkan](https://www.khronos.org/vulkan/) — a low-overhead, cross-platform 3D graphics and compute API. Updated October 13, 2018 — Vulkan 1.1.88.
+Package [vulkan](https://github.com/goki/vulkan) provides Go bindings for [Vulkan](https://www.khronos.org/vulkan/) — a low-overhead, cross-platform 3D graphics and compute API. Updated February 9, 2023 — Vulkan 1.3.239.
## Introduction
-Vulkan API is the result of 18 months in an intense collaboration between leading hardware, game engine and platform vendors, built on significant contributions from multiple Khronos members. Vulkan is designed for portability across multiple platforms with desktop and mobile GPU architectures.
+The [Vulkan API](https://www.vulkan.org) is a cross-platform industry standard enabling developers to target a wide range of devices with the same graphics API.
-Read the brief: https://developer.nvidia.com/engaging-voyage-vulkan
+This Go binding allows one to use Vulkan API directly within Go code, avoiding adding lots of C/C++ in the projects. The original version is at https://github.com/vulkan-go/vulkan (still on 1.1.88 from 2018) and a fork at https://github.com/goki/vulkan is being more actively maintained at this point.
-The binding allows one to use Vulkan API directly within Go code, avoiding
-adding lots of C/C++ in the projects, also can be used to study Vulkan without
-diving too deep into C/C++ language semantics. For me it's just a matter of
-taste, writing Go code is simply more pleasant experience.
+See [UPDATING](UPDATING.md) for extensive notes on how to update to newer vulkan versions as they are released.
-## Project history timeline
+## Examples and usage
-* **2016-02-16** Vulkan API publicly released.
+The original author, `xlab`, has examples at: https://github.com/vulkan-go/demos and the beginnings of a toolkit at: https://github.com/vulkan-go/asche.
-* **2016-03-06** [vulkan-go](https://github.com/vulkan-go) initial commit and first binding.
-
-* **2016-05-14** Finally received my NVIDIA Shield Tablet K1 (DHL lost the first parcel), I decided to use tablet because it was the first device supporting Vulkan out of the box. And that was a really good implementation, much wow very reference.
-
-* **2016-05-17** Created [android-go](https://github.com/xlab/android-go) project in order to run Vulkan on the android platform.
-
-* **2016-05-23** First android-go + vulkan program runs on Tablet K1 ([screenshot](http://dl.kc.vc/vulkan/screens/first-android-vulkaninfo.png)).
-
-* **2016-05-24** Improved VulkanInfo example runs on Tablet K1 ([screenshot](http://dl.kc.vc/vulkan/screens/improved-android-vulkaninfo.png)).
-
-* **2016-05-28** [android-go](https://github.com/xlab/android-go) released into public ([Reddit post](https://www.reddit.com/r/golang/comments/4lgttr/full_golang_bindings_for_android_ndk_api_with/)) with plenty of examples including GLES/EGL.
-
-* **2016-08-13** Finished an app that should draw triangle (ported from tri.c from LunarG demos). Draws nothing instead.
-
-* **2016-08-13** First unsuccessful attempt to write a spinning cube example. More than 25 hours spent, 2.5k lines of C code rewritten into 900 lines of Go code. The reference code was found in some very old LunarG demo, it seems I should've used the latest one.. At least got the validation layers working and found some bugs in the triangle app code.
-
-* **2016-08-16** First Vulkan API program in Go that draws triangle runs on Tablet K1 ([photo](http://dl.kc.vc/vulkan/screens/first-android-vulkandraw.jpg)), validaton layers work perfectly too.
-
-* **2016-08-16** Public announce of this project ([Reddit post](https://www.reddit.com/r/golang/comments/4y2dj4/golang_bindings_for_vulkan_api_with_demos/)). Reaction was "Meh".
-
-* **2016-11-01** [MoltenVK](https://moltengl.com/moltenvk/) driver merged into GLFW (see [GLFW issue #870](https://github.com/glfw/glfw/issues/870)) and this made possible to use Vulkan API under Apple OS X or macOS.
-
-* **2016-11-06** VulkanInfo and VulkanDraw both ported to desktop OS X and use GLFW to initialize Vulkan ([screen #1](http://dl.kc.vc/vulkan/screens/first-moltenvk-vulkaninfo.png) and [screen #2](http://dl.kc.vc/vulkan/screens/first-moltenvk-vulkandraw.png))
-
-* **2016-11-07** VulkanInfo and VulkanDraw run fine on NVIDIA GTX980 initialized through GLFW under Windows 10 ([screen #1](http://dl.kc.vc/vulkan/screens/first-windows-vulkaninfo.png) and [screen #2](http://dl.kc.vc/vulkan/screens/first-windows-vulkandraw.png)).
-
-* **2016-11-08** VulkanInfo runs in headless (a.k.a computing) mode in Amazon AWS cloud on P2 Instance equipped Tesla K80 ([screenshot](http://dl.kc.vc/vulkan/screens/first-amazon-vulkaninfo.png)).
-
-* **2016-11-09** [ios-go](https://github.com/xlab/ios-go) project started, it's very easy to run Golang apps on iOS that use custom surface, for my case it was Metal surface.
-
-* **2016-11-11** VulkanInfo runs fine on my iPhone under iOS ([screenshot](http://dl.kc.vc/vulkan/screens/first-ios-vulkaninfo.png)), and so does VulkanDraw ([photo](http://dl.kc.vc/vulkan/screens/first-ios-vulkandraw.jpg) also [GPU report from XCode](http://dl.kc.vc/vulkan/screens/gpureport-ios-vulkandraw.png))
-
-* **2016-11-13** Second unsuccessful attempt to write spinning cube. 25 hours spent. The approach was highly inspired by [Mali Vulkan SDK for Android 1.0](http://malideveloper.arm.com/downloads/deved/tutorial/SDK/Vulkan/1.0/index.html) and I created initial version of [vulkan-go/asche](https://github.com/vulkan-go/asche) — a higher level framework to simplify Vulkan initialization for new apps.
-
-* **2016-11-29** Generic Linux support added in using GLFW ([Issue #2](https://github.com/vulkan-go/vulkan/issues/2)) thanks @jfreymuth.
-
-* **2017-05-06** Third, successful attempt to write spining cube example. 16 hours spent, 4K LOC of C code rewritten from [cube.c](https://github.com/LunarG/VulkanSamples/blob/master/demos/cube.c) of LunarG demos. The whole process has been screencasted, maybe I will release it one day.
-
-* **2017-05-06** [vulkan-go/asche](https://github.com/vulkan-go/asche) complete.
-
-* **2018-10-13** Updated to Vulkan 1.1.88 spec.
-
-![vulkan cube golang](http://dl.kc.vc/vulkan/screens/cube.gif)
-
-See all demos in [vulkan-go/demos](https://github.com/vulkan-go/demos).
+The updated version is being used extensively in the [goki](https://github.com/goki) framework, powering the [GoGi](https://github.com/goki/gi) 2D and 3D GUI framework, based on the [VGPU](https://github.com/goki/vgpu) toolkit that manages the considerable complexity of dealing with Vulkan. VGPU is also used as a GPU compute engine framework in the emergent neural network modeling framework [axon](https://github.com/emer/axon).
## How to use
@@ -71,7 +24,7 @@ Usage of this project is straightforward due to the stateless nature of Vulkan A
Just import the package like this:
```
-import vk "github.com/vulkan-go/vulkan"
+import vk "github.com/goki/vulkan"
```
Set the GetProcAddress pointer (used to look up Vulkan functions) using SetGetInstanceProcAddr or SetDefaultGetInstanceProcAddr. After that you can call Init to initialise the library. For example:
@@ -105,6 +58,138 @@ Instead vulkan-go expects the dylibs to be present in the library search path.
Follow the [build instructions](https://github.com/KhronosGroup/MoltenVK#building), but instead of `make install` manually copy `./Package/Latest/MoltenVK/dylib/macOS/libMoltenVK.dylib` to `/usr/local/lib`
+**IMPORTANT:** be sure to remove any existing `libMoltenVK.dylib` file *before* copying a new one, otherwise you'll have to reboot your computer due to the way the gatekeeper mechanism works!
+
+## MoltenVK on iOS
+
+grab MoltenVK asset from github actions, copy to suitable directory:
+
+```
+-L/Users/oreilly/dev/ios/MoltenVK/MoltenVK/dylib/iOS/` and `-lMoltenVK ` in `vulkan_ios.go`
+
+$ cp libMoltenVK.dylib myapp.app`
+$ lipo -create libMoltenVK.dylib -output MoltenVK`
+$ mkdir MoltenVK.framework
+$ mv MoltenVK MoltenVK.framework/
+$ install_name_tool -change @rpath/libMoltenVK.dylib @executable_path/MoltenVK.framework/MoltenVK main
+$ codesign --force --deep --verbose=2 --sign "Randall O'Reilly" widgets.app
+$ codesign -vvvv ../widgets.app
+```
+
+Info.plist for `MoltenVK.framework`
+
+```
+
+
+
+
+ BuildMachineOSBuild
+ 22F82
+ CFBundleDevelopmentRegion
+ en
+ CFBundleExecutable
+ MoltenVK
+ CFBundleIdentifier
+ com.example.test.MoltenVK
+ CFBundleInfoDictionaryVersion
+ 6.0
+ CFBundleName
+ MoltenVK
+ CFBundlePackageType
+ FMWK
+ CFBundleShortVersionString
+ 1.0
+ CFBundleSupportedPlatforms
+
+ iPhoneOS
+
+ CFBundleVersion
+ 1
+
+
+```
+
+main Info.plist for reference:
+
+```
+
+
+
+
+ BuildMachineOSBuild
+ 22F82
+ CFBundleDevelopmentRegion
+ en
+ CFBundleExecutable
+ main
+ CFBundleIdentifier
+ com.example.test.widgets
+ CFBundleInfoDictionaryVersion
+ 6.0
+ CFBundleName
+ Widgets
+ CFBundlePackageType
+ APPL
+ CFBundleShortVersionString
+ 1.0
+ CFBundleSignature
+ ????
+ CFBundleSupportedPlatforms
+
+ iPhoneOS
+
+ CFBundleVersion
+ 1
+ DTCompiler
+ com.apple.compilers.llvm.clang.1_0
+ DTPlatformBuild
+ 20E238
+ DTPlatformName
+ iphoneos
+ DTPlatformVersion
+ 16.4
+ DTSDKBuild
+ 20E238
+ DTSDKName
+ iphoneos16.4
+ DTXcode
+ 1431
+ DTXcodeBuild
+ 14E300c
+ LSRequiresIPhoneOS
+
+ MinimumOSVersion
+ 16.4
+ UIDeviceFamily
+
+ 1
+ 2
+
+ UILaunchStoryboardName
+ LaunchScreen
+ UIRequiredDeviceCapabilities
+
+ arm64
+
+ UISupportedInterfaceOrientations
+
+ UIInterfaceOrientationPortrait
+ UIInterfaceOrientationLandscapeLeft
+ UIInterfaceOrientationLandscapeRight
+
+ UISupportedInterfaceOrientations~ipad
+
+ UIInterfaceOrientationPortrait
+ UIInterfaceOrientationPortraitUpsideDown
+ UIInterfaceOrientationLandscapeLeft
+ UIInterfaceOrientationLandscapeRight
+
+
+
+```
+
+
+
## Validation Layers
A good brief of the current state of Vulkan validation layers: [Explore the Vulkan Loader and Validation Layers](https://lunarg.com/wp-content/uploads/2016/07/lunarg-birds-feather-session-siggraph-july-26-2016.pdf) (PDF).
@@ -118,7 +203,7 @@ $ ./android-generate.sh
$ ndk-build
```
-After that you'd copy the objects to `android/jni/libs` in your project and activate the `ValidationLayers.mk` in your `Android.mk` so when building APK they will be copied alongside with your shared library. It just works then:
+After that you'd copy the files to `android/jni/libs` in your project and activate the `ValidationLayers.mk` in your `Android.mk` so when building APK they will be copied alongside with your shared library. It just works then:
```
[INFO] Instance extensions: [VK_KHR_surface VK_KHR_android_surface]
@@ -138,8 +223,10 @@ After that you'd copy the objects to `android/jni/libs` in your project and acti
* [vulkanGo.com](https://vulkanGo.com)
* [SaschaWillems Demos (C++)](https://github.com/SaschaWillems/Vulkan)
-* [LunarG Vulkan Samples](https://github.com/LunarG/VulkanSamples)
+* [LunarG Vulkan Samples](https://github.com/LunarG/VulkanSamples) (archived)
+* [Vulkan Samples from Khronos Group](https://github.com/KhronosGroup/Vulkan-Samples)
* [Official list of Vulkan resources](https://www.khronos.org/vulkan/resources)
+* [API description](https://registry.khronos.org/vulkan/)
* [Vulkan API quick reference](https://www.khronos.org/registry/vulkan/specs/1.0/refguide/Vulkan-1.0-web.pdf)
## License
diff --git a/UPDATING.md b/UPDATING.md
new file mode 100644
index 0000000..4779c41
--- /dev/null
+++ b/UPDATING.md
@@ -0,0 +1,240 @@
+# Update from Feb 9, 2023:
+
+Just updated to the current 1.3.239.0 version of https://vulkan.lunarg.com/sdk/home and included the `vulkan_beta.h` file which includes the `PhysicalDevicePortabilitySubsetFeatures` struct that is needed to configure features on MoltenVK on the mac. Everything else more-or-less worked from the original conversion notes below. The .patch files have been updated.
+
+# Original conversion notes from May 11, 2022:
+
+Notes on updating to newer versions of Vulkan, this is from version 1.3.211.0 of https://vulkan.lunarg.com/sdk/home
+
+* Install [c-for-go](https://github.com/xlab/c-for-go) -- revert to the same version that was used to build the original `vulkan-go` from Oct 14, 2018 -- the current version as of 5/12/22 is apparently causing the crash from my first attempt.
+
+```Go
+$ git checkout d57f9ec2a5f5456377e535ad9d81bb9b9b2797d9
+```
+
+* On the Mac, I had to put the standard C includes in a convenient place for the c-for-go parser:
+
+```bash
+$ sudo su
+$ cd /usr/local
+$ mkdir stdinclude
+$ cp -av /Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk/System/Library/Frameworks/Kernel.framework/Versions/A/Headers/* stdinclude/
+```
+
+and replaced the type definitions in `stddef.h` with something that c-for-go could parse (see below).
+
+and then added `/usr/local/stdinclude` to the `vulkan.yml` include paths.
+
+I could not see how to get it to produce `uint` from any `C` types, so `size_t` is defined as `uint64` instead of `uint` as in the original. This means it won't work on a 32 bit system presumably -- it is a bit difficult to figure out exactly which uint64's need to be replaced, but someone could figure that out..
+
+* Copy .h files from new version of Vulkan into `vulkan` dir:
+
+```bash
+$ cp /usr/local/include/vulkan/*.h vulkan/
+```
+
+* Also copied updated v1.19 to `moltenVK/vk_mvk_moltenvk.h`
+
+* Apply patch shown below to `vulkan_core.h` to exclude a few things that didn't result in buildable `cgo_helpers.go` -- probably these could be fixed but easier to skip for now.
+
+* `make all` -- runs c-for-go
+
+* Fix the generated `const.go` file per patch below to fix a few things.
+
+```bash
+$ patch < const_go.patch
+```
+
+This builds on my mac but crashes after creating an instance, at this point:
+
+```Go
+ ret = vk.EnumeratePhysicalDevices(gp.Instance, &gpuCount, nil)
+```
+
+It is unclear if this is because moltenVK only supports version 1.1 of Vulkan? I tried setting the API version to 1.1 and that didn't work either.
+
+# vulkan_core.h patch
+
+```
+--- /usr/local/include/vulkan/vulkan_core.h 2022-05-05 01:00:38.000000000 -0700
++++ vulkan_core.h 2022-05-12 00:05:57.000000000 -0700
+@@ -9843,7 +9843,7 @@
+ uint32_t vertexStride);
+ #endif
+
+-
++/*
+ #define VK_NVX_binary_import 1
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkCuModuleNVX)
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkCuFunctionNVX)
+@@ -9913,7 +9913,7 @@
+ VkCommandBuffer commandBuffer,
+ const VkCuLaunchInfoNVX* pLaunchInfo);
+ #endif
+-
++*/
+
+ #define VK_NVX_image_view_handle 1
+ #define VK_NVX_IMAGE_VIEW_HANDLE_SPEC_VERSION 2
+@@ -11220,6 +11220,8 @@
+ const VkCoarseSampleOrderCustomNV* pCustomSampleOrders);
+ #endif
+
++// ray tracing not working on mac..
++#ifdef GO_INCLUDE_NV_ray_tracing
+
+ #define VK_NV_ray_tracing 1
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkAccelerationStructureNV)
+@@ -11589,6 +11591,7 @@
+ uint32_t shader);
+ #endif
+
++#endif // GO_INCLUDE_NV_ray_tracing
+
+ #define VK_NV_representative_fragment_test 1
+ #define VK_NV_REPRESENTATIVE_FRAGMENT_TEST_SPEC_VERSION 2
+@@ -13313,6 +13316,7 @@
+ const VkFragmentShadingRateCombinerOpKHR combinerOps[2]);
+ #endif
+
++#ifdef GO_INCLUDE_NV_ray_tracing
+
+ #define VK_NV_ray_tracing_motion_blur 1
+ #define VK_NV_RAY_TRACING_MOTION_BLUR_SPEC_VERSION 1
+@@ -13402,7 +13406,7 @@
+ VkBool32 rayTracingMotionBlurPipelineTraceRaysIndirect;
+ } VkPhysicalDeviceRayTracingMotionBlurFeaturesNV;
+
+-
++#endif // GO_INCLUDE_NV_ray_tracing
+
+ #define VK_EXT_ycbcr_2plane_444_formats 1
+ #define VK_EXT_YCBCR_2PLANE_444_FORMATS_SPEC_VERSION 1
+@@ -13984,6 +13988,7 @@
+ #define VK_GOOGLE_SURFACELESS_QUERY_SPEC_VERSION 1
+ #define VK_GOOGLE_SURFACELESS_QUERY_EXTENSION_NAME "VK_GOOGLE_surfaceless_query"
+
++#ifdef GO_INCLUDE_NV_ray_tracing
+
+ #define VK_KHR_acceleration_structure 1
+ VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkAccelerationStructureKHR)
+@@ -14429,3 +14434,6 @@
+ #endif
+
+ #endif
++
++#endif // GO_INCLUDE_NV_ray_tracing
++
+```
+
+# const.go patch
+
+```
+--- const.go 2022-05-12 01:22:31.000000000 -0700
++++ const_fixed.go 2022-05-12 01:22:24.000000000 -0700
+@@ -29,7 +29,7 @@
+ // AttachmentUnused as defined in vulkan/vulkan_core.h:124
+ AttachmentUnused = (^uint32(0))
+ // False as defined in vulkan/vulkan_core.h:125
+- False = uint32(0)
++ False = 0
+ // LodClampNone as defined in vulkan/vulkan_core.h:126
+ LodClampNone = 1000.0
+ // QueueFamilyIgnored as defined in vulkan/vulkan_core.h:127
+@@ -41,7 +41,7 @@
+ // SubpassExternal as defined in vulkan/vulkan_core.h:130
+ SubpassExternal = (^uint32(0))
+ // True as defined in vulkan/vulkan_core.h:131
+- True = uint32(1)
++ True = 1
+ // WholeSize as defined in vulkan/vulkan_core.h:132
+ WholeSize = (^uint64(0))
+ // MaxMemoryTypes as defined in vulkan/vulkan_core.h:133
+@@ -2221,7 +2221,7 @@
+
+ // PipelineCacheHeaderVersion enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCacheHeaderVersion.html
+ const (
+- PipelineCacheHeaderVersionOne PipelineCacheHeaderVersion = 1
++ PipelineCacheHeaderVersion1 PipelineCacheHeaderVersion = 1
+ PipelineCacheHeaderVersionMaxEnum PipelineCacheHeaderVersion = 2147483647
+ )
+
+```
+
+# stddef.h for mac
+
+```C
+/*===---- /Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk/System/Library/Frameworks/Kernel.framework/Versions/A/Headers/stddef.h/Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk/System/Library/Frameworks/Kernel.framework/Versions/A/Headers/stddef.h/Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk/System/Library/Frameworks/Kernel.framework/Versions/A/Headers/stddef.h/Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk/System/Library/Frameworks/Kernel.framework/Versions/A/Headers/stddef.h/Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk/System/Library/Frameworks/Kernel.framework/Versions/A/Headers/stddef.h/Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk/System/Library/Frameworks/Kernel.framework/Versions/A/Headers/stddef.h/Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk/System/Library/Frameworks/Kernel.framework/Versions/A/Headers/stddef.h/Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk/System/Library/Frameworks/Kernel.framework/Versions/A/Headers/stddef.h/Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk/System/Library/Frameworks/Kernel.framework/Versions/A/Headers/stddef.h/Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk/System/Library/Frameworks/Kernel.framework/Versions/A/Headers/stddef.hstddef.h - Basic type definitions --------------------------------===
+ *
+ * Copyright (c) 2008 Eli Friedman
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above /Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk/System/Library/Frameworks/Kernel.framework/Versions/A/Headers/stddef.h/Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk/System/Library/Frameworks/Kernel.framework/Versions/A/Headers/stddef.hcopy/Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk/System/Library/Frameworks/Kernel.framework/Versions/A/Headers/stddef.hright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ *
+ *===-----------------------------------------------------------------------===
+ */
+
+#ifndef __STDDEF_H
+#define __STDDEF_H
+
+#undef NULL
+#ifdef __cplusplus
+#if __cplusplus >= 201103L
+#define NULL nullptr
+#else
+#undef __null // VC++ hack.
+#define NULL __null
+#endif
+#elif defined(__has_feature) && __has_feature(bounds_attributes)
+#define NULL __unsafe_forge_single(void *, 0)
+#else
+#define NULL ((void*)0)
+#endif
+
+#ifndef _PTRDIFF_T
+#define _PTRDIFF_T
+typedef long long ptrdiff_t;
+#endif
+#ifndef _SIZE_T
+#define _SIZE_T
+typedef unsigned long long size_t;
+#endif
+#ifndef __cplusplus
+#ifndef _WCHAR_T
+#define _WCHAR_T
+typedef unsigned short wchar_t;
+#endif
+#endif
+
+#ifndef offsetof
+#define offsetof(t, d) __builtin_offsetof(t, d)
+#endif
+
+#endif /* __STDDEF_H */
+
+/* Some C libraries expect to see a wint_t here. Others (notably MinGW) will use
+__WINT_TYPE__ directly; accommodate both by requiring __need_wint_t */
+#if defined(__need_wint_t)
+#if !defined(_WINT_T)
+#define _WINT_T
+typedef __WINT_TYPE__ wint_t;
+#endif /* _WINT_T */
+#undef __need_wint_t
+#endif /* __need_wint_t */
+```
+
diff --git a/WORKSPACE.bazel b/WORKSPACE.bazel
new file mode 100644
index 0000000..0da6675
--- /dev/null
+++ b/WORKSPACE.bazel
@@ -0,0 +1,44 @@
+workspace(name = "com_github_goki_vulkan")
+
+load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
+
+http_archive(
+ name = "io_bazel_rules_go",
+ sha256 = "dd926a88a564a9246713a9c00b35315f54cbd46b31a26d5d8fb264c07045f05d",
+ urls = [
+ "https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.38.1/rules_go-v0.38.1.zip",
+ "https://github.com/bazelbuild/rules_go/releases/download/v0.38.1/rules_go-v0.38.1.zip",
+ ],
+)
+
+load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies")
+
+go_rules_dependencies()
+
+go_register_toolchains(version = "1.18.10")
+
+vulkan_mac_deps_version = "1.3.239.0"
+
+http_archive(
+ name = "com_github_goki_vulkan_mac_deps",
+ sha256 = "348bc84c0fc1f1e79fb28bcf83454faa2a84c4d4c2286225d4413830a3c0a29c",
+ strip_prefix = "vulkan_mac_deps-%s" % vulkan_mac_deps_version,
+ url = "https://github.com/goki/vulkan_mac_deps/archive/refs/tags/%s.tar.gz" % vulkan_mac_deps_version,
+)
+
+http_archive(
+ name = "bazel_skylib",
+ sha256 = "74d544d96f4a5bb630d465ca8bbcfe231e3594e5aae57e1edbf17a6eb3ca2506",
+ urls = [
+ "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/releases/download/1.3.0/bazel-skylib-1.3.0.tar.gz",
+ "https://github.com/bazelbuild/bazel-skylib/releases/download/1.3.0/bazel-skylib-1.3.0.tar.gz",
+ ],
+)
+
+load("@bazel_skylib//:workspace.bzl", "bazel_skylib_workspace")
+
+bazel_skylib_workspace()
+
+load("@bazel_skylib//lib:versions.bzl", "versions")
+
+versions.check(minimum_bazel_version = "6.0.0")
diff --git a/android/dummy.go b/android/dummy.go
new file mode 100644
index 0000000..9bdbdef
--- /dev/null
+++ b/android/dummy.go
@@ -0,0 +1,5 @@
+//go:build required
+// +build required
+
+// Package dummy prevents go tooling from stripping the c dependencies.
+package dummy
diff --git a/cgo_helpers.c b/cgo_helpers.c
index ee3da7a..1819924 100644
--- a/cgo_helpers.c
+++ b/cgo_helpers.c
@@ -1,12 +1,16 @@
// THE AUTOGENERATED LICENSE. ALL THE RIGHTS ARE RESERVED BY ROBOTS.
-// WARNING: This file has automatically been generated on Mon, 15 Oct 2018 01:04:16 +07.
+// WARNING: This file has automatically been generated on Fri, 10 Feb 2023 11:56:02 PST.
// Code generated by https://git.io/c-for-go. DO NOT EDIT.
#include "_cgo_export.h"
#include "cgo_helpers.h"
-unsigned int PFN_vkDebugReportCallbackEXT_c918aac4(unsigned int flags, VkDebugReportObjectTypeEXT objectType, unsigned long long object, unsigned long int location, int messageCode, char* pLayerPrefix, char* pMessage, void* pUserData) {
+unsigned int PFN_vkDebugReportCallbackEXT_c918aac4(unsigned int flags, VkDebugReportObjectTypeEXT objectType, unsigned long long object, unsigned long long location, int messageCode, char* pLayerPrefix, char* pMessage, void* pUserData) {
return debugReportCallbackFuncC918AAC4(flags, objectType, object, location, messageCode, pLayerPrefix, pMessage, pUserData);
}
+void PFN_vkDeviceMemoryReportCallbackEXT_e34d104c(VkDeviceMemoryReportCallbackDataEXT* pCallbackData, void* pUserData) {
+ deviceMemoryReportCallbackFuncE34D104C(pCallbackData, pUserData);
+}
+
diff --git a/cgo_helpers.go b/cgo_helpers.go
index 1adfb62..5c1e168 100644
--- a/cgo_helpers.go
+++ b/cgo_helpers.go
@@ -1,6 +1,6 @@
// THE AUTOGENERATED LICENSE. ALL THE RIGHTS ARE RESERVED BY ROBOTS.
-// WARNING: This file has automatically been generated on Mon, 15 Oct 2018 01:04:16 +07.
+// WARNING: This file has automatically been generated on Fri, 10 Feb 2023 11:56:02 PST.
// Code generated by https://git.io/c-for-go. DO NOT EDIT.
package vulkan
@@ -8,6 +8,7 @@ package vulkan
/*
#cgo CFLAGS: -I. -DVK_NO_PROTOTYPES
#include "vulkan/vulkan.h"
+#include "vulkan/vulkan_beta.h"
#include "vk_wrapper.h"
#include "vk_bridge.h"
#include
@@ -70,133 +71,77 @@ func (a *cgoAllocMap) Free() {
a.mux.Unlock()
}
-// allocApplicationInfoMemory allocates memory for type C.VkApplicationInfo in C.
+// allocExtent2DMemory allocates memory for type C.VkExtent2D in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocApplicationInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfApplicationInfoValue))
+func allocExtent2DMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExtent2DValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfApplicationInfoValue = unsafe.Sizeof([1]C.VkApplicationInfo{})
-
-// unpackPCharString represents the data from Go string as *C.char and avoids copying.
-func unpackPCharString(str string) (*C.char, *cgoAllocMap) {
- h := (*stringHeader)(unsafe.Pointer(&str))
- return (*C.char)(h.Data), cgoAllocsUnknown
-}
-
-type stringHeader struct {
- Data unsafe.Pointer
- Len int
-}
-
-// packPCharString creates a Go string backed by *C.char and avoids copying.
-func packPCharString(p *C.char) (raw string) {
- if p != nil && *p != 0 {
- h := (*stringHeader)(unsafe.Pointer(&raw))
- h.Data = unsafe.Pointer(p)
- for *p != 0 {
- p = (*C.char)(unsafe.Pointer(uintptr(unsafe.Pointer(p)) + 1)) // p++
- }
- h.Len = int(uintptr(unsafe.Pointer(p)) - uintptr(h.Data))
- }
- return
-}
-
-// RawString reperesents a string backed by data on the C side.
-type RawString string
-
-// Copy returns a Go-managed copy of raw string.
-func (raw RawString) Copy() string {
- if len(raw) == 0 {
- return ""
- }
- h := (*stringHeader)(unsafe.Pointer(&raw))
- return C.GoStringN((*C.char)(h.Data), C.int(h.Len))
-}
+const sizeOfExtent2DValue = unsafe.Sizeof([1]C.VkExtent2D{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ApplicationInfo) Ref() *C.VkApplicationInfo {
+func (x *Extent2D) Ref() *C.VkExtent2D {
if x == nil {
return nil
}
- return x.refb0af7378
+ return x.refe2edf56b
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ApplicationInfo) Free() {
- if x != nil && x.allocsb0af7378 != nil {
- x.allocsb0af7378.(*cgoAllocMap).Free()
- x.refb0af7378 = nil
+func (x *Extent2D) Free() {
+ if x != nil && x.allocse2edf56b != nil {
+ x.allocse2edf56b.(*cgoAllocMap).Free()
+ x.refe2edf56b = nil
}
}
-// NewApplicationInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewExtent2DRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewApplicationInfoRef(ref unsafe.Pointer) *ApplicationInfo {
+func NewExtent2DRef(ref unsafe.Pointer) *Extent2D {
if ref == nil {
return nil
}
- obj := new(ApplicationInfo)
- obj.refb0af7378 = (*C.VkApplicationInfo)(unsafe.Pointer(ref))
+ obj := new(Extent2D)
+ obj.refe2edf56b = (*C.VkExtent2D)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ApplicationInfo) PassRef() (*C.VkApplicationInfo, *cgoAllocMap) {
+func (x *Extent2D) PassRef() (*C.VkExtent2D, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refb0af7378 != nil {
- return x.refb0af7378, nil
+ } else if x.refe2edf56b != nil {
+ return x.refe2edf56b, nil
}
- memb0af7378 := allocApplicationInfoMemory(1)
- refb0af7378 := (*C.VkApplicationInfo)(memb0af7378)
- allocsb0af7378 := new(cgoAllocMap)
- allocsb0af7378.Add(memb0af7378)
-
- var csType_allocs *cgoAllocMap
- refb0af7378.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsb0af7378.Borrow(csType_allocs)
-
- var cpNext_allocs *cgoAllocMap
- refb0af7378.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsb0af7378.Borrow(cpNext_allocs)
-
- var cpApplicationName_allocs *cgoAllocMap
- refb0af7378.pApplicationName, cpApplicationName_allocs = unpackPCharString(x.PApplicationName)
- allocsb0af7378.Borrow(cpApplicationName_allocs)
-
- var capplicationVersion_allocs *cgoAllocMap
- refb0af7378.applicationVersion, capplicationVersion_allocs = (C.uint32_t)(x.ApplicationVersion), cgoAllocsUnknown
- allocsb0af7378.Borrow(capplicationVersion_allocs)
-
- var cpEngineName_allocs *cgoAllocMap
- refb0af7378.pEngineName, cpEngineName_allocs = unpackPCharString(x.PEngineName)
- allocsb0af7378.Borrow(cpEngineName_allocs)
+ meme2edf56b := allocExtent2DMemory(1)
+ refe2edf56b := (*C.VkExtent2D)(meme2edf56b)
+ allocse2edf56b := new(cgoAllocMap)
+ allocse2edf56b.Add(meme2edf56b)
- var cengineVersion_allocs *cgoAllocMap
- refb0af7378.engineVersion, cengineVersion_allocs = (C.uint32_t)(x.EngineVersion), cgoAllocsUnknown
- allocsb0af7378.Borrow(cengineVersion_allocs)
+ var cwidth_allocs *cgoAllocMap
+ refe2edf56b.width, cwidth_allocs = (C.uint32_t)(x.Width), cgoAllocsUnknown
+ allocse2edf56b.Borrow(cwidth_allocs)
- var capiVersion_allocs *cgoAllocMap
- refb0af7378.apiVersion, capiVersion_allocs = (C.uint32_t)(x.ApiVersion), cgoAllocsUnknown
- allocsb0af7378.Borrow(capiVersion_allocs)
+ var cheight_allocs *cgoAllocMap
+ refe2edf56b.height, cheight_allocs = (C.uint32_t)(x.Height), cgoAllocsUnknown
+ allocse2edf56b.Borrow(cheight_allocs)
- x.refb0af7378 = refb0af7378
- x.allocsb0af7378 = allocsb0af7378
- return refb0af7378, allocsb0af7378
+ x.refe2edf56b = refe2edf56b
+ x.allocse2edf56b = allocse2edf56b
+ return refe2edf56b, allocse2edf56b
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ApplicationInfo) PassValue() (C.VkApplicationInfo, *cgoAllocMap) {
- if x.refb0af7378 != nil {
- return *x.refb0af7378, nil
+func (x Extent2D) PassValue() (C.VkExtent2D, *cgoAllocMap) {
+ if x.refe2edf56b != nil {
+ return *x.refe2edf56b, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -204,170 +149,176 @@ func (x ApplicationInfo) PassValue() (C.VkApplicationInfo, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ApplicationInfo) Deref() {
- if x.refb0af7378 == nil {
+func (x *Extent2D) Deref() {
+ if x.refe2edf56b == nil {
return
}
- x.SType = (StructureType)(x.refb0af7378.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb0af7378.pNext))
- x.PApplicationName = packPCharString(x.refb0af7378.pApplicationName)
- x.ApplicationVersion = (uint32)(x.refb0af7378.applicationVersion)
- x.PEngineName = packPCharString(x.refb0af7378.pEngineName)
- x.EngineVersion = (uint32)(x.refb0af7378.engineVersion)
- x.ApiVersion = (uint32)(x.refb0af7378.apiVersion)
+ x.Width = (uint32)(x.refe2edf56b.width)
+ x.Height = (uint32)(x.refe2edf56b.height)
}
-// allocInstanceCreateInfoMemory allocates memory for type C.VkInstanceCreateInfo in C.
+// allocExtent3DMemory allocates memory for type C.VkExtent3D in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocInstanceCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfInstanceCreateInfoValue))
+func allocExtent3DMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExtent3DValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfInstanceCreateInfoValue = unsafe.Sizeof([1]C.VkInstanceCreateInfo{})
+const sizeOfExtent3DValue = unsafe.Sizeof([1]C.VkExtent3D{})
-type sliceHeader struct {
- Data unsafe.Pointer
- Len int
- Cap int
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *Extent3D) Ref() *C.VkExtent3D {
+ if x == nil {
+ return nil
+ }
+ return x.reffbf6c42a
}
-// allocPCharMemory allocates memory for type *C.char in C.
-// The caller is responsible for freeing the this memory via C.free.
-func allocPCharMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPCharValue))
- if err != nil {
- panic("memory alloc error: " + err.Error())
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *Extent3D) Free() {
+ if x != nil && x.allocsfbf6c42a != nil {
+ x.allocsfbf6c42a.(*cgoAllocMap).Free()
+ x.reffbf6c42a = nil
}
- return mem
}
-const sizeOfPCharValue = unsafe.Sizeof([1]*C.char{})
-
-const sizeOfPtr = unsafe.Sizeof(&struct{}{})
+// NewExtent3DRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewExtent3DRef(ref unsafe.Pointer) *Extent3D {
+ if ref == nil {
+ return nil
+ }
+ obj := new(Extent3D)
+ obj.reffbf6c42a = (*C.VkExtent3D)(unsafe.Pointer(ref))
+ return obj
+}
-// unpackSString transforms a sliced Go data structure into plain C format.
-func unpackSString(x []string) (unpacked **C.char, allocs *cgoAllocMap) {
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *Extent3D) PassRef() (*C.VkExtent3D, *cgoAllocMap) {
if x == nil {
return nil, nil
+ } else if x.reffbf6c42a != nil {
+ return x.reffbf6c42a, nil
}
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(***C.char) {
- go allocs.Free()
- })
+ memfbf6c42a := allocExtent3DMemory(1)
+ reffbf6c42a := (*C.VkExtent3D)(memfbf6c42a)
+ allocsfbf6c42a := new(cgoAllocMap)
+ allocsfbf6c42a.Add(memfbf6c42a)
- len0 := len(x)
- mem0 := allocPCharMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
+ var cwidth_allocs *cgoAllocMap
+ reffbf6c42a.width, cwidth_allocs = (C.uint32_t)(x.Width), cgoAllocsUnknown
+ allocsfbf6c42a.Borrow(cwidth_allocs)
+
+ var cheight_allocs *cgoAllocMap
+ reffbf6c42a.height, cheight_allocs = (C.uint32_t)(x.Height), cgoAllocsUnknown
+ allocsfbf6c42a.Borrow(cheight_allocs)
+
+ var cdepth_allocs *cgoAllocMap
+ reffbf6c42a.depth, cdepth_allocs = (C.uint32_t)(x.Depth), cgoAllocsUnknown
+ allocsfbf6c42a.Borrow(cdepth_allocs)
+
+ x.reffbf6c42a = reffbf6c42a
+ x.allocsfbf6c42a = allocsfbf6c42a
+ return reffbf6c42a, allocsfbf6c42a
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x Extent3D) PassValue() (C.VkExtent3D, *cgoAllocMap) {
+ if x.reffbf6c42a != nil {
+ return *x.reffbf6c42a, nil
}
- v0 := *(*[]*C.char)(unsafe.Pointer(h0))
- for i0 := range x {
- v0[i0], _ = unpackPCharString(x[i0])
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *Extent3D) Deref() {
+ if x.reffbf6c42a == nil {
+ return
}
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (**C.char)(h.Data)
- return
+ x.Width = (uint32)(x.reffbf6c42a.width)
+ x.Height = (uint32)(x.reffbf6c42a.height)
+ x.Depth = (uint32)(x.reffbf6c42a.depth)
}
-// packSString reads sliced Go data structure out from plain C format.
-func packSString(v []string, ptr0 **C.char) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfPtr]*C.char)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = packPCharString(ptr1)
+// allocOffset2DMemory allocates memory for type C.VkOffset2D in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocOffset2DMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfOffset2DValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
}
+ return mem
}
+const sizeOfOffset2DValue = unsafe.Sizeof([1]C.VkOffset2D{})
+
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *InstanceCreateInfo) Ref() *C.VkInstanceCreateInfo {
+func (x *Offset2D) Ref() *C.VkOffset2D {
if x == nil {
return nil
}
- return x.ref9b760798
+ return x.ref32734883
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *InstanceCreateInfo) Free() {
- if x != nil && x.allocs9b760798 != nil {
- x.allocs9b760798.(*cgoAllocMap).Free()
- x.ref9b760798 = nil
+func (x *Offset2D) Free() {
+ if x != nil && x.allocs32734883 != nil {
+ x.allocs32734883.(*cgoAllocMap).Free()
+ x.ref32734883 = nil
}
}
-// NewInstanceCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewOffset2DRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewInstanceCreateInfoRef(ref unsafe.Pointer) *InstanceCreateInfo {
+func NewOffset2DRef(ref unsafe.Pointer) *Offset2D {
if ref == nil {
return nil
}
- obj := new(InstanceCreateInfo)
- obj.ref9b760798 = (*C.VkInstanceCreateInfo)(unsafe.Pointer(ref))
+ obj := new(Offset2D)
+ obj.ref32734883 = (*C.VkOffset2D)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *InstanceCreateInfo) PassRef() (*C.VkInstanceCreateInfo, *cgoAllocMap) {
+func (x *Offset2D) PassRef() (*C.VkOffset2D, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref9b760798 != nil {
- return x.ref9b760798, nil
+ } else if x.ref32734883 != nil {
+ return x.ref32734883, nil
}
- mem9b760798 := allocInstanceCreateInfoMemory(1)
- ref9b760798 := (*C.VkInstanceCreateInfo)(mem9b760798)
- allocs9b760798 := new(cgoAllocMap)
- allocs9b760798.Add(mem9b760798)
-
- var csType_allocs *cgoAllocMap
- ref9b760798.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs9b760798.Borrow(csType_allocs)
-
- var cpNext_allocs *cgoAllocMap
- ref9b760798.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs9b760798.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- ref9b760798.flags, cflags_allocs = (C.VkInstanceCreateFlags)(x.Flags), cgoAllocsUnknown
- allocs9b760798.Borrow(cflags_allocs)
-
- var cpApplicationInfo_allocs *cgoAllocMap
- ref9b760798.pApplicationInfo, cpApplicationInfo_allocs = x.PApplicationInfo.PassRef()
- allocs9b760798.Borrow(cpApplicationInfo_allocs)
-
- var cenabledLayerCount_allocs *cgoAllocMap
- ref9b760798.enabledLayerCount, cenabledLayerCount_allocs = (C.uint32_t)(x.EnabledLayerCount), cgoAllocsUnknown
- allocs9b760798.Borrow(cenabledLayerCount_allocs)
-
- var cppEnabledLayerNames_allocs *cgoAllocMap
- ref9b760798.ppEnabledLayerNames, cppEnabledLayerNames_allocs = unpackSString(x.PpEnabledLayerNames)
- allocs9b760798.Borrow(cppEnabledLayerNames_allocs)
+ mem32734883 := allocOffset2DMemory(1)
+ ref32734883 := (*C.VkOffset2D)(mem32734883)
+ allocs32734883 := new(cgoAllocMap)
+ allocs32734883.Add(mem32734883)
- var cenabledExtensionCount_allocs *cgoAllocMap
- ref9b760798.enabledExtensionCount, cenabledExtensionCount_allocs = (C.uint32_t)(x.EnabledExtensionCount), cgoAllocsUnknown
- allocs9b760798.Borrow(cenabledExtensionCount_allocs)
+ var cx_allocs *cgoAllocMap
+ ref32734883.x, cx_allocs = (C.int32_t)(x.X), cgoAllocsUnknown
+ allocs32734883.Borrow(cx_allocs)
- var cppEnabledExtensionNames_allocs *cgoAllocMap
- ref9b760798.ppEnabledExtensionNames, cppEnabledExtensionNames_allocs = unpackSString(x.PpEnabledExtensionNames)
- allocs9b760798.Borrow(cppEnabledExtensionNames_allocs)
+ var cy_allocs *cgoAllocMap
+ ref32734883.y, cy_allocs = (C.int32_t)(x.Y), cgoAllocsUnknown
+ allocs32734883.Borrow(cy_allocs)
- x.ref9b760798 = ref9b760798
- x.allocs9b760798 = allocs9b760798
- return ref9b760798, allocs9b760798
+ x.ref32734883 = ref32734883
+ x.allocs32734883 = allocs32734883
+ return ref32734883, allocs32734883
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x InstanceCreateInfo) PassValue() (C.VkInstanceCreateInfo, *cgoAllocMap) {
- if x.ref9b760798 != nil {
- return *x.ref9b760798, nil
+func (x Offset2D) PassValue() (C.VkOffset2D, *cgoAllocMap) {
+ if x.ref32734883 != nil {
+ return *x.ref32734883, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -375,349 +326,176 @@ func (x InstanceCreateInfo) PassValue() (C.VkInstanceCreateInfo, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *InstanceCreateInfo) Deref() {
- if x.ref9b760798 == nil {
+func (x *Offset2D) Deref() {
+ if x.ref32734883 == nil {
return
}
- x.SType = (StructureType)(x.ref9b760798.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref9b760798.pNext))
- x.Flags = (InstanceCreateFlags)(x.ref9b760798.flags)
- x.PApplicationInfo = NewApplicationInfoRef(unsafe.Pointer(x.ref9b760798.pApplicationInfo))
- x.EnabledLayerCount = (uint32)(x.ref9b760798.enabledLayerCount)
- packSString(x.PpEnabledLayerNames, x.ref9b760798.ppEnabledLayerNames)
- x.EnabledExtensionCount = (uint32)(x.ref9b760798.enabledExtensionCount)
- packSString(x.PpEnabledExtensionNames, x.ref9b760798.ppEnabledExtensionNames)
+ x.X = (int32)(x.ref32734883.x)
+ x.Y = (int32)(x.ref32734883.y)
}
-// Ref returns a reference to C object as it is.
-func (x *AllocationCallbacks) Ref() *C.VkAllocationCallbacks {
+// allocOffset3DMemory allocates memory for type C.VkOffset3D in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocOffset3DMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfOffset3DValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfOffset3DValue = unsafe.Sizeof([1]C.VkOffset3D{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *Offset3D) Ref() *C.VkOffset3D {
if x == nil {
return nil
}
- return (*C.VkAllocationCallbacks)(unsafe.Pointer(x))
+ return x.ref2b6879c2
}
-// Free cleanups the referenced memory using C free.
-func (x *AllocationCallbacks) Free() {
- if x != nil {
- C.free(unsafe.Pointer(x))
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *Offset3D) Free() {
+ if x != nil && x.allocs2b6879c2 != nil {
+ x.allocs2b6879c2.(*cgoAllocMap).Free()
+ x.ref2b6879c2 = nil
}
}
-// NewAllocationCallbacksRef converts the C object reference into a raw struct reference without wrapping.
-func NewAllocationCallbacksRef(ref unsafe.Pointer) *AllocationCallbacks {
- return (*AllocationCallbacks)(ref)
+// NewOffset3DRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewOffset3DRef(ref unsafe.Pointer) *Offset3D {
+ if ref == nil {
+ return nil
+ }
+ obj := new(Offset3D)
+ obj.ref2b6879c2 = (*C.VkOffset3D)(unsafe.Pointer(ref))
+ return obj
}
-// NewAllocationCallbacks allocates a new C object of this type and converts the reference into
-// a raw struct reference without wrapping.
-func NewAllocationCallbacks() *AllocationCallbacks {
- return (*AllocationCallbacks)(allocAllocationCallbacksMemory(1))
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *Offset3D) PassRef() (*C.VkOffset3D, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref2b6879c2 != nil {
+ return x.ref2b6879c2, nil
+ }
+ mem2b6879c2 := allocOffset3DMemory(1)
+ ref2b6879c2 := (*C.VkOffset3D)(mem2b6879c2)
+ allocs2b6879c2 := new(cgoAllocMap)
+ allocs2b6879c2.Add(mem2b6879c2)
+
+ var cx_allocs *cgoAllocMap
+ ref2b6879c2.x, cx_allocs = (C.int32_t)(x.X), cgoAllocsUnknown
+ allocs2b6879c2.Borrow(cx_allocs)
+
+ var cy_allocs *cgoAllocMap
+ ref2b6879c2.y, cy_allocs = (C.int32_t)(x.Y), cgoAllocsUnknown
+ allocs2b6879c2.Borrow(cy_allocs)
+
+ var cz_allocs *cgoAllocMap
+ ref2b6879c2.z, cz_allocs = (C.int32_t)(x.Z), cgoAllocsUnknown
+ allocs2b6879c2.Borrow(cz_allocs)
+
+ x.ref2b6879c2 = ref2b6879c2
+ x.allocs2b6879c2 = allocs2b6879c2
+ return ref2b6879c2, allocs2b6879c2
+
}
-// allocAllocationCallbacksMemory allocates memory for type C.VkAllocationCallbacks in C.
-// The caller is responsible for freeing the this memory via C.free.
-func allocAllocationCallbacksMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfAllocationCallbacksValue))
- if err != nil {
- panic("memory alloc error: " + err.Error())
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x Offset3D) PassValue() (C.VkOffset3D, *cgoAllocMap) {
+ if x.ref2b6879c2 != nil {
+ return *x.ref2b6879c2, nil
}
- return mem
+ ref, allocs := x.PassRef()
+ return *ref, allocs
}
-const sizeOfAllocationCallbacksValue = unsafe.Sizeof([1]C.VkAllocationCallbacks{})
-
-// PassRef returns a reference to C object as it is or allocates a new C object of this type.
-func (x *AllocationCallbacks) PassRef() *C.VkAllocationCallbacks {
- if x == nil {
- x = (*AllocationCallbacks)(allocAllocationCallbacksMemory(1))
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *Offset3D) Deref() {
+ if x.ref2b6879c2 == nil {
+ return
}
- return (*C.VkAllocationCallbacks)(unsafe.Pointer(x))
+ x.X = (int32)(x.ref2b6879c2.x)
+ x.Y = (int32)(x.ref2b6879c2.y)
+ x.Z = (int32)(x.ref2b6879c2.z)
}
-// allocPhysicalDeviceFeaturesMemory allocates memory for type C.VkPhysicalDeviceFeatures in C.
+// allocRect2DMemory allocates memory for type C.VkRect2D in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceFeaturesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceFeaturesValue))
+func allocRect2DMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfRect2DValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceFeatures{})
+const sizeOfRect2DValue = unsafe.Sizeof([1]C.VkRect2D{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceFeatures) Ref() *C.VkPhysicalDeviceFeatures {
+func (x *Rect2D) Ref() *C.VkRect2D {
if x == nil {
return nil
}
- return x.reff97e405d
+ return x.ref89e4256f
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceFeatures) Free() {
- if x != nil && x.allocsf97e405d != nil {
- x.allocsf97e405d.(*cgoAllocMap).Free()
- x.reff97e405d = nil
+func (x *Rect2D) Free() {
+ if x != nil && x.allocs89e4256f != nil {
+ x.allocs89e4256f.(*cgoAllocMap).Free()
+ x.ref89e4256f = nil
}
}
-// NewPhysicalDeviceFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewRect2DRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceFeatures {
+func NewRect2DRef(ref unsafe.Pointer) *Rect2D {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceFeatures)
- obj.reff97e405d = (*C.VkPhysicalDeviceFeatures)(unsafe.Pointer(ref))
+ obj := new(Rect2D)
+ obj.ref89e4256f = (*C.VkRect2D)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceFeatures) PassRef() (*C.VkPhysicalDeviceFeatures, *cgoAllocMap) {
+func (x *Rect2D) PassRef() (*C.VkRect2D, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.reff97e405d != nil {
- return x.reff97e405d, nil
+ } else if x.ref89e4256f != nil {
+ return x.ref89e4256f, nil
}
- memf97e405d := allocPhysicalDeviceFeaturesMemory(1)
- reff97e405d := (*C.VkPhysicalDeviceFeatures)(memf97e405d)
- allocsf97e405d := new(cgoAllocMap)
- allocsf97e405d.Add(memf97e405d)
-
- var crobustBufferAccess_allocs *cgoAllocMap
- reff97e405d.robustBufferAccess, crobustBufferAccess_allocs = (C.VkBool32)(x.RobustBufferAccess), cgoAllocsUnknown
- allocsf97e405d.Borrow(crobustBufferAccess_allocs)
+ mem89e4256f := allocRect2DMemory(1)
+ ref89e4256f := (*C.VkRect2D)(mem89e4256f)
+ allocs89e4256f := new(cgoAllocMap)
+ allocs89e4256f.Add(mem89e4256f)
- var cfullDrawIndexUint32_allocs *cgoAllocMap
- reff97e405d.fullDrawIndexUint32, cfullDrawIndexUint32_allocs = (C.VkBool32)(x.FullDrawIndexUint32), cgoAllocsUnknown
- allocsf97e405d.Borrow(cfullDrawIndexUint32_allocs)
+ var coffset_allocs *cgoAllocMap
+ ref89e4256f.offset, coffset_allocs = x.Offset.PassValue()
+ allocs89e4256f.Borrow(coffset_allocs)
- var cimageCubeArray_allocs *cgoAllocMap
- reff97e405d.imageCubeArray, cimageCubeArray_allocs = (C.VkBool32)(x.ImageCubeArray), cgoAllocsUnknown
- allocsf97e405d.Borrow(cimageCubeArray_allocs)
+ var cextent_allocs *cgoAllocMap
+ ref89e4256f.extent, cextent_allocs = x.Extent.PassValue()
+ allocs89e4256f.Borrow(cextent_allocs)
- var cindependentBlend_allocs *cgoAllocMap
- reff97e405d.independentBlend, cindependentBlend_allocs = (C.VkBool32)(x.IndependentBlend), cgoAllocsUnknown
- allocsf97e405d.Borrow(cindependentBlend_allocs)
-
- var cgeometryShader_allocs *cgoAllocMap
- reff97e405d.geometryShader, cgeometryShader_allocs = (C.VkBool32)(x.GeometryShader), cgoAllocsUnknown
- allocsf97e405d.Borrow(cgeometryShader_allocs)
-
- var ctessellationShader_allocs *cgoAllocMap
- reff97e405d.tessellationShader, ctessellationShader_allocs = (C.VkBool32)(x.TessellationShader), cgoAllocsUnknown
- allocsf97e405d.Borrow(ctessellationShader_allocs)
-
- var csampleRateShading_allocs *cgoAllocMap
- reff97e405d.sampleRateShading, csampleRateShading_allocs = (C.VkBool32)(x.SampleRateShading), cgoAllocsUnknown
- allocsf97e405d.Borrow(csampleRateShading_allocs)
-
- var cdualSrcBlend_allocs *cgoAllocMap
- reff97e405d.dualSrcBlend, cdualSrcBlend_allocs = (C.VkBool32)(x.DualSrcBlend), cgoAllocsUnknown
- allocsf97e405d.Borrow(cdualSrcBlend_allocs)
-
- var clogicOp_allocs *cgoAllocMap
- reff97e405d.logicOp, clogicOp_allocs = (C.VkBool32)(x.LogicOp), cgoAllocsUnknown
- allocsf97e405d.Borrow(clogicOp_allocs)
-
- var cmultiDrawIndirect_allocs *cgoAllocMap
- reff97e405d.multiDrawIndirect, cmultiDrawIndirect_allocs = (C.VkBool32)(x.MultiDrawIndirect), cgoAllocsUnknown
- allocsf97e405d.Borrow(cmultiDrawIndirect_allocs)
-
- var cdrawIndirectFirstInstance_allocs *cgoAllocMap
- reff97e405d.drawIndirectFirstInstance, cdrawIndirectFirstInstance_allocs = (C.VkBool32)(x.DrawIndirectFirstInstance), cgoAllocsUnknown
- allocsf97e405d.Borrow(cdrawIndirectFirstInstance_allocs)
-
- var cdepthClamp_allocs *cgoAllocMap
- reff97e405d.depthClamp, cdepthClamp_allocs = (C.VkBool32)(x.DepthClamp), cgoAllocsUnknown
- allocsf97e405d.Borrow(cdepthClamp_allocs)
-
- var cdepthBiasClamp_allocs *cgoAllocMap
- reff97e405d.depthBiasClamp, cdepthBiasClamp_allocs = (C.VkBool32)(x.DepthBiasClamp), cgoAllocsUnknown
- allocsf97e405d.Borrow(cdepthBiasClamp_allocs)
-
- var cfillModeNonSolid_allocs *cgoAllocMap
- reff97e405d.fillModeNonSolid, cfillModeNonSolid_allocs = (C.VkBool32)(x.FillModeNonSolid), cgoAllocsUnknown
- allocsf97e405d.Borrow(cfillModeNonSolid_allocs)
-
- var cdepthBounds_allocs *cgoAllocMap
- reff97e405d.depthBounds, cdepthBounds_allocs = (C.VkBool32)(x.DepthBounds), cgoAllocsUnknown
- allocsf97e405d.Borrow(cdepthBounds_allocs)
-
- var cwideLines_allocs *cgoAllocMap
- reff97e405d.wideLines, cwideLines_allocs = (C.VkBool32)(x.WideLines), cgoAllocsUnknown
- allocsf97e405d.Borrow(cwideLines_allocs)
-
- var clargePoints_allocs *cgoAllocMap
- reff97e405d.largePoints, clargePoints_allocs = (C.VkBool32)(x.LargePoints), cgoAllocsUnknown
- allocsf97e405d.Borrow(clargePoints_allocs)
-
- var calphaToOne_allocs *cgoAllocMap
- reff97e405d.alphaToOne, calphaToOne_allocs = (C.VkBool32)(x.AlphaToOne), cgoAllocsUnknown
- allocsf97e405d.Borrow(calphaToOne_allocs)
-
- var cmultiViewport_allocs *cgoAllocMap
- reff97e405d.multiViewport, cmultiViewport_allocs = (C.VkBool32)(x.MultiViewport), cgoAllocsUnknown
- allocsf97e405d.Borrow(cmultiViewport_allocs)
-
- var csamplerAnisotropy_allocs *cgoAllocMap
- reff97e405d.samplerAnisotropy, csamplerAnisotropy_allocs = (C.VkBool32)(x.SamplerAnisotropy), cgoAllocsUnknown
- allocsf97e405d.Borrow(csamplerAnisotropy_allocs)
-
- var ctextureCompressionETC2_allocs *cgoAllocMap
- reff97e405d.textureCompressionETC2, ctextureCompressionETC2_allocs = (C.VkBool32)(x.TextureCompressionETC2), cgoAllocsUnknown
- allocsf97e405d.Borrow(ctextureCompressionETC2_allocs)
-
- var ctextureCompressionASTC_LDR_allocs *cgoAllocMap
- reff97e405d.textureCompressionASTC_LDR, ctextureCompressionASTC_LDR_allocs = (C.VkBool32)(x.TextureCompressionASTC_LDR), cgoAllocsUnknown
- allocsf97e405d.Borrow(ctextureCompressionASTC_LDR_allocs)
-
- var ctextureCompressionBC_allocs *cgoAllocMap
- reff97e405d.textureCompressionBC, ctextureCompressionBC_allocs = (C.VkBool32)(x.TextureCompressionBC), cgoAllocsUnknown
- allocsf97e405d.Borrow(ctextureCompressionBC_allocs)
-
- var cocclusionQueryPrecise_allocs *cgoAllocMap
- reff97e405d.occlusionQueryPrecise, cocclusionQueryPrecise_allocs = (C.VkBool32)(x.OcclusionQueryPrecise), cgoAllocsUnknown
- allocsf97e405d.Borrow(cocclusionQueryPrecise_allocs)
-
- var cpipelineStatisticsQuery_allocs *cgoAllocMap
- reff97e405d.pipelineStatisticsQuery, cpipelineStatisticsQuery_allocs = (C.VkBool32)(x.PipelineStatisticsQuery), cgoAllocsUnknown
- allocsf97e405d.Borrow(cpipelineStatisticsQuery_allocs)
-
- var cvertexPipelineStoresAndAtomics_allocs *cgoAllocMap
- reff97e405d.vertexPipelineStoresAndAtomics, cvertexPipelineStoresAndAtomics_allocs = (C.VkBool32)(x.VertexPipelineStoresAndAtomics), cgoAllocsUnknown
- allocsf97e405d.Borrow(cvertexPipelineStoresAndAtomics_allocs)
-
- var cfragmentStoresAndAtomics_allocs *cgoAllocMap
- reff97e405d.fragmentStoresAndAtomics, cfragmentStoresAndAtomics_allocs = (C.VkBool32)(x.FragmentStoresAndAtomics), cgoAllocsUnknown
- allocsf97e405d.Borrow(cfragmentStoresAndAtomics_allocs)
-
- var cshaderTessellationAndGeometryPointSize_allocs *cgoAllocMap
- reff97e405d.shaderTessellationAndGeometryPointSize, cshaderTessellationAndGeometryPointSize_allocs = (C.VkBool32)(x.ShaderTessellationAndGeometryPointSize), cgoAllocsUnknown
- allocsf97e405d.Borrow(cshaderTessellationAndGeometryPointSize_allocs)
-
- var cshaderImageGatherExtended_allocs *cgoAllocMap
- reff97e405d.shaderImageGatherExtended, cshaderImageGatherExtended_allocs = (C.VkBool32)(x.ShaderImageGatherExtended), cgoAllocsUnknown
- allocsf97e405d.Borrow(cshaderImageGatherExtended_allocs)
-
- var cshaderStorageImageExtendedFormats_allocs *cgoAllocMap
- reff97e405d.shaderStorageImageExtendedFormats, cshaderStorageImageExtendedFormats_allocs = (C.VkBool32)(x.ShaderStorageImageExtendedFormats), cgoAllocsUnknown
- allocsf97e405d.Borrow(cshaderStorageImageExtendedFormats_allocs)
-
- var cshaderStorageImageMultisample_allocs *cgoAllocMap
- reff97e405d.shaderStorageImageMultisample, cshaderStorageImageMultisample_allocs = (C.VkBool32)(x.ShaderStorageImageMultisample), cgoAllocsUnknown
- allocsf97e405d.Borrow(cshaderStorageImageMultisample_allocs)
-
- var cshaderStorageImageReadWithoutFormat_allocs *cgoAllocMap
- reff97e405d.shaderStorageImageReadWithoutFormat, cshaderStorageImageReadWithoutFormat_allocs = (C.VkBool32)(x.ShaderStorageImageReadWithoutFormat), cgoAllocsUnknown
- allocsf97e405d.Borrow(cshaderStorageImageReadWithoutFormat_allocs)
-
- var cshaderStorageImageWriteWithoutFormat_allocs *cgoAllocMap
- reff97e405d.shaderStorageImageWriteWithoutFormat, cshaderStorageImageWriteWithoutFormat_allocs = (C.VkBool32)(x.ShaderStorageImageWriteWithoutFormat), cgoAllocsUnknown
- allocsf97e405d.Borrow(cshaderStorageImageWriteWithoutFormat_allocs)
-
- var cshaderUniformBufferArrayDynamicIndexing_allocs *cgoAllocMap
- reff97e405d.shaderUniformBufferArrayDynamicIndexing, cshaderUniformBufferArrayDynamicIndexing_allocs = (C.VkBool32)(x.ShaderUniformBufferArrayDynamicIndexing), cgoAllocsUnknown
- allocsf97e405d.Borrow(cshaderUniformBufferArrayDynamicIndexing_allocs)
-
- var cshaderSampledImageArrayDynamicIndexing_allocs *cgoAllocMap
- reff97e405d.shaderSampledImageArrayDynamicIndexing, cshaderSampledImageArrayDynamicIndexing_allocs = (C.VkBool32)(x.ShaderSampledImageArrayDynamicIndexing), cgoAllocsUnknown
- allocsf97e405d.Borrow(cshaderSampledImageArrayDynamicIndexing_allocs)
-
- var cshaderStorageBufferArrayDynamicIndexing_allocs *cgoAllocMap
- reff97e405d.shaderStorageBufferArrayDynamicIndexing, cshaderStorageBufferArrayDynamicIndexing_allocs = (C.VkBool32)(x.ShaderStorageBufferArrayDynamicIndexing), cgoAllocsUnknown
- allocsf97e405d.Borrow(cshaderStorageBufferArrayDynamicIndexing_allocs)
-
- var cshaderStorageImageArrayDynamicIndexing_allocs *cgoAllocMap
- reff97e405d.shaderStorageImageArrayDynamicIndexing, cshaderStorageImageArrayDynamicIndexing_allocs = (C.VkBool32)(x.ShaderStorageImageArrayDynamicIndexing), cgoAllocsUnknown
- allocsf97e405d.Borrow(cshaderStorageImageArrayDynamicIndexing_allocs)
-
- var cshaderClipDistance_allocs *cgoAllocMap
- reff97e405d.shaderClipDistance, cshaderClipDistance_allocs = (C.VkBool32)(x.ShaderClipDistance), cgoAllocsUnknown
- allocsf97e405d.Borrow(cshaderClipDistance_allocs)
-
- var cshaderCullDistance_allocs *cgoAllocMap
- reff97e405d.shaderCullDistance, cshaderCullDistance_allocs = (C.VkBool32)(x.ShaderCullDistance), cgoAllocsUnknown
- allocsf97e405d.Borrow(cshaderCullDistance_allocs)
-
- var cshaderFloat64_allocs *cgoAllocMap
- reff97e405d.shaderFloat64, cshaderFloat64_allocs = (C.VkBool32)(x.ShaderFloat64), cgoAllocsUnknown
- allocsf97e405d.Borrow(cshaderFloat64_allocs)
-
- var cshaderInt64_allocs *cgoAllocMap
- reff97e405d.shaderInt64, cshaderInt64_allocs = (C.VkBool32)(x.ShaderInt64), cgoAllocsUnknown
- allocsf97e405d.Borrow(cshaderInt64_allocs)
-
- var cshaderInt16_allocs *cgoAllocMap
- reff97e405d.shaderInt16, cshaderInt16_allocs = (C.VkBool32)(x.ShaderInt16), cgoAllocsUnknown
- allocsf97e405d.Borrow(cshaderInt16_allocs)
-
- var cshaderResourceResidency_allocs *cgoAllocMap
- reff97e405d.shaderResourceResidency, cshaderResourceResidency_allocs = (C.VkBool32)(x.ShaderResourceResidency), cgoAllocsUnknown
- allocsf97e405d.Borrow(cshaderResourceResidency_allocs)
-
- var cshaderResourceMinLod_allocs *cgoAllocMap
- reff97e405d.shaderResourceMinLod, cshaderResourceMinLod_allocs = (C.VkBool32)(x.ShaderResourceMinLod), cgoAllocsUnknown
- allocsf97e405d.Borrow(cshaderResourceMinLod_allocs)
-
- var csparseBinding_allocs *cgoAllocMap
- reff97e405d.sparseBinding, csparseBinding_allocs = (C.VkBool32)(x.SparseBinding), cgoAllocsUnknown
- allocsf97e405d.Borrow(csparseBinding_allocs)
-
- var csparseResidencyBuffer_allocs *cgoAllocMap
- reff97e405d.sparseResidencyBuffer, csparseResidencyBuffer_allocs = (C.VkBool32)(x.SparseResidencyBuffer), cgoAllocsUnknown
- allocsf97e405d.Borrow(csparseResidencyBuffer_allocs)
-
- var csparseResidencyImage2D_allocs *cgoAllocMap
- reff97e405d.sparseResidencyImage2D, csparseResidencyImage2D_allocs = (C.VkBool32)(x.SparseResidencyImage2D), cgoAllocsUnknown
- allocsf97e405d.Borrow(csparseResidencyImage2D_allocs)
-
- var csparseResidencyImage3D_allocs *cgoAllocMap
- reff97e405d.sparseResidencyImage3D, csparseResidencyImage3D_allocs = (C.VkBool32)(x.SparseResidencyImage3D), cgoAllocsUnknown
- allocsf97e405d.Borrow(csparseResidencyImage3D_allocs)
-
- var csparseResidency2Samples_allocs *cgoAllocMap
- reff97e405d.sparseResidency2Samples, csparseResidency2Samples_allocs = (C.VkBool32)(x.SparseResidency2Samples), cgoAllocsUnknown
- allocsf97e405d.Borrow(csparseResidency2Samples_allocs)
-
- var csparseResidency4Samples_allocs *cgoAllocMap
- reff97e405d.sparseResidency4Samples, csparseResidency4Samples_allocs = (C.VkBool32)(x.SparseResidency4Samples), cgoAllocsUnknown
- allocsf97e405d.Borrow(csparseResidency4Samples_allocs)
-
- var csparseResidency8Samples_allocs *cgoAllocMap
- reff97e405d.sparseResidency8Samples, csparseResidency8Samples_allocs = (C.VkBool32)(x.SparseResidency8Samples), cgoAllocsUnknown
- allocsf97e405d.Borrow(csparseResidency8Samples_allocs)
-
- var csparseResidency16Samples_allocs *cgoAllocMap
- reff97e405d.sparseResidency16Samples, csparseResidency16Samples_allocs = (C.VkBool32)(x.SparseResidency16Samples), cgoAllocsUnknown
- allocsf97e405d.Borrow(csparseResidency16Samples_allocs)
-
- var csparseResidencyAliased_allocs *cgoAllocMap
- reff97e405d.sparseResidencyAliased, csparseResidencyAliased_allocs = (C.VkBool32)(x.SparseResidencyAliased), cgoAllocsUnknown
- allocsf97e405d.Borrow(csparseResidencyAliased_allocs)
-
- var cvariableMultisampleRate_allocs *cgoAllocMap
- reff97e405d.variableMultisampleRate, cvariableMultisampleRate_allocs = (C.VkBool32)(x.VariableMultisampleRate), cgoAllocsUnknown
- allocsf97e405d.Borrow(cvariableMultisampleRate_allocs)
-
- var cinheritedQueries_allocs *cgoAllocMap
- reff97e405d.inheritedQueries, cinheritedQueries_allocs = (C.VkBool32)(x.InheritedQueries), cgoAllocsUnknown
- allocsf97e405d.Borrow(cinheritedQueries_allocs)
-
- x.reff97e405d = reff97e405d
- x.allocsf97e405d = allocsf97e405d
- return reff97e405d, allocsf97e405d
+ x.ref89e4256f = ref89e4256f
+ x.allocs89e4256f = allocs89e4256f
+ return ref89e4256f, allocs89e4256f
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceFeatures) PassValue() (C.VkPhysicalDeviceFeatures, *cgoAllocMap) {
- if x.reff97e405d != nil {
- return *x.reff97e405d, nil
+func (x Rect2D) PassValue() (C.VkRect2D, *cgoAllocMap) {
+ if x.ref89e4256f != nil {
+ return *x.ref89e4256f, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -725,142 +503,143 @@ func (x PhysicalDeviceFeatures) PassValue() (C.VkPhysicalDeviceFeatures, *cgoAll
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceFeatures) Deref() {
- if x.reff97e405d == nil {
+func (x *Rect2D) Deref() {
+ if x.ref89e4256f == nil {
return
}
- x.RobustBufferAccess = (Bool32)(x.reff97e405d.robustBufferAccess)
- x.FullDrawIndexUint32 = (Bool32)(x.reff97e405d.fullDrawIndexUint32)
- x.ImageCubeArray = (Bool32)(x.reff97e405d.imageCubeArray)
- x.IndependentBlend = (Bool32)(x.reff97e405d.independentBlend)
- x.GeometryShader = (Bool32)(x.reff97e405d.geometryShader)
- x.TessellationShader = (Bool32)(x.reff97e405d.tessellationShader)
- x.SampleRateShading = (Bool32)(x.reff97e405d.sampleRateShading)
- x.DualSrcBlend = (Bool32)(x.reff97e405d.dualSrcBlend)
- x.LogicOp = (Bool32)(x.reff97e405d.logicOp)
- x.MultiDrawIndirect = (Bool32)(x.reff97e405d.multiDrawIndirect)
- x.DrawIndirectFirstInstance = (Bool32)(x.reff97e405d.drawIndirectFirstInstance)
- x.DepthClamp = (Bool32)(x.reff97e405d.depthClamp)
- x.DepthBiasClamp = (Bool32)(x.reff97e405d.depthBiasClamp)
- x.FillModeNonSolid = (Bool32)(x.reff97e405d.fillModeNonSolid)
- x.DepthBounds = (Bool32)(x.reff97e405d.depthBounds)
- x.WideLines = (Bool32)(x.reff97e405d.wideLines)
- x.LargePoints = (Bool32)(x.reff97e405d.largePoints)
- x.AlphaToOne = (Bool32)(x.reff97e405d.alphaToOne)
- x.MultiViewport = (Bool32)(x.reff97e405d.multiViewport)
- x.SamplerAnisotropy = (Bool32)(x.reff97e405d.samplerAnisotropy)
- x.TextureCompressionETC2 = (Bool32)(x.reff97e405d.textureCompressionETC2)
- x.TextureCompressionASTC_LDR = (Bool32)(x.reff97e405d.textureCompressionASTC_LDR)
- x.TextureCompressionBC = (Bool32)(x.reff97e405d.textureCompressionBC)
- x.OcclusionQueryPrecise = (Bool32)(x.reff97e405d.occlusionQueryPrecise)
- x.PipelineStatisticsQuery = (Bool32)(x.reff97e405d.pipelineStatisticsQuery)
- x.VertexPipelineStoresAndAtomics = (Bool32)(x.reff97e405d.vertexPipelineStoresAndAtomics)
- x.FragmentStoresAndAtomics = (Bool32)(x.reff97e405d.fragmentStoresAndAtomics)
- x.ShaderTessellationAndGeometryPointSize = (Bool32)(x.reff97e405d.shaderTessellationAndGeometryPointSize)
- x.ShaderImageGatherExtended = (Bool32)(x.reff97e405d.shaderImageGatherExtended)
- x.ShaderStorageImageExtendedFormats = (Bool32)(x.reff97e405d.shaderStorageImageExtendedFormats)
- x.ShaderStorageImageMultisample = (Bool32)(x.reff97e405d.shaderStorageImageMultisample)
- x.ShaderStorageImageReadWithoutFormat = (Bool32)(x.reff97e405d.shaderStorageImageReadWithoutFormat)
- x.ShaderStorageImageWriteWithoutFormat = (Bool32)(x.reff97e405d.shaderStorageImageWriteWithoutFormat)
- x.ShaderUniformBufferArrayDynamicIndexing = (Bool32)(x.reff97e405d.shaderUniformBufferArrayDynamicIndexing)
- x.ShaderSampledImageArrayDynamicIndexing = (Bool32)(x.reff97e405d.shaderSampledImageArrayDynamicIndexing)
- x.ShaderStorageBufferArrayDynamicIndexing = (Bool32)(x.reff97e405d.shaderStorageBufferArrayDynamicIndexing)
- x.ShaderStorageImageArrayDynamicIndexing = (Bool32)(x.reff97e405d.shaderStorageImageArrayDynamicIndexing)
- x.ShaderClipDistance = (Bool32)(x.reff97e405d.shaderClipDistance)
- x.ShaderCullDistance = (Bool32)(x.reff97e405d.shaderCullDistance)
- x.ShaderFloat64 = (Bool32)(x.reff97e405d.shaderFloat64)
- x.ShaderInt64 = (Bool32)(x.reff97e405d.shaderInt64)
- x.ShaderInt16 = (Bool32)(x.reff97e405d.shaderInt16)
- x.ShaderResourceResidency = (Bool32)(x.reff97e405d.shaderResourceResidency)
- x.ShaderResourceMinLod = (Bool32)(x.reff97e405d.shaderResourceMinLod)
- x.SparseBinding = (Bool32)(x.reff97e405d.sparseBinding)
- x.SparseResidencyBuffer = (Bool32)(x.reff97e405d.sparseResidencyBuffer)
- x.SparseResidencyImage2D = (Bool32)(x.reff97e405d.sparseResidencyImage2D)
- x.SparseResidencyImage3D = (Bool32)(x.reff97e405d.sparseResidencyImage3D)
- x.SparseResidency2Samples = (Bool32)(x.reff97e405d.sparseResidency2Samples)
- x.SparseResidency4Samples = (Bool32)(x.reff97e405d.sparseResidency4Samples)
- x.SparseResidency8Samples = (Bool32)(x.reff97e405d.sparseResidency8Samples)
- x.SparseResidency16Samples = (Bool32)(x.reff97e405d.sparseResidency16Samples)
- x.SparseResidencyAliased = (Bool32)(x.reff97e405d.sparseResidencyAliased)
- x.VariableMultisampleRate = (Bool32)(x.reff97e405d.variableMultisampleRate)
- x.InheritedQueries = (Bool32)(x.reff97e405d.inheritedQueries)
+ x.Offset = *NewOffset2DRef(unsafe.Pointer(&x.ref89e4256f.offset))
+ x.Extent = *NewExtent2DRef(unsafe.Pointer(&x.ref89e4256f.extent))
}
-// allocFormatPropertiesMemory allocates memory for type C.VkFormatProperties in C.
+// allocBaseInStructureMemory allocates memory for type C.VkBaseInStructure in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocFormatPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfFormatPropertiesValue))
+func allocBaseInStructureMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBaseInStructureValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfFormatPropertiesValue = unsafe.Sizeof([1]C.VkFormatProperties{})
+const sizeOfBaseInStructureValue = unsafe.Sizeof([1]C.VkBaseInStructure{})
+
+type sliceHeader struct {
+ Data unsafe.Pointer
+ Len int
+ Cap int
+}
+
+// allocStruct_VkBaseInStructureMemory allocates memory for type C.struct_VkBaseInStructure in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocStruct_VkBaseInStructureMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfStruct_VkBaseInStructureValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfStruct_VkBaseInStructureValue = unsafe.Sizeof([1]C.struct_VkBaseInStructure{})
+
+const sizeOfPtr = unsafe.Sizeof(&struct{}{})
+
+// unpackSBaseInStructure transforms a sliced Go data structure into plain C format.
+func unpackSBaseInStructure(x []BaseInStructure) (unpacked *C.struct_VkBaseInStructure, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.struct_VkBaseInStructure) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocStruct_VkBaseInStructureMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.struct_VkBaseInStructure)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.struct_VkBaseInStructure)(h.Data)
+ return
+}
+
+// packSBaseInStructure reads sliced Go data structure out from plain C format.
+func packSBaseInStructure(v []BaseInStructure, ptr0 *C.struct_VkBaseInStructure) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfStruct_VkBaseInStructureValue]C.struct_VkBaseInStructure)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewBaseInStructureRef(unsafe.Pointer(&ptr1))
+ }
+}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *FormatProperties) Ref() *C.VkFormatProperties {
+func (x *BaseInStructure) Ref() *C.VkBaseInStructure {
if x == nil {
return nil
}
- return x.refc4b9937b
+ return x.refeae401a9
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *FormatProperties) Free() {
- if x != nil && x.allocsc4b9937b != nil {
- x.allocsc4b9937b.(*cgoAllocMap).Free()
- x.refc4b9937b = nil
+func (x *BaseInStructure) Free() {
+ if x != nil && x.allocseae401a9 != nil {
+ x.allocseae401a9.(*cgoAllocMap).Free()
+ x.refeae401a9 = nil
}
}
-// NewFormatPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewBaseInStructureRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewFormatPropertiesRef(ref unsafe.Pointer) *FormatProperties {
+func NewBaseInStructureRef(ref unsafe.Pointer) *BaseInStructure {
if ref == nil {
return nil
}
- obj := new(FormatProperties)
- obj.refc4b9937b = (*C.VkFormatProperties)(unsafe.Pointer(ref))
+ obj := new(BaseInStructure)
+ obj.refeae401a9 = (*C.VkBaseInStructure)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *FormatProperties) PassRef() (*C.VkFormatProperties, *cgoAllocMap) {
+func (x *BaseInStructure) PassRef() (*C.VkBaseInStructure, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refc4b9937b != nil {
- return x.refc4b9937b, nil
+ } else if x.refeae401a9 != nil {
+ return x.refeae401a9, nil
}
- memc4b9937b := allocFormatPropertiesMemory(1)
- refc4b9937b := (*C.VkFormatProperties)(memc4b9937b)
- allocsc4b9937b := new(cgoAllocMap)
- allocsc4b9937b.Add(memc4b9937b)
-
- var clinearTilingFeatures_allocs *cgoAllocMap
- refc4b9937b.linearTilingFeatures, clinearTilingFeatures_allocs = (C.VkFormatFeatureFlags)(x.LinearTilingFeatures), cgoAllocsUnknown
- allocsc4b9937b.Borrow(clinearTilingFeatures_allocs)
+ memeae401a9 := allocBaseInStructureMemory(1)
+ refeae401a9 := (*C.VkBaseInStructure)(memeae401a9)
+ allocseae401a9 := new(cgoAllocMap)
+ allocseae401a9.Add(memeae401a9)
- var coptimalTilingFeatures_allocs *cgoAllocMap
- refc4b9937b.optimalTilingFeatures, coptimalTilingFeatures_allocs = (C.VkFormatFeatureFlags)(x.OptimalTilingFeatures), cgoAllocsUnknown
- allocsc4b9937b.Borrow(coptimalTilingFeatures_allocs)
+ var csType_allocs *cgoAllocMap
+ refeae401a9.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocseae401a9.Borrow(csType_allocs)
- var cbufferFeatures_allocs *cgoAllocMap
- refc4b9937b.bufferFeatures, cbufferFeatures_allocs = (C.VkFormatFeatureFlags)(x.BufferFeatures), cgoAllocsUnknown
- allocsc4b9937b.Borrow(cbufferFeatures_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refeae401a9.pNext, cpNext_allocs = unpackSBaseInStructure(x.PNext)
+ allocseae401a9.Borrow(cpNext_allocs)
- x.refc4b9937b = refc4b9937b
- x.allocsc4b9937b = allocsc4b9937b
- return refc4b9937b, allocsc4b9937b
+ x.refeae401a9 = refeae401a9
+ x.allocseae401a9 = allocseae401a9
+ return refeae401a9, allocseae401a9
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x FormatProperties) PassValue() (C.VkFormatProperties, *cgoAllocMap) {
- if x.refc4b9937b != nil {
- return *x.refc4b9937b, nil
+func (x BaseInStructure) PassValue() (C.VkBaseInStructure, *cgoAllocMap) {
+ if x.refeae401a9 != nil {
+ return *x.refeae401a9, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -868,90 +647,135 @@ func (x FormatProperties) PassValue() (C.VkFormatProperties, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *FormatProperties) Deref() {
- if x.refc4b9937b == nil {
+func (x *BaseInStructure) Deref() {
+ if x.refeae401a9 == nil {
return
}
- x.LinearTilingFeatures = (FormatFeatureFlags)(x.refc4b9937b.linearTilingFeatures)
- x.OptimalTilingFeatures = (FormatFeatureFlags)(x.refc4b9937b.optimalTilingFeatures)
- x.BufferFeatures = (FormatFeatureFlags)(x.refc4b9937b.bufferFeatures)
+ x.SType = (StructureType)(x.refeae401a9.sType)
+ packSBaseInStructure(x.PNext, x.refeae401a9.pNext)
}
-// allocExtent3DMemory allocates memory for type C.VkExtent3D in C.
+// allocBaseOutStructureMemory allocates memory for type C.VkBaseOutStructure in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocExtent3DMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExtent3DValue))
+func allocBaseOutStructureMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBaseOutStructureValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfExtent3DValue = unsafe.Sizeof([1]C.VkExtent3D{})
+const sizeOfBaseOutStructureValue = unsafe.Sizeof([1]C.VkBaseOutStructure{})
+
+// allocStruct_VkBaseOutStructureMemory allocates memory for type C.struct_VkBaseOutStructure in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocStruct_VkBaseOutStructureMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfStruct_VkBaseOutStructureValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfStruct_VkBaseOutStructureValue = unsafe.Sizeof([1]C.struct_VkBaseOutStructure{})
+
+// unpackSBaseOutStructure transforms a sliced Go data structure into plain C format.
+func unpackSBaseOutStructure(x []BaseOutStructure) (unpacked *C.struct_VkBaseOutStructure, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.struct_VkBaseOutStructure) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocStruct_VkBaseOutStructureMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.struct_VkBaseOutStructure)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.struct_VkBaseOutStructure)(h.Data)
+ return
+}
+
+// packSBaseOutStructure reads sliced Go data structure out from plain C format.
+func packSBaseOutStructure(v []BaseOutStructure, ptr0 *C.struct_VkBaseOutStructure) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfStruct_VkBaseOutStructureValue]C.struct_VkBaseOutStructure)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewBaseOutStructureRef(unsafe.Pointer(&ptr1))
+ }
+}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *Extent3D) Ref() *C.VkExtent3D {
+func (x *BaseOutStructure) Ref() *C.VkBaseOutStructure {
if x == nil {
return nil
}
- return x.reffbf6c42a
+ return x.refd536fcd0
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *Extent3D) Free() {
- if x != nil && x.allocsfbf6c42a != nil {
- x.allocsfbf6c42a.(*cgoAllocMap).Free()
- x.reffbf6c42a = nil
+func (x *BaseOutStructure) Free() {
+ if x != nil && x.allocsd536fcd0 != nil {
+ x.allocsd536fcd0.(*cgoAllocMap).Free()
+ x.refd536fcd0 = nil
}
}
-// NewExtent3DRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewBaseOutStructureRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewExtent3DRef(ref unsafe.Pointer) *Extent3D {
+func NewBaseOutStructureRef(ref unsafe.Pointer) *BaseOutStructure {
if ref == nil {
return nil
}
- obj := new(Extent3D)
- obj.reffbf6c42a = (*C.VkExtent3D)(unsafe.Pointer(ref))
+ obj := new(BaseOutStructure)
+ obj.refd536fcd0 = (*C.VkBaseOutStructure)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *Extent3D) PassRef() (*C.VkExtent3D, *cgoAllocMap) {
+func (x *BaseOutStructure) PassRef() (*C.VkBaseOutStructure, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.reffbf6c42a != nil {
- return x.reffbf6c42a, nil
+ } else if x.refd536fcd0 != nil {
+ return x.refd536fcd0, nil
}
- memfbf6c42a := allocExtent3DMemory(1)
- reffbf6c42a := (*C.VkExtent3D)(memfbf6c42a)
- allocsfbf6c42a := new(cgoAllocMap)
- allocsfbf6c42a.Add(memfbf6c42a)
+ memd536fcd0 := allocBaseOutStructureMemory(1)
+ refd536fcd0 := (*C.VkBaseOutStructure)(memd536fcd0)
+ allocsd536fcd0 := new(cgoAllocMap)
+ allocsd536fcd0.Add(memd536fcd0)
- var cwidth_allocs *cgoAllocMap
- reffbf6c42a.width, cwidth_allocs = (C.uint32_t)(x.Width), cgoAllocsUnknown
- allocsfbf6c42a.Borrow(cwidth_allocs)
-
- var cheight_allocs *cgoAllocMap
- reffbf6c42a.height, cheight_allocs = (C.uint32_t)(x.Height), cgoAllocsUnknown
- allocsfbf6c42a.Borrow(cheight_allocs)
+ var csType_allocs *cgoAllocMap
+ refd536fcd0.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd536fcd0.Borrow(csType_allocs)
- var cdepth_allocs *cgoAllocMap
- reffbf6c42a.depth, cdepth_allocs = (C.uint32_t)(x.Depth), cgoAllocsUnknown
- allocsfbf6c42a.Borrow(cdepth_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refd536fcd0.pNext, cpNext_allocs = unpackSBaseOutStructure(x.PNext)
+ allocsd536fcd0.Borrow(cpNext_allocs)
- x.reffbf6c42a = reffbf6c42a
- x.allocsfbf6c42a = allocsfbf6c42a
- return reffbf6c42a, allocsfbf6c42a
+ x.refd536fcd0 = refd536fcd0
+ x.allocsd536fcd0 = allocsd536fcd0
+ return refd536fcd0, allocsd536fcd0
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x Extent3D) PassValue() (C.VkExtent3D, *cgoAllocMap) {
- if x.reffbf6c42a != nil {
- return *x.reffbf6c42a, nil
+func (x BaseOutStructure) PassValue() (C.VkBaseOutStructure, *cgoAllocMap) {
+ if x.refd536fcd0 != nil {
+ return *x.refd536fcd0, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -959,98 +783,113 @@ func (x Extent3D) PassValue() (C.VkExtent3D, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *Extent3D) Deref() {
- if x.reffbf6c42a == nil {
+func (x *BaseOutStructure) Deref() {
+ if x.refd536fcd0 == nil {
return
}
- x.Width = (uint32)(x.reffbf6c42a.width)
- x.Height = (uint32)(x.reffbf6c42a.height)
- x.Depth = (uint32)(x.reffbf6c42a.depth)
+ x.SType = (StructureType)(x.refd536fcd0.sType)
+ packSBaseOutStructure(x.PNext, x.refd536fcd0.pNext)
}
-// allocImageFormatPropertiesMemory allocates memory for type C.VkImageFormatProperties in C.
+// allocBufferMemoryBarrierMemory allocates memory for type C.VkBufferMemoryBarrier in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocImageFormatPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageFormatPropertiesValue))
+func allocBufferMemoryBarrierMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBufferMemoryBarrierValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfImageFormatPropertiesValue = unsafe.Sizeof([1]C.VkImageFormatProperties{})
+const sizeOfBufferMemoryBarrierValue = unsafe.Sizeof([1]C.VkBufferMemoryBarrier{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ImageFormatProperties) Ref() *C.VkImageFormatProperties {
+func (x *BufferMemoryBarrier) Ref() *C.VkBufferMemoryBarrier {
if x == nil {
return nil
}
- return x.ref4cfb2ea2
+ return x.refeaf4700b
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ImageFormatProperties) Free() {
- if x != nil && x.allocs4cfb2ea2 != nil {
- x.allocs4cfb2ea2.(*cgoAllocMap).Free()
- x.ref4cfb2ea2 = nil
+func (x *BufferMemoryBarrier) Free() {
+ if x != nil && x.allocseaf4700b != nil {
+ x.allocseaf4700b.(*cgoAllocMap).Free()
+ x.refeaf4700b = nil
}
}
-// NewImageFormatPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewBufferMemoryBarrierRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewImageFormatPropertiesRef(ref unsafe.Pointer) *ImageFormatProperties {
+func NewBufferMemoryBarrierRef(ref unsafe.Pointer) *BufferMemoryBarrier {
if ref == nil {
return nil
}
- obj := new(ImageFormatProperties)
- obj.ref4cfb2ea2 = (*C.VkImageFormatProperties)(unsafe.Pointer(ref))
+ obj := new(BufferMemoryBarrier)
+ obj.refeaf4700b = (*C.VkBufferMemoryBarrier)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ImageFormatProperties) PassRef() (*C.VkImageFormatProperties, *cgoAllocMap) {
+func (x *BufferMemoryBarrier) PassRef() (*C.VkBufferMemoryBarrier, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref4cfb2ea2 != nil {
- return x.ref4cfb2ea2, nil
+ } else if x.refeaf4700b != nil {
+ return x.refeaf4700b, nil
}
- mem4cfb2ea2 := allocImageFormatPropertiesMemory(1)
- ref4cfb2ea2 := (*C.VkImageFormatProperties)(mem4cfb2ea2)
- allocs4cfb2ea2 := new(cgoAllocMap)
- allocs4cfb2ea2.Add(mem4cfb2ea2)
+ memeaf4700b := allocBufferMemoryBarrierMemory(1)
+ refeaf4700b := (*C.VkBufferMemoryBarrier)(memeaf4700b)
+ allocseaf4700b := new(cgoAllocMap)
+ allocseaf4700b.Add(memeaf4700b)
- var cmaxExtent_allocs *cgoAllocMap
- ref4cfb2ea2.maxExtent, cmaxExtent_allocs = x.MaxExtent.PassValue()
- allocs4cfb2ea2.Borrow(cmaxExtent_allocs)
+ var csType_allocs *cgoAllocMap
+ refeaf4700b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocseaf4700b.Borrow(csType_allocs)
- var cmaxMipLevels_allocs *cgoAllocMap
- ref4cfb2ea2.maxMipLevels, cmaxMipLevels_allocs = (C.uint32_t)(x.MaxMipLevels), cgoAllocsUnknown
- allocs4cfb2ea2.Borrow(cmaxMipLevels_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refeaf4700b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocseaf4700b.Borrow(cpNext_allocs)
- var cmaxArrayLayers_allocs *cgoAllocMap
- ref4cfb2ea2.maxArrayLayers, cmaxArrayLayers_allocs = (C.uint32_t)(x.MaxArrayLayers), cgoAllocsUnknown
- allocs4cfb2ea2.Borrow(cmaxArrayLayers_allocs)
+ var csrcAccessMask_allocs *cgoAllocMap
+ refeaf4700b.srcAccessMask, csrcAccessMask_allocs = (C.VkAccessFlags)(x.SrcAccessMask), cgoAllocsUnknown
+ allocseaf4700b.Borrow(csrcAccessMask_allocs)
- var csampleCounts_allocs *cgoAllocMap
- ref4cfb2ea2.sampleCounts, csampleCounts_allocs = (C.VkSampleCountFlags)(x.SampleCounts), cgoAllocsUnknown
- allocs4cfb2ea2.Borrow(csampleCounts_allocs)
+ var cdstAccessMask_allocs *cgoAllocMap
+ refeaf4700b.dstAccessMask, cdstAccessMask_allocs = (C.VkAccessFlags)(x.DstAccessMask), cgoAllocsUnknown
+ allocseaf4700b.Borrow(cdstAccessMask_allocs)
- var cmaxResourceSize_allocs *cgoAllocMap
- ref4cfb2ea2.maxResourceSize, cmaxResourceSize_allocs = (C.VkDeviceSize)(x.MaxResourceSize), cgoAllocsUnknown
- allocs4cfb2ea2.Borrow(cmaxResourceSize_allocs)
+ var csrcQueueFamilyIndex_allocs *cgoAllocMap
+ refeaf4700b.srcQueueFamilyIndex, csrcQueueFamilyIndex_allocs = (C.uint32_t)(x.SrcQueueFamilyIndex), cgoAllocsUnknown
+ allocseaf4700b.Borrow(csrcQueueFamilyIndex_allocs)
- x.ref4cfb2ea2 = ref4cfb2ea2
- x.allocs4cfb2ea2 = allocs4cfb2ea2
- return ref4cfb2ea2, allocs4cfb2ea2
+ var cdstQueueFamilyIndex_allocs *cgoAllocMap
+ refeaf4700b.dstQueueFamilyIndex, cdstQueueFamilyIndex_allocs = (C.uint32_t)(x.DstQueueFamilyIndex), cgoAllocsUnknown
+ allocseaf4700b.Borrow(cdstQueueFamilyIndex_allocs)
+
+ var cbuffer_allocs *cgoAllocMap
+ refeaf4700b.buffer, cbuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.Buffer)), cgoAllocsUnknown
+ allocseaf4700b.Borrow(cbuffer_allocs)
+
+ var coffset_allocs *cgoAllocMap
+ refeaf4700b.offset, coffset_allocs = (C.VkDeviceSize)(x.Offset), cgoAllocsUnknown
+ allocseaf4700b.Borrow(coffset_allocs)
+
+ var csize_allocs *cgoAllocMap
+ refeaf4700b.size, csize_allocs = (C.VkDeviceSize)(x.Size), cgoAllocsUnknown
+ allocseaf4700b.Borrow(csize_allocs)
+
+ x.refeaf4700b = refeaf4700b
+ x.allocseaf4700b = allocseaf4700b
+ return refeaf4700b, allocseaf4700b
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ImageFormatProperties) PassValue() (C.VkImageFormatProperties, *cgoAllocMap) {
- if x.ref4cfb2ea2 != nil {
- return *x.ref4cfb2ea2, nil
+func (x BufferMemoryBarrier) PassValue() (C.VkBufferMemoryBarrier, *cgoAllocMap) {
+ if x.refeaf4700b != nil {
+ return *x.refeaf4700b, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -1058,504 +897,27765 @@ func (x ImageFormatProperties) PassValue() (C.VkImageFormatProperties, *cgoAlloc
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ImageFormatProperties) Deref() {
- if x.ref4cfb2ea2 == nil {
+func (x *BufferMemoryBarrier) Deref() {
+ if x.refeaf4700b == nil {
return
}
- x.MaxExtent = *NewExtent3DRef(unsafe.Pointer(&x.ref4cfb2ea2.maxExtent))
- x.MaxMipLevels = (uint32)(x.ref4cfb2ea2.maxMipLevels)
- x.MaxArrayLayers = (uint32)(x.ref4cfb2ea2.maxArrayLayers)
- x.SampleCounts = (SampleCountFlags)(x.ref4cfb2ea2.sampleCounts)
- x.MaxResourceSize = (DeviceSize)(x.ref4cfb2ea2.maxResourceSize)
+ x.SType = (StructureType)(x.refeaf4700b.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refeaf4700b.pNext))
+ x.SrcAccessMask = (AccessFlags)(x.refeaf4700b.srcAccessMask)
+ x.DstAccessMask = (AccessFlags)(x.refeaf4700b.dstAccessMask)
+ x.SrcQueueFamilyIndex = (uint32)(x.refeaf4700b.srcQueueFamilyIndex)
+ x.DstQueueFamilyIndex = (uint32)(x.refeaf4700b.dstQueueFamilyIndex)
+ x.Buffer = *(*Buffer)(unsafe.Pointer(&x.refeaf4700b.buffer))
+ x.Offset = (DeviceSize)(x.refeaf4700b.offset)
+ x.Size = (DeviceSize)(x.refeaf4700b.size)
}
-// allocPhysicalDeviceLimitsMemory allocates memory for type C.VkPhysicalDeviceLimits in C.
+// allocDispatchIndirectCommandMemory allocates memory for type C.VkDispatchIndirectCommand in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceLimitsMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceLimitsValue))
+func allocDispatchIndirectCommandMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDispatchIndirectCommandValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceLimitsValue = unsafe.Sizeof([1]C.VkPhysicalDeviceLimits{})
+const sizeOfDispatchIndirectCommandValue = unsafe.Sizeof([1]C.VkDispatchIndirectCommand{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceLimits) Ref() *C.VkPhysicalDeviceLimits {
+func (x *DispatchIndirectCommand) Ref() *C.VkDispatchIndirectCommand {
if x == nil {
return nil
}
- return x.ref7926795a
+ return x.refd298ba27
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceLimits) Free() {
- if x != nil && x.allocs7926795a != nil {
- x.allocs7926795a.(*cgoAllocMap).Free()
- x.ref7926795a = nil
+func (x *DispatchIndirectCommand) Free() {
+ if x != nil && x.allocsd298ba27 != nil {
+ x.allocsd298ba27.(*cgoAllocMap).Free()
+ x.refd298ba27 = nil
}
}
-// NewPhysicalDeviceLimitsRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDispatchIndirectCommandRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceLimitsRef(ref unsafe.Pointer) *PhysicalDeviceLimits {
+func NewDispatchIndirectCommandRef(ref unsafe.Pointer) *DispatchIndirectCommand {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceLimits)
- obj.ref7926795a = (*C.VkPhysicalDeviceLimits)(unsafe.Pointer(ref))
+ obj := new(DispatchIndirectCommand)
+ obj.refd298ba27 = (*C.VkDispatchIndirectCommand)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceLimits) PassRef() (*C.VkPhysicalDeviceLimits, *cgoAllocMap) {
+func (x *DispatchIndirectCommand) PassRef() (*C.VkDispatchIndirectCommand, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref7926795a != nil {
- return x.ref7926795a, nil
+ } else if x.refd298ba27 != nil {
+ return x.refd298ba27, nil
}
- mem7926795a := allocPhysicalDeviceLimitsMemory(1)
- ref7926795a := (*C.VkPhysicalDeviceLimits)(mem7926795a)
- allocs7926795a := new(cgoAllocMap)
- allocs7926795a.Add(mem7926795a)
-
- var cmaxImageDimension1D_allocs *cgoAllocMap
- ref7926795a.maxImageDimension1D, cmaxImageDimension1D_allocs = (C.uint32_t)(x.MaxImageDimension1D), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxImageDimension1D_allocs)
-
- var cmaxImageDimension2D_allocs *cgoAllocMap
- ref7926795a.maxImageDimension2D, cmaxImageDimension2D_allocs = (C.uint32_t)(x.MaxImageDimension2D), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxImageDimension2D_allocs)
+ memd298ba27 := allocDispatchIndirectCommandMemory(1)
+ refd298ba27 := (*C.VkDispatchIndirectCommand)(memd298ba27)
+ allocsd298ba27 := new(cgoAllocMap)
+ allocsd298ba27.Add(memd298ba27)
- var cmaxImageDimension3D_allocs *cgoAllocMap
- ref7926795a.maxImageDimension3D, cmaxImageDimension3D_allocs = (C.uint32_t)(x.MaxImageDimension3D), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxImageDimension3D_allocs)
+ var cx_allocs *cgoAllocMap
+ refd298ba27.x, cx_allocs = (C.uint32_t)(x.X), cgoAllocsUnknown
+ allocsd298ba27.Borrow(cx_allocs)
- var cmaxImageDimensionCube_allocs *cgoAllocMap
- ref7926795a.maxImageDimensionCube, cmaxImageDimensionCube_allocs = (C.uint32_t)(x.MaxImageDimensionCube), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxImageDimensionCube_allocs)
+ var cy_allocs *cgoAllocMap
+ refd298ba27.y, cy_allocs = (C.uint32_t)(x.Y), cgoAllocsUnknown
+ allocsd298ba27.Borrow(cy_allocs)
- var cmaxImageArrayLayers_allocs *cgoAllocMap
- ref7926795a.maxImageArrayLayers, cmaxImageArrayLayers_allocs = (C.uint32_t)(x.MaxImageArrayLayers), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxImageArrayLayers_allocs)
+ var cz_allocs *cgoAllocMap
+ refd298ba27.z, cz_allocs = (C.uint32_t)(x.Z), cgoAllocsUnknown
+ allocsd298ba27.Borrow(cz_allocs)
- var cmaxTexelBufferElements_allocs *cgoAllocMap
- ref7926795a.maxTexelBufferElements, cmaxTexelBufferElements_allocs = (C.uint32_t)(x.MaxTexelBufferElements), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxTexelBufferElements_allocs)
+ x.refd298ba27 = refd298ba27
+ x.allocsd298ba27 = allocsd298ba27
+ return refd298ba27, allocsd298ba27
- var cmaxUniformBufferRange_allocs *cgoAllocMap
- ref7926795a.maxUniformBufferRange, cmaxUniformBufferRange_allocs = (C.uint32_t)(x.MaxUniformBufferRange), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxUniformBufferRange_allocs)
+}
- var cmaxStorageBufferRange_allocs *cgoAllocMap
- ref7926795a.maxStorageBufferRange, cmaxStorageBufferRange_allocs = (C.uint32_t)(x.MaxStorageBufferRange), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxStorageBufferRange_allocs)
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DispatchIndirectCommand) PassValue() (C.VkDispatchIndirectCommand, *cgoAllocMap) {
+ if x.refd298ba27 != nil {
+ return *x.refd298ba27, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
- var cmaxPushConstantsSize_allocs *cgoAllocMap
- ref7926795a.maxPushConstantsSize, cmaxPushConstantsSize_allocs = (C.uint32_t)(x.MaxPushConstantsSize), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxPushConstantsSize_allocs)
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *DispatchIndirectCommand) Deref() {
+ if x.refd298ba27 == nil {
+ return
+ }
+ x.X = (uint32)(x.refd298ba27.x)
+ x.Y = (uint32)(x.refd298ba27.y)
+ x.Z = (uint32)(x.refd298ba27.z)
+}
- var cmaxMemoryAllocationCount_allocs *cgoAllocMap
- ref7926795a.maxMemoryAllocationCount, cmaxMemoryAllocationCount_allocs = (C.uint32_t)(x.MaxMemoryAllocationCount), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxMemoryAllocationCount_allocs)
+// allocDrawIndexedIndirectCommandMemory allocates memory for type C.VkDrawIndexedIndirectCommand in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocDrawIndexedIndirectCommandMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDrawIndexedIndirectCommandValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
- var cmaxSamplerAllocationCount_allocs *cgoAllocMap
- ref7926795a.maxSamplerAllocationCount, cmaxSamplerAllocationCount_allocs = (C.uint32_t)(x.MaxSamplerAllocationCount), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxSamplerAllocationCount_allocs)
+const sizeOfDrawIndexedIndirectCommandValue = unsafe.Sizeof([1]C.VkDrawIndexedIndirectCommand{})
- var cbufferImageGranularity_allocs *cgoAllocMap
- ref7926795a.bufferImageGranularity, cbufferImageGranularity_allocs = (C.VkDeviceSize)(x.BufferImageGranularity), cgoAllocsUnknown
- allocs7926795a.Borrow(cbufferImageGranularity_allocs)
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *DrawIndexedIndirectCommand) Ref() *C.VkDrawIndexedIndirectCommand {
+ if x == nil {
+ return nil
+ }
+ return x.ref4c78b5c3
+}
- var csparseAddressSpaceSize_allocs *cgoAllocMap
- ref7926795a.sparseAddressSpaceSize, csparseAddressSpaceSize_allocs = (C.VkDeviceSize)(x.SparseAddressSpaceSize), cgoAllocsUnknown
- allocs7926795a.Borrow(csparseAddressSpaceSize_allocs)
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *DrawIndexedIndirectCommand) Free() {
+ if x != nil && x.allocs4c78b5c3 != nil {
+ x.allocs4c78b5c3.(*cgoAllocMap).Free()
+ x.ref4c78b5c3 = nil
+ }
+}
- var cmaxBoundDescriptorSets_allocs *cgoAllocMap
- ref7926795a.maxBoundDescriptorSets, cmaxBoundDescriptorSets_allocs = (C.uint32_t)(x.MaxBoundDescriptorSets), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxBoundDescriptorSets_allocs)
+// NewDrawIndexedIndirectCommandRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewDrawIndexedIndirectCommandRef(ref unsafe.Pointer) *DrawIndexedIndirectCommand {
+ if ref == nil {
+ return nil
+ }
+ obj := new(DrawIndexedIndirectCommand)
+ obj.ref4c78b5c3 = (*C.VkDrawIndexedIndirectCommand)(unsafe.Pointer(ref))
+ return obj
+}
- var cmaxPerStageDescriptorSamplers_allocs *cgoAllocMap
- ref7926795a.maxPerStageDescriptorSamplers, cmaxPerStageDescriptorSamplers_allocs = (C.uint32_t)(x.MaxPerStageDescriptorSamplers), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxPerStageDescriptorSamplers_allocs)
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DrawIndexedIndirectCommand) PassRef() (*C.VkDrawIndexedIndirectCommand, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref4c78b5c3 != nil {
+ return x.ref4c78b5c3, nil
+ }
+ mem4c78b5c3 := allocDrawIndexedIndirectCommandMemory(1)
+ ref4c78b5c3 := (*C.VkDrawIndexedIndirectCommand)(mem4c78b5c3)
+ allocs4c78b5c3 := new(cgoAllocMap)
+ allocs4c78b5c3.Add(mem4c78b5c3)
- var cmaxPerStageDescriptorUniformBuffers_allocs *cgoAllocMap
- ref7926795a.maxPerStageDescriptorUniformBuffers, cmaxPerStageDescriptorUniformBuffers_allocs = (C.uint32_t)(x.MaxPerStageDescriptorUniformBuffers), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxPerStageDescriptorUniformBuffers_allocs)
+ var cindexCount_allocs *cgoAllocMap
+ ref4c78b5c3.indexCount, cindexCount_allocs = (C.uint32_t)(x.IndexCount), cgoAllocsUnknown
+ allocs4c78b5c3.Borrow(cindexCount_allocs)
- var cmaxPerStageDescriptorStorageBuffers_allocs *cgoAllocMap
- ref7926795a.maxPerStageDescriptorStorageBuffers, cmaxPerStageDescriptorStorageBuffers_allocs = (C.uint32_t)(x.MaxPerStageDescriptorStorageBuffers), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxPerStageDescriptorStorageBuffers_allocs)
+ var cinstanceCount_allocs *cgoAllocMap
+ ref4c78b5c3.instanceCount, cinstanceCount_allocs = (C.uint32_t)(x.InstanceCount), cgoAllocsUnknown
+ allocs4c78b5c3.Borrow(cinstanceCount_allocs)
- var cmaxPerStageDescriptorSampledImages_allocs *cgoAllocMap
- ref7926795a.maxPerStageDescriptorSampledImages, cmaxPerStageDescriptorSampledImages_allocs = (C.uint32_t)(x.MaxPerStageDescriptorSampledImages), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxPerStageDescriptorSampledImages_allocs)
+ var cfirstIndex_allocs *cgoAllocMap
+ ref4c78b5c3.firstIndex, cfirstIndex_allocs = (C.uint32_t)(x.FirstIndex), cgoAllocsUnknown
+ allocs4c78b5c3.Borrow(cfirstIndex_allocs)
- var cmaxPerStageDescriptorStorageImages_allocs *cgoAllocMap
- ref7926795a.maxPerStageDescriptorStorageImages, cmaxPerStageDescriptorStorageImages_allocs = (C.uint32_t)(x.MaxPerStageDescriptorStorageImages), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxPerStageDescriptorStorageImages_allocs)
+ var cvertexOffset_allocs *cgoAllocMap
+ ref4c78b5c3.vertexOffset, cvertexOffset_allocs = (C.int32_t)(x.VertexOffset), cgoAllocsUnknown
+ allocs4c78b5c3.Borrow(cvertexOffset_allocs)
- var cmaxPerStageDescriptorInputAttachments_allocs *cgoAllocMap
- ref7926795a.maxPerStageDescriptorInputAttachments, cmaxPerStageDescriptorInputAttachments_allocs = (C.uint32_t)(x.MaxPerStageDescriptorInputAttachments), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxPerStageDescriptorInputAttachments_allocs)
+ var cfirstInstance_allocs *cgoAllocMap
+ ref4c78b5c3.firstInstance, cfirstInstance_allocs = (C.uint32_t)(x.FirstInstance), cgoAllocsUnknown
+ allocs4c78b5c3.Borrow(cfirstInstance_allocs)
- var cmaxPerStageResources_allocs *cgoAllocMap
- ref7926795a.maxPerStageResources, cmaxPerStageResources_allocs = (C.uint32_t)(x.MaxPerStageResources), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxPerStageResources_allocs)
+ x.ref4c78b5c3 = ref4c78b5c3
+ x.allocs4c78b5c3 = allocs4c78b5c3
+ return ref4c78b5c3, allocs4c78b5c3
- var cmaxDescriptorSetSamplers_allocs *cgoAllocMap
- ref7926795a.maxDescriptorSetSamplers, cmaxDescriptorSetSamplers_allocs = (C.uint32_t)(x.MaxDescriptorSetSamplers), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxDescriptorSetSamplers_allocs)
+}
- var cmaxDescriptorSetUniformBuffers_allocs *cgoAllocMap
- ref7926795a.maxDescriptorSetUniformBuffers, cmaxDescriptorSetUniformBuffers_allocs = (C.uint32_t)(x.MaxDescriptorSetUniformBuffers), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxDescriptorSetUniformBuffers_allocs)
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DrawIndexedIndirectCommand) PassValue() (C.VkDrawIndexedIndirectCommand, *cgoAllocMap) {
+ if x.ref4c78b5c3 != nil {
+ return *x.ref4c78b5c3, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
- var cmaxDescriptorSetUniformBuffersDynamic_allocs *cgoAllocMap
- ref7926795a.maxDescriptorSetUniformBuffersDynamic, cmaxDescriptorSetUniformBuffersDynamic_allocs = (C.uint32_t)(x.MaxDescriptorSetUniformBuffersDynamic), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxDescriptorSetUniformBuffersDynamic_allocs)
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *DrawIndexedIndirectCommand) Deref() {
+ if x.ref4c78b5c3 == nil {
+ return
+ }
+ x.IndexCount = (uint32)(x.ref4c78b5c3.indexCount)
+ x.InstanceCount = (uint32)(x.ref4c78b5c3.instanceCount)
+ x.FirstIndex = (uint32)(x.ref4c78b5c3.firstIndex)
+ x.VertexOffset = (int32)(x.ref4c78b5c3.vertexOffset)
+ x.FirstInstance = (uint32)(x.ref4c78b5c3.firstInstance)
+}
- var cmaxDescriptorSetStorageBuffers_allocs *cgoAllocMap
- ref7926795a.maxDescriptorSetStorageBuffers, cmaxDescriptorSetStorageBuffers_allocs = (C.uint32_t)(x.MaxDescriptorSetStorageBuffers), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxDescriptorSetStorageBuffers_allocs)
+// allocDrawIndirectCommandMemory allocates memory for type C.VkDrawIndirectCommand in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocDrawIndirectCommandMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDrawIndirectCommandValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
- var cmaxDescriptorSetStorageBuffersDynamic_allocs *cgoAllocMap
- ref7926795a.maxDescriptorSetStorageBuffersDynamic, cmaxDescriptorSetStorageBuffersDynamic_allocs = (C.uint32_t)(x.MaxDescriptorSetStorageBuffersDynamic), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxDescriptorSetStorageBuffersDynamic_allocs)
+const sizeOfDrawIndirectCommandValue = unsafe.Sizeof([1]C.VkDrawIndirectCommand{})
- var cmaxDescriptorSetSampledImages_allocs *cgoAllocMap
- ref7926795a.maxDescriptorSetSampledImages, cmaxDescriptorSetSampledImages_allocs = (C.uint32_t)(x.MaxDescriptorSetSampledImages), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxDescriptorSetSampledImages_allocs)
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *DrawIndirectCommand) Ref() *C.VkDrawIndirectCommand {
+ if x == nil {
+ return nil
+ }
+ return x.ref2b5b67c4
+}
- var cmaxDescriptorSetStorageImages_allocs *cgoAllocMap
- ref7926795a.maxDescriptorSetStorageImages, cmaxDescriptorSetStorageImages_allocs = (C.uint32_t)(x.MaxDescriptorSetStorageImages), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxDescriptorSetStorageImages_allocs)
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *DrawIndirectCommand) Free() {
+ if x != nil && x.allocs2b5b67c4 != nil {
+ x.allocs2b5b67c4.(*cgoAllocMap).Free()
+ x.ref2b5b67c4 = nil
+ }
+}
- var cmaxDescriptorSetInputAttachments_allocs *cgoAllocMap
- ref7926795a.maxDescriptorSetInputAttachments, cmaxDescriptorSetInputAttachments_allocs = (C.uint32_t)(x.MaxDescriptorSetInputAttachments), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxDescriptorSetInputAttachments_allocs)
+// NewDrawIndirectCommandRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewDrawIndirectCommandRef(ref unsafe.Pointer) *DrawIndirectCommand {
+ if ref == nil {
+ return nil
+ }
+ obj := new(DrawIndirectCommand)
+ obj.ref2b5b67c4 = (*C.VkDrawIndirectCommand)(unsafe.Pointer(ref))
+ return obj
+}
- var cmaxVertexInputAttributes_allocs *cgoAllocMap
- ref7926795a.maxVertexInputAttributes, cmaxVertexInputAttributes_allocs = (C.uint32_t)(x.MaxVertexInputAttributes), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxVertexInputAttributes_allocs)
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DrawIndirectCommand) PassRef() (*C.VkDrawIndirectCommand, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref2b5b67c4 != nil {
+ return x.ref2b5b67c4, nil
+ }
+ mem2b5b67c4 := allocDrawIndirectCommandMemory(1)
+ ref2b5b67c4 := (*C.VkDrawIndirectCommand)(mem2b5b67c4)
+ allocs2b5b67c4 := new(cgoAllocMap)
+ allocs2b5b67c4.Add(mem2b5b67c4)
- var cmaxVertexInputBindings_allocs *cgoAllocMap
- ref7926795a.maxVertexInputBindings, cmaxVertexInputBindings_allocs = (C.uint32_t)(x.MaxVertexInputBindings), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxVertexInputBindings_allocs)
+ var cvertexCount_allocs *cgoAllocMap
+ ref2b5b67c4.vertexCount, cvertexCount_allocs = (C.uint32_t)(x.VertexCount), cgoAllocsUnknown
+ allocs2b5b67c4.Borrow(cvertexCount_allocs)
- var cmaxVertexInputAttributeOffset_allocs *cgoAllocMap
- ref7926795a.maxVertexInputAttributeOffset, cmaxVertexInputAttributeOffset_allocs = (C.uint32_t)(x.MaxVertexInputAttributeOffset), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxVertexInputAttributeOffset_allocs)
+ var cinstanceCount_allocs *cgoAllocMap
+ ref2b5b67c4.instanceCount, cinstanceCount_allocs = (C.uint32_t)(x.InstanceCount), cgoAllocsUnknown
+ allocs2b5b67c4.Borrow(cinstanceCount_allocs)
- var cmaxVertexInputBindingStride_allocs *cgoAllocMap
- ref7926795a.maxVertexInputBindingStride, cmaxVertexInputBindingStride_allocs = (C.uint32_t)(x.MaxVertexInputBindingStride), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxVertexInputBindingStride_allocs)
+ var cfirstVertex_allocs *cgoAllocMap
+ ref2b5b67c4.firstVertex, cfirstVertex_allocs = (C.uint32_t)(x.FirstVertex), cgoAllocsUnknown
+ allocs2b5b67c4.Borrow(cfirstVertex_allocs)
- var cmaxVertexOutputComponents_allocs *cgoAllocMap
- ref7926795a.maxVertexOutputComponents, cmaxVertexOutputComponents_allocs = (C.uint32_t)(x.MaxVertexOutputComponents), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxVertexOutputComponents_allocs)
+ var cfirstInstance_allocs *cgoAllocMap
+ ref2b5b67c4.firstInstance, cfirstInstance_allocs = (C.uint32_t)(x.FirstInstance), cgoAllocsUnknown
+ allocs2b5b67c4.Borrow(cfirstInstance_allocs)
- var cmaxTessellationGenerationLevel_allocs *cgoAllocMap
- ref7926795a.maxTessellationGenerationLevel, cmaxTessellationGenerationLevel_allocs = (C.uint32_t)(x.MaxTessellationGenerationLevel), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxTessellationGenerationLevel_allocs)
+ x.ref2b5b67c4 = ref2b5b67c4
+ x.allocs2b5b67c4 = allocs2b5b67c4
+ return ref2b5b67c4, allocs2b5b67c4
- var cmaxTessellationPatchSize_allocs *cgoAllocMap
- ref7926795a.maxTessellationPatchSize, cmaxTessellationPatchSize_allocs = (C.uint32_t)(x.MaxTessellationPatchSize), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxTessellationPatchSize_allocs)
+}
- var cmaxTessellationControlPerVertexInputComponents_allocs *cgoAllocMap
- ref7926795a.maxTessellationControlPerVertexInputComponents, cmaxTessellationControlPerVertexInputComponents_allocs = (C.uint32_t)(x.MaxTessellationControlPerVertexInputComponents), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxTessellationControlPerVertexInputComponents_allocs)
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DrawIndirectCommand) PassValue() (C.VkDrawIndirectCommand, *cgoAllocMap) {
+ if x.ref2b5b67c4 != nil {
+ return *x.ref2b5b67c4, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
- var cmaxTessellationControlPerVertexOutputComponents_allocs *cgoAllocMap
- ref7926795a.maxTessellationControlPerVertexOutputComponents, cmaxTessellationControlPerVertexOutputComponents_allocs = (C.uint32_t)(x.MaxTessellationControlPerVertexOutputComponents), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxTessellationControlPerVertexOutputComponents_allocs)
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *DrawIndirectCommand) Deref() {
+ if x.ref2b5b67c4 == nil {
+ return
+ }
+ x.VertexCount = (uint32)(x.ref2b5b67c4.vertexCount)
+ x.InstanceCount = (uint32)(x.ref2b5b67c4.instanceCount)
+ x.FirstVertex = (uint32)(x.ref2b5b67c4.firstVertex)
+ x.FirstInstance = (uint32)(x.ref2b5b67c4.firstInstance)
+}
- var cmaxTessellationControlPerPatchOutputComponents_allocs *cgoAllocMap
- ref7926795a.maxTessellationControlPerPatchOutputComponents, cmaxTessellationControlPerPatchOutputComponents_allocs = (C.uint32_t)(x.MaxTessellationControlPerPatchOutputComponents), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxTessellationControlPerPatchOutputComponents_allocs)
+// allocImageSubresourceRangeMemory allocates memory for type C.VkImageSubresourceRange in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocImageSubresourceRangeMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageSubresourceRangeValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfImageSubresourceRangeValue = unsafe.Sizeof([1]C.VkImageSubresourceRange{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ImageSubresourceRange) Ref() *C.VkImageSubresourceRange {
+ if x == nil {
+ return nil
+ }
+ return x.ref5aa1126
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ImageSubresourceRange) Free() {
+ if x != nil && x.allocs5aa1126 != nil {
+ x.allocs5aa1126.(*cgoAllocMap).Free()
+ x.ref5aa1126 = nil
+ }
+}
+
+// NewImageSubresourceRangeRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewImageSubresourceRangeRef(ref unsafe.Pointer) *ImageSubresourceRange {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ImageSubresourceRange)
+ obj.ref5aa1126 = (*C.VkImageSubresourceRange)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ImageSubresourceRange) PassRef() (*C.VkImageSubresourceRange, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref5aa1126 != nil {
+ return x.ref5aa1126, nil
+ }
+ mem5aa1126 := allocImageSubresourceRangeMemory(1)
+ ref5aa1126 := (*C.VkImageSubresourceRange)(mem5aa1126)
+ allocs5aa1126 := new(cgoAllocMap)
+ allocs5aa1126.Add(mem5aa1126)
+
+ var caspectMask_allocs *cgoAllocMap
+ ref5aa1126.aspectMask, caspectMask_allocs = (C.VkImageAspectFlags)(x.AspectMask), cgoAllocsUnknown
+ allocs5aa1126.Borrow(caspectMask_allocs)
+
+ var cbaseMipLevel_allocs *cgoAllocMap
+ ref5aa1126.baseMipLevel, cbaseMipLevel_allocs = (C.uint32_t)(x.BaseMipLevel), cgoAllocsUnknown
+ allocs5aa1126.Borrow(cbaseMipLevel_allocs)
+
+ var clevelCount_allocs *cgoAllocMap
+ ref5aa1126.levelCount, clevelCount_allocs = (C.uint32_t)(x.LevelCount), cgoAllocsUnknown
+ allocs5aa1126.Borrow(clevelCount_allocs)
+
+ var cbaseArrayLayer_allocs *cgoAllocMap
+ ref5aa1126.baseArrayLayer, cbaseArrayLayer_allocs = (C.uint32_t)(x.BaseArrayLayer), cgoAllocsUnknown
+ allocs5aa1126.Borrow(cbaseArrayLayer_allocs)
+
+ var clayerCount_allocs *cgoAllocMap
+ ref5aa1126.layerCount, clayerCount_allocs = (C.uint32_t)(x.LayerCount), cgoAllocsUnknown
+ allocs5aa1126.Borrow(clayerCount_allocs)
+
+ x.ref5aa1126 = ref5aa1126
+ x.allocs5aa1126 = allocs5aa1126
+ return ref5aa1126, allocs5aa1126
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ImageSubresourceRange) PassValue() (C.VkImageSubresourceRange, *cgoAllocMap) {
+ if x.ref5aa1126 != nil {
+ return *x.ref5aa1126, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ImageSubresourceRange) Deref() {
+ if x.ref5aa1126 == nil {
+ return
+ }
+ x.AspectMask = (ImageAspectFlags)(x.ref5aa1126.aspectMask)
+ x.BaseMipLevel = (uint32)(x.ref5aa1126.baseMipLevel)
+ x.LevelCount = (uint32)(x.ref5aa1126.levelCount)
+ x.BaseArrayLayer = (uint32)(x.ref5aa1126.baseArrayLayer)
+ x.LayerCount = (uint32)(x.ref5aa1126.layerCount)
+}
+
+// allocImageMemoryBarrierMemory allocates memory for type C.VkImageMemoryBarrier in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocImageMemoryBarrierMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageMemoryBarrierValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfImageMemoryBarrierValue = unsafe.Sizeof([1]C.VkImageMemoryBarrier{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ImageMemoryBarrier) Ref() *C.VkImageMemoryBarrier {
+ if x == nil {
+ return nil
+ }
+ return x.refd52734ec
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ImageMemoryBarrier) Free() {
+ if x != nil && x.allocsd52734ec != nil {
+ x.allocsd52734ec.(*cgoAllocMap).Free()
+ x.refd52734ec = nil
+ }
+}
+
+// NewImageMemoryBarrierRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewImageMemoryBarrierRef(ref unsafe.Pointer) *ImageMemoryBarrier {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ImageMemoryBarrier)
+ obj.refd52734ec = (*C.VkImageMemoryBarrier)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ImageMemoryBarrier) PassRef() (*C.VkImageMemoryBarrier, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refd52734ec != nil {
+ return x.refd52734ec, nil
+ }
+ memd52734ec := allocImageMemoryBarrierMemory(1)
+ refd52734ec := (*C.VkImageMemoryBarrier)(memd52734ec)
+ allocsd52734ec := new(cgoAllocMap)
+ allocsd52734ec.Add(memd52734ec)
+
+ var csType_allocs *cgoAllocMap
+ refd52734ec.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd52734ec.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refd52734ec.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsd52734ec.Borrow(cpNext_allocs)
+
+ var csrcAccessMask_allocs *cgoAllocMap
+ refd52734ec.srcAccessMask, csrcAccessMask_allocs = (C.VkAccessFlags)(x.SrcAccessMask), cgoAllocsUnknown
+ allocsd52734ec.Borrow(csrcAccessMask_allocs)
+
+ var cdstAccessMask_allocs *cgoAllocMap
+ refd52734ec.dstAccessMask, cdstAccessMask_allocs = (C.VkAccessFlags)(x.DstAccessMask), cgoAllocsUnknown
+ allocsd52734ec.Borrow(cdstAccessMask_allocs)
+
+ var coldLayout_allocs *cgoAllocMap
+ refd52734ec.oldLayout, coldLayout_allocs = (C.VkImageLayout)(x.OldLayout), cgoAllocsUnknown
+ allocsd52734ec.Borrow(coldLayout_allocs)
+
+ var cnewLayout_allocs *cgoAllocMap
+ refd52734ec.newLayout, cnewLayout_allocs = (C.VkImageLayout)(x.NewLayout), cgoAllocsUnknown
+ allocsd52734ec.Borrow(cnewLayout_allocs)
+
+ var csrcQueueFamilyIndex_allocs *cgoAllocMap
+ refd52734ec.srcQueueFamilyIndex, csrcQueueFamilyIndex_allocs = (C.uint32_t)(x.SrcQueueFamilyIndex), cgoAllocsUnknown
+ allocsd52734ec.Borrow(csrcQueueFamilyIndex_allocs)
+
+ var cdstQueueFamilyIndex_allocs *cgoAllocMap
+ refd52734ec.dstQueueFamilyIndex, cdstQueueFamilyIndex_allocs = (C.uint32_t)(x.DstQueueFamilyIndex), cgoAllocsUnknown
+ allocsd52734ec.Borrow(cdstQueueFamilyIndex_allocs)
+
+ var cimage_allocs *cgoAllocMap
+ refd52734ec.image, cimage_allocs = *(*C.VkImage)(unsafe.Pointer(&x.Image)), cgoAllocsUnknown
+ allocsd52734ec.Borrow(cimage_allocs)
+
+ var csubresourceRange_allocs *cgoAllocMap
+ refd52734ec.subresourceRange, csubresourceRange_allocs = x.SubresourceRange.PassValue()
+ allocsd52734ec.Borrow(csubresourceRange_allocs)
+
+ x.refd52734ec = refd52734ec
+ x.allocsd52734ec = allocsd52734ec
+ return refd52734ec, allocsd52734ec
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ImageMemoryBarrier) PassValue() (C.VkImageMemoryBarrier, *cgoAllocMap) {
+ if x.refd52734ec != nil {
+ return *x.refd52734ec, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ImageMemoryBarrier) Deref() {
+ if x.refd52734ec == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refd52734ec.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd52734ec.pNext))
+ x.SrcAccessMask = (AccessFlags)(x.refd52734ec.srcAccessMask)
+ x.DstAccessMask = (AccessFlags)(x.refd52734ec.dstAccessMask)
+ x.OldLayout = (ImageLayout)(x.refd52734ec.oldLayout)
+ x.NewLayout = (ImageLayout)(x.refd52734ec.newLayout)
+ x.SrcQueueFamilyIndex = (uint32)(x.refd52734ec.srcQueueFamilyIndex)
+ x.DstQueueFamilyIndex = (uint32)(x.refd52734ec.dstQueueFamilyIndex)
+ x.Image = *(*Image)(unsafe.Pointer(&x.refd52734ec.image))
+ x.SubresourceRange = *NewImageSubresourceRangeRef(unsafe.Pointer(&x.refd52734ec.subresourceRange))
+}
+
+// allocMemoryBarrierMemory allocates memory for type C.VkMemoryBarrier in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocMemoryBarrierMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMemoryBarrierValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfMemoryBarrierValue = unsafe.Sizeof([1]C.VkMemoryBarrier{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *MemoryBarrier) Ref() *C.VkMemoryBarrier {
+ if x == nil {
+ return nil
+ }
+ return x.ref977c944e
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *MemoryBarrier) Free() {
+ if x != nil && x.allocs977c944e != nil {
+ x.allocs977c944e.(*cgoAllocMap).Free()
+ x.ref977c944e = nil
+ }
+}
+
+// NewMemoryBarrierRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewMemoryBarrierRef(ref unsafe.Pointer) *MemoryBarrier {
+ if ref == nil {
+ return nil
+ }
+ obj := new(MemoryBarrier)
+ obj.ref977c944e = (*C.VkMemoryBarrier)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *MemoryBarrier) PassRef() (*C.VkMemoryBarrier, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref977c944e != nil {
+ return x.ref977c944e, nil
+ }
+ mem977c944e := allocMemoryBarrierMemory(1)
+ ref977c944e := (*C.VkMemoryBarrier)(mem977c944e)
+ allocs977c944e := new(cgoAllocMap)
+ allocs977c944e.Add(mem977c944e)
+
+ var csType_allocs *cgoAllocMap
+ ref977c944e.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs977c944e.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref977c944e.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs977c944e.Borrow(cpNext_allocs)
+
+ var csrcAccessMask_allocs *cgoAllocMap
+ ref977c944e.srcAccessMask, csrcAccessMask_allocs = (C.VkAccessFlags)(x.SrcAccessMask), cgoAllocsUnknown
+ allocs977c944e.Borrow(csrcAccessMask_allocs)
+
+ var cdstAccessMask_allocs *cgoAllocMap
+ ref977c944e.dstAccessMask, cdstAccessMask_allocs = (C.VkAccessFlags)(x.DstAccessMask), cgoAllocsUnknown
+ allocs977c944e.Borrow(cdstAccessMask_allocs)
+
+ x.ref977c944e = ref977c944e
+ x.allocs977c944e = allocs977c944e
+ return ref977c944e, allocs977c944e
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x MemoryBarrier) PassValue() (C.VkMemoryBarrier, *cgoAllocMap) {
+ if x.ref977c944e != nil {
+ return *x.ref977c944e, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *MemoryBarrier) Deref() {
+ if x.ref977c944e == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref977c944e.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref977c944e.pNext))
+ x.SrcAccessMask = (AccessFlags)(x.ref977c944e.srcAccessMask)
+ x.DstAccessMask = (AccessFlags)(x.ref977c944e.dstAccessMask)
+}
+
+// allocPipelineCacheHeaderVersionOneMemory allocates memory for type C.VkPipelineCacheHeaderVersionOne in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPipelineCacheHeaderVersionOneMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineCacheHeaderVersionOneValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPipelineCacheHeaderVersionOneValue = unsafe.Sizeof([1]C.VkPipelineCacheHeaderVersionOne{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PipelineCacheHeaderVersionOne) Ref() *C.VkPipelineCacheHeaderVersionOne {
+ if x == nil {
+ return nil
+ }
+ return x.refa2162ec9
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PipelineCacheHeaderVersionOne) Free() {
+ if x != nil && x.allocsa2162ec9 != nil {
+ x.allocsa2162ec9.(*cgoAllocMap).Free()
+ x.refa2162ec9 = nil
+ }
+}
+
+// NewPipelineCacheHeaderVersionOneRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPipelineCacheHeaderVersionOneRef(ref unsafe.Pointer) *PipelineCacheHeaderVersionOne {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PipelineCacheHeaderVersionOne)
+ obj.refa2162ec9 = (*C.VkPipelineCacheHeaderVersionOne)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PipelineCacheHeaderVersionOne) PassRef() (*C.VkPipelineCacheHeaderVersionOne, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refa2162ec9 != nil {
+ return x.refa2162ec9, nil
+ }
+ mema2162ec9 := allocPipelineCacheHeaderVersionOneMemory(1)
+ refa2162ec9 := (*C.VkPipelineCacheHeaderVersionOne)(mema2162ec9)
+ allocsa2162ec9 := new(cgoAllocMap)
+ allocsa2162ec9.Add(mema2162ec9)
+
+ var cheaderSize_allocs *cgoAllocMap
+ refa2162ec9.headerSize, cheaderSize_allocs = (C.uint32_t)(x.HeaderSize), cgoAllocsUnknown
+ allocsa2162ec9.Borrow(cheaderSize_allocs)
+
+ var cheaderVersion_allocs *cgoAllocMap
+ refa2162ec9.headerVersion, cheaderVersion_allocs = (C.VkPipelineCacheHeaderVersion)(x.HeaderVersion), cgoAllocsUnknown
+ allocsa2162ec9.Borrow(cheaderVersion_allocs)
+
+ var cvendorID_allocs *cgoAllocMap
+ refa2162ec9.vendorID, cvendorID_allocs = (C.uint32_t)(x.VendorID), cgoAllocsUnknown
+ allocsa2162ec9.Borrow(cvendorID_allocs)
+
+ var cdeviceID_allocs *cgoAllocMap
+ refa2162ec9.deviceID, cdeviceID_allocs = (C.uint32_t)(x.DeviceID), cgoAllocsUnknown
+ allocsa2162ec9.Borrow(cdeviceID_allocs)
+
+ var cpipelineCacheUUID_allocs *cgoAllocMap
+ refa2162ec9.pipelineCacheUUID, cpipelineCacheUUID_allocs = *(*[16]C.uint8_t)(unsafe.Pointer(&x.PipelineCacheUUID)), cgoAllocsUnknown
+ allocsa2162ec9.Borrow(cpipelineCacheUUID_allocs)
+
+ x.refa2162ec9 = refa2162ec9
+ x.allocsa2162ec9 = allocsa2162ec9
+ return refa2162ec9, allocsa2162ec9
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PipelineCacheHeaderVersionOne) PassValue() (C.VkPipelineCacheHeaderVersionOne, *cgoAllocMap) {
+ if x.refa2162ec9 != nil {
+ return *x.refa2162ec9, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PipelineCacheHeaderVersionOne) Deref() {
+ if x.refa2162ec9 == nil {
+ return
+ }
+ x.HeaderSize = (uint32)(x.refa2162ec9.headerSize)
+ x.HeaderVersion = (PipelineCacheHeaderVersion)(x.refa2162ec9.headerVersion)
+ x.VendorID = (uint32)(x.refa2162ec9.vendorID)
+ x.DeviceID = (uint32)(x.refa2162ec9.deviceID)
+ x.PipelineCacheUUID = *(*[16]byte)(unsafe.Pointer(&x.refa2162ec9.pipelineCacheUUID))
+}
+
+// Ref returns a reference to C object as it is.
+func (x *AllocationCallbacks) Ref() *C.VkAllocationCallbacks {
+ if x == nil {
+ return nil
+ }
+ return (*C.VkAllocationCallbacks)(unsafe.Pointer(x))
+}
+
+// Free cleanups the referenced memory using C free.
+func (x *AllocationCallbacks) Free() {
+ if x != nil {
+ C.free(unsafe.Pointer(x))
+ }
+}
+
+// NewAllocationCallbacksRef converts the C object reference into a raw struct reference without wrapping.
+func NewAllocationCallbacksRef(ref unsafe.Pointer) *AllocationCallbacks {
+ return (*AllocationCallbacks)(ref)
+}
+
+// NewAllocationCallbacks allocates a new C object of this type and converts the reference into
+// a raw struct reference without wrapping.
+func NewAllocationCallbacks() *AllocationCallbacks {
+ return (*AllocationCallbacks)(allocAllocationCallbacksMemory(1))
+}
+
+// allocAllocationCallbacksMemory allocates memory for type C.VkAllocationCallbacks in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocAllocationCallbacksMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfAllocationCallbacksValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfAllocationCallbacksValue = unsafe.Sizeof([1]C.VkAllocationCallbacks{})
+
+// PassRef returns a reference to C object as it is or allocates a new C object of this type.
+func (x *AllocationCallbacks) PassRef() *C.VkAllocationCallbacks {
+ if x == nil {
+ x = (*AllocationCallbacks)(allocAllocationCallbacksMemory(1))
+ }
+ return (*C.VkAllocationCallbacks)(unsafe.Pointer(x))
+}
+
+// allocApplicationInfoMemory allocates memory for type C.VkApplicationInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocApplicationInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfApplicationInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfApplicationInfoValue = unsafe.Sizeof([1]C.VkApplicationInfo{})
+
+// unpackPCharString represents the data from Go string as *C.char and avoids copying.
+func unpackPCharString(str string) (*C.char, *cgoAllocMap) {
+ h := (*stringHeader)(unsafe.Pointer(&str))
+ return (*C.char)(h.Data), cgoAllocsUnknown
+}
+
+type stringHeader struct {
+ Data unsafe.Pointer
+ Len int
+}
+
+// packPCharString creates a Go string backed by *C.char and avoids copying.
+func packPCharString(p *C.char) (raw string) {
+ if p != nil && *p != 0 {
+ h := (*stringHeader)(unsafe.Pointer(&raw))
+ h.Data = unsafe.Pointer(p)
+ for *p != 0 {
+ p = (*C.char)(unsafe.Pointer(uintptr(unsafe.Pointer(p)) + 1)) // p++
+ }
+ h.Len = int(uintptr(unsafe.Pointer(p)) - uintptr(h.Data))
+ }
+ return
+}
+
+// RawString reperesents a string backed by data on the C side.
+type RawString string
+
+// Copy returns a Go-managed copy of raw string.
+func (raw RawString) Copy() string {
+ if len(raw) == 0 {
+ return ""
+ }
+ h := (*stringHeader)(unsafe.Pointer(&raw))
+ return C.GoStringN((*C.char)(h.Data), C.int(h.Len))
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ApplicationInfo) Ref() *C.VkApplicationInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refb0af7378
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ApplicationInfo) Free() {
+ if x != nil && x.allocsb0af7378 != nil {
+ x.allocsb0af7378.(*cgoAllocMap).Free()
+ x.refb0af7378 = nil
+ }
+}
+
+// NewApplicationInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewApplicationInfoRef(ref unsafe.Pointer) *ApplicationInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ApplicationInfo)
+ obj.refb0af7378 = (*C.VkApplicationInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ApplicationInfo) PassRef() (*C.VkApplicationInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refb0af7378 != nil {
+ return x.refb0af7378, nil
+ }
+ memb0af7378 := allocApplicationInfoMemory(1)
+ refb0af7378 := (*C.VkApplicationInfo)(memb0af7378)
+ allocsb0af7378 := new(cgoAllocMap)
+ allocsb0af7378.Add(memb0af7378)
+
+ var csType_allocs *cgoAllocMap
+ refb0af7378.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsb0af7378.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refb0af7378.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsb0af7378.Borrow(cpNext_allocs)
+
+ var cpApplicationName_allocs *cgoAllocMap
+ refb0af7378.pApplicationName, cpApplicationName_allocs = unpackPCharString(x.PApplicationName)
+ allocsb0af7378.Borrow(cpApplicationName_allocs)
+
+ var capplicationVersion_allocs *cgoAllocMap
+ refb0af7378.applicationVersion, capplicationVersion_allocs = (C.uint32_t)(x.ApplicationVersion), cgoAllocsUnknown
+ allocsb0af7378.Borrow(capplicationVersion_allocs)
+
+ var cpEngineName_allocs *cgoAllocMap
+ refb0af7378.pEngineName, cpEngineName_allocs = unpackPCharString(x.PEngineName)
+ allocsb0af7378.Borrow(cpEngineName_allocs)
+
+ var cengineVersion_allocs *cgoAllocMap
+ refb0af7378.engineVersion, cengineVersion_allocs = (C.uint32_t)(x.EngineVersion), cgoAllocsUnknown
+ allocsb0af7378.Borrow(cengineVersion_allocs)
+
+ var capiVersion_allocs *cgoAllocMap
+ refb0af7378.apiVersion, capiVersion_allocs = (C.uint32_t)(x.ApiVersion), cgoAllocsUnknown
+ allocsb0af7378.Borrow(capiVersion_allocs)
+
+ x.refb0af7378 = refb0af7378
+ x.allocsb0af7378 = allocsb0af7378
+ return refb0af7378, allocsb0af7378
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ApplicationInfo) PassValue() (C.VkApplicationInfo, *cgoAllocMap) {
+ if x.refb0af7378 != nil {
+ return *x.refb0af7378, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ApplicationInfo) Deref() {
+ if x.refb0af7378 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refb0af7378.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb0af7378.pNext))
+ x.PApplicationName = packPCharString(x.refb0af7378.pApplicationName)
+ x.ApplicationVersion = (uint32)(x.refb0af7378.applicationVersion)
+ x.PEngineName = packPCharString(x.refb0af7378.pEngineName)
+ x.EngineVersion = (uint32)(x.refb0af7378.engineVersion)
+ x.ApiVersion = (uint32)(x.refb0af7378.apiVersion)
+}
+
+// allocFormatPropertiesMemory allocates memory for type C.VkFormatProperties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocFormatPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfFormatPropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfFormatPropertiesValue = unsafe.Sizeof([1]C.VkFormatProperties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *FormatProperties) Ref() *C.VkFormatProperties {
+ if x == nil {
+ return nil
+ }
+ return x.refc4b9937b
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *FormatProperties) Free() {
+ if x != nil && x.allocsc4b9937b != nil {
+ x.allocsc4b9937b.(*cgoAllocMap).Free()
+ x.refc4b9937b = nil
+ }
+}
+
+// NewFormatPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewFormatPropertiesRef(ref unsafe.Pointer) *FormatProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(FormatProperties)
+ obj.refc4b9937b = (*C.VkFormatProperties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *FormatProperties) PassRef() (*C.VkFormatProperties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refc4b9937b != nil {
+ return x.refc4b9937b, nil
+ }
+ memc4b9937b := allocFormatPropertiesMemory(1)
+ refc4b9937b := (*C.VkFormatProperties)(memc4b9937b)
+ allocsc4b9937b := new(cgoAllocMap)
+ allocsc4b9937b.Add(memc4b9937b)
+
+ var clinearTilingFeatures_allocs *cgoAllocMap
+ refc4b9937b.linearTilingFeatures, clinearTilingFeatures_allocs = (C.VkFormatFeatureFlags)(x.LinearTilingFeatures), cgoAllocsUnknown
+ allocsc4b9937b.Borrow(clinearTilingFeatures_allocs)
+
+ var coptimalTilingFeatures_allocs *cgoAllocMap
+ refc4b9937b.optimalTilingFeatures, coptimalTilingFeatures_allocs = (C.VkFormatFeatureFlags)(x.OptimalTilingFeatures), cgoAllocsUnknown
+ allocsc4b9937b.Borrow(coptimalTilingFeatures_allocs)
+
+ var cbufferFeatures_allocs *cgoAllocMap
+ refc4b9937b.bufferFeatures, cbufferFeatures_allocs = (C.VkFormatFeatureFlags)(x.BufferFeatures), cgoAllocsUnknown
+ allocsc4b9937b.Borrow(cbufferFeatures_allocs)
+
+ x.refc4b9937b = refc4b9937b
+ x.allocsc4b9937b = allocsc4b9937b
+ return refc4b9937b, allocsc4b9937b
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x FormatProperties) PassValue() (C.VkFormatProperties, *cgoAllocMap) {
+ if x.refc4b9937b != nil {
+ return *x.refc4b9937b, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *FormatProperties) Deref() {
+ if x.refc4b9937b == nil {
+ return
+ }
+ x.LinearTilingFeatures = (FormatFeatureFlags)(x.refc4b9937b.linearTilingFeatures)
+ x.OptimalTilingFeatures = (FormatFeatureFlags)(x.refc4b9937b.optimalTilingFeatures)
+ x.BufferFeatures = (FormatFeatureFlags)(x.refc4b9937b.bufferFeatures)
+}
+
+// allocImageFormatPropertiesMemory allocates memory for type C.VkImageFormatProperties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocImageFormatPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageFormatPropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfImageFormatPropertiesValue = unsafe.Sizeof([1]C.VkImageFormatProperties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ImageFormatProperties) Ref() *C.VkImageFormatProperties {
+ if x == nil {
+ return nil
+ }
+ return x.ref4cfb2ea2
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ImageFormatProperties) Free() {
+ if x != nil && x.allocs4cfb2ea2 != nil {
+ x.allocs4cfb2ea2.(*cgoAllocMap).Free()
+ x.ref4cfb2ea2 = nil
+ }
+}
+
+// NewImageFormatPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewImageFormatPropertiesRef(ref unsafe.Pointer) *ImageFormatProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ImageFormatProperties)
+ obj.ref4cfb2ea2 = (*C.VkImageFormatProperties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ImageFormatProperties) PassRef() (*C.VkImageFormatProperties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref4cfb2ea2 != nil {
+ return x.ref4cfb2ea2, nil
+ }
+ mem4cfb2ea2 := allocImageFormatPropertiesMemory(1)
+ ref4cfb2ea2 := (*C.VkImageFormatProperties)(mem4cfb2ea2)
+ allocs4cfb2ea2 := new(cgoAllocMap)
+ allocs4cfb2ea2.Add(mem4cfb2ea2)
+
+ var cmaxExtent_allocs *cgoAllocMap
+ ref4cfb2ea2.maxExtent, cmaxExtent_allocs = x.MaxExtent.PassValue()
+ allocs4cfb2ea2.Borrow(cmaxExtent_allocs)
+
+ var cmaxMipLevels_allocs *cgoAllocMap
+ ref4cfb2ea2.maxMipLevels, cmaxMipLevels_allocs = (C.uint32_t)(x.MaxMipLevels), cgoAllocsUnknown
+ allocs4cfb2ea2.Borrow(cmaxMipLevels_allocs)
+
+ var cmaxArrayLayers_allocs *cgoAllocMap
+ ref4cfb2ea2.maxArrayLayers, cmaxArrayLayers_allocs = (C.uint32_t)(x.MaxArrayLayers), cgoAllocsUnknown
+ allocs4cfb2ea2.Borrow(cmaxArrayLayers_allocs)
+
+ var csampleCounts_allocs *cgoAllocMap
+ ref4cfb2ea2.sampleCounts, csampleCounts_allocs = (C.VkSampleCountFlags)(x.SampleCounts), cgoAllocsUnknown
+ allocs4cfb2ea2.Borrow(csampleCounts_allocs)
+
+ var cmaxResourceSize_allocs *cgoAllocMap
+ ref4cfb2ea2.maxResourceSize, cmaxResourceSize_allocs = (C.VkDeviceSize)(x.MaxResourceSize), cgoAllocsUnknown
+ allocs4cfb2ea2.Borrow(cmaxResourceSize_allocs)
+
+ x.ref4cfb2ea2 = ref4cfb2ea2
+ x.allocs4cfb2ea2 = allocs4cfb2ea2
+ return ref4cfb2ea2, allocs4cfb2ea2
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ImageFormatProperties) PassValue() (C.VkImageFormatProperties, *cgoAllocMap) {
+ if x.ref4cfb2ea2 != nil {
+ return *x.ref4cfb2ea2, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ImageFormatProperties) Deref() {
+ if x.ref4cfb2ea2 == nil {
+ return
+ }
+ x.MaxExtent = *NewExtent3DRef(unsafe.Pointer(&x.ref4cfb2ea2.maxExtent))
+ x.MaxMipLevels = (uint32)(x.ref4cfb2ea2.maxMipLevels)
+ x.MaxArrayLayers = (uint32)(x.ref4cfb2ea2.maxArrayLayers)
+ x.SampleCounts = (SampleCountFlags)(x.ref4cfb2ea2.sampleCounts)
+ x.MaxResourceSize = (DeviceSize)(x.ref4cfb2ea2.maxResourceSize)
+}
+
+// allocInstanceCreateInfoMemory allocates memory for type C.VkInstanceCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocInstanceCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfInstanceCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfInstanceCreateInfoValue = unsafe.Sizeof([1]C.VkInstanceCreateInfo{})
+
+// allocPCharMemory allocates memory for type *C.char in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPCharMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPCharValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPCharValue = unsafe.Sizeof([1]*C.char{})
+
+// unpackSString transforms a sliced Go data structure into plain C format.
+func unpackSString(x []string) (unpacked **C.char, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(***C.char) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocPCharMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]*C.char)(unsafe.Pointer(h0))
+ for i0 := range x {
+ v0[i0], _ = unpackPCharString(x[i0])
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (**C.char)(h.Data)
+ return
+}
+
+// packSString reads sliced Go data structure out from plain C format.
+func packSString(v []string, ptr0 **C.char) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfPtr]*C.char)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = packPCharString(ptr1)
+ }
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *InstanceCreateInfo) Ref() *C.VkInstanceCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref9b760798
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *InstanceCreateInfo) Free() {
+ if x != nil && x.allocs9b760798 != nil {
+ x.allocs9b760798.(*cgoAllocMap).Free()
+ x.ref9b760798 = nil
+ }
+}
+
+// NewInstanceCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewInstanceCreateInfoRef(ref unsafe.Pointer) *InstanceCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(InstanceCreateInfo)
+ obj.ref9b760798 = (*C.VkInstanceCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *InstanceCreateInfo) PassRef() (*C.VkInstanceCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref9b760798 != nil {
+ return x.ref9b760798, nil
+ }
+ mem9b760798 := allocInstanceCreateInfoMemory(1)
+ ref9b760798 := (*C.VkInstanceCreateInfo)(mem9b760798)
+ allocs9b760798 := new(cgoAllocMap)
+ allocs9b760798.Add(mem9b760798)
+
+ var csType_allocs *cgoAllocMap
+ ref9b760798.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs9b760798.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref9b760798.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs9b760798.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref9b760798.flags, cflags_allocs = (C.VkInstanceCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocs9b760798.Borrow(cflags_allocs)
+
+ var cpApplicationInfo_allocs *cgoAllocMap
+ ref9b760798.pApplicationInfo, cpApplicationInfo_allocs = x.PApplicationInfo.PassRef()
+ allocs9b760798.Borrow(cpApplicationInfo_allocs)
+
+ var cenabledLayerCount_allocs *cgoAllocMap
+ ref9b760798.enabledLayerCount, cenabledLayerCount_allocs = (C.uint32_t)(x.EnabledLayerCount), cgoAllocsUnknown
+ allocs9b760798.Borrow(cenabledLayerCount_allocs)
+
+ var cppEnabledLayerNames_allocs *cgoAllocMap
+ ref9b760798.ppEnabledLayerNames, cppEnabledLayerNames_allocs = unpackSString(x.PpEnabledLayerNames)
+ allocs9b760798.Borrow(cppEnabledLayerNames_allocs)
+
+ var cenabledExtensionCount_allocs *cgoAllocMap
+ ref9b760798.enabledExtensionCount, cenabledExtensionCount_allocs = (C.uint32_t)(x.EnabledExtensionCount), cgoAllocsUnknown
+ allocs9b760798.Borrow(cenabledExtensionCount_allocs)
+
+ var cppEnabledExtensionNames_allocs *cgoAllocMap
+ ref9b760798.ppEnabledExtensionNames, cppEnabledExtensionNames_allocs = unpackSString(x.PpEnabledExtensionNames)
+ allocs9b760798.Borrow(cppEnabledExtensionNames_allocs)
+
+ x.ref9b760798 = ref9b760798
+ x.allocs9b760798 = allocs9b760798
+ return ref9b760798, allocs9b760798
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x InstanceCreateInfo) PassValue() (C.VkInstanceCreateInfo, *cgoAllocMap) {
+ if x.ref9b760798 != nil {
+ return *x.ref9b760798, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *InstanceCreateInfo) Deref() {
+ if x.ref9b760798 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref9b760798.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref9b760798.pNext))
+ x.Flags = (InstanceCreateFlags)(x.ref9b760798.flags)
+ x.PApplicationInfo = NewApplicationInfoRef(unsafe.Pointer(x.ref9b760798.pApplicationInfo))
+ x.EnabledLayerCount = (uint32)(x.ref9b760798.enabledLayerCount)
+ packSString(x.PpEnabledLayerNames, x.ref9b760798.ppEnabledLayerNames)
+ x.EnabledExtensionCount = (uint32)(x.ref9b760798.enabledExtensionCount)
+ packSString(x.PpEnabledExtensionNames, x.ref9b760798.ppEnabledExtensionNames)
+}
+
+// allocMemoryHeapMemory allocates memory for type C.VkMemoryHeap in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocMemoryHeapMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMemoryHeapValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfMemoryHeapValue = unsafe.Sizeof([1]C.VkMemoryHeap{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *MemoryHeap) Ref() *C.VkMemoryHeap {
+ if x == nil {
+ return nil
+ }
+ return x.ref1eb195d5
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *MemoryHeap) Free() {
+ if x != nil && x.allocs1eb195d5 != nil {
+ x.allocs1eb195d5.(*cgoAllocMap).Free()
+ x.ref1eb195d5 = nil
+ }
+}
+
+// NewMemoryHeapRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewMemoryHeapRef(ref unsafe.Pointer) *MemoryHeap {
+ if ref == nil {
+ return nil
+ }
+ obj := new(MemoryHeap)
+ obj.ref1eb195d5 = (*C.VkMemoryHeap)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *MemoryHeap) PassRef() (*C.VkMemoryHeap, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref1eb195d5 != nil {
+ return x.ref1eb195d5, nil
+ }
+ mem1eb195d5 := allocMemoryHeapMemory(1)
+ ref1eb195d5 := (*C.VkMemoryHeap)(mem1eb195d5)
+ allocs1eb195d5 := new(cgoAllocMap)
+ allocs1eb195d5.Add(mem1eb195d5)
+
+ var csize_allocs *cgoAllocMap
+ ref1eb195d5.size, csize_allocs = (C.VkDeviceSize)(x.Size), cgoAllocsUnknown
+ allocs1eb195d5.Borrow(csize_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref1eb195d5.flags, cflags_allocs = (C.VkMemoryHeapFlags)(x.Flags), cgoAllocsUnknown
+ allocs1eb195d5.Borrow(cflags_allocs)
+
+ x.ref1eb195d5 = ref1eb195d5
+ x.allocs1eb195d5 = allocs1eb195d5
+ return ref1eb195d5, allocs1eb195d5
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x MemoryHeap) PassValue() (C.VkMemoryHeap, *cgoAllocMap) {
+ if x.ref1eb195d5 != nil {
+ return *x.ref1eb195d5, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *MemoryHeap) Deref() {
+ if x.ref1eb195d5 == nil {
+ return
+ }
+ x.Size = (DeviceSize)(x.ref1eb195d5.size)
+ x.Flags = (MemoryHeapFlags)(x.ref1eb195d5.flags)
+}
+
+// allocMemoryTypeMemory allocates memory for type C.VkMemoryType in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocMemoryTypeMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMemoryTypeValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfMemoryTypeValue = unsafe.Sizeof([1]C.VkMemoryType{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *MemoryType) Ref() *C.VkMemoryType {
+ if x == nil {
+ return nil
+ }
+ return x.ref2f46e01d
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *MemoryType) Free() {
+ if x != nil && x.allocs2f46e01d != nil {
+ x.allocs2f46e01d.(*cgoAllocMap).Free()
+ x.ref2f46e01d = nil
+ }
+}
+
+// NewMemoryTypeRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewMemoryTypeRef(ref unsafe.Pointer) *MemoryType {
+ if ref == nil {
+ return nil
+ }
+ obj := new(MemoryType)
+ obj.ref2f46e01d = (*C.VkMemoryType)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *MemoryType) PassRef() (*C.VkMemoryType, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref2f46e01d != nil {
+ return x.ref2f46e01d, nil
+ }
+ mem2f46e01d := allocMemoryTypeMemory(1)
+ ref2f46e01d := (*C.VkMemoryType)(mem2f46e01d)
+ allocs2f46e01d := new(cgoAllocMap)
+ allocs2f46e01d.Add(mem2f46e01d)
+
+ var cpropertyFlags_allocs *cgoAllocMap
+ ref2f46e01d.propertyFlags, cpropertyFlags_allocs = (C.VkMemoryPropertyFlags)(x.PropertyFlags), cgoAllocsUnknown
+ allocs2f46e01d.Borrow(cpropertyFlags_allocs)
+
+ var cheapIndex_allocs *cgoAllocMap
+ ref2f46e01d.heapIndex, cheapIndex_allocs = (C.uint32_t)(x.HeapIndex), cgoAllocsUnknown
+ allocs2f46e01d.Borrow(cheapIndex_allocs)
+
+ x.ref2f46e01d = ref2f46e01d
+ x.allocs2f46e01d = allocs2f46e01d
+ return ref2f46e01d, allocs2f46e01d
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x MemoryType) PassValue() (C.VkMemoryType, *cgoAllocMap) {
+ if x.ref2f46e01d != nil {
+ return *x.ref2f46e01d, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *MemoryType) Deref() {
+ if x.ref2f46e01d == nil {
+ return
+ }
+ x.PropertyFlags = (MemoryPropertyFlags)(x.ref2f46e01d.propertyFlags)
+ x.HeapIndex = (uint32)(x.ref2f46e01d.heapIndex)
+}
+
+// allocPhysicalDeviceFeaturesMemory allocates memory for type C.VkPhysicalDeviceFeatures in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceFeaturesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceFeatures{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceFeatures) Ref() *C.VkPhysicalDeviceFeatures {
+ if x == nil {
+ return nil
+ }
+ return x.reff97e405d
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceFeatures) Free() {
+ if x != nil && x.allocsf97e405d != nil {
+ x.allocsf97e405d.(*cgoAllocMap).Free()
+ x.reff97e405d = nil
+ }
+}
+
+// NewPhysicalDeviceFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceFeatures {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceFeatures)
+ obj.reff97e405d = (*C.VkPhysicalDeviceFeatures)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceFeatures) PassRef() (*C.VkPhysicalDeviceFeatures, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.reff97e405d != nil {
+ return x.reff97e405d, nil
+ }
+ memf97e405d := allocPhysicalDeviceFeaturesMemory(1)
+ reff97e405d := (*C.VkPhysicalDeviceFeatures)(memf97e405d)
+ allocsf97e405d := new(cgoAllocMap)
+ allocsf97e405d.Add(memf97e405d)
+
+ var crobustBufferAccess_allocs *cgoAllocMap
+ reff97e405d.robustBufferAccess, crobustBufferAccess_allocs = (C.VkBool32)(x.RobustBufferAccess), cgoAllocsUnknown
+ allocsf97e405d.Borrow(crobustBufferAccess_allocs)
+
+ var cfullDrawIndexUint32_allocs *cgoAllocMap
+ reff97e405d.fullDrawIndexUint32, cfullDrawIndexUint32_allocs = (C.VkBool32)(x.FullDrawIndexUint32), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cfullDrawIndexUint32_allocs)
+
+ var cimageCubeArray_allocs *cgoAllocMap
+ reff97e405d.imageCubeArray, cimageCubeArray_allocs = (C.VkBool32)(x.ImageCubeArray), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cimageCubeArray_allocs)
+
+ var cindependentBlend_allocs *cgoAllocMap
+ reff97e405d.independentBlend, cindependentBlend_allocs = (C.VkBool32)(x.IndependentBlend), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cindependentBlend_allocs)
+
+ var cgeometryShader_allocs *cgoAllocMap
+ reff97e405d.geometryShader, cgeometryShader_allocs = (C.VkBool32)(x.GeometryShader), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cgeometryShader_allocs)
+
+ var ctessellationShader_allocs *cgoAllocMap
+ reff97e405d.tessellationShader, ctessellationShader_allocs = (C.VkBool32)(x.TessellationShader), cgoAllocsUnknown
+ allocsf97e405d.Borrow(ctessellationShader_allocs)
+
+ var csampleRateShading_allocs *cgoAllocMap
+ reff97e405d.sampleRateShading, csampleRateShading_allocs = (C.VkBool32)(x.SampleRateShading), cgoAllocsUnknown
+ allocsf97e405d.Borrow(csampleRateShading_allocs)
+
+ var cdualSrcBlend_allocs *cgoAllocMap
+ reff97e405d.dualSrcBlend, cdualSrcBlend_allocs = (C.VkBool32)(x.DualSrcBlend), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cdualSrcBlend_allocs)
+
+ var clogicOp_allocs *cgoAllocMap
+ reff97e405d.logicOp, clogicOp_allocs = (C.VkBool32)(x.LogicOp), cgoAllocsUnknown
+ allocsf97e405d.Borrow(clogicOp_allocs)
+
+ var cmultiDrawIndirect_allocs *cgoAllocMap
+ reff97e405d.multiDrawIndirect, cmultiDrawIndirect_allocs = (C.VkBool32)(x.MultiDrawIndirect), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cmultiDrawIndirect_allocs)
+
+ var cdrawIndirectFirstInstance_allocs *cgoAllocMap
+ reff97e405d.drawIndirectFirstInstance, cdrawIndirectFirstInstance_allocs = (C.VkBool32)(x.DrawIndirectFirstInstance), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cdrawIndirectFirstInstance_allocs)
+
+ var cdepthClamp_allocs *cgoAllocMap
+ reff97e405d.depthClamp, cdepthClamp_allocs = (C.VkBool32)(x.DepthClamp), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cdepthClamp_allocs)
+
+ var cdepthBiasClamp_allocs *cgoAllocMap
+ reff97e405d.depthBiasClamp, cdepthBiasClamp_allocs = (C.VkBool32)(x.DepthBiasClamp), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cdepthBiasClamp_allocs)
+
+ var cfillModeNonSolid_allocs *cgoAllocMap
+ reff97e405d.fillModeNonSolid, cfillModeNonSolid_allocs = (C.VkBool32)(x.FillModeNonSolid), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cfillModeNonSolid_allocs)
+
+ var cdepthBounds_allocs *cgoAllocMap
+ reff97e405d.depthBounds, cdepthBounds_allocs = (C.VkBool32)(x.DepthBounds), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cdepthBounds_allocs)
+
+ var cwideLines_allocs *cgoAllocMap
+ reff97e405d.wideLines, cwideLines_allocs = (C.VkBool32)(x.WideLines), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cwideLines_allocs)
+
+ var clargePoints_allocs *cgoAllocMap
+ reff97e405d.largePoints, clargePoints_allocs = (C.VkBool32)(x.LargePoints), cgoAllocsUnknown
+ allocsf97e405d.Borrow(clargePoints_allocs)
+
+ var calphaToOne_allocs *cgoAllocMap
+ reff97e405d.alphaToOne, calphaToOne_allocs = (C.VkBool32)(x.AlphaToOne), cgoAllocsUnknown
+ allocsf97e405d.Borrow(calphaToOne_allocs)
+
+ var cmultiViewport_allocs *cgoAllocMap
+ reff97e405d.multiViewport, cmultiViewport_allocs = (C.VkBool32)(x.MultiViewport), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cmultiViewport_allocs)
+
+ var csamplerAnisotropy_allocs *cgoAllocMap
+ reff97e405d.samplerAnisotropy, csamplerAnisotropy_allocs = (C.VkBool32)(x.SamplerAnisotropy), cgoAllocsUnknown
+ allocsf97e405d.Borrow(csamplerAnisotropy_allocs)
+
+ var ctextureCompressionETC2_allocs *cgoAllocMap
+ reff97e405d.textureCompressionETC2, ctextureCompressionETC2_allocs = (C.VkBool32)(x.TextureCompressionETC2), cgoAllocsUnknown
+ allocsf97e405d.Borrow(ctextureCompressionETC2_allocs)
+
+ var ctextureCompressionASTC_LDR_allocs *cgoAllocMap
+ reff97e405d.textureCompressionASTC_LDR, ctextureCompressionASTC_LDR_allocs = (C.VkBool32)(x.TextureCompressionASTC_LDR), cgoAllocsUnknown
+ allocsf97e405d.Borrow(ctextureCompressionASTC_LDR_allocs)
+
+ var ctextureCompressionBC_allocs *cgoAllocMap
+ reff97e405d.textureCompressionBC, ctextureCompressionBC_allocs = (C.VkBool32)(x.TextureCompressionBC), cgoAllocsUnknown
+ allocsf97e405d.Borrow(ctextureCompressionBC_allocs)
+
+ var cocclusionQueryPrecise_allocs *cgoAllocMap
+ reff97e405d.occlusionQueryPrecise, cocclusionQueryPrecise_allocs = (C.VkBool32)(x.OcclusionQueryPrecise), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cocclusionQueryPrecise_allocs)
+
+ var cpipelineStatisticsQuery_allocs *cgoAllocMap
+ reff97e405d.pipelineStatisticsQuery, cpipelineStatisticsQuery_allocs = (C.VkBool32)(x.PipelineStatisticsQuery), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cpipelineStatisticsQuery_allocs)
+
+ var cvertexPipelineStoresAndAtomics_allocs *cgoAllocMap
+ reff97e405d.vertexPipelineStoresAndAtomics, cvertexPipelineStoresAndAtomics_allocs = (C.VkBool32)(x.VertexPipelineStoresAndAtomics), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cvertexPipelineStoresAndAtomics_allocs)
+
+ var cfragmentStoresAndAtomics_allocs *cgoAllocMap
+ reff97e405d.fragmentStoresAndAtomics, cfragmentStoresAndAtomics_allocs = (C.VkBool32)(x.FragmentStoresAndAtomics), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cfragmentStoresAndAtomics_allocs)
+
+ var cshaderTessellationAndGeometryPointSize_allocs *cgoAllocMap
+ reff97e405d.shaderTessellationAndGeometryPointSize, cshaderTessellationAndGeometryPointSize_allocs = (C.VkBool32)(x.ShaderTessellationAndGeometryPointSize), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cshaderTessellationAndGeometryPointSize_allocs)
+
+ var cshaderImageGatherExtended_allocs *cgoAllocMap
+ reff97e405d.shaderImageGatherExtended, cshaderImageGatherExtended_allocs = (C.VkBool32)(x.ShaderImageGatherExtended), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cshaderImageGatherExtended_allocs)
+
+ var cshaderStorageImageExtendedFormats_allocs *cgoAllocMap
+ reff97e405d.shaderStorageImageExtendedFormats, cshaderStorageImageExtendedFormats_allocs = (C.VkBool32)(x.ShaderStorageImageExtendedFormats), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cshaderStorageImageExtendedFormats_allocs)
+
+ var cshaderStorageImageMultisample_allocs *cgoAllocMap
+ reff97e405d.shaderStorageImageMultisample, cshaderStorageImageMultisample_allocs = (C.VkBool32)(x.ShaderStorageImageMultisample), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cshaderStorageImageMultisample_allocs)
+
+ var cshaderStorageImageReadWithoutFormat_allocs *cgoAllocMap
+ reff97e405d.shaderStorageImageReadWithoutFormat, cshaderStorageImageReadWithoutFormat_allocs = (C.VkBool32)(x.ShaderStorageImageReadWithoutFormat), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cshaderStorageImageReadWithoutFormat_allocs)
+
+ var cshaderStorageImageWriteWithoutFormat_allocs *cgoAllocMap
+ reff97e405d.shaderStorageImageWriteWithoutFormat, cshaderStorageImageWriteWithoutFormat_allocs = (C.VkBool32)(x.ShaderStorageImageWriteWithoutFormat), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cshaderStorageImageWriteWithoutFormat_allocs)
+
+ var cshaderUniformBufferArrayDynamicIndexing_allocs *cgoAllocMap
+ reff97e405d.shaderUniformBufferArrayDynamicIndexing, cshaderUniformBufferArrayDynamicIndexing_allocs = (C.VkBool32)(x.ShaderUniformBufferArrayDynamicIndexing), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cshaderUniformBufferArrayDynamicIndexing_allocs)
+
+ var cshaderSampledImageArrayDynamicIndexing_allocs *cgoAllocMap
+ reff97e405d.shaderSampledImageArrayDynamicIndexing, cshaderSampledImageArrayDynamicIndexing_allocs = (C.VkBool32)(x.ShaderSampledImageArrayDynamicIndexing), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cshaderSampledImageArrayDynamicIndexing_allocs)
+
+ var cshaderStorageBufferArrayDynamicIndexing_allocs *cgoAllocMap
+ reff97e405d.shaderStorageBufferArrayDynamicIndexing, cshaderStorageBufferArrayDynamicIndexing_allocs = (C.VkBool32)(x.ShaderStorageBufferArrayDynamicIndexing), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cshaderStorageBufferArrayDynamicIndexing_allocs)
+
+ var cshaderStorageImageArrayDynamicIndexing_allocs *cgoAllocMap
+ reff97e405d.shaderStorageImageArrayDynamicIndexing, cshaderStorageImageArrayDynamicIndexing_allocs = (C.VkBool32)(x.ShaderStorageImageArrayDynamicIndexing), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cshaderStorageImageArrayDynamicIndexing_allocs)
+
+ var cshaderClipDistance_allocs *cgoAllocMap
+ reff97e405d.shaderClipDistance, cshaderClipDistance_allocs = (C.VkBool32)(x.ShaderClipDistance), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cshaderClipDistance_allocs)
+
+ var cshaderCullDistance_allocs *cgoAllocMap
+ reff97e405d.shaderCullDistance, cshaderCullDistance_allocs = (C.VkBool32)(x.ShaderCullDistance), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cshaderCullDistance_allocs)
+
+ var cshaderFloat64_allocs *cgoAllocMap
+ reff97e405d.shaderFloat64, cshaderFloat64_allocs = (C.VkBool32)(x.ShaderFloat64), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cshaderFloat64_allocs)
+
+ var cshaderInt64_allocs *cgoAllocMap
+ reff97e405d.shaderInt64, cshaderInt64_allocs = (C.VkBool32)(x.ShaderInt64), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cshaderInt64_allocs)
+
+ var cshaderInt16_allocs *cgoAllocMap
+ reff97e405d.shaderInt16, cshaderInt16_allocs = (C.VkBool32)(x.ShaderInt16), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cshaderInt16_allocs)
+
+ var cshaderResourceResidency_allocs *cgoAllocMap
+ reff97e405d.shaderResourceResidency, cshaderResourceResidency_allocs = (C.VkBool32)(x.ShaderResourceResidency), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cshaderResourceResidency_allocs)
+
+ var cshaderResourceMinLod_allocs *cgoAllocMap
+ reff97e405d.shaderResourceMinLod, cshaderResourceMinLod_allocs = (C.VkBool32)(x.ShaderResourceMinLod), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cshaderResourceMinLod_allocs)
+
+ var csparseBinding_allocs *cgoAllocMap
+ reff97e405d.sparseBinding, csparseBinding_allocs = (C.VkBool32)(x.SparseBinding), cgoAllocsUnknown
+ allocsf97e405d.Borrow(csparseBinding_allocs)
+
+ var csparseResidencyBuffer_allocs *cgoAllocMap
+ reff97e405d.sparseResidencyBuffer, csparseResidencyBuffer_allocs = (C.VkBool32)(x.SparseResidencyBuffer), cgoAllocsUnknown
+ allocsf97e405d.Borrow(csparseResidencyBuffer_allocs)
+
+ var csparseResidencyImage2D_allocs *cgoAllocMap
+ reff97e405d.sparseResidencyImage2D, csparseResidencyImage2D_allocs = (C.VkBool32)(x.SparseResidencyImage2D), cgoAllocsUnknown
+ allocsf97e405d.Borrow(csparseResidencyImage2D_allocs)
+
+ var csparseResidencyImage3D_allocs *cgoAllocMap
+ reff97e405d.sparseResidencyImage3D, csparseResidencyImage3D_allocs = (C.VkBool32)(x.SparseResidencyImage3D), cgoAllocsUnknown
+ allocsf97e405d.Borrow(csparseResidencyImage3D_allocs)
+
+ var csparseResidency2Samples_allocs *cgoAllocMap
+ reff97e405d.sparseResidency2Samples, csparseResidency2Samples_allocs = (C.VkBool32)(x.SparseResidency2Samples), cgoAllocsUnknown
+ allocsf97e405d.Borrow(csparseResidency2Samples_allocs)
+
+ var csparseResidency4Samples_allocs *cgoAllocMap
+ reff97e405d.sparseResidency4Samples, csparseResidency4Samples_allocs = (C.VkBool32)(x.SparseResidency4Samples), cgoAllocsUnknown
+ allocsf97e405d.Borrow(csparseResidency4Samples_allocs)
+
+ var csparseResidency8Samples_allocs *cgoAllocMap
+ reff97e405d.sparseResidency8Samples, csparseResidency8Samples_allocs = (C.VkBool32)(x.SparseResidency8Samples), cgoAllocsUnknown
+ allocsf97e405d.Borrow(csparseResidency8Samples_allocs)
+
+ var csparseResidency16Samples_allocs *cgoAllocMap
+ reff97e405d.sparseResidency16Samples, csparseResidency16Samples_allocs = (C.VkBool32)(x.SparseResidency16Samples), cgoAllocsUnknown
+ allocsf97e405d.Borrow(csparseResidency16Samples_allocs)
+
+ var csparseResidencyAliased_allocs *cgoAllocMap
+ reff97e405d.sparseResidencyAliased, csparseResidencyAliased_allocs = (C.VkBool32)(x.SparseResidencyAliased), cgoAllocsUnknown
+ allocsf97e405d.Borrow(csparseResidencyAliased_allocs)
+
+ var cvariableMultisampleRate_allocs *cgoAllocMap
+ reff97e405d.variableMultisampleRate, cvariableMultisampleRate_allocs = (C.VkBool32)(x.VariableMultisampleRate), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cvariableMultisampleRate_allocs)
+
+ var cinheritedQueries_allocs *cgoAllocMap
+ reff97e405d.inheritedQueries, cinheritedQueries_allocs = (C.VkBool32)(x.InheritedQueries), cgoAllocsUnknown
+ allocsf97e405d.Borrow(cinheritedQueries_allocs)
+
+ x.reff97e405d = reff97e405d
+ x.allocsf97e405d = allocsf97e405d
+ return reff97e405d, allocsf97e405d
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceFeatures) PassValue() (C.VkPhysicalDeviceFeatures, *cgoAllocMap) {
+ if x.reff97e405d != nil {
+ return *x.reff97e405d, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceFeatures) Deref() {
+ if x.reff97e405d == nil {
+ return
+ }
+ x.RobustBufferAccess = (Bool32)(x.reff97e405d.robustBufferAccess)
+ x.FullDrawIndexUint32 = (Bool32)(x.reff97e405d.fullDrawIndexUint32)
+ x.ImageCubeArray = (Bool32)(x.reff97e405d.imageCubeArray)
+ x.IndependentBlend = (Bool32)(x.reff97e405d.independentBlend)
+ x.GeometryShader = (Bool32)(x.reff97e405d.geometryShader)
+ x.TessellationShader = (Bool32)(x.reff97e405d.tessellationShader)
+ x.SampleRateShading = (Bool32)(x.reff97e405d.sampleRateShading)
+ x.DualSrcBlend = (Bool32)(x.reff97e405d.dualSrcBlend)
+ x.LogicOp = (Bool32)(x.reff97e405d.logicOp)
+ x.MultiDrawIndirect = (Bool32)(x.reff97e405d.multiDrawIndirect)
+ x.DrawIndirectFirstInstance = (Bool32)(x.reff97e405d.drawIndirectFirstInstance)
+ x.DepthClamp = (Bool32)(x.reff97e405d.depthClamp)
+ x.DepthBiasClamp = (Bool32)(x.reff97e405d.depthBiasClamp)
+ x.FillModeNonSolid = (Bool32)(x.reff97e405d.fillModeNonSolid)
+ x.DepthBounds = (Bool32)(x.reff97e405d.depthBounds)
+ x.WideLines = (Bool32)(x.reff97e405d.wideLines)
+ x.LargePoints = (Bool32)(x.reff97e405d.largePoints)
+ x.AlphaToOne = (Bool32)(x.reff97e405d.alphaToOne)
+ x.MultiViewport = (Bool32)(x.reff97e405d.multiViewport)
+ x.SamplerAnisotropy = (Bool32)(x.reff97e405d.samplerAnisotropy)
+ x.TextureCompressionETC2 = (Bool32)(x.reff97e405d.textureCompressionETC2)
+ x.TextureCompressionASTC_LDR = (Bool32)(x.reff97e405d.textureCompressionASTC_LDR)
+ x.TextureCompressionBC = (Bool32)(x.reff97e405d.textureCompressionBC)
+ x.OcclusionQueryPrecise = (Bool32)(x.reff97e405d.occlusionQueryPrecise)
+ x.PipelineStatisticsQuery = (Bool32)(x.reff97e405d.pipelineStatisticsQuery)
+ x.VertexPipelineStoresAndAtomics = (Bool32)(x.reff97e405d.vertexPipelineStoresAndAtomics)
+ x.FragmentStoresAndAtomics = (Bool32)(x.reff97e405d.fragmentStoresAndAtomics)
+ x.ShaderTessellationAndGeometryPointSize = (Bool32)(x.reff97e405d.shaderTessellationAndGeometryPointSize)
+ x.ShaderImageGatherExtended = (Bool32)(x.reff97e405d.shaderImageGatherExtended)
+ x.ShaderStorageImageExtendedFormats = (Bool32)(x.reff97e405d.shaderStorageImageExtendedFormats)
+ x.ShaderStorageImageMultisample = (Bool32)(x.reff97e405d.shaderStorageImageMultisample)
+ x.ShaderStorageImageReadWithoutFormat = (Bool32)(x.reff97e405d.shaderStorageImageReadWithoutFormat)
+ x.ShaderStorageImageWriteWithoutFormat = (Bool32)(x.reff97e405d.shaderStorageImageWriteWithoutFormat)
+ x.ShaderUniformBufferArrayDynamicIndexing = (Bool32)(x.reff97e405d.shaderUniformBufferArrayDynamicIndexing)
+ x.ShaderSampledImageArrayDynamicIndexing = (Bool32)(x.reff97e405d.shaderSampledImageArrayDynamicIndexing)
+ x.ShaderStorageBufferArrayDynamicIndexing = (Bool32)(x.reff97e405d.shaderStorageBufferArrayDynamicIndexing)
+ x.ShaderStorageImageArrayDynamicIndexing = (Bool32)(x.reff97e405d.shaderStorageImageArrayDynamicIndexing)
+ x.ShaderClipDistance = (Bool32)(x.reff97e405d.shaderClipDistance)
+ x.ShaderCullDistance = (Bool32)(x.reff97e405d.shaderCullDistance)
+ x.ShaderFloat64 = (Bool32)(x.reff97e405d.shaderFloat64)
+ x.ShaderInt64 = (Bool32)(x.reff97e405d.shaderInt64)
+ x.ShaderInt16 = (Bool32)(x.reff97e405d.shaderInt16)
+ x.ShaderResourceResidency = (Bool32)(x.reff97e405d.shaderResourceResidency)
+ x.ShaderResourceMinLod = (Bool32)(x.reff97e405d.shaderResourceMinLod)
+ x.SparseBinding = (Bool32)(x.reff97e405d.sparseBinding)
+ x.SparseResidencyBuffer = (Bool32)(x.reff97e405d.sparseResidencyBuffer)
+ x.SparseResidencyImage2D = (Bool32)(x.reff97e405d.sparseResidencyImage2D)
+ x.SparseResidencyImage3D = (Bool32)(x.reff97e405d.sparseResidencyImage3D)
+ x.SparseResidency2Samples = (Bool32)(x.reff97e405d.sparseResidency2Samples)
+ x.SparseResidency4Samples = (Bool32)(x.reff97e405d.sparseResidency4Samples)
+ x.SparseResidency8Samples = (Bool32)(x.reff97e405d.sparseResidency8Samples)
+ x.SparseResidency16Samples = (Bool32)(x.reff97e405d.sparseResidency16Samples)
+ x.SparseResidencyAliased = (Bool32)(x.reff97e405d.sparseResidencyAliased)
+ x.VariableMultisampleRate = (Bool32)(x.reff97e405d.variableMultisampleRate)
+ x.InheritedQueries = (Bool32)(x.reff97e405d.inheritedQueries)
+}
+
+// allocPhysicalDeviceLimitsMemory allocates memory for type C.VkPhysicalDeviceLimits in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceLimitsMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceLimitsValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceLimitsValue = unsafe.Sizeof([1]C.VkPhysicalDeviceLimits{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceLimits) Ref() *C.VkPhysicalDeviceLimits {
+ if x == nil {
+ return nil
+ }
+ return x.ref7926795a
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceLimits) Free() {
+ if x != nil && x.allocs7926795a != nil {
+ x.allocs7926795a.(*cgoAllocMap).Free()
+ x.ref7926795a = nil
+ }
+}
+
+// NewPhysicalDeviceLimitsRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceLimitsRef(ref unsafe.Pointer) *PhysicalDeviceLimits {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceLimits)
+ obj.ref7926795a = (*C.VkPhysicalDeviceLimits)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceLimits) PassRef() (*C.VkPhysicalDeviceLimits, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref7926795a != nil {
+ return x.ref7926795a, nil
+ }
+ mem7926795a := allocPhysicalDeviceLimitsMemory(1)
+ ref7926795a := (*C.VkPhysicalDeviceLimits)(mem7926795a)
+ allocs7926795a := new(cgoAllocMap)
+ allocs7926795a.Add(mem7926795a)
+
+ var cmaxImageDimension1D_allocs *cgoAllocMap
+ ref7926795a.maxImageDimension1D, cmaxImageDimension1D_allocs = (C.uint32_t)(x.MaxImageDimension1D), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxImageDimension1D_allocs)
+
+ var cmaxImageDimension2D_allocs *cgoAllocMap
+ ref7926795a.maxImageDimension2D, cmaxImageDimension2D_allocs = (C.uint32_t)(x.MaxImageDimension2D), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxImageDimension2D_allocs)
+
+ var cmaxImageDimension3D_allocs *cgoAllocMap
+ ref7926795a.maxImageDimension3D, cmaxImageDimension3D_allocs = (C.uint32_t)(x.MaxImageDimension3D), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxImageDimension3D_allocs)
+
+ var cmaxImageDimensionCube_allocs *cgoAllocMap
+ ref7926795a.maxImageDimensionCube, cmaxImageDimensionCube_allocs = (C.uint32_t)(x.MaxImageDimensionCube), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxImageDimensionCube_allocs)
+
+ var cmaxImageArrayLayers_allocs *cgoAllocMap
+ ref7926795a.maxImageArrayLayers, cmaxImageArrayLayers_allocs = (C.uint32_t)(x.MaxImageArrayLayers), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxImageArrayLayers_allocs)
+
+ var cmaxTexelBufferElements_allocs *cgoAllocMap
+ ref7926795a.maxTexelBufferElements, cmaxTexelBufferElements_allocs = (C.uint32_t)(x.MaxTexelBufferElements), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxTexelBufferElements_allocs)
+
+ var cmaxUniformBufferRange_allocs *cgoAllocMap
+ ref7926795a.maxUniformBufferRange, cmaxUniformBufferRange_allocs = (C.uint32_t)(x.MaxUniformBufferRange), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxUniformBufferRange_allocs)
+
+ var cmaxStorageBufferRange_allocs *cgoAllocMap
+ ref7926795a.maxStorageBufferRange, cmaxStorageBufferRange_allocs = (C.uint32_t)(x.MaxStorageBufferRange), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxStorageBufferRange_allocs)
+
+ var cmaxPushConstantsSize_allocs *cgoAllocMap
+ ref7926795a.maxPushConstantsSize, cmaxPushConstantsSize_allocs = (C.uint32_t)(x.MaxPushConstantsSize), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxPushConstantsSize_allocs)
+
+ var cmaxMemoryAllocationCount_allocs *cgoAllocMap
+ ref7926795a.maxMemoryAllocationCount, cmaxMemoryAllocationCount_allocs = (C.uint32_t)(x.MaxMemoryAllocationCount), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxMemoryAllocationCount_allocs)
+
+ var cmaxSamplerAllocationCount_allocs *cgoAllocMap
+ ref7926795a.maxSamplerAllocationCount, cmaxSamplerAllocationCount_allocs = (C.uint32_t)(x.MaxSamplerAllocationCount), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxSamplerAllocationCount_allocs)
+
+ var cbufferImageGranularity_allocs *cgoAllocMap
+ ref7926795a.bufferImageGranularity, cbufferImageGranularity_allocs = (C.VkDeviceSize)(x.BufferImageGranularity), cgoAllocsUnknown
+ allocs7926795a.Borrow(cbufferImageGranularity_allocs)
+
+ var csparseAddressSpaceSize_allocs *cgoAllocMap
+ ref7926795a.sparseAddressSpaceSize, csparseAddressSpaceSize_allocs = (C.VkDeviceSize)(x.SparseAddressSpaceSize), cgoAllocsUnknown
+ allocs7926795a.Borrow(csparseAddressSpaceSize_allocs)
+
+ var cmaxBoundDescriptorSets_allocs *cgoAllocMap
+ ref7926795a.maxBoundDescriptorSets, cmaxBoundDescriptorSets_allocs = (C.uint32_t)(x.MaxBoundDescriptorSets), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxBoundDescriptorSets_allocs)
+
+ var cmaxPerStageDescriptorSamplers_allocs *cgoAllocMap
+ ref7926795a.maxPerStageDescriptorSamplers, cmaxPerStageDescriptorSamplers_allocs = (C.uint32_t)(x.MaxPerStageDescriptorSamplers), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxPerStageDescriptorSamplers_allocs)
+
+ var cmaxPerStageDescriptorUniformBuffers_allocs *cgoAllocMap
+ ref7926795a.maxPerStageDescriptorUniformBuffers, cmaxPerStageDescriptorUniformBuffers_allocs = (C.uint32_t)(x.MaxPerStageDescriptorUniformBuffers), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxPerStageDescriptorUniformBuffers_allocs)
+
+ var cmaxPerStageDescriptorStorageBuffers_allocs *cgoAllocMap
+ ref7926795a.maxPerStageDescriptorStorageBuffers, cmaxPerStageDescriptorStorageBuffers_allocs = (C.uint32_t)(x.MaxPerStageDescriptorStorageBuffers), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxPerStageDescriptorStorageBuffers_allocs)
+
+ var cmaxPerStageDescriptorSampledImages_allocs *cgoAllocMap
+ ref7926795a.maxPerStageDescriptorSampledImages, cmaxPerStageDescriptorSampledImages_allocs = (C.uint32_t)(x.MaxPerStageDescriptorSampledImages), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxPerStageDescriptorSampledImages_allocs)
+
+ var cmaxPerStageDescriptorStorageImages_allocs *cgoAllocMap
+ ref7926795a.maxPerStageDescriptorStorageImages, cmaxPerStageDescriptorStorageImages_allocs = (C.uint32_t)(x.MaxPerStageDescriptorStorageImages), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxPerStageDescriptorStorageImages_allocs)
+
+ var cmaxPerStageDescriptorInputAttachments_allocs *cgoAllocMap
+ ref7926795a.maxPerStageDescriptorInputAttachments, cmaxPerStageDescriptorInputAttachments_allocs = (C.uint32_t)(x.MaxPerStageDescriptorInputAttachments), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxPerStageDescriptorInputAttachments_allocs)
+
+ var cmaxPerStageResources_allocs *cgoAllocMap
+ ref7926795a.maxPerStageResources, cmaxPerStageResources_allocs = (C.uint32_t)(x.MaxPerStageResources), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxPerStageResources_allocs)
+
+ var cmaxDescriptorSetSamplers_allocs *cgoAllocMap
+ ref7926795a.maxDescriptorSetSamplers, cmaxDescriptorSetSamplers_allocs = (C.uint32_t)(x.MaxDescriptorSetSamplers), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxDescriptorSetSamplers_allocs)
+
+ var cmaxDescriptorSetUniformBuffers_allocs *cgoAllocMap
+ ref7926795a.maxDescriptorSetUniformBuffers, cmaxDescriptorSetUniformBuffers_allocs = (C.uint32_t)(x.MaxDescriptorSetUniformBuffers), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxDescriptorSetUniformBuffers_allocs)
+
+ var cmaxDescriptorSetUniformBuffersDynamic_allocs *cgoAllocMap
+ ref7926795a.maxDescriptorSetUniformBuffersDynamic, cmaxDescriptorSetUniformBuffersDynamic_allocs = (C.uint32_t)(x.MaxDescriptorSetUniformBuffersDynamic), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxDescriptorSetUniformBuffersDynamic_allocs)
+
+ var cmaxDescriptorSetStorageBuffers_allocs *cgoAllocMap
+ ref7926795a.maxDescriptorSetStorageBuffers, cmaxDescriptorSetStorageBuffers_allocs = (C.uint32_t)(x.MaxDescriptorSetStorageBuffers), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxDescriptorSetStorageBuffers_allocs)
+
+ var cmaxDescriptorSetStorageBuffersDynamic_allocs *cgoAllocMap
+ ref7926795a.maxDescriptorSetStorageBuffersDynamic, cmaxDescriptorSetStorageBuffersDynamic_allocs = (C.uint32_t)(x.MaxDescriptorSetStorageBuffersDynamic), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxDescriptorSetStorageBuffersDynamic_allocs)
+
+ var cmaxDescriptorSetSampledImages_allocs *cgoAllocMap
+ ref7926795a.maxDescriptorSetSampledImages, cmaxDescriptorSetSampledImages_allocs = (C.uint32_t)(x.MaxDescriptorSetSampledImages), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxDescriptorSetSampledImages_allocs)
+
+ var cmaxDescriptorSetStorageImages_allocs *cgoAllocMap
+ ref7926795a.maxDescriptorSetStorageImages, cmaxDescriptorSetStorageImages_allocs = (C.uint32_t)(x.MaxDescriptorSetStorageImages), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxDescriptorSetStorageImages_allocs)
+
+ var cmaxDescriptorSetInputAttachments_allocs *cgoAllocMap
+ ref7926795a.maxDescriptorSetInputAttachments, cmaxDescriptorSetInputAttachments_allocs = (C.uint32_t)(x.MaxDescriptorSetInputAttachments), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxDescriptorSetInputAttachments_allocs)
+
+ var cmaxVertexInputAttributes_allocs *cgoAllocMap
+ ref7926795a.maxVertexInputAttributes, cmaxVertexInputAttributes_allocs = (C.uint32_t)(x.MaxVertexInputAttributes), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxVertexInputAttributes_allocs)
+
+ var cmaxVertexInputBindings_allocs *cgoAllocMap
+ ref7926795a.maxVertexInputBindings, cmaxVertexInputBindings_allocs = (C.uint32_t)(x.MaxVertexInputBindings), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxVertexInputBindings_allocs)
+
+ var cmaxVertexInputAttributeOffset_allocs *cgoAllocMap
+ ref7926795a.maxVertexInputAttributeOffset, cmaxVertexInputAttributeOffset_allocs = (C.uint32_t)(x.MaxVertexInputAttributeOffset), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxVertexInputAttributeOffset_allocs)
+
+ var cmaxVertexInputBindingStride_allocs *cgoAllocMap
+ ref7926795a.maxVertexInputBindingStride, cmaxVertexInputBindingStride_allocs = (C.uint32_t)(x.MaxVertexInputBindingStride), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxVertexInputBindingStride_allocs)
+
+ var cmaxVertexOutputComponents_allocs *cgoAllocMap
+ ref7926795a.maxVertexOutputComponents, cmaxVertexOutputComponents_allocs = (C.uint32_t)(x.MaxVertexOutputComponents), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxVertexOutputComponents_allocs)
+
+ var cmaxTessellationGenerationLevel_allocs *cgoAllocMap
+ ref7926795a.maxTessellationGenerationLevel, cmaxTessellationGenerationLevel_allocs = (C.uint32_t)(x.MaxTessellationGenerationLevel), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxTessellationGenerationLevel_allocs)
+
+ var cmaxTessellationPatchSize_allocs *cgoAllocMap
+ ref7926795a.maxTessellationPatchSize, cmaxTessellationPatchSize_allocs = (C.uint32_t)(x.MaxTessellationPatchSize), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxTessellationPatchSize_allocs)
+
+ var cmaxTessellationControlPerVertexInputComponents_allocs *cgoAllocMap
+ ref7926795a.maxTessellationControlPerVertexInputComponents, cmaxTessellationControlPerVertexInputComponents_allocs = (C.uint32_t)(x.MaxTessellationControlPerVertexInputComponents), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxTessellationControlPerVertexInputComponents_allocs)
+
+ var cmaxTessellationControlPerVertexOutputComponents_allocs *cgoAllocMap
+ ref7926795a.maxTessellationControlPerVertexOutputComponents, cmaxTessellationControlPerVertexOutputComponents_allocs = (C.uint32_t)(x.MaxTessellationControlPerVertexOutputComponents), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxTessellationControlPerVertexOutputComponents_allocs)
+
+ var cmaxTessellationControlPerPatchOutputComponents_allocs *cgoAllocMap
+ ref7926795a.maxTessellationControlPerPatchOutputComponents, cmaxTessellationControlPerPatchOutputComponents_allocs = (C.uint32_t)(x.MaxTessellationControlPerPatchOutputComponents), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxTessellationControlPerPatchOutputComponents_allocs)
+
+ var cmaxTessellationControlTotalOutputComponents_allocs *cgoAllocMap
+ ref7926795a.maxTessellationControlTotalOutputComponents, cmaxTessellationControlTotalOutputComponents_allocs = (C.uint32_t)(x.MaxTessellationControlTotalOutputComponents), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxTessellationControlTotalOutputComponents_allocs)
+
+ var cmaxTessellationEvaluationInputComponents_allocs *cgoAllocMap
+ ref7926795a.maxTessellationEvaluationInputComponents, cmaxTessellationEvaluationInputComponents_allocs = (C.uint32_t)(x.MaxTessellationEvaluationInputComponents), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxTessellationEvaluationInputComponents_allocs)
+
+ var cmaxTessellationEvaluationOutputComponents_allocs *cgoAllocMap
+ ref7926795a.maxTessellationEvaluationOutputComponents, cmaxTessellationEvaluationOutputComponents_allocs = (C.uint32_t)(x.MaxTessellationEvaluationOutputComponents), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxTessellationEvaluationOutputComponents_allocs)
+
+ var cmaxGeometryShaderInvocations_allocs *cgoAllocMap
+ ref7926795a.maxGeometryShaderInvocations, cmaxGeometryShaderInvocations_allocs = (C.uint32_t)(x.MaxGeometryShaderInvocations), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxGeometryShaderInvocations_allocs)
+
+ var cmaxGeometryInputComponents_allocs *cgoAllocMap
+ ref7926795a.maxGeometryInputComponents, cmaxGeometryInputComponents_allocs = (C.uint32_t)(x.MaxGeometryInputComponents), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxGeometryInputComponents_allocs)
+
+ var cmaxGeometryOutputComponents_allocs *cgoAllocMap
+ ref7926795a.maxGeometryOutputComponents, cmaxGeometryOutputComponents_allocs = (C.uint32_t)(x.MaxGeometryOutputComponents), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxGeometryOutputComponents_allocs)
+
+ var cmaxGeometryOutputVertices_allocs *cgoAllocMap
+ ref7926795a.maxGeometryOutputVertices, cmaxGeometryOutputVertices_allocs = (C.uint32_t)(x.MaxGeometryOutputVertices), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxGeometryOutputVertices_allocs)
+
+ var cmaxGeometryTotalOutputComponents_allocs *cgoAllocMap
+ ref7926795a.maxGeometryTotalOutputComponents, cmaxGeometryTotalOutputComponents_allocs = (C.uint32_t)(x.MaxGeometryTotalOutputComponents), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxGeometryTotalOutputComponents_allocs)
+
+ var cmaxFragmentInputComponents_allocs *cgoAllocMap
+ ref7926795a.maxFragmentInputComponents, cmaxFragmentInputComponents_allocs = (C.uint32_t)(x.MaxFragmentInputComponents), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxFragmentInputComponents_allocs)
+
+ var cmaxFragmentOutputAttachments_allocs *cgoAllocMap
+ ref7926795a.maxFragmentOutputAttachments, cmaxFragmentOutputAttachments_allocs = (C.uint32_t)(x.MaxFragmentOutputAttachments), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxFragmentOutputAttachments_allocs)
+
+ var cmaxFragmentDualSrcAttachments_allocs *cgoAllocMap
+ ref7926795a.maxFragmentDualSrcAttachments, cmaxFragmentDualSrcAttachments_allocs = (C.uint32_t)(x.MaxFragmentDualSrcAttachments), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxFragmentDualSrcAttachments_allocs)
+
+ var cmaxFragmentCombinedOutputResources_allocs *cgoAllocMap
+ ref7926795a.maxFragmentCombinedOutputResources, cmaxFragmentCombinedOutputResources_allocs = (C.uint32_t)(x.MaxFragmentCombinedOutputResources), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxFragmentCombinedOutputResources_allocs)
+
+ var cmaxComputeSharedMemorySize_allocs *cgoAllocMap
+ ref7926795a.maxComputeSharedMemorySize, cmaxComputeSharedMemorySize_allocs = (C.uint32_t)(x.MaxComputeSharedMemorySize), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxComputeSharedMemorySize_allocs)
+
+ var cmaxComputeWorkGroupCount_allocs *cgoAllocMap
+ ref7926795a.maxComputeWorkGroupCount, cmaxComputeWorkGroupCount_allocs = *(*[3]C.uint32_t)(unsafe.Pointer(&x.MaxComputeWorkGroupCount)), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxComputeWorkGroupCount_allocs)
+
+ var cmaxComputeWorkGroupInvocations_allocs *cgoAllocMap
+ ref7926795a.maxComputeWorkGroupInvocations, cmaxComputeWorkGroupInvocations_allocs = (C.uint32_t)(x.MaxComputeWorkGroupInvocations), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxComputeWorkGroupInvocations_allocs)
+
+ var cmaxComputeWorkGroupSize_allocs *cgoAllocMap
+ ref7926795a.maxComputeWorkGroupSize, cmaxComputeWorkGroupSize_allocs = *(*[3]C.uint32_t)(unsafe.Pointer(&x.MaxComputeWorkGroupSize)), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxComputeWorkGroupSize_allocs)
+
+ var csubPixelPrecisionBits_allocs *cgoAllocMap
+ ref7926795a.subPixelPrecisionBits, csubPixelPrecisionBits_allocs = (C.uint32_t)(x.SubPixelPrecisionBits), cgoAllocsUnknown
+ allocs7926795a.Borrow(csubPixelPrecisionBits_allocs)
+
+ var csubTexelPrecisionBits_allocs *cgoAllocMap
+ ref7926795a.subTexelPrecisionBits, csubTexelPrecisionBits_allocs = (C.uint32_t)(x.SubTexelPrecisionBits), cgoAllocsUnknown
+ allocs7926795a.Borrow(csubTexelPrecisionBits_allocs)
+
+ var cmipmapPrecisionBits_allocs *cgoAllocMap
+ ref7926795a.mipmapPrecisionBits, cmipmapPrecisionBits_allocs = (C.uint32_t)(x.MipmapPrecisionBits), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmipmapPrecisionBits_allocs)
+
+ var cmaxDrawIndexedIndexValue_allocs *cgoAllocMap
+ ref7926795a.maxDrawIndexedIndexValue, cmaxDrawIndexedIndexValue_allocs = (C.uint32_t)(x.MaxDrawIndexedIndexValue), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxDrawIndexedIndexValue_allocs)
+
+ var cmaxDrawIndirectCount_allocs *cgoAllocMap
+ ref7926795a.maxDrawIndirectCount, cmaxDrawIndirectCount_allocs = (C.uint32_t)(x.MaxDrawIndirectCount), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxDrawIndirectCount_allocs)
+
+ var cmaxSamplerLodBias_allocs *cgoAllocMap
+ ref7926795a.maxSamplerLodBias, cmaxSamplerLodBias_allocs = (C.float)(x.MaxSamplerLodBias), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxSamplerLodBias_allocs)
+
+ var cmaxSamplerAnisotropy_allocs *cgoAllocMap
+ ref7926795a.maxSamplerAnisotropy, cmaxSamplerAnisotropy_allocs = (C.float)(x.MaxSamplerAnisotropy), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxSamplerAnisotropy_allocs)
+
+ var cmaxViewports_allocs *cgoAllocMap
+ ref7926795a.maxViewports, cmaxViewports_allocs = (C.uint32_t)(x.MaxViewports), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxViewports_allocs)
+
+ var cmaxViewportDimensions_allocs *cgoAllocMap
+ ref7926795a.maxViewportDimensions, cmaxViewportDimensions_allocs = *(*[2]C.uint32_t)(unsafe.Pointer(&x.MaxViewportDimensions)), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxViewportDimensions_allocs)
+
+ var cviewportBoundsRange_allocs *cgoAllocMap
+ ref7926795a.viewportBoundsRange, cviewportBoundsRange_allocs = *(*[2]C.float)(unsafe.Pointer(&x.ViewportBoundsRange)), cgoAllocsUnknown
+ allocs7926795a.Borrow(cviewportBoundsRange_allocs)
+
+ var cviewportSubPixelBits_allocs *cgoAllocMap
+ ref7926795a.viewportSubPixelBits, cviewportSubPixelBits_allocs = (C.uint32_t)(x.ViewportSubPixelBits), cgoAllocsUnknown
+ allocs7926795a.Borrow(cviewportSubPixelBits_allocs)
+
+ var cminMemoryMapAlignment_allocs *cgoAllocMap
+ ref7926795a.minMemoryMapAlignment, cminMemoryMapAlignment_allocs = (C.size_t)(x.MinMemoryMapAlignment), cgoAllocsUnknown
+ allocs7926795a.Borrow(cminMemoryMapAlignment_allocs)
+
+ var cminTexelBufferOffsetAlignment_allocs *cgoAllocMap
+ ref7926795a.minTexelBufferOffsetAlignment, cminTexelBufferOffsetAlignment_allocs = (C.VkDeviceSize)(x.MinTexelBufferOffsetAlignment), cgoAllocsUnknown
+ allocs7926795a.Borrow(cminTexelBufferOffsetAlignment_allocs)
+
+ var cminUniformBufferOffsetAlignment_allocs *cgoAllocMap
+ ref7926795a.minUniformBufferOffsetAlignment, cminUniformBufferOffsetAlignment_allocs = (C.VkDeviceSize)(x.MinUniformBufferOffsetAlignment), cgoAllocsUnknown
+ allocs7926795a.Borrow(cminUniformBufferOffsetAlignment_allocs)
+
+ var cminStorageBufferOffsetAlignment_allocs *cgoAllocMap
+ ref7926795a.minStorageBufferOffsetAlignment, cminStorageBufferOffsetAlignment_allocs = (C.VkDeviceSize)(x.MinStorageBufferOffsetAlignment), cgoAllocsUnknown
+ allocs7926795a.Borrow(cminStorageBufferOffsetAlignment_allocs)
+
+ var cminTexelOffset_allocs *cgoAllocMap
+ ref7926795a.minTexelOffset, cminTexelOffset_allocs = (C.int32_t)(x.MinTexelOffset), cgoAllocsUnknown
+ allocs7926795a.Borrow(cminTexelOffset_allocs)
+
+ var cmaxTexelOffset_allocs *cgoAllocMap
+ ref7926795a.maxTexelOffset, cmaxTexelOffset_allocs = (C.uint32_t)(x.MaxTexelOffset), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxTexelOffset_allocs)
+
+ var cminTexelGatherOffset_allocs *cgoAllocMap
+ ref7926795a.minTexelGatherOffset, cminTexelGatherOffset_allocs = (C.int32_t)(x.MinTexelGatherOffset), cgoAllocsUnknown
+ allocs7926795a.Borrow(cminTexelGatherOffset_allocs)
+
+ var cmaxTexelGatherOffset_allocs *cgoAllocMap
+ ref7926795a.maxTexelGatherOffset, cmaxTexelGatherOffset_allocs = (C.uint32_t)(x.MaxTexelGatherOffset), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxTexelGatherOffset_allocs)
+
+ var cminInterpolationOffset_allocs *cgoAllocMap
+ ref7926795a.minInterpolationOffset, cminInterpolationOffset_allocs = (C.float)(x.MinInterpolationOffset), cgoAllocsUnknown
+ allocs7926795a.Borrow(cminInterpolationOffset_allocs)
+
+ var cmaxInterpolationOffset_allocs *cgoAllocMap
+ ref7926795a.maxInterpolationOffset, cmaxInterpolationOffset_allocs = (C.float)(x.MaxInterpolationOffset), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxInterpolationOffset_allocs)
+
+ var csubPixelInterpolationOffsetBits_allocs *cgoAllocMap
+ ref7926795a.subPixelInterpolationOffsetBits, csubPixelInterpolationOffsetBits_allocs = (C.uint32_t)(x.SubPixelInterpolationOffsetBits), cgoAllocsUnknown
+ allocs7926795a.Borrow(csubPixelInterpolationOffsetBits_allocs)
+
+ var cmaxFramebufferWidth_allocs *cgoAllocMap
+ ref7926795a.maxFramebufferWidth, cmaxFramebufferWidth_allocs = (C.uint32_t)(x.MaxFramebufferWidth), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxFramebufferWidth_allocs)
+
+ var cmaxFramebufferHeight_allocs *cgoAllocMap
+ ref7926795a.maxFramebufferHeight, cmaxFramebufferHeight_allocs = (C.uint32_t)(x.MaxFramebufferHeight), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxFramebufferHeight_allocs)
+
+ var cmaxFramebufferLayers_allocs *cgoAllocMap
+ ref7926795a.maxFramebufferLayers, cmaxFramebufferLayers_allocs = (C.uint32_t)(x.MaxFramebufferLayers), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxFramebufferLayers_allocs)
+
+ var cframebufferColorSampleCounts_allocs *cgoAllocMap
+ ref7926795a.framebufferColorSampleCounts, cframebufferColorSampleCounts_allocs = (C.VkSampleCountFlags)(x.FramebufferColorSampleCounts), cgoAllocsUnknown
+ allocs7926795a.Borrow(cframebufferColorSampleCounts_allocs)
+
+ var cframebufferDepthSampleCounts_allocs *cgoAllocMap
+ ref7926795a.framebufferDepthSampleCounts, cframebufferDepthSampleCounts_allocs = (C.VkSampleCountFlags)(x.FramebufferDepthSampleCounts), cgoAllocsUnknown
+ allocs7926795a.Borrow(cframebufferDepthSampleCounts_allocs)
+
+ var cframebufferStencilSampleCounts_allocs *cgoAllocMap
+ ref7926795a.framebufferStencilSampleCounts, cframebufferStencilSampleCounts_allocs = (C.VkSampleCountFlags)(x.FramebufferStencilSampleCounts), cgoAllocsUnknown
+ allocs7926795a.Borrow(cframebufferStencilSampleCounts_allocs)
+
+ var cframebufferNoAttachmentsSampleCounts_allocs *cgoAllocMap
+ ref7926795a.framebufferNoAttachmentsSampleCounts, cframebufferNoAttachmentsSampleCounts_allocs = (C.VkSampleCountFlags)(x.FramebufferNoAttachmentsSampleCounts), cgoAllocsUnknown
+ allocs7926795a.Borrow(cframebufferNoAttachmentsSampleCounts_allocs)
+
+ var cmaxColorAttachments_allocs *cgoAllocMap
+ ref7926795a.maxColorAttachments, cmaxColorAttachments_allocs = (C.uint32_t)(x.MaxColorAttachments), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxColorAttachments_allocs)
+
+ var csampledImageColorSampleCounts_allocs *cgoAllocMap
+ ref7926795a.sampledImageColorSampleCounts, csampledImageColorSampleCounts_allocs = (C.VkSampleCountFlags)(x.SampledImageColorSampleCounts), cgoAllocsUnknown
+ allocs7926795a.Borrow(csampledImageColorSampleCounts_allocs)
+
+ var csampledImageIntegerSampleCounts_allocs *cgoAllocMap
+ ref7926795a.sampledImageIntegerSampleCounts, csampledImageIntegerSampleCounts_allocs = (C.VkSampleCountFlags)(x.SampledImageIntegerSampleCounts), cgoAllocsUnknown
+ allocs7926795a.Borrow(csampledImageIntegerSampleCounts_allocs)
+
+ var csampledImageDepthSampleCounts_allocs *cgoAllocMap
+ ref7926795a.sampledImageDepthSampleCounts, csampledImageDepthSampleCounts_allocs = (C.VkSampleCountFlags)(x.SampledImageDepthSampleCounts), cgoAllocsUnknown
+ allocs7926795a.Borrow(csampledImageDepthSampleCounts_allocs)
+
+ var csampledImageStencilSampleCounts_allocs *cgoAllocMap
+ ref7926795a.sampledImageStencilSampleCounts, csampledImageStencilSampleCounts_allocs = (C.VkSampleCountFlags)(x.SampledImageStencilSampleCounts), cgoAllocsUnknown
+ allocs7926795a.Borrow(csampledImageStencilSampleCounts_allocs)
+
+ var cstorageImageSampleCounts_allocs *cgoAllocMap
+ ref7926795a.storageImageSampleCounts, cstorageImageSampleCounts_allocs = (C.VkSampleCountFlags)(x.StorageImageSampleCounts), cgoAllocsUnknown
+ allocs7926795a.Borrow(cstorageImageSampleCounts_allocs)
+
+ var cmaxSampleMaskWords_allocs *cgoAllocMap
+ ref7926795a.maxSampleMaskWords, cmaxSampleMaskWords_allocs = (C.uint32_t)(x.MaxSampleMaskWords), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxSampleMaskWords_allocs)
+
+ var ctimestampComputeAndGraphics_allocs *cgoAllocMap
+ ref7926795a.timestampComputeAndGraphics, ctimestampComputeAndGraphics_allocs = (C.VkBool32)(x.TimestampComputeAndGraphics), cgoAllocsUnknown
+ allocs7926795a.Borrow(ctimestampComputeAndGraphics_allocs)
+
+ var ctimestampPeriod_allocs *cgoAllocMap
+ ref7926795a.timestampPeriod, ctimestampPeriod_allocs = (C.float)(x.TimestampPeriod), cgoAllocsUnknown
+ allocs7926795a.Borrow(ctimestampPeriod_allocs)
+
+ var cmaxClipDistances_allocs *cgoAllocMap
+ ref7926795a.maxClipDistances, cmaxClipDistances_allocs = (C.uint32_t)(x.MaxClipDistances), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxClipDistances_allocs)
+
+ var cmaxCullDistances_allocs *cgoAllocMap
+ ref7926795a.maxCullDistances, cmaxCullDistances_allocs = (C.uint32_t)(x.MaxCullDistances), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxCullDistances_allocs)
+
+ var cmaxCombinedClipAndCullDistances_allocs *cgoAllocMap
+ ref7926795a.maxCombinedClipAndCullDistances, cmaxCombinedClipAndCullDistances_allocs = (C.uint32_t)(x.MaxCombinedClipAndCullDistances), cgoAllocsUnknown
+ allocs7926795a.Borrow(cmaxCombinedClipAndCullDistances_allocs)
+
+ var cdiscreteQueuePriorities_allocs *cgoAllocMap
+ ref7926795a.discreteQueuePriorities, cdiscreteQueuePriorities_allocs = (C.uint32_t)(x.DiscreteQueuePriorities), cgoAllocsUnknown
+ allocs7926795a.Borrow(cdiscreteQueuePriorities_allocs)
+
+ var cpointSizeRange_allocs *cgoAllocMap
+ ref7926795a.pointSizeRange, cpointSizeRange_allocs = *(*[2]C.float)(unsafe.Pointer(&x.PointSizeRange)), cgoAllocsUnknown
+ allocs7926795a.Borrow(cpointSizeRange_allocs)
+
+ var clineWidthRange_allocs *cgoAllocMap
+ ref7926795a.lineWidthRange, clineWidthRange_allocs = *(*[2]C.float)(unsafe.Pointer(&x.LineWidthRange)), cgoAllocsUnknown
+ allocs7926795a.Borrow(clineWidthRange_allocs)
+
+ var cpointSizeGranularity_allocs *cgoAllocMap
+ ref7926795a.pointSizeGranularity, cpointSizeGranularity_allocs = (C.float)(x.PointSizeGranularity), cgoAllocsUnknown
+ allocs7926795a.Borrow(cpointSizeGranularity_allocs)
+
+ var clineWidthGranularity_allocs *cgoAllocMap
+ ref7926795a.lineWidthGranularity, clineWidthGranularity_allocs = (C.float)(x.LineWidthGranularity), cgoAllocsUnknown
+ allocs7926795a.Borrow(clineWidthGranularity_allocs)
+
+ var cstrictLines_allocs *cgoAllocMap
+ ref7926795a.strictLines, cstrictLines_allocs = (C.VkBool32)(x.StrictLines), cgoAllocsUnknown
+ allocs7926795a.Borrow(cstrictLines_allocs)
+
+ var cstandardSampleLocations_allocs *cgoAllocMap
+ ref7926795a.standardSampleLocations, cstandardSampleLocations_allocs = (C.VkBool32)(x.StandardSampleLocations), cgoAllocsUnknown
+ allocs7926795a.Borrow(cstandardSampleLocations_allocs)
+
+ var coptimalBufferCopyOffsetAlignment_allocs *cgoAllocMap
+ ref7926795a.optimalBufferCopyOffsetAlignment, coptimalBufferCopyOffsetAlignment_allocs = (C.VkDeviceSize)(x.OptimalBufferCopyOffsetAlignment), cgoAllocsUnknown
+ allocs7926795a.Borrow(coptimalBufferCopyOffsetAlignment_allocs)
+
+ var coptimalBufferCopyRowPitchAlignment_allocs *cgoAllocMap
+ ref7926795a.optimalBufferCopyRowPitchAlignment, coptimalBufferCopyRowPitchAlignment_allocs = (C.VkDeviceSize)(x.OptimalBufferCopyRowPitchAlignment), cgoAllocsUnknown
+ allocs7926795a.Borrow(coptimalBufferCopyRowPitchAlignment_allocs)
+
+ var cnonCoherentAtomSize_allocs *cgoAllocMap
+ ref7926795a.nonCoherentAtomSize, cnonCoherentAtomSize_allocs = (C.VkDeviceSize)(x.NonCoherentAtomSize), cgoAllocsUnknown
+ allocs7926795a.Borrow(cnonCoherentAtomSize_allocs)
+
+ x.ref7926795a = ref7926795a
+ x.allocs7926795a = allocs7926795a
+ return ref7926795a, allocs7926795a
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceLimits) PassValue() (C.VkPhysicalDeviceLimits, *cgoAllocMap) {
+ if x.ref7926795a != nil {
+ return *x.ref7926795a, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceLimits) Deref() {
+ if x.ref7926795a == nil {
+ return
+ }
+ x.MaxImageDimension1D = (uint32)(x.ref7926795a.maxImageDimension1D)
+ x.MaxImageDimension2D = (uint32)(x.ref7926795a.maxImageDimension2D)
+ x.MaxImageDimension3D = (uint32)(x.ref7926795a.maxImageDimension3D)
+ x.MaxImageDimensionCube = (uint32)(x.ref7926795a.maxImageDimensionCube)
+ x.MaxImageArrayLayers = (uint32)(x.ref7926795a.maxImageArrayLayers)
+ x.MaxTexelBufferElements = (uint32)(x.ref7926795a.maxTexelBufferElements)
+ x.MaxUniformBufferRange = (uint32)(x.ref7926795a.maxUniformBufferRange)
+ x.MaxStorageBufferRange = (uint32)(x.ref7926795a.maxStorageBufferRange)
+ x.MaxPushConstantsSize = (uint32)(x.ref7926795a.maxPushConstantsSize)
+ x.MaxMemoryAllocationCount = (uint32)(x.ref7926795a.maxMemoryAllocationCount)
+ x.MaxSamplerAllocationCount = (uint32)(x.ref7926795a.maxSamplerAllocationCount)
+ x.BufferImageGranularity = (DeviceSize)(x.ref7926795a.bufferImageGranularity)
+ x.SparseAddressSpaceSize = (DeviceSize)(x.ref7926795a.sparseAddressSpaceSize)
+ x.MaxBoundDescriptorSets = (uint32)(x.ref7926795a.maxBoundDescriptorSets)
+ x.MaxPerStageDescriptorSamplers = (uint32)(x.ref7926795a.maxPerStageDescriptorSamplers)
+ x.MaxPerStageDescriptorUniformBuffers = (uint32)(x.ref7926795a.maxPerStageDescriptorUniformBuffers)
+ x.MaxPerStageDescriptorStorageBuffers = (uint32)(x.ref7926795a.maxPerStageDescriptorStorageBuffers)
+ x.MaxPerStageDescriptorSampledImages = (uint32)(x.ref7926795a.maxPerStageDescriptorSampledImages)
+ x.MaxPerStageDescriptorStorageImages = (uint32)(x.ref7926795a.maxPerStageDescriptorStorageImages)
+ x.MaxPerStageDescriptorInputAttachments = (uint32)(x.ref7926795a.maxPerStageDescriptorInputAttachments)
+ x.MaxPerStageResources = (uint32)(x.ref7926795a.maxPerStageResources)
+ x.MaxDescriptorSetSamplers = (uint32)(x.ref7926795a.maxDescriptorSetSamplers)
+ x.MaxDescriptorSetUniformBuffers = (uint32)(x.ref7926795a.maxDescriptorSetUniformBuffers)
+ x.MaxDescriptorSetUniformBuffersDynamic = (uint32)(x.ref7926795a.maxDescriptorSetUniformBuffersDynamic)
+ x.MaxDescriptorSetStorageBuffers = (uint32)(x.ref7926795a.maxDescriptorSetStorageBuffers)
+ x.MaxDescriptorSetStorageBuffersDynamic = (uint32)(x.ref7926795a.maxDescriptorSetStorageBuffersDynamic)
+ x.MaxDescriptorSetSampledImages = (uint32)(x.ref7926795a.maxDescriptorSetSampledImages)
+ x.MaxDescriptorSetStorageImages = (uint32)(x.ref7926795a.maxDescriptorSetStorageImages)
+ x.MaxDescriptorSetInputAttachments = (uint32)(x.ref7926795a.maxDescriptorSetInputAttachments)
+ x.MaxVertexInputAttributes = (uint32)(x.ref7926795a.maxVertexInputAttributes)
+ x.MaxVertexInputBindings = (uint32)(x.ref7926795a.maxVertexInputBindings)
+ x.MaxVertexInputAttributeOffset = (uint32)(x.ref7926795a.maxVertexInputAttributeOffset)
+ x.MaxVertexInputBindingStride = (uint32)(x.ref7926795a.maxVertexInputBindingStride)
+ x.MaxVertexOutputComponents = (uint32)(x.ref7926795a.maxVertexOutputComponents)
+ x.MaxTessellationGenerationLevel = (uint32)(x.ref7926795a.maxTessellationGenerationLevel)
+ x.MaxTessellationPatchSize = (uint32)(x.ref7926795a.maxTessellationPatchSize)
+ x.MaxTessellationControlPerVertexInputComponents = (uint32)(x.ref7926795a.maxTessellationControlPerVertexInputComponents)
+ x.MaxTessellationControlPerVertexOutputComponents = (uint32)(x.ref7926795a.maxTessellationControlPerVertexOutputComponents)
+ x.MaxTessellationControlPerPatchOutputComponents = (uint32)(x.ref7926795a.maxTessellationControlPerPatchOutputComponents)
+ x.MaxTessellationControlTotalOutputComponents = (uint32)(x.ref7926795a.maxTessellationControlTotalOutputComponents)
+ x.MaxTessellationEvaluationInputComponents = (uint32)(x.ref7926795a.maxTessellationEvaluationInputComponents)
+ x.MaxTessellationEvaluationOutputComponents = (uint32)(x.ref7926795a.maxTessellationEvaluationOutputComponents)
+ x.MaxGeometryShaderInvocations = (uint32)(x.ref7926795a.maxGeometryShaderInvocations)
+ x.MaxGeometryInputComponents = (uint32)(x.ref7926795a.maxGeometryInputComponents)
+ x.MaxGeometryOutputComponents = (uint32)(x.ref7926795a.maxGeometryOutputComponents)
+ x.MaxGeometryOutputVertices = (uint32)(x.ref7926795a.maxGeometryOutputVertices)
+ x.MaxGeometryTotalOutputComponents = (uint32)(x.ref7926795a.maxGeometryTotalOutputComponents)
+ x.MaxFragmentInputComponents = (uint32)(x.ref7926795a.maxFragmentInputComponents)
+ x.MaxFragmentOutputAttachments = (uint32)(x.ref7926795a.maxFragmentOutputAttachments)
+ x.MaxFragmentDualSrcAttachments = (uint32)(x.ref7926795a.maxFragmentDualSrcAttachments)
+ x.MaxFragmentCombinedOutputResources = (uint32)(x.ref7926795a.maxFragmentCombinedOutputResources)
+ x.MaxComputeSharedMemorySize = (uint32)(x.ref7926795a.maxComputeSharedMemorySize)
+ x.MaxComputeWorkGroupCount = *(*[3]uint32)(unsafe.Pointer(&x.ref7926795a.maxComputeWorkGroupCount))
+ x.MaxComputeWorkGroupInvocations = (uint32)(x.ref7926795a.maxComputeWorkGroupInvocations)
+ x.MaxComputeWorkGroupSize = *(*[3]uint32)(unsafe.Pointer(&x.ref7926795a.maxComputeWorkGroupSize))
+ x.SubPixelPrecisionBits = (uint32)(x.ref7926795a.subPixelPrecisionBits)
+ x.SubTexelPrecisionBits = (uint32)(x.ref7926795a.subTexelPrecisionBits)
+ x.MipmapPrecisionBits = (uint32)(x.ref7926795a.mipmapPrecisionBits)
+ x.MaxDrawIndexedIndexValue = (uint32)(x.ref7926795a.maxDrawIndexedIndexValue)
+ x.MaxDrawIndirectCount = (uint32)(x.ref7926795a.maxDrawIndirectCount)
+ x.MaxSamplerLodBias = (float32)(x.ref7926795a.maxSamplerLodBias)
+ x.MaxSamplerAnisotropy = (float32)(x.ref7926795a.maxSamplerAnisotropy)
+ x.MaxViewports = (uint32)(x.ref7926795a.maxViewports)
+ x.MaxViewportDimensions = *(*[2]uint32)(unsafe.Pointer(&x.ref7926795a.maxViewportDimensions))
+ x.ViewportBoundsRange = *(*[2]float32)(unsafe.Pointer(&x.ref7926795a.viewportBoundsRange))
+ x.ViewportSubPixelBits = (uint32)(x.ref7926795a.viewportSubPixelBits)
+ x.MinMemoryMapAlignment = (uint64)(x.ref7926795a.minMemoryMapAlignment)
+ x.MinTexelBufferOffsetAlignment = (DeviceSize)(x.ref7926795a.minTexelBufferOffsetAlignment)
+ x.MinUniformBufferOffsetAlignment = (DeviceSize)(x.ref7926795a.minUniformBufferOffsetAlignment)
+ x.MinStorageBufferOffsetAlignment = (DeviceSize)(x.ref7926795a.minStorageBufferOffsetAlignment)
+ x.MinTexelOffset = (int32)(x.ref7926795a.minTexelOffset)
+ x.MaxTexelOffset = (uint32)(x.ref7926795a.maxTexelOffset)
+ x.MinTexelGatherOffset = (int32)(x.ref7926795a.minTexelGatherOffset)
+ x.MaxTexelGatherOffset = (uint32)(x.ref7926795a.maxTexelGatherOffset)
+ x.MinInterpolationOffset = (float32)(x.ref7926795a.minInterpolationOffset)
+ x.MaxInterpolationOffset = (float32)(x.ref7926795a.maxInterpolationOffset)
+ x.SubPixelInterpolationOffsetBits = (uint32)(x.ref7926795a.subPixelInterpolationOffsetBits)
+ x.MaxFramebufferWidth = (uint32)(x.ref7926795a.maxFramebufferWidth)
+ x.MaxFramebufferHeight = (uint32)(x.ref7926795a.maxFramebufferHeight)
+ x.MaxFramebufferLayers = (uint32)(x.ref7926795a.maxFramebufferLayers)
+ x.FramebufferColorSampleCounts = (SampleCountFlags)(x.ref7926795a.framebufferColorSampleCounts)
+ x.FramebufferDepthSampleCounts = (SampleCountFlags)(x.ref7926795a.framebufferDepthSampleCounts)
+ x.FramebufferStencilSampleCounts = (SampleCountFlags)(x.ref7926795a.framebufferStencilSampleCounts)
+ x.FramebufferNoAttachmentsSampleCounts = (SampleCountFlags)(x.ref7926795a.framebufferNoAttachmentsSampleCounts)
+ x.MaxColorAttachments = (uint32)(x.ref7926795a.maxColorAttachments)
+ x.SampledImageColorSampleCounts = (SampleCountFlags)(x.ref7926795a.sampledImageColorSampleCounts)
+ x.SampledImageIntegerSampleCounts = (SampleCountFlags)(x.ref7926795a.sampledImageIntegerSampleCounts)
+ x.SampledImageDepthSampleCounts = (SampleCountFlags)(x.ref7926795a.sampledImageDepthSampleCounts)
+ x.SampledImageStencilSampleCounts = (SampleCountFlags)(x.ref7926795a.sampledImageStencilSampleCounts)
+ x.StorageImageSampleCounts = (SampleCountFlags)(x.ref7926795a.storageImageSampleCounts)
+ x.MaxSampleMaskWords = (uint32)(x.ref7926795a.maxSampleMaskWords)
+ x.TimestampComputeAndGraphics = (Bool32)(x.ref7926795a.timestampComputeAndGraphics)
+ x.TimestampPeriod = (float32)(x.ref7926795a.timestampPeriod)
+ x.MaxClipDistances = (uint32)(x.ref7926795a.maxClipDistances)
+ x.MaxCullDistances = (uint32)(x.ref7926795a.maxCullDistances)
+ x.MaxCombinedClipAndCullDistances = (uint32)(x.ref7926795a.maxCombinedClipAndCullDistances)
+ x.DiscreteQueuePriorities = (uint32)(x.ref7926795a.discreteQueuePriorities)
+ x.PointSizeRange = *(*[2]float32)(unsafe.Pointer(&x.ref7926795a.pointSizeRange))
+ x.LineWidthRange = *(*[2]float32)(unsafe.Pointer(&x.ref7926795a.lineWidthRange))
+ x.PointSizeGranularity = (float32)(x.ref7926795a.pointSizeGranularity)
+ x.LineWidthGranularity = (float32)(x.ref7926795a.lineWidthGranularity)
+ x.StrictLines = (Bool32)(x.ref7926795a.strictLines)
+ x.StandardSampleLocations = (Bool32)(x.ref7926795a.standardSampleLocations)
+ x.OptimalBufferCopyOffsetAlignment = (DeviceSize)(x.ref7926795a.optimalBufferCopyOffsetAlignment)
+ x.OptimalBufferCopyRowPitchAlignment = (DeviceSize)(x.ref7926795a.optimalBufferCopyRowPitchAlignment)
+ x.NonCoherentAtomSize = (DeviceSize)(x.ref7926795a.nonCoherentAtomSize)
+}
+
+// allocPhysicalDeviceMemoryPropertiesMemory allocates memory for type C.VkPhysicalDeviceMemoryProperties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceMemoryPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceMemoryPropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceMemoryPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceMemoryProperties{})
+
+// allocA32MemoryTypeMemory allocates memory for type [32]C.VkMemoryType in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocA32MemoryTypeMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfA32MemoryTypeValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfA32MemoryTypeValue = unsafe.Sizeof([1][32]C.VkMemoryType{})
+
+// unpackA32MemoryType transforms a sliced Go data structure into plain C format.
+func unpackA32MemoryType(x [32]MemoryType) (unpacked [32]C.VkMemoryType, allocs *cgoAllocMap) {
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(*[32]C.VkMemoryType) {
+ go allocs.Free()
+ })
+
+ mem0 := allocA32MemoryTypeMemory(1)
+ allocs.Add(mem0)
+ v0 := (*[32]C.VkMemoryType)(mem0)
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ unpacked = *(*[32]C.VkMemoryType)(mem0)
+ return
+}
+
+// allocA16MemoryHeapMemory allocates memory for type [16]C.VkMemoryHeap in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocA16MemoryHeapMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfA16MemoryHeapValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfA16MemoryHeapValue = unsafe.Sizeof([1][16]C.VkMemoryHeap{})
+
+// unpackA16MemoryHeap transforms a sliced Go data structure into plain C format.
+func unpackA16MemoryHeap(x [16]MemoryHeap) (unpacked [16]C.VkMemoryHeap, allocs *cgoAllocMap) {
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(*[16]C.VkMemoryHeap) {
+ go allocs.Free()
+ })
+
+ mem0 := allocA16MemoryHeapMemory(1)
+ allocs.Add(mem0)
+ v0 := (*[16]C.VkMemoryHeap)(mem0)
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ unpacked = *(*[16]C.VkMemoryHeap)(mem0)
+ return
+}
+
+// packA32MemoryType reads sliced Go data structure out from plain C format.
+func packA32MemoryType(v *[32]MemoryType, ptr0 *[32]C.VkMemoryType) {
+ for i0 := range v {
+ ptr1 := ptr0[i0]
+ v[i0] = *NewMemoryTypeRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// packA16MemoryHeap reads sliced Go data structure out from plain C format.
+func packA16MemoryHeap(v *[16]MemoryHeap, ptr0 *[16]C.VkMemoryHeap) {
+ for i0 := range v {
+ ptr1 := ptr0[i0]
+ v[i0] = *NewMemoryHeapRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceMemoryProperties) Ref() *C.VkPhysicalDeviceMemoryProperties {
+ if x == nil {
+ return nil
+ }
+ return x.ref3aabb5fd
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceMemoryProperties) Free() {
+ if x != nil && x.allocs3aabb5fd != nil {
+ x.allocs3aabb5fd.(*cgoAllocMap).Free()
+ x.ref3aabb5fd = nil
+ }
+}
+
+// NewPhysicalDeviceMemoryPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceMemoryPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceMemoryProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceMemoryProperties)
+ obj.ref3aabb5fd = (*C.VkPhysicalDeviceMemoryProperties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceMemoryProperties) PassRef() (*C.VkPhysicalDeviceMemoryProperties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref3aabb5fd != nil {
+ return x.ref3aabb5fd, nil
+ }
+ mem3aabb5fd := allocPhysicalDeviceMemoryPropertiesMemory(1)
+ ref3aabb5fd := (*C.VkPhysicalDeviceMemoryProperties)(mem3aabb5fd)
+ allocs3aabb5fd := new(cgoAllocMap)
+ allocs3aabb5fd.Add(mem3aabb5fd)
+
+ var cmemoryTypeCount_allocs *cgoAllocMap
+ ref3aabb5fd.memoryTypeCount, cmemoryTypeCount_allocs = (C.uint32_t)(x.MemoryTypeCount), cgoAllocsUnknown
+ allocs3aabb5fd.Borrow(cmemoryTypeCount_allocs)
+
+ var cmemoryTypes_allocs *cgoAllocMap
+ ref3aabb5fd.memoryTypes, cmemoryTypes_allocs = unpackA32MemoryType(x.MemoryTypes)
+ allocs3aabb5fd.Borrow(cmemoryTypes_allocs)
+
+ var cmemoryHeapCount_allocs *cgoAllocMap
+ ref3aabb5fd.memoryHeapCount, cmemoryHeapCount_allocs = (C.uint32_t)(x.MemoryHeapCount), cgoAllocsUnknown
+ allocs3aabb5fd.Borrow(cmemoryHeapCount_allocs)
+
+ var cmemoryHeaps_allocs *cgoAllocMap
+ ref3aabb5fd.memoryHeaps, cmemoryHeaps_allocs = unpackA16MemoryHeap(x.MemoryHeaps)
+ allocs3aabb5fd.Borrow(cmemoryHeaps_allocs)
+
+ x.ref3aabb5fd = ref3aabb5fd
+ x.allocs3aabb5fd = allocs3aabb5fd
+ return ref3aabb5fd, allocs3aabb5fd
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceMemoryProperties) PassValue() (C.VkPhysicalDeviceMemoryProperties, *cgoAllocMap) {
+ if x.ref3aabb5fd != nil {
+ return *x.ref3aabb5fd, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceMemoryProperties) Deref() {
+ if x.ref3aabb5fd == nil {
+ return
+ }
+ x.MemoryTypeCount = (uint32)(x.ref3aabb5fd.memoryTypeCount)
+ packA32MemoryType(&x.MemoryTypes, (*[32]C.VkMemoryType)(unsafe.Pointer(&x.ref3aabb5fd.memoryTypes)))
+ x.MemoryHeapCount = (uint32)(x.ref3aabb5fd.memoryHeapCount)
+ packA16MemoryHeap(&x.MemoryHeaps, (*[16]C.VkMemoryHeap)(unsafe.Pointer(&x.ref3aabb5fd.memoryHeaps)))
+}
+
+// allocPhysicalDeviceSparsePropertiesMemory allocates memory for type C.VkPhysicalDeviceSparseProperties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceSparsePropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceSparsePropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceSparsePropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceSparseProperties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceSparseProperties) Ref() *C.VkPhysicalDeviceSparseProperties {
+ if x == nil {
+ return nil
+ }
+ return x.ref6d7c11e6
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceSparseProperties) Free() {
+ if x != nil && x.allocs6d7c11e6 != nil {
+ x.allocs6d7c11e6.(*cgoAllocMap).Free()
+ x.ref6d7c11e6 = nil
+ }
+}
+
+// NewPhysicalDeviceSparsePropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceSparsePropertiesRef(ref unsafe.Pointer) *PhysicalDeviceSparseProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceSparseProperties)
+ obj.ref6d7c11e6 = (*C.VkPhysicalDeviceSparseProperties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceSparseProperties) PassRef() (*C.VkPhysicalDeviceSparseProperties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref6d7c11e6 != nil {
+ return x.ref6d7c11e6, nil
+ }
+ mem6d7c11e6 := allocPhysicalDeviceSparsePropertiesMemory(1)
+ ref6d7c11e6 := (*C.VkPhysicalDeviceSparseProperties)(mem6d7c11e6)
+ allocs6d7c11e6 := new(cgoAllocMap)
+ allocs6d7c11e6.Add(mem6d7c11e6)
+
+ var cresidencyStandard2DBlockShape_allocs *cgoAllocMap
+ ref6d7c11e6.residencyStandard2DBlockShape, cresidencyStandard2DBlockShape_allocs = (C.VkBool32)(x.ResidencyStandard2DBlockShape), cgoAllocsUnknown
+ allocs6d7c11e6.Borrow(cresidencyStandard2DBlockShape_allocs)
+
+ var cresidencyStandard2DMultisampleBlockShape_allocs *cgoAllocMap
+ ref6d7c11e6.residencyStandard2DMultisampleBlockShape, cresidencyStandard2DMultisampleBlockShape_allocs = (C.VkBool32)(x.ResidencyStandard2DMultisampleBlockShape), cgoAllocsUnknown
+ allocs6d7c11e6.Borrow(cresidencyStandard2DMultisampleBlockShape_allocs)
+
+ var cresidencyStandard3DBlockShape_allocs *cgoAllocMap
+ ref6d7c11e6.residencyStandard3DBlockShape, cresidencyStandard3DBlockShape_allocs = (C.VkBool32)(x.ResidencyStandard3DBlockShape), cgoAllocsUnknown
+ allocs6d7c11e6.Borrow(cresidencyStandard3DBlockShape_allocs)
+
+ var cresidencyAlignedMipSize_allocs *cgoAllocMap
+ ref6d7c11e6.residencyAlignedMipSize, cresidencyAlignedMipSize_allocs = (C.VkBool32)(x.ResidencyAlignedMipSize), cgoAllocsUnknown
+ allocs6d7c11e6.Borrow(cresidencyAlignedMipSize_allocs)
+
+ var cresidencyNonResidentStrict_allocs *cgoAllocMap
+ ref6d7c11e6.residencyNonResidentStrict, cresidencyNonResidentStrict_allocs = (C.VkBool32)(x.ResidencyNonResidentStrict), cgoAllocsUnknown
+ allocs6d7c11e6.Borrow(cresidencyNonResidentStrict_allocs)
+
+ x.ref6d7c11e6 = ref6d7c11e6
+ x.allocs6d7c11e6 = allocs6d7c11e6
+ return ref6d7c11e6, allocs6d7c11e6
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceSparseProperties) PassValue() (C.VkPhysicalDeviceSparseProperties, *cgoAllocMap) {
+ if x.ref6d7c11e6 != nil {
+ return *x.ref6d7c11e6, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceSparseProperties) Deref() {
+ if x.ref6d7c11e6 == nil {
+ return
+ }
+ x.ResidencyStandard2DBlockShape = (Bool32)(x.ref6d7c11e6.residencyStandard2DBlockShape)
+ x.ResidencyStandard2DMultisampleBlockShape = (Bool32)(x.ref6d7c11e6.residencyStandard2DMultisampleBlockShape)
+ x.ResidencyStandard3DBlockShape = (Bool32)(x.ref6d7c11e6.residencyStandard3DBlockShape)
+ x.ResidencyAlignedMipSize = (Bool32)(x.ref6d7c11e6.residencyAlignedMipSize)
+ x.ResidencyNonResidentStrict = (Bool32)(x.ref6d7c11e6.residencyNonResidentStrict)
+}
+
+// allocPhysicalDevicePropertiesMemory allocates memory for type C.VkPhysicalDeviceProperties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDevicePropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDevicePropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDevicePropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceProperties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceProperties) Ref() *C.VkPhysicalDeviceProperties {
+ if x == nil {
+ return nil
+ }
+ return x.ref1080ca9d
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceProperties) Free() {
+ if x != nil && x.allocs1080ca9d != nil {
+ x.allocs1080ca9d.(*cgoAllocMap).Free()
+ x.ref1080ca9d = nil
+ }
+}
+
+// NewPhysicalDevicePropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDevicePropertiesRef(ref unsafe.Pointer) *PhysicalDeviceProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceProperties)
+ obj.ref1080ca9d = (*C.VkPhysicalDeviceProperties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceProperties) PassRef() (*C.VkPhysicalDeviceProperties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref1080ca9d != nil {
+ return x.ref1080ca9d, nil
+ }
+ mem1080ca9d := allocPhysicalDevicePropertiesMemory(1)
+ ref1080ca9d := (*C.VkPhysicalDeviceProperties)(mem1080ca9d)
+ allocs1080ca9d := new(cgoAllocMap)
+ allocs1080ca9d.Add(mem1080ca9d)
+
+ var capiVersion_allocs *cgoAllocMap
+ ref1080ca9d.apiVersion, capiVersion_allocs = (C.uint32_t)(x.ApiVersion), cgoAllocsUnknown
+ allocs1080ca9d.Borrow(capiVersion_allocs)
+
+ var cdriverVersion_allocs *cgoAllocMap
+ ref1080ca9d.driverVersion, cdriverVersion_allocs = (C.uint32_t)(x.DriverVersion), cgoAllocsUnknown
+ allocs1080ca9d.Borrow(cdriverVersion_allocs)
+
+ var cvendorID_allocs *cgoAllocMap
+ ref1080ca9d.vendorID, cvendorID_allocs = (C.uint32_t)(x.VendorID), cgoAllocsUnknown
+ allocs1080ca9d.Borrow(cvendorID_allocs)
+
+ var cdeviceID_allocs *cgoAllocMap
+ ref1080ca9d.deviceID, cdeviceID_allocs = (C.uint32_t)(x.DeviceID), cgoAllocsUnknown
+ allocs1080ca9d.Borrow(cdeviceID_allocs)
+
+ var cdeviceType_allocs *cgoAllocMap
+ ref1080ca9d.deviceType, cdeviceType_allocs = (C.VkPhysicalDeviceType)(x.DeviceType), cgoAllocsUnknown
+ allocs1080ca9d.Borrow(cdeviceType_allocs)
+
+ var cdeviceName_allocs *cgoAllocMap
+ ref1080ca9d.deviceName, cdeviceName_allocs = *(*[256]C.char)(unsafe.Pointer(&x.DeviceName)), cgoAllocsUnknown
+ allocs1080ca9d.Borrow(cdeviceName_allocs)
+
+ var cpipelineCacheUUID_allocs *cgoAllocMap
+ ref1080ca9d.pipelineCacheUUID, cpipelineCacheUUID_allocs = *(*[16]C.uint8_t)(unsafe.Pointer(&x.PipelineCacheUUID)), cgoAllocsUnknown
+ allocs1080ca9d.Borrow(cpipelineCacheUUID_allocs)
+
+ var climits_allocs *cgoAllocMap
+ ref1080ca9d.limits, climits_allocs = x.Limits.PassValue()
+ allocs1080ca9d.Borrow(climits_allocs)
+
+ var csparseProperties_allocs *cgoAllocMap
+ ref1080ca9d.sparseProperties, csparseProperties_allocs = x.SparseProperties.PassValue()
+ allocs1080ca9d.Borrow(csparseProperties_allocs)
+
+ x.ref1080ca9d = ref1080ca9d
+ x.allocs1080ca9d = allocs1080ca9d
+ return ref1080ca9d, allocs1080ca9d
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceProperties) PassValue() (C.VkPhysicalDeviceProperties, *cgoAllocMap) {
+ if x.ref1080ca9d != nil {
+ return *x.ref1080ca9d, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceProperties) Deref() {
+ if x.ref1080ca9d == nil {
+ return
+ }
+ x.ApiVersion = (uint32)(x.ref1080ca9d.apiVersion)
+ x.DriverVersion = (uint32)(x.ref1080ca9d.driverVersion)
+ x.VendorID = (uint32)(x.ref1080ca9d.vendorID)
+ x.DeviceID = (uint32)(x.ref1080ca9d.deviceID)
+ x.DeviceType = (PhysicalDeviceType)(x.ref1080ca9d.deviceType)
+ x.DeviceName = *(*[256]byte)(unsafe.Pointer(&x.ref1080ca9d.deviceName))
+ x.PipelineCacheUUID = *(*[16]byte)(unsafe.Pointer(&x.ref1080ca9d.pipelineCacheUUID))
+ x.Limits = *NewPhysicalDeviceLimitsRef(unsafe.Pointer(&x.ref1080ca9d.limits))
+ x.SparseProperties = *NewPhysicalDeviceSparsePropertiesRef(unsafe.Pointer(&x.ref1080ca9d.sparseProperties))
+}
+
+// allocQueueFamilyPropertiesMemory allocates memory for type C.VkQueueFamilyProperties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocQueueFamilyPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfQueueFamilyPropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfQueueFamilyPropertiesValue = unsafe.Sizeof([1]C.VkQueueFamilyProperties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *QueueFamilyProperties) Ref() *C.VkQueueFamilyProperties {
+ if x == nil {
+ return nil
+ }
+ return x.refd538c446
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *QueueFamilyProperties) Free() {
+ if x != nil && x.allocsd538c446 != nil {
+ x.allocsd538c446.(*cgoAllocMap).Free()
+ x.refd538c446 = nil
+ }
+}
+
+// NewQueueFamilyPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewQueueFamilyPropertiesRef(ref unsafe.Pointer) *QueueFamilyProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(QueueFamilyProperties)
+ obj.refd538c446 = (*C.VkQueueFamilyProperties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *QueueFamilyProperties) PassRef() (*C.VkQueueFamilyProperties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refd538c446 != nil {
+ return x.refd538c446, nil
+ }
+ memd538c446 := allocQueueFamilyPropertiesMemory(1)
+ refd538c446 := (*C.VkQueueFamilyProperties)(memd538c446)
+ allocsd538c446 := new(cgoAllocMap)
+ allocsd538c446.Add(memd538c446)
+
+ var cqueueFlags_allocs *cgoAllocMap
+ refd538c446.queueFlags, cqueueFlags_allocs = (C.VkQueueFlags)(x.QueueFlags), cgoAllocsUnknown
+ allocsd538c446.Borrow(cqueueFlags_allocs)
+
+ var cqueueCount_allocs *cgoAllocMap
+ refd538c446.queueCount, cqueueCount_allocs = (C.uint32_t)(x.QueueCount), cgoAllocsUnknown
+ allocsd538c446.Borrow(cqueueCount_allocs)
+
+ var ctimestampValidBits_allocs *cgoAllocMap
+ refd538c446.timestampValidBits, ctimestampValidBits_allocs = (C.uint32_t)(x.TimestampValidBits), cgoAllocsUnknown
+ allocsd538c446.Borrow(ctimestampValidBits_allocs)
+
+ var cminImageTransferGranularity_allocs *cgoAllocMap
+ refd538c446.minImageTransferGranularity, cminImageTransferGranularity_allocs = x.MinImageTransferGranularity.PassValue()
+ allocsd538c446.Borrow(cminImageTransferGranularity_allocs)
+
+ x.refd538c446 = refd538c446
+ x.allocsd538c446 = allocsd538c446
+ return refd538c446, allocsd538c446
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x QueueFamilyProperties) PassValue() (C.VkQueueFamilyProperties, *cgoAllocMap) {
+ if x.refd538c446 != nil {
+ return *x.refd538c446, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *QueueFamilyProperties) Deref() {
+ if x.refd538c446 == nil {
+ return
+ }
+ x.QueueFlags = (QueueFlags)(x.refd538c446.queueFlags)
+ x.QueueCount = (uint32)(x.refd538c446.queueCount)
+ x.TimestampValidBits = (uint32)(x.refd538c446.timestampValidBits)
+ x.MinImageTransferGranularity = *NewExtent3DRef(unsafe.Pointer(&x.refd538c446.minImageTransferGranularity))
+}
+
+// allocDeviceQueueCreateInfoMemory allocates memory for type C.VkDeviceQueueCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocDeviceQueueCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceQueueCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfDeviceQueueCreateInfoValue = unsafe.Sizeof([1]C.VkDeviceQueueCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *DeviceQueueCreateInfo) Ref() *C.VkDeviceQueueCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref6087b30d
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *DeviceQueueCreateInfo) Free() {
+ if x != nil && x.allocs6087b30d != nil {
+ x.allocs6087b30d.(*cgoAllocMap).Free()
+ x.ref6087b30d = nil
+ }
+}
+
+// NewDeviceQueueCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewDeviceQueueCreateInfoRef(ref unsafe.Pointer) *DeviceQueueCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(DeviceQueueCreateInfo)
+ obj.ref6087b30d = (*C.VkDeviceQueueCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DeviceQueueCreateInfo) PassRef() (*C.VkDeviceQueueCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref6087b30d != nil {
+ return x.ref6087b30d, nil
+ }
+ mem6087b30d := allocDeviceQueueCreateInfoMemory(1)
+ ref6087b30d := (*C.VkDeviceQueueCreateInfo)(mem6087b30d)
+ allocs6087b30d := new(cgoAllocMap)
+ allocs6087b30d.Add(mem6087b30d)
+
+ var csType_allocs *cgoAllocMap
+ ref6087b30d.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs6087b30d.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref6087b30d.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs6087b30d.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref6087b30d.flags, cflags_allocs = (C.VkDeviceQueueCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocs6087b30d.Borrow(cflags_allocs)
+
+ var cqueueFamilyIndex_allocs *cgoAllocMap
+ ref6087b30d.queueFamilyIndex, cqueueFamilyIndex_allocs = (C.uint32_t)(x.QueueFamilyIndex), cgoAllocsUnknown
+ allocs6087b30d.Borrow(cqueueFamilyIndex_allocs)
+
+ var cqueueCount_allocs *cgoAllocMap
+ ref6087b30d.queueCount, cqueueCount_allocs = (C.uint32_t)(x.QueueCount), cgoAllocsUnknown
+ allocs6087b30d.Borrow(cqueueCount_allocs)
+
+ var cpQueuePriorities_allocs *cgoAllocMap
+ ref6087b30d.pQueuePriorities, cpQueuePriorities_allocs = (*C.float)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PQueuePriorities)).Data)), cgoAllocsUnknown
+ allocs6087b30d.Borrow(cpQueuePriorities_allocs)
+
+ x.ref6087b30d = ref6087b30d
+ x.allocs6087b30d = allocs6087b30d
+ return ref6087b30d, allocs6087b30d
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DeviceQueueCreateInfo) PassValue() (C.VkDeviceQueueCreateInfo, *cgoAllocMap) {
+ if x.ref6087b30d != nil {
+ return *x.ref6087b30d, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *DeviceQueueCreateInfo) Deref() {
+ if x.ref6087b30d == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref6087b30d.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref6087b30d.pNext))
+ x.Flags = (DeviceQueueCreateFlags)(x.ref6087b30d.flags)
+ x.QueueFamilyIndex = (uint32)(x.ref6087b30d.queueFamilyIndex)
+ x.QueueCount = (uint32)(x.ref6087b30d.queueCount)
+ hxfc4425b := (*sliceHeader)(unsafe.Pointer(&x.PQueuePriorities))
+ hxfc4425b.Data = unsafe.Pointer(x.ref6087b30d.pQueuePriorities)
+ hxfc4425b.Cap = 0x7fffffff
+ // hxfc4425b.Len = ?
+
+}
+
+// allocDeviceCreateInfoMemory allocates memory for type C.VkDeviceCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocDeviceCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfDeviceCreateInfoValue = unsafe.Sizeof([1]C.VkDeviceCreateInfo{})
+
+// unpackSDeviceQueueCreateInfo transforms a sliced Go data structure into plain C format.
+func unpackSDeviceQueueCreateInfo(x []DeviceQueueCreateInfo) (unpacked *C.VkDeviceQueueCreateInfo, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkDeviceQueueCreateInfo) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocDeviceQueueCreateInfoMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkDeviceQueueCreateInfo)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkDeviceQueueCreateInfo)(h.Data)
+ return
+}
+
+// unpackSPhysicalDeviceFeatures transforms a sliced Go data structure into plain C format.
+func unpackSPhysicalDeviceFeatures(x []PhysicalDeviceFeatures) (unpacked *C.VkPhysicalDeviceFeatures, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkPhysicalDeviceFeatures) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocPhysicalDeviceFeaturesMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkPhysicalDeviceFeatures)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkPhysicalDeviceFeatures)(h.Data)
+ return
+}
+
+// packSDeviceQueueCreateInfo reads sliced Go data structure out from plain C format.
+func packSDeviceQueueCreateInfo(v []DeviceQueueCreateInfo, ptr0 *C.VkDeviceQueueCreateInfo) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfDeviceQueueCreateInfoValue]C.VkDeviceQueueCreateInfo)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewDeviceQueueCreateInfoRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// packSPhysicalDeviceFeatures reads sliced Go data structure out from plain C format.
+func packSPhysicalDeviceFeatures(v []PhysicalDeviceFeatures, ptr0 *C.VkPhysicalDeviceFeatures) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfPhysicalDeviceFeaturesValue]C.VkPhysicalDeviceFeatures)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewPhysicalDeviceFeaturesRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *DeviceCreateInfo) Ref() *C.VkDeviceCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refc0d8b997
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *DeviceCreateInfo) Free() {
+ if x != nil && x.allocsc0d8b997 != nil {
+ x.allocsc0d8b997.(*cgoAllocMap).Free()
+ x.refc0d8b997 = nil
+ }
+}
+
+// NewDeviceCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewDeviceCreateInfoRef(ref unsafe.Pointer) *DeviceCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(DeviceCreateInfo)
+ obj.refc0d8b997 = (*C.VkDeviceCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DeviceCreateInfo) PassRef() (*C.VkDeviceCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refc0d8b997 != nil {
+ return x.refc0d8b997, nil
+ }
+ memc0d8b997 := allocDeviceCreateInfoMemory(1)
+ refc0d8b997 := (*C.VkDeviceCreateInfo)(memc0d8b997)
+ allocsc0d8b997 := new(cgoAllocMap)
+ allocsc0d8b997.Add(memc0d8b997)
+
+ var csType_allocs *cgoAllocMap
+ refc0d8b997.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsc0d8b997.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refc0d8b997.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsc0d8b997.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ refc0d8b997.flags, cflags_allocs = (C.VkDeviceCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocsc0d8b997.Borrow(cflags_allocs)
+
+ var cqueueCreateInfoCount_allocs *cgoAllocMap
+ refc0d8b997.queueCreateInfoCount, cqueueCreateInfoCount_allocs = (C.uint32_t)(x.QueueCreateInfoCount), cgoAllocsUnknown
+ allocsc0d8b997.Borrow(cqueueCreateInfoCount_allocs)
+
+ var cpQueueCreateInfos_allocs *cgoAllocMap
+ refc0d8b997.pQueueCreateInfos, cpQueueCreateInfos_allocs = unpackSDeviceQueueCreateInfo(x.PQueueCreateInfos)
+ allocsc0d8b997.Borrow(cpQueueCreateInfos_allocs)
+
+ var cenabledLayerCount_allocs *cgoAllocMap
+ refc0d8b997.enabledLayerCount, cenabledLayerCount_allocs = (C.uint32_t)(x.EnabledLayerCount), cgoAllocsUnknown
+ allocsc0d8b997.Borrow(cenabledLayerCount_allocs)
+
+ var cppEnabledLayerNames_allocs *cgoAllocMap
+ refc0d8b997.ppEnabledLayerNames, cppEnabledLayerNames_allocs = unpackSString(x.PpEnabledLayerNames)
+ allocsc0d8b997.Borrow(cppEnabledLayerNames_allocs)
+
+ var cenabledExtensionCount_allocs *cgoAllocMap
+ refc0d8b997.enabledExtensionCount, cenabledExtensionCount_allocs = (C.uint32_t)(x.EnabledExtensionCount), cgoAllocsUnknown
+ allocsc0d8b997.Borrow(cenabledExtensionCount_allocs)
+
+ var cppEnabledExtensionNames_allocs *cgoAllocMap
+ refc0d8b997.ppEnabledExtensionNames, cppEnabledExtensionNames_allocs = unpackSString(x.PpEnabledExtensionNames)
+ allocsc0d8b997.Borrow(cppEnabledExtensionNames_allocs)
+
+ var cpEnabledFeatures_allocs *cgoAllocMap
+ refc0d8b997.pEnabledFeatures, cpEnabledFeatures_allocs = unpackSPhysicalDeviceFeatures(x.PEnabledFeatures)
+ allocsc0d8b997.Borrow(cpEnabledFeatures_allocs)
+
+ x.refc0d8b997 = refc0d8b997
+ x.allocsc0d8b997 = allocsc0d8b997
+ return refc0d8b997, allocsc0d8b997
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DeviceCreateInfo) PassValue() (C.VkDeviceCreateInfo, *cgoAllocMap) {
+ if x.refc0d8b997 != nil {
+ return *x.refc0d8b997, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *DeviceCreateInfo) Deref() {
+ if x.refc0d8b997 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refc0d8b997.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc0d8b997.pNext))
+ x.Flags = (DeviceCreateFlags)(x.refc0d8b997.flags)
+ x.QueueCreateInfoCount = (uint32)(x.refc0d8b997.queueCreateInfoCount)
+ packSDeviceQueueCreateInfo(x.PQueueCreateInfos, x.refc0d8b997.pQueueCreateInfos)
+ x.EnabledLayerCount = (uint32)(x.refc0d8b997.enabledLayerCount)
+ packSString(x.PpEnabledLayerNames, x.refc0d8b997.ppEnabledLayerNames)
+ x.EnabledExtensionCount = (uint32)(x.refc0d8b997.enabledExtensionCount)
+ packSString(x.PpEnabledExtensionNames, x.refc0d8b997.ppEnabledExtensionNames)
+ packSPhysicalDeviceFeatures(x.PEnabledFeatures, x.refc0d8b997.pEnabledFeatures)
+}
+
+// allocExtensionPropertiesMemory allocates memory for type C.VkExtensionProperties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocExtensionPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExtensionPropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfExtensionPropertiesValue = unsafe.Sizeof([1]C.VkExtensionProperties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ExtensionProperties) Ref() *C.VkExtensionProperties {
+ if x == nil {
+ return nil
+ }
+ return x.ref2f001956
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ExtensionProperties) Free() {
+ if x != nil && x.allocs2f001956 != nil {
+ x.allocs2f001956.(*cgoAllocMap).Free()
+ x.ref2f001956 = nil
+ }
+}
+
+// NewExtensionPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewExtensionPropertiesRef(ref unsafe.Pointer) *ExtensionProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ExtensionProperties)
+ obj.ref2f001956 = (*C.VkExtensionProperties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ExtensionProperties) PassRef() (*C.VkExtensionProperties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref2f001956 != nil {
+ return x.ref2f001956, nil
+ }
+ mem2f001956 := allocExtensionPropertiesMemory(1)
+ ref2f001956 := (*C.VkExtensionProperties)(mem2f001956)
+ allocs2f001956 := new(cgoAllocMap)
+ allocs2f001956.Add(mem2f001956)
+
+ var cextensionName_allocs *cgoAllocMap
+ ref2f001956.extensionName, cextensionName_allocs = *(*[256]C.char)(unsafe.Pointer(&x.ExtensionName)), cgoAllocsUnknown
+ allocs2f001956.Borrow(cextensionName_allocs)
+
+ var cspecVersion_allocs *cgoAllocMap
+ ref2f001956.specVersion, cspecVersion_allocs = (C.uint32_t)(x.SpecVersion), cgoAllocsUnknown
+ allocs2f001956.Borrow(cspecVersion_allocs)
+
+ x.ref2f001956 = ref2f001956
+ x.allocs2f001956 = allocs2f001956
+ return ref2f001956, allocs2f001956
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ExtensionProperties) PassValue() (C.VkExtensionProperties, *cgoAllocMap) {
+ if x.ref2f001956 != nil {
+ return *x.ref2f001956, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ExtensionProperties) Deref() {
+ if x.ref2f001956 == nil {
+ return
+ }
+ x.ExtensionName = *(*[256]byte)(unsafe.Pointer(&x.ref2f001956.extensionName))
+ x.SpecVersion = (uint32)(x.ref2f001956.specVersion)
+}
+
+// allocLayerPropertiesMemory allocates memory for type C.VkLayerProperties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocLayerPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfLayerPropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfLayerPropertiesValue = unsafe.Sizeof([1]C.VkLayerProperties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *LayerProperties) Ref() *C.VkLayerProperties {
+ if x == nil {
+ return nil
+ }
+ return x.refd9407ce7
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *LayerProperties) Free() {
+ if x != nil && x.allocsd9407ce7 != nil {
+ x.allocsd9407ce7.(*cgoAllocMap).Free()
+ x.refd9407ce7 = nil
+ }
+}
+
+// NewLayerPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewLayerPropertiesRef(ref unsafe.Pointer) *LayerProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(LayerProperties)
+ obj.refd9407ce7 = (*C.VkLayerProperties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *LayerProperties) PassRef() (*C.VkLayerProperties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refd9407ce7 != nil {
+ return x.refd9407ce7, nil
+ }
+ memd9407ce7 := allocLayerPropertiesMemory(1)
+ refd9407ce7 := (*C.VkLayerProperties)(memd9407ce7)
+ allocsd9407ce7 := new(cgoAllocMap)
+ allocsd9407ce7.Add(memd9407ce7)
+
+ var clayerName_allocs *cgoAllocMap
+ refd9407ce7.layerName, clayerName_allocs = *(*[256]C.char)(unsafe.Pointer(&x.LayerName)), cgoAllocsUnknown
+ allocsd9407ce7.Borrow(clayerName_allocs)
+
+ var cspecVersion_allocs *cgoAllocMap
+ refd9407ce7.specVersion, cspecVersion_allocs = (C.uint32_t)(x.SpecVersion), cgoAllocsUnknown
+ allocsd9407ce7.Borrow(cspecVersion_allocs)
+
+ var cimplementationVersion_allocs *cgoAllocMap
+ refd9407ce7.implementationVersion, cimplementationVersion_allocs = (C.uint32_t)(x.ImplementationVersion), cgoAllocsUnknown
+ allocsd9407ce7.Borrow(cimplementationVersion_allocs)
+
+ var cdescription_allocs *cgoAllocMap
+ refd9407ce7.description, cdescription_allocs = *(*[256]C.char)(unsafe.Pointer(&x.Description)), cgoAllocsUnknown
+ allocsd9407ce7.Borrow(cdescription_allocs)
+
+ x.refd9407ce7 = refd9407ce7
+ x.allocsd9407ce7 = allocsd9407ce7
+ return refd9407ce7, allocsd9407ce7
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x LayerProperties) PassValue() (C.VkLayerProperties, *cgoAllocMap) {
+ if x.refd9407ce7 != nil {
+ return *x.refd9407ce7, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *LayerProperties) Deref() {
+ if x.refd9407ce7 == nil {
+ return
+ }
+ x.LayerName = *(*[256]byte)(unsafe.Pointer(&x.refd9407ce7.layerName))
+ x.SpecVersion = (uint32)(x.refd9407ce7.specVersion)
+ x.ImplementationVersion = (uint32)(x.refd9407ce7.implementationVersion)
+ x.Description = *(*[256]byte)(unsafe.Pointer(&x.refd9407ce7.description))
+}
+
+// allocSubmitInfoMemory allocates memory for type C.VkSubmitInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSubmitInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSubmitInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSubmitInfoValue = unsafe.Sizeof([1]C.VkSubmitInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SubmitInfo) Ref() *C.VkSubmitInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref22884025
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SubmitInfo) Free() {
+ if x != nil && x.allocs22884025 != nil {
+ x.allocs22884025.(*cgoAllocMap).Free()
+ x.ref22884025 = nil
+ }
+}
+
+// NewSubmitInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSubmitInfoRef(ref unsafe.Pointer) *SubmitInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SubmitInfo)
+ obj.ref22884025 = (*C.VkSubmitInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SubmitInfo) PassRef() (*C.VkSubmitInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref22884025 != nil {
+ return x.ref22884025, nil
+ }
+ mem22884025 := allocSubmitInfoMemory(1)
+ ref22884025 := (*C.VkSubmitInfo)(mem22884025)
+ allocs22884025 := new(cgoAllocMap)
+ allocs22884025.Add(mem22884025)
+
+ var csType_allocs *cgoAllocMap
+ ref22884025.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs22884025.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref22884025.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs22884025.Borrow(cpNext_allocs)
+
+ var cwaitSemaphoreCount_allocs *cgoAllocMap
+ ref22884025.waitSemaphoreCount, cwaitSemaphoreCount_allocs = (C.uint32_t)(x.WaitSemaphoreCount), cgoAllocsUnknown
+ allocs22884025.Borrow(cwaitSemaphoreCount_allocs)
+
+ var cpWaitSemaphores_allocs *cgoAllocMap
+ ref22884025.pWaitSemaphores, cpWaitSemaphores_allocs = (*C.VkSemaphore)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PWaitSemaphores)).Data)), cgoAllocsUnknown
+ allocs22884025.Borrow(cpWaitSemaphores_allocs)
+
+ var cpWaitDstStageMask_allocs *cgoAllocMap
+ ref22884025.pWaitDstStageMask, cpWaitDstStageMask_allocs = (*C.VkPipelineStageFlags)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PWaitDstStageMask)).Data)), cgoAllocsUnknown
+ allocs22884025.Borrow(cpWaitDstStageMask_allocs)
+
+ var ccommandBufferCount_allocs *cgoAllocMap
+ ref22884025.commandBufferCount, ccommandBufferCount_allocs = (C.uint32_t)(x.CommandBufferCount), cgoAllocsUnknown
+ allocs22884025.Borrow(ccommandBufferCount_allocs)
+
+ var cpCommandBuffers_allocs *cgoAllocMap
+ ref22884025.pCommandBuffers, cpCommandBuffers_allocs = (*C.VkCommandBuffer)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PCommandBuffers)).Data)), cgoAllocsUnknown
+ allocs22884025.Borrow(cpCommandBuffers_allocs)
+
+ var csignalSemaphoreCount_allocs *cgoAllocMap
+ ref22884025.signalSemaphoreCount, csignalSemaphoreCount_allocs = (C.uint32_t)(x.SignalSemaphoreCount), cgoAllocsUnknown
+ allocs22884025.Borrow(csignalSemaphoreCount_allocs)
+
+ var cpSignalSemaphores_allocs *cgoAllocMap
+ ref22884025.pSignalSemaphores, cpSignalSemaphores_allocs = (*C.VkSemaphore)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PSignalSemaphores)).Data)), cgoAllocsUnknown
+ allocs22884025.Borrow(cpSignalSemaphores_allocs)
+
+ x.ref22884025 = ref22884025
+ x.allocs22884025 = allocs22884025
+ return ref22884025, allocs22884025
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SubmitInfo) PassValue() (C.VkSubmitInfo, *cgoAllocMap) {
+ if x.ref22884025 != nil {
+ return *x.ref22884025, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SubmitInfo) Deref() {
+ if x.ref22884025 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref22884025.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref22884025.pNext))
+ x.WaitSemaphoreCount = (uint32)(x.ref22884025.waitSemaphoreCount)
+ hxf95e7c8 := (*sliceHeader)(unsafe.Pointer(&x.PWaitSemaphores))
+ hxf95e7c8.Data = unsafe.Pointer(x.ref22884025.pWaitSemaphores)
+ hxf95e7c8.Cap = 0x7fffffff
+ // hxf95e7c8.Len = ?
+
+ hxff2234b := (*sliceHeader)(unsafe.Pointer(&x.PWaitDstStageMask))
+ hxff2234b.Data = unsafe.Pointer(x.ref22884025.pWaitDstStageMask)
+ hxff2234b.Cap = 0x7fffffff
+ // hxff2234b.Len = ?
+
+ x.CommandBufferCount = (uint32)(x.ref22884025.commandBufferCount)
+ hxff73280 := (*sliceHeader)(unsafe.Pointer(&x.PCommandBuffers))
+ hxff73280.Data = unsafe.Pointer(x.ref22884025.pCommandBuffers)
+ hxff73280.Cap = 0x7fffffff
+ // hxff73280.Len = ?
+
+ x.SignalSemaphoreCount = (uint32)(x.ref22884025.signalSemaphoreCount)
+ hxfa9955c := (*sliceHeader)(unsafe.Pointer(&x.PSignalSemaphores))
+ hxfa9955c.Data = unsafe.Pointer(x.ref22884025.pSignalSemaphores)
+ hxfa9955c.Cap = 0x7fffffff
+ // hxfa9955c.Len = ?
+
+}
+
+// allocMappedMemoryRangeMemory allocates memory for type C.VkMappedMemoryRange in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocMappedMemoryRangeMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMappedMemoryRangeValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfMappedMemoryRangeValue = unsafe.Sizeof([1]C.VkMappedMemoryRange{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *MappedMemoryRange) Ref() *C.VkMappedMemoryRange {
+ if x == nil {
+ return nil
+ }
+ return x.ref42a37320
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *MappedMemoryRange) Free() {
+ if x != nil && x.allocs42a37320 != nil {
+ x.allocs42a37320.(*cgoAllocMap).Free()
+ x.ref42a37320 = nil
+ }
+}
+
+// NewMappedMemoryRangeRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewMappedMemoryRangeRef(ref unsafe.Pointer) *MappedMemoryRange {
+ if ref == nil {
+ return nil
+ }
+ obj := new(MappedMemoryRange)
+ obj.ref42a37320 = (*C.VkMappedMemoryRange)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *MappedMemoryRange) PassRef() (*C.VkMappedMemoryRange, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref42a37320 != nil {
+ return x.ref42a37320, nil
+ }
+ mem42a37320 := allocMappedMemoryRangeMemory(1)
+ ref42a37320 := (*C.VkMappedMemoryRange)(mem42a37320)
+ allocs42a37320 := new(cgoAllocMap)
+ allocs42a37320.Add(mem42a37320)
+
+ var csType_allocs *cgoAllocMap
+ ref42a37320.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs42a37320.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref42a37320.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs42a37320.Borrow(cpNext_allocs)
+
+ var cmemory_allocs *cgoAllocMap
+ ref42a37320.memory, cmemory_allocs = *(*C.VkDeviceMemory)(unsafe.Pointer(&x.Memory)), cgoAllocsUnknown
+ allocs42a37320.Borrow(cmemory_allocs)
+
+ var coffset_allocs *cgoAllocMap
+ ref42a37320.offset, coffset_allocs = (C.VkDeviceSize)(x.Offset), cgoAllocsUnknown
+ allocs42a37320.Borrow(coffset_allocs)
+
+ var csize_allocs *cgoAllocMap
+ ref42a37320.size, csize_allocs = (C.VkDeviceSize)(x.Size), cgoAllocsUnknown
+ allocs42a37320.Borrow(csize_allocs)
+
+ x.ref42a37320 = ref42a37320
+ x.allocs42a37320 = allocs42a37320
+ return ref42a37320, allocs42a37320
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x MappedMemoryRange) PassValue() (C.VkMappedMemoryRange, *cgoAllocMap) {
+ if x.ref42a37320 != nil {
+ return *x.ref42a37320, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *MappedMemoryRange) Deref() {
+ if x.ref42a37320 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref42a37320.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref42a37320.pNext))
+ x.Memory = *(*DeviceMemory)(unsafe.Pointer(&x.ref42a37320.memory))
+ x.Offset = (DeviceSize)(x.ref42a37320.offset)
+ x.Size = (DeviceSize)(x.ref42a37320.size)
+}
+
+// allocMemoryAllocateInfoMemory allocates memory for type C.VkMemoryAllocateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocMemoryAllocateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMemoryAllocateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfMemoryAllocateInfoValue = unsafe.Sizeof([1]C.VkMemoryAllocateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *MemoryAllocateInfo) Ref() *C.VkMemoryAllocateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref31032b
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *MemoryAllocateInfo) Free() {
+ if x != nil && x.allocs31032b != nil {
+ x.allocs31032b.(*cgoAllocMap).Free()
+ x.ref31032b = nil
+ }
+}
+
+// NewMemoryAllocateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewMemoryAllocateInfoRef(ref unsafe.Pointer) *MemoryAllocateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(MemoryAllocateInfo)
+ obj.ref31032b = (*C.VkMemoryAllocateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *MemoryAllocateInfo) PassRef() (*C.VkMemoryAllocateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref31032b != nil {
+ return x.ref31032b, nil
+ }
+ mem31032b := allocMemoryAllocateInfoMemory(1)
+ ref31032b := (*C.VkMemoryAllocateInfo)(mem31032b)
+ allocs31032b := new(cgoAllocMap)
+ allocs31032b.Add(mem31032b)
+
+ var csType_allocs *cgoAllocMap
+ ref31032b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs31032b.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref31032b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs31032b.Borrow(cpNext_allocs)
+
+ var callocationSize_allocs *cgoAllocMap
+ ref31032b.allocationSize, callocationSize_allocs = (C.VkDeviceSize)(x.AllocationSize), cgoAllocsUnknown
+ allocs31032b.Borrow(callocationSize_allocs)
+
+ var cmemoryTypeIndex_allocs *cgoAllocMap
+ ref31032b.memoryTypeIndex, cmemoryTypeIndex_allocs = (C.uint32_t)(x.MemoryTypeIndex), cgoAllocsUnknown
+ allocs31032b.Borrow(cmemoryTypeIndex_allocs)
+
+ x.ref31032b = ref31032b
+ x.allocs31032b = allocs31032b
+ return ref31032b, allocs31032b
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x MemoryAllocateInfo) PassValue() (C.VkMemoryAllocateInfo, *cgoAllocMap) {
+ if x.ref31032b != nil {
+ return *x.ref31032b, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *MemoryAllocateInfo) Deref() {
+ if x.ref31032b == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref31032b.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref31032b.pNext))
+ x.AllocationSize = (DeviceSize)(x.ref31032b.allocationSize)
+ x.MemoryTypeIndex = (uint32)(x.ref31032b.memoryTypeIndex)
+}
+
+// allocMemoryRequirementsMemory allocates memory for type C.VkMemoryRequirements in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocMemoryRequirementsMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMemoryRequirementsValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfMemoryRequirementsValue = unsafe.Sizeof([1]C.VkMemoryRequirements{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *MemoryRequirements) Ref() *C.VkMemoryRequirements {
+ if x == nil {
+ return nil
+ }
+ return x.ref5259fc6b
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *MemoryRequirements) Free() {
+ if x != nil && x.allocs5259fc6b != nil {
+ x.allocs5259fc6b.(*cgoAllocMap).Free()
+ x.ref5259fc6b = nil
+ }
+}
+
+// NewMemoryRequirementsRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewMemoryRequirementsRef(ref unsafe.Pointer) *MemoryRequirements {
+ if ref == nil {
+ return nil
+ }
+ obj := new(MemoryRequirements)
+ obj.ref5259fc6b = (*C.VkMemoryRequirements)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *MemoryRequirements) PassRef() (*C.VkMemoryRequirements, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref5259fc6b != nil {
+ return x.ref5259fc6b, nil
+ }
+ mem5259fc6b := allocMemoryRequirementsMemory(1)
+ ref5259fc6b := (*C.VkMemoryRequirements)(mem5259fc6b)
+ allocs5259fc6b := new(cgoAllocMap)
+ allocs5259fc6b.Add(mem5259fc6b)
+
+ var csize_allocs *cgoAllocMap
+ ref5259fc6b.size, csize_allocs = (C.VkDeviceSize)(x.Size), cgoAllocsUnknown
+ allocs5259fc6b.Borrow(csize_allocs)
+
+ var calignment_allocs *cgoAllocMap
+ ref5259fc6b.alignment, calignment_allocs = (C.VkDeviceSize)(x.Alignment), cgoAllocsUnknown
+ allocs5259fc6b.Borrow(calignment_allocs)
+
+ var cmemoryTypeBits_allocs *cgoAllocMap
+ ref5259fc6b.memoryTypeBits, cmemoryTypeBits_allocs = (C.uint32_t)(x.MemoryTypeBits), cgoAllocsUnknown
+ allocs5259fc6b.Borrow(cmemoryTypeBits_allocs)
+
+ x.ref5259fc6b = ref5259fc6b
+ x.allocs5259fc6b = allocs5259fc6b
+ return ref5259fc6b, allocs5259fc6b
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x MemoryRequirements) PassValue() (C.VkMemoryRequirements, *cgoAllocMap) {
+ if x.ref5259fc6b != nil {
+ return *x.ref5259fc6b, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *MemoryRequirements) Deref() {
+ if x.ref5259fc6b == nil {
+ return
+ }
+ x.Size = (DeviceSize)(x.ref5259fc6b.size)
+ x.Alignment = (DeviceSize)(x.ref5259fc6b.alignment)
+ x.MemoryTypeBits = (uint32)(x.ref5259fc6b.memoryTypeBits)
+}
+
+// allocSparseMemoryBindMemory allocates memory for type C.VkSparseMemoryBind in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSparseMemoryBindMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSparseMemoryBindValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSparseMemoryBindValue = unsafe.Sizeof([1]C.VkSparseMemoryBind{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SparseMemoryBind) Ref() *C.VkSparseMemoryBind {
+ if x == nil {
+ return nil
+ }
+ return x.ref5bf418e8
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SparseMemoryBind) Free() {
+ if x != nil && x.allocs5bf418e8 != nil {
+ x.allocs5bf418e8.(*cgoAllocMap).Free()
+ x.ref5bf418e8 = nil
+ }
+}
+
+// NewSparseMemoryBindRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSparseMemoryBindRef(ref unsafe.Pointer) *SparseMemoryBind {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SparseMemoryBind)
+ obj.ref5bf418e8 = (*C.VkSparseMemoryBind)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SparseMemoryBind) PassRef() (*C.VkSparseMemoryBind, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref5bf418e8 != nil {
+ return x.ref5bf418e8, nil
+ }
+ mem5bf418e8 := allocSparseMemoryBindMemory(1)
+ ref5bf418e8 := (*C.VkSparseMemoryBind)(mem5bf418e8)
+ allocs5bf418e8 := new(cgoAllocMap)
+ allocs5bf418e8.Add(mem5bf418e8)
+
+ var cresourceOffset_allocs *cgoAllocMap
+ ref5bf418e8.resourceOffset, cresourceOffset_allocs = (C.VkDeviceSize)(x.ResourceOffset), cgoAllocsUnknown
+ allocs5bf418e8.Borrow(cresourceOffset_allocs)
+
+ var csize_allocs *cgoAllocMap
+ ref5bf418e8.size, csize_allocs = (C.VkDeviceSize)(x.Size), cgoAllocsUnknown
+ allocs5bf418e8.Borrow(csize_allocs)
+
+ var cmemory_allocs *cgoAllocMap
+ ref5bf418e8.memory, cmemory_allocs = *(*C.VkDeviceMemory)(unsafe.Pointer(&x.Memory)), cgoAllocsUnknown
+ allocs5bf418e8.Borrow(cmemory_allocs)
+
+ var cmemoryOffset_allocs *cgoAllocMap
+ ref5bf418e8.memoryOffset, cmemoryOffset_allocs = (C.VkDeviceSize)(x.MemoryOffset), cgoAllocsUnknown
+ allocs5bf418e8.Borrow(cmemoryOffset_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref5bf418e8.flags, cflags_allocs = (C.VkSparseMemoryBindFlags)(x.Flags), cgoAllocsUnknown
+ allocs5bf418e8.Borrow(cflags_allocs)
+
+ x.ref5bf418e8 = ref5bf418e8
+ x.allocs5bf418e8 = allocs5bf418e8
+ return ref5bf418e8, allocs5bf418e8
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SparseMemoryBind) PassValue() (C.VkSparseMemoryBind, *cgoAllocMap) {
+ if x.ref5bf418e8 != nil {
+ return *x.ref5bf418e8, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SparseMemoryBind) Deref() {
+ if x.ref5bf418e8 == nil {
+ return
+ }
+ x.ResourceOffset = (DeviceSize)(x.ref5bf418e8.resourceOffset)
+ x.Size = (DeviceSize)(x.ref5bf418e8.size)
+ x.Memory = *(*DeviceMemory)(unsafe.Pointer(&x.ref5bf418e8.memory))
+ x.MemoryOffset = (DeviceSize)(x.ref5bf418e8.memoryOffset)
+ x.Flags = (SparseMemoryBindFlags)(x.ref5bf418e8.flags)
+}
+
+// allocSparseBufferMemoryBindInfoMemory allocates memory for type C.VkSparseBufferMemoryBindInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSparseBufferMemoryBindInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSparseBufferMemoryBindInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSparseBufferMemoryBindInfoValue = unsafe.Sizeof([1]C.VkSparseBufferMemoryBindInfo{})
+
+// unpackSSparseMemoryBind transforms a sliced Go data structure into plain C format.
+func unpackSSparseMemoryBind(x []SparseMemoryBind) (unpacked *C.VkSparseMemoryBind, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkSparseMemoryBind) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocSparseMemoryBindMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkSparseMemoryBind)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkSparseMemoryBind)(h.Data)
+ return
+}
+
+// packSSparseMemoryBind reads sliced Go data structure out from plain C format.
+func packSSparseMemoryBind(v []SparseMemoryBind, ptr0 *C.VkSparseMemoryBind) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfSparseMemoryBindValue]C.VkSparseMemoryBind)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewSparseMemoryBindRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SparseBufferMemoryBindInfo) Ref() *C.VkSparseBufferMemoryBindInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refebcaf40c
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SparseBufferMemoryBindInfo) Free() {
+ if x != nil && x.allocsebcaf40c != nil {
+ x.allocsebcaf40c.(*cgoAllocMap).Free()
+ x.refebcaf40c = nil
+ }
+}
+
+// NewSparseBufferMemoryBindInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSparseBufferMemoryBindInfoRef(ref unsafe.Pointer) *SparseBufferMemoryBindInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SparseBufferMemoryBindInfo)
+ obj.refebcaf40c = (*C.VkSparseBufferMemoryBindInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SparseBufferMemoryBindInfo) PassRef() (*C.VkSparseBufferMemoryBindInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refebcaf40c != nil {
+ return x.refebcaf40c, nil
+ }
+ memebcaf40c := allocSparseBufferMemoryBindInfoMemory(1)
+ refebcaf40c := (*C.VkSparseBufferMemoryBindInfo)(memebcaf40c)
+ allocsebcaf40c := new(cgoAllocMap)
+ allocsebcaf40c.Add(memebcaf40c)
+
+ var cbuffer_allocs *cgoAllocMap
+ refebcaf40c.buffer, cbuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.Buffer)), cgoAllocsUnknown
+ allocsebcaf40c.Borrow(cbuffer_allocs)
+
+ var cbindCount_allocs *cgoAllocMap
+ refebcaf40c.bindCount, cbindCount_allocs = (C.uint32_t)(x.BindCount), cgoAllocsUnknown
+ allocsebcaf40c.Borrow(cbindCount_allocs)
+
+ var cpBinds_allocs *cgoAllocMap
+ refebcaf40c.pBinds, cpBinds_allocs = unpackSSparseMemoryBind(x.PBinds)
+ allocsebcaf40c.Borrow(cpBinds_allocs)
+
+ x.refebcaf40c = refebcaf40c
+ x.allocsebcaf40c = allocsebcaf40c
+ return refebcaf40c, allocsebcaf40c
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SparseBufferMemoryBindInfo) PassValue() (C.VkSparseBufferMemoryBindInfo, *cgoAllocMap) {
+ if x.refebcaf40c != nil {
+ return *x.refebcaf40c, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SparseBufferMemoryBindInfo) Deref() {
+ if x.refebcaf40c == nil {
+ return
+ }
+ x.Buffer = *(*Buffer)(unsafe.Pointer(&x.refebcaf40c.buffer))
+ x.BindCount = (uint32)(x.refebcaf40c.bindCount)
+ packSSparseMemoryBind(x.PBinds, x.refebcaf40c.pBinds)
+}
+
+// allocSparseImageOpaqueMemoryBindInfoMemory allocates memory for type C.VkSparseImageOpaqueMemoryBindInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSparseImageOpaqueMemoryBindInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSparseImageOpaqueMemoryBindInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSparseImageOpaqueMemoryBindInfoValue = unsafe.Sizeof([1]C.VkSparseImageOpaqueMemoryBindInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SparseImageOpaqueMemoryBindInfo) Ref() *C.VkSparseImageOpaqueMemoryBindInfo {
+ if x == nil {
+ return nil
+ }
+ return x.reffb1b3d56
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SparseImageOpaqueMemoryBindInfo) Free() {
+ if x != nil && x.allocsfb1b3d56 != nil {
+ x.allocsfb1b3d56.(*cgoAllocMap).Free()
+ x.reffb1b3d56 = nil
+ }
+}
+
+// NewSparseImageOpaqueMemoryBindInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSparseImageOpaqueMemoryBindInfoRef(ref unsafe.Pointer) *SparseImageOpaqueMemoryBindInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SparseImageOpaqueMemoryBindInfo)
+ obj.reffb1b3d56 = (*C.VkSparseImageOpaqueMemoryBindInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SparseImageOpaqueMemoryBindInfo) PassRef() (*C.VkSparseImageOpaqueMemoryBindInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.reffb1b3d56 != nil {
+ return x.reffb1b3d56, nil
+ }
+ memfb1b3d56 := allocSparseImageOpaqueMemoryBindInfoMemory(1)
+ reffb1b3d56 := (*C.VkSparseImageOpaqueMemoryBindInfo)(memfb1b3d56)
+ allocsfb1b3d56 := new(cgoAllocMap)
+ allocsfb1b3d56.Add(memfb1b3d56)
+
+ var cimage_allocs *cgoAllocMap
+ reffb1b3d56.image, cimage_allocs = *(*C.VkImage)(unsafe.Pointer(&x.Image)), cgoAllocsUnknown
+ allocsfb1b3d56.Borrow(cimage_allocs)
+
+ var cbindCount_allocs *cgoAllocMap
+ reffb1b3d56.bindCount, cbindCount_allocs = (C.uint32_t)(x.BindCount), cgoAllocsUnknown
+ allocsfb1b3d56.Borrow(cbindCount_allocs)
+
+ var cpBinds_allocs *cgoAllocMap
+ reffb1b3d56.pBinds, cpBinds_allocs = unpackSSparseMemoryBind(x.PBinds)
+ allocsfb1b3d56.Borrow(cpBinds_allocs)
+
+ x.reffb1b3d56 = reffb1b3d56
+ x.allocsfb1b3d56 = allocsfb1b3d56
+ return reffb1b3d56, allocsfb1b3d56
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SparseImageOpaqueMemoryBindInfo) PassValue() (C.VkSparseImageOpaqueMemoryBindInfo, *cgoAllocMap) {
+ if x.reffb1b3d56 != nil {
+ return *x.reffb1b3d56, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SparseImageOpaqueMemoryBindInfo) Deref() {
+ if x.reffb1b3d56 == nil {
+ return
+ }
+ x.Image = *(*Image)(unsafe.Pointer(&x.reffb1b3d56.image))
+ x.BindCount = (uint32)(x.reffb1b3d56.bindCount)
+ packSSparseMemoryBind(x.PBinds, x.reffb1b3d56.pBinds)
+}
+
+// allocImageSubresourceMemory allocates memory for type C.VkImageSubresource in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocImageSubresourceMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageSubresourceValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfImageSubresourceValue = unsafe.Sizeof([1]C.VkImageSubresource{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ImageSubresource) Ref() *C.VkImageSubresource {
+ if x == nil {
+ return nil
+ }
+ return x.reffeaa0d8a
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ImageSubresource) Free() {
+ if x != nil && x.allocsfeaa0d8a != nil {
+ x.allocsfeaa0d8a.(*cgoAllocMap).Free()
+ x.reffeaa0d8a = nil
+ }
+}
+
+// NewImageSubresourceRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewImageSubresourceRef(ref unsafe.Pointer) *ImageSubresource {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ImageSubresource)
+ obj.reffeaa0d8a = (*C.VkImageSubresource)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ImageSubresource) PassRef() (*C.VkImageSubresource, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.reffeaa0d8a != nil {
+ return x.reffeaa0d8a, nil
+ }
+ memfeaa0d8a := allocImageSubresourceMemory(1)
+ reffeaa0d8a := (*C.VkImageSubresource)(memfeaa0d8a)
+ allocsfeaa0d8a := new(cgoAllocMap)
+ allocsfeaa0d8a.Add(memfeaa0d8a)
+
+ var caspectMask_allocs *cgoAllocMap
+ reffeaa0d8a.aspectMask, caspectMask_allocs = (C.VkImageAspectFlags)(x.AspectMask), cgoAllocsUnknown
+ allocsfeaa0d8a.Borrow(caspectMask_allocs)
+
+ var cmipLevel_allocs *cgoAllocMap
+ reffeaa0d8a.mipLevel, cmipLevel_allocs = (C.uint32_t)(x.MipLevel), cgoAllocsUnknown
+ allocsfeaa0d8a.Borrow(cmipLevel_allocs)
+
+ var carrayLayer_allocs *cgoAllocMap
+ reffeaa0d8a.arrayLayer, carrayLayer_allocs = (C.uint32_t)(x.ArrayLayer), cgoAllocsUnknown
+ allocsfeaa0d8a.Borrow(carrayLayer_allocs)
+
+ x.reffeaa0d8a = reffeaa0d8a
+ x.allocsfeaa0d8a = allocsfeaa0d8a
+ return reffeaa0d8a, allocsfeaa0d8a
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ImageSubresource) PassValue() (C.VkImageSubresource, *cgoAllocMap) {
+ if x.reffeaa0d8a != nil {
+ return *x.reffeaa0d8a, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ImageSubresource) Deref() {
+ if x.reffeaa0d8a == nil {
+ return
+ }
+ x.AspectMask = (ImageAspectFlags)(x.reffeaa0d8a.aspectMask)
+ x.MipLevel = (uint32)(x.reffeaa0d8a.mipLevel)
+ x.ArrayLayer = (uint32)(x.reffeaa0d8a.arrayLayer)
+}
+
+// allocSparseImageMemoryBindMemory allocates memory for type C.VkSparseImageMemoryBind in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSparseImageMemoryBindMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSparseImageMemoryBindValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSparseImageMemoryBindValue = unsafe.Sizeof([1]C.VkSparseImageMemoryBind{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SparseImageMemoryBind) Ref() *C.VkSparseImageMemoryBind {
+ if x == nil {
+ return nil
+ }
+ return x.ref41b516d7
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SparseImageMemoryBind) Free() {
+ if x != nil && x.allocs41b516d7 != nil {
+ x.allocs41b516d7.(*cgoAllocMap).Free()
+ x.ref41b516d7 = nil
+ }
+}
+
+// NewSparseImageMemoryBindRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSparseImageMemoryBindRef(ref unsafe.Pointer) *SparseImageMemoryBind {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SparseImageMemoryBind)
+ obj.ref41b516d7 = (*C.VkSparseImageMemoryBind)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SparseImageMemoryBind) PassRef() (*C.VkSparseImageMemoryBind, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref41b516d7 != nil {
+ return x.ref41b516d7, nil
+ }
+ mem41b516d7 := allocSparseImageMemoryBindMemory(1)
+ ref41b516d7 := (*C.VkSparseImageMemoryBind)(mem41b516d7)
+ allocs41b516d7 := new(cgoAllocMap)
+ allocs41b516d7.Add(mem41b516d7)
+
+ var csubresource_allocs *cgoAllocMap
+ ref41b516d7.subresource, csubresource_allocs = x.Subresource.PassValue()
+ allocs41b516d7.Borrow(csubresource_allocs)
+
+ var coffset_allocs *cgoAllocMap
+ ref41b516d7.offset, coffset_allocs = x.Offset.PassValue()
+ allocs41b516d7.Borrow(coffset_allocs)
+
+ var cextent_allocs *cgoAllocMap
+ ref41b516d7.extent, cextent_allocs = x.Extent.PassValue()
+ allocs41b516d7.Borrow(cextent_allocs)
+
+ var cmemory_allocs *cgoAllocMap
+ ref41b516d7.memory, cmemory_allocs = *(*C.VkDeviceMemory)(unsafe.Pointer(&x.Memory)), cgoAllocsUnknown
+ allocs41b516d7.Borrow(cmemory_allocs)
+
+ var cmemoryOffset_allocs *cgoAllocMap
+ ref41b516d7.memoryOffset, cmemoryOffset_allocs = (C.VkDeviceSize)(x.MemoryOffset), cgoAllocsUnknown
+ allocs41b516d7.Borrow(cmemoryOffset_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref41b516d7.flags, cflags_allocs = (C.VkSparseMemoryBindFlags)(x.Flags), cgoAllocsUnknown
+ allocs41b516d7.Borrow(cflags_allocs)
+
+ x.ref41b516d7 = ref41b516d7
+ x.allocs41b516d7 = allocs41b516d7
+ return ref41b516d7, allocs41b516d7
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SparseImageMemoryBind) PassValue() (C.VkSparseImageMemoryBind, *cgoAllocMap) {
+ if x.ref41b516d7 != nil {
+ return *x.ref41b516d7, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SparseImageMemoryBind) Deref() {
+ if x.ref41b516d7 == nil {
+ return
+ }
+ x.Subresource = *NewImageSubresourceRef(unsafe.Pointer(&x.ref41b516d7.subresource))
+ x.Offset = *NewOffset3DRef(unsafe.Pointer(&x.ref41b516d7.offset))
+ x.Extent = *NewExtent3DRef(unsafe.Pointer(&x.ref41b516d7.extent))
+ x.Memory = *(*DeviceMemory)(unsafe.Pointer(&x.ref41b516d7.memory))
+ x.MemoryOffset = (DeviceSize)(x.ref41b516d7.memoryOffset)
+ x.Flags = (SparseMemoryBindFlags)(x.ref41b516d7.flags)
+}
+
+// allocSparseImageMemoryBindInfoMemory allocates memory for type C.VkSparseImageMemoryBindInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSparseImageMemoryBindInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSparseImageMemoryBindInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSparseImageMemoryBindInfoValue = unsafe.Sizeof([1]C.VkSparseImageMemoryBindInfo{})
+
+// unpackSSparseImageMemoryBind transforms a sliced Go data structure into plain C format.
+func unpackSSparseImageMemoryBind(x []SparseImageMemoryBind) (unpacked *C.VkSparseImageMemoryBind, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkSparseImageMemoryBind) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocSparseImageMemoryBindMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkSparseImageMemoryBind)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkSparseImageMemoryBind)(h.Data)
+ return
+}
+
+// packSSparseImageMemoryBind reads sliced Go data structure out from plain C format.
+func packSSparseImageMemoryBind(v []SparseImageMemoryBind, ptr0 *C.VkSparseImageMemoryBind) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfSparseImageMemoryBindValue]C.VkSparseImageMemoryBind)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewSparseImageMemoryBindRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SparseImageMemoryBindInfo) Ref() *C.VkSparseImageMemoryBindInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref50faeb70
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SparseImageMemoryBindInfo) Free() {
+ if x != nil && x.allocs50faeb70 != nil {
+ x.allocs50faeb70.(*cgoAllocMap).Free()
+ x.ref50faeb70 = nil
+ }
+}
+
+// NewSparseImageMemoryBindInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSparseImageMemoryBindInfoRef(ref unsafe.Pointer) *SparseImageMemoryBindInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SparseImageMemoryBindInfo)
+ obj.ref50faeb70 = (*C.VkSparseImageMemoryBindInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SparseImageMemoryBindInfo) PassRef() (*C.VkSparseImageMemoryBindInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref50faeb70 != nil {
+ return x.ref50faeb70, nil
+ }
+ mem50faeb70 := allocSparseImageMemoryBindInfoMemory(1)
+ ref50faeb70 := (*C.VkSparseImageMemoryBindInfo)(mem50faeb70)
+ allocs50faeb70 := new(cgoAllocMap)
+ allocs50faeb70.Add(mem50faeb70)
+
+ var cimage_allocs *cgoAllocMap
+ ref50faeb70.image, cimage_allocs = *(*C.VkImage)(unsafe.Pointer(&x.Image)), cgoAllocsUnknown
+ allocs50faeb70.Borrow(cimage_allocs)
+
+ var cbindCount_allocs *cgoAllocMap
+ ref50faeb70.bindCount, cbindCount_allocs = (C.uint32_t)(x.BindCount), cgoAllocsUnknown
+ allocs50faeb70.Borrow(cbindCount_allocs)
+
+ var cpBinds_allocs *cgoAllocMap
+ ref50faeb70.pBinds, cpBinds_allocs = unpackSSparseImageMemoryBind(x.PBinds)
+ allocs50faeb70.Borrow(cpBinds_allocs)
+
+ x.ref50faeb70 = ref50faeb70
+ x.allocs50faeb70 = allocs50faeb70
+ return ref50faeb70, allocs50faeb70
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SparseImageMemoryBindInfo) PassValue() (C.VkSparseImageMemoryBindInfo, *cgoAllocMap) {
+ if x.ref50faeb70 != nil {
+ return *x.ref50faeb70, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SparseImageMemoryBindInfo) Deref() {
+ if x.ref50faeb70 == nil {
+ return
+ }
+ x.Image = *(*Image)(unsafe.Pointer(&x.ref50faeb70.image))
+ x.BindCount = (uint32)(x.ref50faeb70.bindCount)
+ packSSparseImageMemoryBind(x.PBinds, x.ref50faeb70.pBinds)
+}
+
+// allocBindSparseInfoMemory allocates memory for type C.VkBindSparseInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocBindSparseInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBindSparseInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfBindSparseInfoValue = unsafe.Sizeof([1]C.VkBindSparseInfo{})
+
+// unpackSSparseBufferMemoryBindInfo transforms a sliced Go data structure into plain C format.
+func unpackSSparseBufferMemoryBindInfo(x []SparseBufferMemoryBindInfo) (unpacked *C.VkSparseBufferMemoryBindInfo, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkSparseBufferMemoryBindInfo) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocSparseBufferMemoryBindInfoMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkSparseBufferMemoryBindInfo)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkSparseBufferMemoryBindInfo)(h.Data)
+ return
+}
+
+// unpackSSparseImageOpaqueMemoryBindInfo transforms a sliced Go data structure into plain C format.
+func unpackSSparseImageOpaqueMemoryBindInfo(x []SparseImageOpaqueMemoryBindInfo) (unpacked *C.VkSparseImageOpaqueMemoryBindInfo, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkSparseImageOpaqueMemoryBindInfo) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocSparseImageOpaqueMemoryBindInfoMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkSparseImageOpaqueMemoryBindInfo)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkSparseImageOpaqueMemoryBindInfo)(h.Data)
+ return
+}
+
+// unpackSSparseImageMemoryBindInfo transforms a sliced Go data structure into plain C format.
+func unpackSSparseImageMemoryBindInfo(x []SparseImageMemoryBindInfo) (unpacked *C.VkSparseImageMemoryBindInfo, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkSparseImageMemoryBindInfo) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocSparseImageMemoryBindInfoMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkSparseImageMemoryBindInfo)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkSparseImageMemoryBindInfo)(h.Data)
+ return
+}
+
+// packSSparseBufferMemoryBindInfo reads sliced Go data structure out from plain C format.
+func packSSparseBufferMemoryBindInfo(v []SparseBufferMemoryBindInfo, ptr0 *C.VkSparseBufferMemoryBindInfo) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfSparseBufferMemoryBindInfoValue]C.VkSparseBufferMemoryBindInfo)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewSparseBufferMemoryBindInfoRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// packSSparseImageOpaqueMemoryBindInfo reads sliced Go data structure out from plain C format.
+func packSSparseImageOpaqueMemoryBindInfo(v []SparseImageOpaqueMemoryBindInfo, ptr0 *C.VkSparseImageOpaqueMemoryBindInfo) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfSparseImageOpaqueMemoryBindInfoValue]C.VkSparseImageOpaqueMemoryBindInfo)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewSparseImageOpaqueMemoryBindInfoRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// packSSparseImageMemoryBindInfo reads sliced Go data structure out from plain C format.
+func packSSparseImageMemoryBindInfo(v []SparseImageMemoryBindInfo, ptr0 *C.VkSparseImageMemoryBindInfo) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfSparseImageMemoryBindInfoValue]C.VkSparseImageMemoryBindInfo)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewSparseImageMemoryBindInfoRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *BindSparseInfo) Ref() *C.VkBindSparseInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refb0cbe910
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *BindSparseInfo) Free() {
+ if x != nil && x.allocsb0cbe910 != nil {
+ x.allocsb0cbe910.(*cgoAllocMap).Free()
+ x.refb0cbe910 = nil
+ }
+}
+
+// NewBindSparseInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewBindSparseInfoRef(ref unsafe.Pointer) *BindSparseInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(BindSparseInfo)
+ obj.refb0cbe910 = (*C.VkBindSparseInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *BindSparseInfo) PassRef() (*C.VkBindSparseInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refb0cbe910 != nil {
+ return x.refb0cbe910, nil
+ }
+ memb0cbe910 := allocBindSparseInfoMemory(1)
+ refb0cbe910 := (*C.VkBindSparseInfo)(memb0cbe910)
+ allocsb0cbe910 := new(cgoAllocMap)
+ allocsb0cbe910.Add(memb0cbe910)
+
+ var csType_allocs *cgoAllocMap
+ refb0cbe910.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsb0cbe910.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refb0cbe910.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsb0cbe910.Borrow(cpNext_allocs)
+
+ var cwaitSemaphoreCount_allocs *cgoAllocMap
+ refb0cbe910.waitSemaphoreCount, cwaitSemaphoreCount_allocs = (C.uint32_t)(x.WaitSemaphoreCount), cgoAllocsUnknown
+ allocsb0cbe910.Borrow(cwaitSemaphoreCount_allocs)
+
+ var cpWaitSemaphores_allocs *cgoAllocMap
+ refb0cbe910.pWaitSemaphores, cpWaitSemaphores_allocs = (*C.VkSemaphore)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PWaitSemaphores)).Data)), cgoAllocsUnknown
+ allocsb0cbe910.Borrow(cpWaitSemaphores_allocs)
+
+ var cbufferBindCount_allocs *cgoAllocMap
+ refb0cbe910.bufferBindCount, cbufferBindCount_allocs = (C.uint32_t)(x.BufferBindCount), cgoAllocsUnknown
+ allocsb0cbe910.Borrow(cbufferBindCount_allocs)
+
+ var cpBufferBinds_allocs *cgoAllocMap
+ refb0cbe910.pBufferBinds, cpBufferBinds_allocs = unpackSSparseBufferMemoryBindInfo(x.PBufferBinds)
+ allocsb0cbe910.Borrow(cpBufferBinds_allocs)
+
+ var cimageOpaqueBindCount_allocs *cgoAllocMap
+ refb0cbe910.imageOpaqueBindCount, cimageOpaqueBindCount_allocs = (C.uint32_t)(x.ImageOpaqueBindCount), cgoAllocsUnknown
+ allocsb0cbe910.Borrow(cimageOpaqueBindCount_allocs)
+
+ var cpImageOpaqueBinds_allocs *cgoAllocMap
+ refb0cbe910.pImageOpaqueBinds, cpImageOpaqueBinds_allocs = unpackSSparseImageOpaqueMemoryBindInfo(x.PImageOpaqueBinds)
+ allocsb0cbe910.Borrow(cpImageOpaqueBinds_allocs)
+
+ var cimageBindCount_allocs *cgoAllocMap
+ refb0cbe910.imageBindCount, cimageBindCount_allocs = (C.uint32_t)(x.ImageBindCount), cgoAllocsUnknown
+ allocsb0cbe910.Borrow(cimageBindCount_allocs)
+
+ var cpImageBinds_allocs *cgoAllocMap
+ refb0cbe910.pImageBinds, cpImageBinds_allocs = unpackSSparseImageMemoryBindInfo(x.PImageBinds)
+ allocsb0cbe910.Borrow(cpImageBinds_allocs)
+
+ var csignalSemaphoreCount_allocs *cgoAllocMap
+ refb0cbe910.signalSemaphoreCount, csignalSemaphoreCount_allocs = (C.uint32_t)(x.SignalSemaphoreCount), cgoAllocsUnknown
+ allocsb0cbe910.Borrow(csignalSemaphoreCount_allocs)
+
+ var cpSignalSemaphores_allocs *cgoAllocMap
+ refb0cbe910.pSignalSemaphores, cpSignalSemaphores_allocs = (*C.VkSemaphore)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PSignalSemaphores)).Data)), cgoAllocsUnknown
+ allocsb0cbe910.Borrow(cpSignalSemaphores_allocs)
+
+ x.refb0cbe910 = refb0cbe910
+ x.allocsb0cbe910 = allocsb0cbe910
+ return refb0cbe910, allocsb0cbe910
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x BindSparseInfo) PassValue() (C.VkBindSparseInfo, *cgoAllocMap) {
+ if x.refb0cbe910 != nil {
+ return *x.refb0cbe910, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *BindSparseInfo) Deref() {
+ if x.refb0cbe910 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refb0cbe910.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb0cbe910.pNext))
+ x.WaitSemaphoreCount = (uint32)(x.refb0cbe910.waitSemaphoreCount)
+ hxfa3f05c := (*sliceHeader)(unsafe.Pointer(&x.PWaitSemaphores))
+ hxfa3f05c.Data = unsafe.Pointer(x.refb0cbe910.pWaitSemaphores)
+ hxfa3f05c.Cap = 0x7fffffff
+ // hxfa3f05c.Len = ?
+
+ x.BufferBindCount = (uint32)(x.refb0cbe910.bufferBindCount)
+ packSSparseBufferMemoryBindInfo(x.PBufferBinds, x.refb0cbe910.pBufferBinds)
+ x.ImageOpaqueBindCount = (uint32)(x.refb0cbe910.imageOpaqueBindCount)
+ packSSparseImageOpaqueMemoryBindInfo(x.PImageOpaqueBinds, x.refb0cbe910.pImageOpaqueBinds)
+ x.ImageBindCount = (uint32)(x.refb0cbe910.imageBindCount)
+ packSSparseImageMemoryBindInfo(x.PImageBinds, x.refb0cbe910.pImageBinds)
+ x.SignalSemaphoreCount = (uint32)(x.refb0cbe910.signalSemaphoreCount)
+ hxf0d18b7 := (*sliceHeader)(unsafe.Pointer(&x.PSignalSemaphores))
+ hxf0d18b7.Data = unsafe.Pointer(x.refb0cbe910.pSignalSemaphores)
+ hxf0d18b7.Cap = 0x7fffffff
+ // hxf0d18b7.Len = ?
+
+}
+
+// allocSparseImageFormatPropertiesMemory allocates memory for type C.VkSparseImageFormatProperties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSparseImageFormatPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSparseImageFormatPropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSparseImageFormatPropertiesValue = unsafe.Sizeof([1]C.VkSparseImageFormatProperties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SparseImageFormatProperties) Ref() *C.VkSparseImageFormatProperties {
+ if x == nil {
+ return nil
+ }
+ return x.ref2c12cf44
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SparseImageFormatProperties) Free() {
+ if x != nil && x.allocs2c12cf44 != nil {
+ x.allocs2c12cf44.(*cgoAllocMap).Free()
+ x.ref2c12cf44 = nil
+ }
+}
+
+// NewSparseImageFormatPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSparseImageFormatPropertiesRef(ref unsafe.Pointer) *SparseImageFormatProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SparseImageFormatProperties)
+ obj.ref2c12cf44 = (*C.VkSparseImageFormatProperties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SparseImageFormatProperties) PassRef() (*C.VkSparseImageFormatProperties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref2c12cf44 != nil {
+ return x.ref2c12cf44, nil
+ }
+ mem2c12cf44 := allocSparseImageFormatPropertiesMemory(1)
+ ref2c12cf44 := (*C.VkSparseImageFormatProperties)(mem2c12cf44)
+ allocs2c12cf44 := new(cgoAllocMap)
+ allocs2c12cf44.Add(mem2c12cf44)
+
+ var caspectMask_allocs *cgoAllocMap
+ ref2c12cf44.aspectMask, caspectMask_allocs = (C.VkImageAspectFlags)(x.AspectMask), cgoAllocsUnknown
+ allocs2c12cf44.Borrow(caspectMask_allocs)
+
+ var cimageGranularity_allocs *cgoAllocMap
+ ref2c12cf44.imageGranularity, cimageGranularity_allocs = x.ImageGranularity.PassValue()
+ allocs2c12cf44.Borrow(cimageGranularity_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref2c12cf44.flags, cflags_allocs = (C.VkSparseImageFormatFlags)(x.Flags), cgoAllocsUnknown
+ allocs2c12cf44.Borrow(cflags_allocs)
+
+ x.ref2c12cf44 = ref2c12cf44
+ x.allocs2c12cf44 = allocs2c12cf44
+ return ref2c12cf44, allocs2c12cf44
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SparseImageFormatProperties) PassValue() (C.VkSparseImageFormatProperties, *cgoAllocMap) {
+ if x.ref2c12cf44 != nil {
+ return *x.ref2c12cf44, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SparseImageFormatProperties) Deref() {
+ if x.ref2c12cf44 == nil {
+ return
+ }
+ x.AspectMask = (ImageAspectFlags)(x.ref2c12cf44.aspectMask)
+ x.ImageGranularity = *NewExtent3DRef(unsafe.Pointer(&x.ref2c12cf44.imageGranularity))
+ x.Flags = (SparseImageFormatFlags)(x.ref2c12cf44.flags)
+}
+
+// allocSparseImageMemoryRequirementsMemory allocates memory for type C.VkSparseImageMemoryRequirements in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSparseImageMemoryRequirementsMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSparseImageMemoryRequirementsValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSparseImageMemoryRequirementsValue = unsafe.Sizeof([1]C.VkSparseImageMemoryRequirements{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SparseImageMemoryRequirements) Ref() *C.VkSparseImageMemoryRequirements {
+ if x == nil {
+ return nil
+ }
+ return x.ref685a2323
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SparseImageMemoryRequirements) Free() {
+ if x != nil && x.allocs685a2323 != nil {
+ x.allocs685a2323.(*cgoAllocMap).Free()
+ x.ref685a2323 = nil
+ }
+}
+
+// NewSparseImageMemoryRequirementsRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSparseImageMemoryRequirementsRef(ref unsafe.Pointer) *SparseImageMemoryRequirements {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SparseImageMemoryRequirements)
+ obj.ref685a2323 = (*C.VkSparseImageMemoryRequirements)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SparseImageMemoryRequirements) PassRef() (*C.VkSparseImageMemoryRequirements, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref685a2323 != nil {
+ return x.ref685a2323, nil
+ }
+ mem685a2323 := allocSparseImageMemoryRequirementsMemory(1)
+ ref685a2323 := (*C.VkSparseImageMemoryRequirements)(mem685a2323)
+ allocs685a2323 := new(cgoAllocMap)
+ allocs685a2323.Add(mem685a2323)
+
+ var cformatProperties_allocs *cgoAllocMap
+ ref685a2323.formatProperties, cformatProperties_allocs = x.FormatProperties.PassValue()
+ allocs685a2323.Borrow(cformatProperties_allocs)
+
+ var cimageMipTailFirstLod_allocs *cgoAllocMap
+ ref685a2323.imageMipTailFirstLod, cimageMipTailFirstLod_allocs = (C.uint32_t)(x.ImageMipTailFirstLod), cgoAllocsUnknown
+ allocs685a2323.Borrow(cimageMipTailFirstLod_allocs)
+
+ var cimageMipTailSize_allocs *cgoAllocMap
+ ref685a2323.imageMipTailSize, cimageMipTailSize_allocs = (C.VkDeviceSize)(x.ImageMipTailSize), cgoAllocsUnknown
+ allocs685a2323.Borrow(cimageMipTailSize_allocs)
+
+ var cimageMipTailOffset_allocs *cgoAllocMap
+ ref685a2323.imageMipTailOffset, cimageMipTailOffset_allocs = (C.VkDeviceSize)(x.ImageMipTailOffset), cgoAllocsUnknown
+ allocs685a2323.Borrow(cimageMipTailOffset_allocs)
+
+ var cimageMipTailStride_allocs *cgoAllocMap
+ ref685a2323.imageMipTailStride, cimageMipTailStride_allocs = (C.VkDeviceSize)(x.ImageMipTailStride), cgoAllocsUnknown
+ allocs685a2323.Borrow(cimageMipTailStride_allocs)
+
+ x.ref685a2323 = ref685a2323
+ x.allocs685a2323 = allocs685a2323
+ return ref685a2323, allocs685a2323
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SparseImageMemoryRequirements) PassValue() (C.VkSparseImageMemoryRequirements, *cgoAllocMap) {
+ if x.ref685a2323 != nil {
+ return *x.ref685a2323, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SparseImageMemoryRequirements) Deref() {
+ if x.ref685a2323 == nil {
+ return
+ }
+ x.FormatProperties = *NewSparseImageFormatPropertiesRef(unsafe.Pointer(&x.ref685a2323.formatProperties))
+ x.ImageMipTailFirstLod = (uint32)(x.ref685a2323.imageMipTailFirstLod)
+ x.ImageMipTailSize = (DeviceSize)(x.ref685a2323.imageMipTailSize)
+ x.ImageMipTailOffset = (DeviceSize)(x.ref685a2323.imageMipTailOffset)
+ x.ImageMipTailStride = (DeviceSize)(x.ref685a2323.imageMipTailStride)
+}
+
+// allocFenceCreateInfoMemory allocates memory for type C.VkFenceCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocFenceCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfFenceCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfFenceCreateInfoValue = unsafe.Sizeof([1]C.VkFenceCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *FenceCreateInfo) Ref() *C.VkFenceCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refb8ff4840
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *FenceCreateInfo) Free() {
+ if x != nil && x.allocsb8ff4840 != nil {
+ x.allocsb8ff4840.(*cgoAllocMap).Free()
+ x.refb8ff4840 = nil
+ }
+}
+
+// NewFenceCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewFenceCreateInfoRef(ref unsafe.Pointer) *FenceCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(FenceCreateInfo)
+ obj.refb8ff4840 = (*C.VkFenceCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *FenceCreateInfo) PassRef() (*C.VkFenceCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refb8ff4840 != nil {
+ return x.refb8ff4840, nil
+ }
+ memb8ff4840 := allocFenceCreateInfoMemory(1)
+ refb8ff4840 := (*C.VkFenceCreateInfo)(memb8ff4840)
+ allocsb8ff4840 := new(cgoAllocMap)
+ allocsb8ff4840.Add(memb8ff4840)
+
+ var csType_allocs *cgoAllocMap
+ refb8ff4840.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsb8ff4840.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refb8ff4840.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsb8ff4840.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ refb8ff4840.flags, cflags_allocs = (C.VkFenceCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocsb8ff4840.Borrow(cflags_allocs)
+
+ x.refb8ff4840 = refb8ff4840
+ x.allocsb8ff4840 = allocsb8ff4840
+ return refb8ff4840, allocsb8ff4840
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x FenceCreateInfo) PassValue() (C.VkFenceCreateInfo, *cgoAllocMap) {
+ if x.refb8ff4840 != nil {
+ return *x.refb8ff4840, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *FenceCreateInfo) Deref() {
+ if x.refb8ff4840 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refb8ff4840.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb8ff4840.pNext))
+ x.Flags = (FenceCreateFlags)(x.refb8ff4840.flags)
+}
+
+// allocSemaphoreCreateInfoMemory allocates memory for type C.VkSemaphoreCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSemaphoreCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSemaphoreCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSemaphoreCreateInfoValue = unsafe.Sizeof([1]C.VkSemaphoreCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SemaphoreCreateInfo) Ref() *C.VkSemaphoreCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.reff130cd2b
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SemaphoreCreateInfo) Free() {
+ if x != nil && x.allocsf130cd2b != nil {
+ x.allocsf130cd2b.(*cgoAllocMap).Free()
+ x.reff130cd2b = nil
+ }
+}
+
+// NewSemaphoreCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSemaphoreCreateInfoRef(ref unsafe.Pointer) *SemaphoreCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SemaphoreCreateInfo)
+ obj.reff130cd2b = (*C.VkSemaphoreCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SemaphoreCreateInfo) PassRef() (*C.VkSemaphoreCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.reff130cd2b != nil {
+ return x.reff130cd2b, nil
+ }
+ memf130cd2b := allocSemaphoreCreateInfoMemory(1)
+ reff130cd2b := (*C.VkSemaphoreCreateInfo)(memf130cd2b)
+ allocsf130cd2b := new(cgoAllocMap)
+ allocsf130cd2b.Add(memf130cd2b)
+
+ var csType_allocs *cgoAllocMap
+ reff130cd2b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsf130cd2b.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ reff130cd2b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsf130cd2b.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ reff130cd2b.flags, cflags_allocs = (C.VkSemaphoreCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocsf130cd2b.Borrow(cflags_allocs)
+
+ x.reff130cd2b = reff130cd2b
+ x.allocsf130cd2b = allocsf130cd2b
+ return reff130cd2b, allocsf130cd2b
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SemaphoreCreateInfo) PassValue() (C.VkSemaphoreCreateInfo, *cgoAllocMap) {
+ if x.reff130cd2b != nil {
+ return *x.reff130cd2b, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SemaphoreCreateInfo) Deref() {
+ if x.reff130cd2b == nil {
+ return
+ }
+ x.SType = (StructureType)(x.reff130cd2b.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff130cd2b.pNext))
+ x.Flags = (SemaphoreCreateFlags)(x.reff130cd2b.flags)
+}
+
+// allocEventCreateInfoMemory allocates memory for type C.VkEventCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocEventCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfEventCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfEventCreateInfoValue = unsafe.Sizeof([1]C.VkEventCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *EventCreateInfo) Ref() *C.VkEventCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refa54f9ec8
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *EventCreateInfo) Free() {
+ if x != nil && x.allocsa54f9ec8 != nil {
+ x.allocsa54f9ec8.(*cgoAllocMap).Free()
+ x.refa54f9ec8 = nil
+ }
+}
+
+// NewEventCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewEventCreateInfoRef(ref unsafe.Pointer) *EventCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(EventCreateInfo)
+ obj.refa54f9ec8 = (*C.VkEventCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *EventCreateInfo) PassRef() (*C.VkEventCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refa54f9ec8 != nil {
+ return x.refa54f9ec8, nil
+ }
+ mema54f9ec8 := allocEventCreateInfoMemory(1)
+ refa54f9ec8 := (*C.VkEventCreateInfo)(mema54f9ec8)
+ allocsa54f9ec8 := new(cgoAllocMap)
+ allocsa54f9ec8.Add(mema54f9ec8)
+
+ var csType_allocs *cgoAllocMap
+ refa54f9ec8.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsa54f9ec8.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refa54f9ec8.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsa54f9ec8.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ refa54f9ec8.flags, cflags_allocs = (C.VkEventCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocsa54f9ec8.Borrow(cflags_allocs)
+
+ x.refa54f9ec8 = refa54f9ec8
+ x.allocsa54f9ec8 = allocsa54f9ec8
+ return refa54f9ec8, allocsa54f9ec8
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x EventCreateInfo) PassValue() (C.VkEventCreateInfo, *cgoAllocMap) {
+ if x.refa54f9ec8 != nil {
+ return *x.refa54f9ec8, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *EventCreateInfo) Deref() {
+ if x.refa54f9ec8 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refa54f9ec8.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa54f9ec8.pNext))
+ x.Flags = (EventCreateFlags)(x.refa54f9ec8.flags)
+}
+
+// allocQueryPoolCreateInfoMemory allocates memory for type C.VkQueryPoolCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocQueryPoolCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfQueryPoolCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfQueryPoolCreateInfoValue = unsafe.Sizeof([1]C.VkQueryPoolCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *QueryPoolCreateInfo) Ref() *C.VkQueryPoolCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref85dfcd4a
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *QueryPoolCreateInfo) Free() {
+ if x != nil && x.allocs85dfcd4a != nil {
+ x.allocs85dfcd4a.(*cgoAllocMap).Free()
+ x.ref85dfcd4a = nil
+ }
+}
+
+// NewQueryPoolCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewQueryPoolCreateInfoRef(ref unsafe.Pointer) *QueryPoolCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(QueryPoolCreateInfo)
+ obj.ref85dfcd4a = (*C.VkQueryPoolCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *QueryPoolCreateInfo) PassRef() (*C.VkQueryPoolCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref85dfcd4a != nil {
+ return x.ref85dfcd4a, nil
+ }
+ mem85dfcd4a := allocQueryPoolCreateInfoMemory(1)
+ ref85dfcd4a := (*C.VkQueryPoolCreateInfo)(mem85dfcd4a)
+ allocs85dfcd4a := new(cgoAllocMap)
+ allocs85dfcd4a.Add(mem85dfcd4a)
+
+ var csType_allocs *cgoAllocMap
+ ref85dfcd4a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs85dfcd4a.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref85dfcd4a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs85dfcd4a.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref85dfcd4a.flags, cflags_allocs = (C.VkQueryPoolCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocs85dfcd4a.Borrow(cflags_allocs)
+
+ var cqueryType_allocs *cgoAllocMap
+ ref85dfcd4a.queryType, cqueryType_allocs = (C.VkQueryType)(x.QueryType), cgoAllocsUnknown
+ allocs85dfcd4a.Borrow(cqueryType_allocs)
+
+ var cqueryCount_allocs *cgoAllocMap
+ ref85dfcd4a.queryCount, cqueryCount_allocs = (C.uint32_t)(x.QueryCount), cgoAllocsUnknown
+ allocs85dfcd4a.Borrow(cqueryCount_allocs)
+
+ var cpipelineStatistics_allocs *cgoAllocMap
+ ref85dfcd4a.pipelineStatistics, cpipelineStatistics_allocs = (C.VkQueryPipelineStatisticFlags)(x.PipelineStatistics), cgoAllocsUnknown
+ allocs85dfcd4a.Borrow(cpipelineStatistics_allocs)
+
+ x.ref85dfcd4a = ref85dfcd4a
+ x.allocs85dfcd4a = allocs85dfcd4a
+ return ref85dfcd4a, allocs85dfcd4a
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x QueryPoolCreateInfo) PassValue() (C.VkQueryPoolCreateInfo, *cgoAllocMap) {
+ if x.ref85dfcd4a != nil {
+ return *x.ref85dfcd4a, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *QueryPoolCreateInfo) Deref() {
+ if x.ref85dfcd4a == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref85dfcd4a.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref85dfcd4a.pNext))
+ x.Flags = (QueryPoolCreateFlags)(x.ref85dfcd4a.flags)
+ x.QueryType = (QueryType)(x.ref85dfcd4a.queryType)
+ x.QueryCount = (uint32)(x.ref85dfcd4a.queryCount)
+ x.PipelineStatistics = (QueryPipelineStatisticFlags)(x.ref85dfcd4a.pipelineStatistics)
+}
+
+// allocBufferCreateInfoMemory allocates memory for type C.VkBufferCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocBufferCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBufferCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfBufferCreateInfoValue = unsafe.Sizeof([1]C.VkBufferCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *BufferCreateInfo) Ref() *C.VkBufferCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.reffe19d2cd
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *BufferCreateInfo) Free() {
+ if x != nil && x.allocsfe19d2cd != nil {
+ x.allocsfe19d2cd.(*cgoAllocMap).Free()
+ x.reffe19d2cd = nil
+ }
+}
+
+// NewBufferCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewBufferCreateInfoRef(ref unsafe.Pointer) *BufferCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(BufferCreateInfo)
+ obj.reffe19d2cd = (*C.VkBufferCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *BufferCreateInfo) PassRef() (*C.VkBufferCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.reffe19d2cd != nil {
+ return x.reffe19d2cd, nil
+ }
+ memfe19d2cd := allocBufferCreateInfoMemory(1)
+ reffe19d2cd := (*C.VkBufferCreateInfo)(memfe19d2cd)
+ allocsfe19d2cd := new(cgoAllocMap)
+ allocsfe19d2cd.Add(memfe19d2cd)
+
+ var csType_allocs *cgoAllocMap
+ reffe19d2cd.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsfe19d2cd.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ reffe19d2cd.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsfe19d2cd.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ reffe19d2cd.flags, cflags_allocs = (C.VkBufferCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocsfe19d2cd.Borrow(cflags_allocs)
+
+ var csize_allocs *cgoAllocMap
+ reffe19d2cd.size, csize_allocs = (C.VkDeviceSize)(x.Size), cgoAllocsUnknown
+ allocsfe19d2cd.Borrow(csize_allocs)
+
+ var cusage_allocs *cgoAllocMap
+ reffe19d2cd.usage, cusage_allocs = (C.VkBufferUsageFlags)(x.Usage), cgoAllocsUnknown
+ allocsfe19d2cd.Borrow(cusage_allocs)
+
+ var csharingMode_allocs *cgoAllocMap
+ reffe19d2cd.sharingMode, csharingMode_allocs = (C.VkSharingMode)(x.SharingMode), cgoAllocsUnknown
+ allocsfe19d2cd.Borrow(csharingMode_allocs)
+
+ var cqueueFamilyIndexCount_allocs *cgoAllocMap
+ reffe19d2cd.queueFamilyIndexCount, cqueueFamilyIndexCount_allocs = (C.uint32_t)(x.QueueFamilyIndexCount), cgoAllocsUnknown
+ allocsfe19d2cd.Borrow(cqueueFamilyIndexCount_allocs)
+
+ var cpQueueFamilyIndices_allocs *cgoAllocMap
+ reffe19d2cd.pQueueFamilyIndices, cpQueueFamilyIndices_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PQueueFamilyIndices)).Data)), cgoAllocsUnknown
+ allocsfe19d2cd.Borrow(cpQueueFamilyIndices_allocs)
+
+ x.reffe19d2cd = reffe19d2cd
+ x.allocsfe19d2cd = allocsfe19d2cd
+ return reffe19d2cd, allocsfe19d2cd
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x BufferCreateInfo) PassValue() (C.VkBufferCreateInfo, *cgoAllocMap) {
+ if x.reffe19d2cd != nil {
+ return *x.reffe19d2cd, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *BufferCreateInfo) Deref() {
+ if x.reffe19d2cd == nil {
+ return
+ }
+ x.SType = (StructureType)(x.reffe19d2cd.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reffe19d2cd.pNext))
+ x.Flags = (BufferCreateFlags)(x.reffe19d2cd.flags)
+ x.Size = (DeviceSize)(x.reffe19d2cd.size)
+ x.Usage = (BufferUsageFlags)(x.reffe19d2cd.usage)
+ x.SharingMode = (SharingMode)(x.reffe19d2cd.sharingMode)
+ x.QueueFamilyIndexCount = (uint32)(x.reffe19d2cd.queueFamilyIndexCount)
+ hxf2fab0d := (*sliceHeader)(unsafe.Pointer(&x.PQueueFamilyIndices))
+ hxf2fab0d.Data = unsafe.Pointer(x.reffe19d2cd.pQueueFamilyIndices)
+ hxf2fab0d.Cap = 0x7fffffff
+ // hxf2fab0d.Len = ?
+
+}
+
+// allocBufferViewCreateInfoMemory allocates memory for type C.VkBufferViewCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocBufferViewCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBufferViewCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfBufferViewCreateInfoValue = unsafe.Sizeof([1]C.VkBufferViewCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *BufferViewCreateInfo) Ref() *C.VkBufferViewCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref49b97027
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *BufferViewCreateInfo) Free() {
+ if x != nil && x.allocs49b97027 != nil {
+ x.allocs49b97027.(*cgoAllocMap).Free()
+ x.ref49b97027 = nil
+ }
+}
+
+// NewBufferViewCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewBufferViewCreateInfoRef(ref unsafe.Pointer) *BufferViewCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(BufferViewCreateInfo)
+ obj.ref49b97027 = (*C.VkBufferViewCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *BufferViewCreateInfo) PassRef() (*C.VkBufferViewCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref49b97027 != nil {
+ return x.ref49b97027, nil
+ }
+ mem49b97027 := allocBufferViewCreateInfoMemory(1)
+ ref49b97027 := (*C.VkBufferViewCreateInfo)(mem49b97027)
+ allocs49b97027 := new(cgoAllocMap)
+ allocs49b97027.Add(mem49b97027)
+
+ var csType_allocs *cgoAllocMap
+ ref49b97027.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs49b97027.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref49b97027.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs49b97027.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref49b97027.flags, cflags_allocs = (C.VkBufferViewCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocs49b97027.Borrow(cflags_allocs)
+
+ var cbuffer_allocs *cgoAllocMap
+ ref49b97027.buffer, cbuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.Buffer)), cgoAllocsUnknown
+ allocs49b97027.Borrow(cbuffer_allocs)
+
+ var cformat_allocs *cgoAllocMap
+ ref49b97027.format, cformat_allocs = (C.VkFormat)(x.Format), cgoAllocsUnknown
+ allocs49b97027.Borrow(cformat_allocs)
+
+ var coffset_allocs *cgoAllocMap
+ ref49b97027.offset, coffset_allocs = (C.VkDeviceSize)(x.Offset), cgoAllocsUnknown
+ allocs49b97027.Borrow(coffset_allocs)
+
+ var c_range_allocs *cgoAllocMap
+ ref49b97027._range, c_range_allocs = (C.VkDeviceSize)(x.Range), cgoAllocsUnknown
+ allocs49b97027.Borrow(c_range_allocs)
+
+ x.ref49b97027 = ref49b97027
+ x.allocs49b97027 = allocs49b97027
+ return ref49b97027, allocs49b97027
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x BufferViewCreateInfo) PassValue() (C.VkBufferViewCreateInfo, *cgoAllocMap) {
+ if x.ref49b97027 != nil {
+ return *x.ref49b97027, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *BufferViewCreateInfo) Deref() {
+ if x.ref49b97027 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref49b97027.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref49b97027.pNext))
+ x.Flags = (BufferViewCreateFlags)(x.ref49b97027.flags)
+ x.Buffer = *(*Buffer)(unsafe.Pointer(&x.ref49b97027.buffer))
+ x.Format = (Format)(x.ref49b97027.format)
+ x.Offset = (DeviceSize)(x.ref49b97027.offset)
+ x.Range = (DeviceSize)(x.ref49b97027._range)
+}
+
+// allocImageCreateInfoMemory allocates memory for type C.VkImageCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocImageCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfImageCreateInfoValue = unsafe.Sizeof([1]C.VkImageCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ImageCreateInfo) Ref() *C.VkImageCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.reffb587ba1
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ImageCreateInfo) Free() {
+ if x != nil && x.allocsfb587ba1 != nil {
+ x.allocsfb587ba1.(*cgoAllocMap).Free()
+ x.reffb587ba1 = nil
+ }
+}
+
+// NewImageCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewImageCreateInfoRef(ref unsafe.Pointer) *ImageCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ImageCreateInfo)
+ obj.reffb587ba1 = (*C.VkImageCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ImageCreateInfo) PassRef() (*C.VkImageCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.reffb587ba1 != nil {
+ return x.reffb587ba1, nil
+ }
+ memfb587ba1 := allocImageCreateInfoMemory(1)
+ reffb587ba1 := (*C.VkImageCreateInfo)(memfb587ba1)
+ allocsfb587ba1 := new(cgoAllocMap)
+ allocsfb587ba1.Add(memfb587ba1)
+
+ var csType_allocs *cgoAllocMap
+ reffb587ba1.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsfb587ba1.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ reffb587ba1.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsfb587ba1.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ reffb587ba1.flags, cflags_allocs = (C.VkImageCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocsfb587ba1.Borrow(cflags_allocs)
+
+ var cimageType_allocs *cgoAllocMap
+ reffb587ba1.imageType, cimageType_allocs = (C.VkImageType)(x.ImageType), cgoAllocsUnknown
+ allocsfb587ba1.Borrow(cimageType_allocs)
+
+ var cformat_allocs *cgoAllocMap
+ reffb587ba1.format, cformat_allocs = (C.VkFormat)(x.Format), cgoAllocsUnknown
+ allocsfb587ba1.Borrow(cformat_allocs)
+
+ var cextent_allocs *cgoAllocMap
+ reffb587ba1.extent, cextent_allocs = x.Extent.PassValue()
+ allocsfb587ba1.Borrow(cextent_allocs)
+
+ var cmipLevels_allocs *cgoAllocMap
+ reffb587ba1.mipLevels, cmipLevels_allocs = (C.uint32_t)(x.MipLevels), cgoAllocsUnknown
+ allocsfb587ba1.Borrow(cmipLevels_allocs)
+
+ var carrayLayers_allocs *cgoAllocMap
+ reffb587ba1.arrayLayers, carrayLayers_allocs = (C.uint32_t)(x.ArrayLayers), cgoAllocsUnknown
+ allocsfb587ba1.Borrow(carrayLayers_allocs)
+
+ var csamples_allocs *cgoAllocMap
+ reffb587ba1.samples, csamples_allocs = (C.VkSampleCountFlagBits)(x.Samples), cgoAllocsUnknown
+ allocsfb587ba1.Borrow(csamples_allocs)
+
+ var ctiling_allocs *cgoAllocMap
+ reffb587ba1.tiling, ctiling_allocs = (C.VkImageTiling)(x.Tiling), cgoAllocsUnknown
+ allocsfb587ba1.Borrow(ctiling_allocs)
+
+ var cusage_allocs *cgoAllocMap
+ reffb587ba1.usage, cusage_allocs = (C.VkImageUsageFlags)(x.Usage), cgoAllocsUnknown
+ allocsfb587ba1.Borrow(cusage_allocs)
+
+ var csharingMode_allocs *cgoAllocMap
+ reffb587ba1.sharingMode, csharingMode_allocs = (C.VkSharingMode)(x.SharingMode), cgoAllocsUnknown
+ allocsfb587ba1.Borrow(csharingMode_allocs)
+
+ var cqueueFamilyIndexCount_allocs *cgoAllocMap
+ reffb587ba1.queueFamilyIndexCount, cqueueFamilyIndexCount_allocs = (C.uint32_t)(x.QueueFamilyIndexCount), cgoAllocsUnknown
+ allocsfb587ba1.Borrow(cqueueFamilyIndexCount_allocs)
+
+ var cpQueueFamilyIndices_allocs *cgoAllocMap
+ reffb587ba1.pQueueFamilyIndices, cpQueueFamilyIndices_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PQueueFamilyIndices)).Data)), cgoAllocsUnknown
+ allocsfb587ba1.Borrow(cpQueueFamilyIndices_allocs)
+
+ var cinitialLayout_allocs *cgoAllocMap
+ reffb587ba1.initialLayout, cinitialLayout_allocs = (C.VkImageLayout)(x.InitialLayout), cgoAllocsUnknown
+ allocsfb587ba1.Borrow(cinitialLayout_allocs)
+
+ x.reffb587ba1 = reffb587ba1
+ x.allocsfb587ba1 = allocsfb587ba1
+ return reffb587ba1, allocsfb587ba1
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ImageCreateInfo) PassValue() (C.VkImageCreateInfo, *cgoAllocMap) {
+ if x.reffb587ba1 != nil {
+ return *x.reffb587ba1, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ImageCreateInfo) Deref() {
+ if x.reffb587ba1 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.reffb587ba1.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reffb587ba1.pNext))
+ x.Flags = (ImageCreateFlags)(x.reffb587ba1.flags)
+ x.ImageType = (ImageType)(x.reffb587ba1.imageType)
+ x.Format = (Format)(x.reffb587ba1.format)
+ x.Extent = *NewExtent3DRef(unsafe.Pointer(&x.reffb587ba1.extent))
+ x.MipLevels = (uint32)(x.reffb587ba1.mipLevels)
+ x.ArrayLayers = (uint32)(x.reffb587ba1.arrayLayers)
+ x.Samples = (SampleCountFlagBits)(x.reffb587ba1.samples)
+ x.Tiling = (ImageTiling)(x.reffb587ba1.tiling)
+ x.Usage = (ImageUsageFlags)(x.reffb587ba1.usage)
+ x.SharingMode = (SharingMode)(x.reffb587ba1.sharingMode)
+ x.QueueFamilyIndexCount = (uint32)(x.reffb587ba1.queueFamilyIndexCount)
+ hxf69fe70 := (*sliceHeader)(unsafe.Pointer(&x.PQueueFamilyIndices))
+ hxf69fe70.Data = unsafe.Pointer(x.reffb587ba1.pQueueFamilyIndices)
+ hxf69fe70.Cap = 0x7fffffff
+ // hxf69fe70.Len = ?
+
+ x.InitialLayout = (ImageLayout)(x.reffb587ba1.initialLayout)
+}
+
+// allocSubresourceLayoutMemory allocates memory for type C.VkSubresourceLayout in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSubresourceLayoutMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSubresourceLayoutValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSubresourceLayoutValue = unsafe.Sizeof([1]C.VkSubresourceLayout{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SubresourceLayout) Ref() *C.VkSubresourceLayout {
+ if x == nil {
+ return nil
+ }
+ return x.ref182612ad
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SubresourceLayout) Free() {
+ if x != nil && x.allocs182612ad != nil {
+ x.allocs182612ad.(*cgoAllocMap).Free()
+ x.ref182612ad = nil
+ }
+}
+
+// NewSubresourceLayoutRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSubresourceLayoutRef(ref unsafe.Pointer) *SubresourceLayout {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SubresourceLayout)
+ obj.ref182612ad = (*C.VkSubresourceLayout)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SubresourceLayout) PassRef() (*C.VkSubresourceLayout, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref182612ad != nil {
+ return x.ref182612ad, nil
+ }
+ mem182612ad := allocSubresourceLayoutMemory(1)
+ ref182612ad := (*C.VkSubresourceLayout)(mem182612ad)
+ allocs182612ad := new(cgoAllocMap)
+ allocs182612ad.Add(mem182612ad)
+
+ var coffset_allocs *cgoAllocMap
+ ref182612ad.offset, coffset_allocs = (C.VkDeviceSize)(x.Offset), cgoAllocsUnknown
+ allocs182612ad.Borrow(coffset_allocs)
+
+ var csize_allocs *cgoAllocMap
+ ref182612ad.size, csize_allocs = (C.VkDeviceSize)(x.Size), cgoAllocsUnknown
+ allocs182612ad.Borrow(csize_allocs)
+
+ var crowPitch_allocs *cgoAllocMap
+ ref182612ad.rowPitch, crowPitch_allocs = (C.VkDeviceSize)(x.RowPitch), cgoAllocsUnknown
+ allocs182612ad.Borrow(crowPitch_allocs)
+
+ var carrayPitch_allocs *cgoAllocMap
+ ref182612ad.arrayPitch, carrayPitch_allocs = (C.VkDeviceSize)(x.ArrayPitch), cgoAllocsUnknown
+ allocs182612ad.Borrow(carrayPitch_allocs)
+
+ var cdepthPitch_allocs *cgoAllocMap
+ ref182612ad.depthPitch, cdepthPitch_allocs = (C.VkDeviceSize)(x.DepthPitch), cgoAllocsUnknown
+ allocs182612ad.Borrow(cdepthPitch_allocs)
+
+ x.ref182612ad = ref182612ad
+ x.allocs182612ad = allocs182612ad
+ return ref182612ad, allocs182612ad
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SubresourceLayout) PassValue() (C.VkSubresourceLayout, *cgoAllocMap) {
+ if x.ref182612ad != nil {
+ return *x.ref182612ad, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SubresourceLayout) Deref() {
+ if x.ref182612ad == nil {
+ return
+ }
+ x.Offset = (DeviceSize)(x.ref182612ad.offset)
+ x.Size = (DeviceSize)(x.ref182612ad.size)
+ x.RowPitch = (DeviceSize)(x.ref182612ad.rowPitch)
+ x.ArrayPitch = (DeviceSize)(x.ref182612ad.arrayPitch)
+ x.DepthPitch = (DeviceSize)(x.ref182612ad.depthPitch)
+}
+
+// allocComponentMappingMemory allocates memory for type C.VkComponentMapping in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocComponentMappingMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfComponentMappingValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfComponentMappingValue = unsafe.Sizeof([1]C.VkComponentMapping{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ComponentMapping) Ref() *C.VkComponentMapping {
+ if x == nil {
+ return nil
+ }
+ return x.ref63d3d563
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ComponentMapping) Free() {
+ if x != nil && x.allocs63d3d563 != nil {
+ x.allocs63d3d563.(*cgoAllocMap).Free()
+ x.ref63d3d563 = nil
+ }
+}
+
+// NewComponentMappingRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewComponentMappingRef(ref unsafe.Pointer) *ComponentMapping {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ComponentMapping)
+ obj.ref63d3d563 = (*C.VkComponentMapping)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ComponentMapping) PassRef() (*C.VkComponentMapping, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref63d3d563 != nil {
+ return x.ref63d3d563, nil
+ }
+ mem63d3d563 := allocComponentMappingMemory(1)
+ ref63d3d563 := (*C.VkComponentMapping)(mem63d3d563)
+ allocs63d3d563 := new(cgoAllocMap)
+ allocs63d3d563.Add(mem63d3d563)
+
+ var cr_allocs *cgoAllocMap
+ ref63d3d563.r, cr_allocs = (C.VkComponentSwizzle)(x.R), cgoAllocsUnknown
+ allocs63d3d563.Borrow(cr_allocs)
+
+ var cg_allocs *cgoAllocMap
+ ref63d3d563.g, cg_allocs = (C.VkComponentSwizzle)(x.G), cgoAllocsUnknown
+ allocs63d3d563.Borrow(cg_allocs)
+
+ var cb_allocs *cgoAllocMap
+ ref63d3d563.b, cb_allocs = (C.VkComponentSwizzle)(x.B), cgoAllocsUnknown
+ allocs63d3d563.Borrow(cb_allocs)
+
+ var ca_allocs *cgoAllocMap
+ ref63d3d563.a, ca_allocs = (C.VkComponentSwizzle)(x.A), cgoAllocsUnknown
+ allocs63d3d563.Borrow(ca_allocs)
+
+ x.ref63d3d563 = ref63d3d563
+ x.allocs63d3d563 = allocs63d3d563
+ return ref63d3d563, allocs63d3d563
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ComponentMapping) PassValue() (C.VkComponentMapping, *cgoAllocMap) {
+ if x.ref63d3d563 != nil {
+ return *x.ref63d3d563, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ComponentMapping) Deref() {
+ if x.ref63d3d563 == nil {
+ return
+ }
+ x.R = (ComponentSwizzle)(x.ref63d3d563.r)
+ x.G = (ComponentSwizzle)(x.ref63d3d563.g)
+ x.B = (ComponentSwizzle)(x.ref63d3d563.b)
+ x.A = (ComponentSwizzle)(x.ref63d3d563.a)
+}
+
+// allocImageViewCreateInfoMemory allocates memory for type C.VkImageViewCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocImageViewCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageViewCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfImageViewCreateInfoValue = unsafe.Sizeof([1]C.VkImageViewCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ImageViewCreateInfo) Ref() *C.VkImageViewCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref77e8d4b8
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ImageViewCreateInfo) Free() {
+ if x != nil && x.allocs77e8d4b8 != nil {
+ x.allocs77e8d4b8.(*cgoAllocMap).Free()
+ x.ref77e8d4b8 = nil
+ }
+}
+
+// NewImageViewCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewImageViewCreateInfoRef(ref unsafe.Pointer) *ImageViewCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ImageViewCreateInfo)
+ obj.ref77e8d4b8 = (*C.VkImageViewCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ImageViewCreateInfo) PassRef() (*C.VkImageViewCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref77e8d4b8 != nil {
+ return x.ref77e8d4b8, nil
+ }
+ mem77e8d4b8 := allocImageViewCreateInfoMemory(1)
+ ref77e8d4b8 := (*C.VkImageViewCreateInfo)(mem77e8d4b8)
+ allocs77e8d4b8 := new(cgoAllocMap)
+ allocs77e8d4b8.Add(mem77e8d4b8)
+
+ var csType_allocs *cgoAllocMap
+ ref77e8d4b8.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs77e8d4b8.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref77e8d4b8.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs77e8d4b8.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref77e8d4b8.flags, cflags_allocs = (C.VkImageViewCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocs77e8d4b8.Borrow(cflags_allocs)
+
+ var cimage_allocs *cgoAllocMap
+ ref77e8d4b8.image, cimage_allocs = *(*C.VkImage)(unsafe.Pointer(&x.Image)), cgoAllocsUnknown
+ allocs77e8d4b8.Borrow(cimage_allocs)
+
+ var cviewType_allocs *cgoAllocMap
+ ref77e8d4b8.viewType, cviewType_allocs = (C.VkImageViewType)(x.ViewType), cgoAllocsUnknown
+ allocs77e8d4b8.Borrow(cviewType_allocs)
+
+ var cformat_allocs *cgoAllocMap
+ ref77e8d4b8.format, cformat_allocs = (C.VkFormat)(x.Format), cgoAllocsUnknown
+ allocs77e8d4b8.Borrow(cformat_allocs)
+
+ var ccomponents_allocs *cgoAllocMap
+ ref77e8d4b8.components, ccomponents_allocs = x.Components.PassValue()
+ allocs77e8d4b8.Borrow(ccomponents_allocs)
+
+ var csubresourceRange_allocs *cgoAllocMap
+ ref77e8d4b8.subresourceRange, csubresourceRange_allocs = x.SubresourceRange.PassValue()
+ allocs77e8d4b8.Borrow(csubresourceRange_allocs)
+
+ x.ref77e8d4b8 = ref77e8d4b8
+ x.allocs77e8d4b8 = allocs77e8d4b8
+ return ref77e8d4b8, allocs77e8d4b8
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ImageViewCreateInfo) PassValue() (C.VkImageViewCreateInfo, *cgoAllocMap) {
+ if x.ref77e8d4b8 != nil {
+ return *x.ref77e8d4b8, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ImageViewCreateInfo) Deref() {
+ if x.ref77e8d4b8 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref77e8d4b8.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref77e8d4b8.pNext))
+ x.Flags = (ImageViewCreateFlags)(x.ref77e8d4b8.flags)
+ x.Image = *(*Image)(unsafe.Pointer(&x.ref77e8d4b8.image))
+ x.ViewType = (ImageViewType)(x.ref77e8d4b8.viewType)
+ x.Format = (Format)(x.ref77e8d4b8.format)
+ x.Components = *NewComponentMappingRef(unsafe.Pointer(&x.ref77e8d4b8.components))
+ x.SubresourceRange = *NewImageSubresourceRangeRef(unsafe.Pointer(&x.ref77e8d4b8.subresourceRange))
+}
+
+// allocShaderModuleCreateInfoMemory allocates memory for type C.VkShaderModuleCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocShaderModuleCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfShaderModuleCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfShaderModuleCreateInfoValue = unsafe.Sizeof([1]C.VkShaderModuleCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ShaderModuleCreateInfo) Ref() *C.VkShaderModuleCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refc663d23e
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ShaderModuleCreateInfo) Free() {
+ if x != nil && x.allocsc663d23e != nil {
+ x.allocsc663d23e.(*cgoAllocMap).Free()
+ x.refc663d23e = nil
+ }
+}
+
+// NewShaderModuleCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewShaderModuleCreateInfoRef(ref unsafe.Pointer) *ShaderModuleCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ShaderModuleCreateInfo)
+ obj.refc663d23e = (*C.VkShaderModuleCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ShaderModuleCreateInfo) PassRef() (*C.VkShaderModuleCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refc663d23e != nil {
+ return x.refc663d23e, nil
+ }
+ memc663d23e := allocShaderModuleCreateInfoMemory(1)
+ refc663d23e := (*C.VkShaderModuleCreateInfo)(memc663d23e)
+ allocsc663d23e := new(cgoAllocMap)
+ allocsc663d23e.Add(memc663d23e)
+
+ var csType_allocs *cgoAllocMap
+ refc663d23e.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsc663d23e.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refc663d23e.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsc663d23e.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ refc663d23e.flags, cflags_allocs = (C.VkShaderModuleCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocsc663d23e.Borrow(cflags_allocs)
+
+ var ccodeSize_allocs *cgoAllocMap
+ refc663d23e.codeSize, ccodeSize_allocs = (C.size_t)(x.CodeSize), cgoAllocsUnknown
+ allocsc663d23e.Borrow(ccodeSize_allocs)
+
+ var cpCode_allocs *cgoAllocMap
+ refc663d23e.pCode, cpCode_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PCode)).Data)), cgoAllocsUnknown
+ allocsc663d23e.Borrow(cpCode_allocs)
+
+ x.refc663d23e = refc663d23e
+ x.allocsc663d23e = allocsc663d23e
+ return refc663d23e, allocsc663d23e
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ShaderModuleCreateInfo) PassValue() (C.VkShaderModuleCreateInfo, *cgoAllocMap) {
+ if x.refc663d23e != nil {
+ return *x.refc663d23e, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ShaderModuleCreateInfo) Deref() {
+ if x.refc663d23e == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refc663d23e.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc663d23e.pNext))
+ x.Flags = (ShaderModuleCreateFlags)(x.refc663d23e.flags)
+ x.CodeSize = (uint64)(x.refc663d23e.codeSize)
+ hxf65bf54 := (*sliceHeader)(unsafe.Pointer(&x.PCode))
+ hxf65bf54.Data = unsafe.Pointer(x.refc663d23e.pCode)
+ hxf65bf54.Cap = 0x7fffffff
+ // hxf65bf54.Len = ?
+
+}
+
+// allocPipelineCacheCreateInfoMemory allocates memory for type C.VkPipelineCacheCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPipelineCacheCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineCacheCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPipelineCacheCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineCacheCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PipelineCacheCreateInfo) Ref() *C.VkPipelineCacheCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.reff11e7dd1
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PipelineCacheCreateInfo) Free() {
+ if x != nil && x.allocsf11e7dd1 != nil {
+ x.allocsf11e7dd1.(*cgoAllocMap).Free()
+ x.reff11e7dd1 = nil
+ }
+}
+
+// NewPipelineCacheCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPipelineCacheCreateInfoRef(ref unsafe.Pointer) *PipelineCacheCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PipelineCacheCreateInfo)
+ obj.reff11e7dd1 = (*C.VkPipelineCacheCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PipelineCacheCreateInfo) PassRef() (*C.VkPipelineCacheCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.reff11e7dd1 != nil {
+ return x.reff11e7dd1, nil
+ }
+ memf11e7dd1 := allocPipelineCacheCreateInfoMemory(1)
+ reff11e7dd1 := (*C.VkPipelineCacheCreateInfo)(memf11e7dd1)
+ allocsf11e7dd1 := new(cgoAllocMap)
+ allocsf11e7dd1.Add(memf11e7dd1)
+
+ var csType_allocs *cgoAllocMap
+ reff11e7dd1.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsf11e7dd1.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ reff11e7dd1.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsf11e7dd1.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ reff11e7dd1.flags, cflags_allocs = (C.VkPipelineCacheCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocsf11e7dd1.Borrow(cflags_allocs)
+
+ var cinitialDataSize_allocs *cgoAllocMap
+ reff11e7dd1.initialDataSize, cinitialDataSize_allocs = (C.size_t)(x.InitialDataSize), cgoAllocsUnknown
+ allocsf11e7dd1.Borrow(cinitialDataSize_allocs)
+
+ var cpInitialData_allocs *cgoAllocMap
+ reff11e7dd1.pInitialData, cpInitialData_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PInitialData)), cgoAllocsUnknown
+ allocsf11e7dd1.Borrow(cpInitialData_allocs)
+
+ x.reff11e7dd1 = reff11e7dd1
+ x.allocsf11e7dd1 = allocsf11e7dd1
+ return reff11e7dd1, allocsf11e7dd1
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PipelineCacheCreateInfo) PassValue() (C.VkPipelineCacheCreateInfo, *cgoAllocMap) {
+ if x.reff11e7dd1 != nil {
+ return *x.reff11e7dd1, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PipelineCacheCreateInfo) Deref() {
+ if x.reff11e7dd1 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.reff11e7dd1.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff11e7dd1.pNext))
+ x.Flags = (PipelineCacheCreateFlags)(x.reff11e7dd1.flags)
+ x.InitialDataSize = (uint64)(x.reff11e7dd1.initialDataSize)
+ x.PInitialData = (unsafe.Pointer)(unsafe.Pointer(x.reff11e7dd1.pInitialData))
+}
+
+// allocSpecializationMapEntryMemory allocates memory for type C.VkSpecializationMapEntry in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSpecializationMapEntryMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSpecializationMapEntryValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSpecializationMapEntryValue = unsafe.Sizeof([1]C.VkSpecializationMapEntry{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SpecializationMapEntry) Ref() *C.VkSpecializationMapEntry {
+ if x == nil {
+ return nil
+ }
+ return x.ref2fd815d1
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SpecializationMapEntry) Free() {
+ if x != nil && x.allocs2fd815d1 != nil {
+ x.allocs2fd815d1.(*cgoAllocMap).Free()
+ x.ref2fd815d1 = nil
+ }
+}
+
+// NewSpecializationMapEntryRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSpecializationMapEntryRef(ref unsafe.Pointer) *SpecializationMapEntry {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SpecializationMapEntry)
+ obj.ref2fd815d1 = (*C.VkSpecializationMapEntry)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SpecializationMapEntry) PassRef() (*C.VkSpecializationMapEntry, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref2fd815d1 != nil {
+ return x.ref2fd815d1, nil
+ }
+ mem2fd815d1 := allocSpecializationMapEntryMemory(1)
+ ref2fd815d1 := (*C.VkSpecializationMapEntry)(mem2fd815d1)
+ allocs2fd815d1 := new(cgoAllocMap)
+ allocs2fd815d1.Add(mem2fd815d1)
+
+ var cconstantID_allocs *cgoAllocMap
+ ref2fd815d1.constantID, cconstantID_allocs = (C.uint32_t)(x.ConstantID), cgoAllocsUnknown
+ allocs2fd815d1.Borrow(cconstantID_allocs)
+
+ var coffset_allocs *cgoAllocMap
+ ref2fd815d1.offset, coffset_allocs = (C.uint32_t)(x.Offset), cgoAllocsUnknown
+ allocs2fd815d1.Borrow(coffset_allocs)
+
+ var csize_allocs *cgoAllocMap
+ ref2fd815d1.size, csize_allocs = (C.size_t)(x.Size), cgoAllocsUnknown
+ allocs2fd815d1.Borrow(csize_allocs)
+
+ x.ref2fd815d1 = ref2fd815d1
+ x.allocs2fd815d1 = allocs2fd815d1
+ return ref2fd815d1, allocs2fd815d1
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SpecializationMapEntry) PassValue() (C.VkSpecializationMapEntry, *cgoAllocMap) {
+ if x.ref2fd815d1 != nil {
+ return *x.ref2fd815d1, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SpecializationMapEntry) Deref() {
+ if x.ref2fd815d1 == nil {
+ return
+ }
+ x.ConstantID = (uint32)(x.ref2fd815d1.constantID)
+ x.Offset = (uint32)(x.ref2fd815d1.offset)
+ x.Size = (uint64)(x.ref2fd815d1.size)
+}
+
+// allocSpecializationInfoMemory allocates memory for type C.VkSpecializationInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSpecializationInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSpecializationInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSpecializationInfoValue = unsafe.Sizeof([1]C.VkSpecializationInfo{})
+
+// unpackSSpecializationMapEntry transforms a sliced Go data structure into plain C format.
+func unpackSSpecializationMapEntry(x []SpecializationMapEntry) (unpacked *C.VkSpecializationMapEntry, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkSpecializationMapEntry) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocSpecializationMapEntryMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkSpecializationMapEntry)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkSpecializationMapEntry)(h.Data)
+ return
+}
+
+// packSSpecializationMapEntry reads sliced Go data structure out from plain C format.
+func packSSpecializationMapEntry(v []SpecializationMapEntry, ptr0 *C.VkSpecializationMapEntry) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfSpecializationMapEntryValue]C.VkSpecializationMapEntry)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewSpecializationMapEntryRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SpecializationInfo) Ref() *C.VkSpecializationInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref6bc395a3
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SpecializationInfo) Free() {
+ if x != nil && x.allocs6bc395a3 != nil {
+ x.allocs6bc395a3.(*cgoAllocMap).Free()
+ x.ref6bc395a3 = nil
+ }
+}
+
+// NewSpecializationInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSpecializationInfoRef(ref unsafe.Pointer) *SpecializationInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SpecializationInfo)
+ obj.ref6bc395a3 = (*C.VkSpecializationInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SpecializationInfo) PassRef() (*C.VkSpecializationInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref6bc395a3 != nil {
+ return x.ref6bc395a3, nil
+ }
+ mem6bc395a3 := allocSpecializationInfoMemory(1)
+ ref6bc395a3 := (*C.VkSpecializationInfo)(mem6bc395a3)
+ allocs6bc395a3 := new(cgoAllocMap)
+ allocs6bc395a3.Add(mem6bc395a3)
+
+ var cmapEntryCount_allocs *cgoAllocMap
+ ref6bc395a3.mapEntryCount, cmapEntryCount_allocs = (C.uint32_t)(x.MapEntryCount), cgoAllocsUnknown
+ allocs6bc395a3.Borrow(cmapEntryCount_allocs)
+
+ var cpMapEntries_allocs *cgoAllocMap
+ ref6bc395a3.pMapEntries, cpMapEntries_allocs = unpackSSpecializationMapEntry(x.PMapEntries)
+ allocs6bc395a3.Borrow(cpMapEntries_allocs)
+
+ var cdataSize_allocs *cgoAllocMap
+ ref6bc395a3.dataSize, cdataSize_allocs = (C.size_t)(x.DataSize), cgoAllocsUnknown
+ allocs6bc395a3.Borrow(cdataSize_allocs)
+
+ var cpData_allocs *cgoAllocMap
+ ref6bc395a3.pData, cpData_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PData)), cgoAllocsUnknown
+ allocs6bc395a3.Borrow(cpData_allocs)
+
+ x.ref6bc395a3 = ref6bc395a3
+ x.allocs6bc395a3 = allocs6bc395a3
+ return ref6bc395a3, allocs6bc395a3
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SpecializationInfo) PassValue() (C.VkSpecializationInfo, *cgoAllocMap) {
+ if x.ref6bc395a3 != nil {
+ return *x.ref6bc395a3, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SpecializationInfo) Deref() {
+ if x.ref6bc395a3 == nil {
+ return
+ }
+ x.MapEntryCount = (uint32)(x.ref6bc395a3.mapEntryCount)
+ packSSpecializationMapEntry(x.PMapEntries, x.ref6bc395a3.pMapEntries)
+ x.DataSize = (uint64)(x.ref6bc395a3.dataSize)
+ x.PData = (unsafe.Pointer)(unsafe.Pointer(x.ref6bc395a3.pData))
+}
+
+// allocPipelineShaderStageCreateInfoMemory allocates memory for type C.VkPipelineShaderStageCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPipelineShaderStageCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineShaderStageCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPipelineShaderStageCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineShaderStageCreateInfo{})
+
+// unpackSSpecializationInfo transforms a sliced Go data structure into plain C format.
+func unpackSSpecializationInfo(x []SpecializationInfo) (unpacked *C.VkSpecializationInfo, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkSpecializationInfo) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocSpecializationInfoMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkSpecializationInfo)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkSpecializationInfo)(h.Data)
+ return
+}
+
+// packSSpecializationInfo reads sliced Go data structure out from plain C format.
+func packSSpecializationInfo(v []SpecializationInfo, ptr0 *C.VkSpecializationInfo) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfSpecializationInfoValue]C.VkSpecializationInfo)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewSpecializationInfoRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PipelineShaderStageCreateInfo) Ref() *C.VkPipelineShaderStageCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref50ba8b60
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PipelineShaderStageCreateInfo) Free() {
+ if x != nil && x.allocs50ba8b60 != nil {
+ x.allocs50ba8b60.(*cgoAllocMap).Free()
+ x.ref50ba8b60 = nil
+ }
+}
+
+// NewPipelineShaderStageCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPipelineShaderStageCreateInfoRef(ref unsafe.Pointer) *PipelineShaderStageCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PipelineShaderStageCreateInfo)
+ obj.ref50ba8b60 = (*C.VkPipelineShaderStageCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PipelineShaderStageCreateInfo) PassRef() (*C.VkPipelineShaderStageCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref50ba8b60 != nil {
+ return x.ref50ba8b60, nil
+ }
+ mem50ba8b60 := allocPipelineShaderStageCreateInfoMemory(1)
+ ref50ba8b60 := (*C.VkPipelineShaderStageCreateInfo)(mem50ba8b60)
+ allocs50ba8b60 := new(cgoAllocMap)
+ allocs50ba8b60.Add(mem50ba8b60)
+
+ var csType_allocs *cgoAllocMap
+ ref50ba8b60.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs50ba8b60.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref50ba8b60.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs50ba8b60.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref50ba8b60.flags, cflags_allocs = (C.VkPipelineShaderStageCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocs50ba8b60.Borrow(cflags_allocs)
+
+ var cstage_allocs *cgoAllocMap
+ ref50ba8b60.stage, cstage_allocs = (C.VkShaderStageFlagBits)(x.Stage), cgoAllocsUnknown
+ allocs50ba8b60.Borrow(cstage_allocs)
+
+ var cmodule_allocs *cgoAllocMap
+ ref50ba8b60.module, cmodule_allocs = *(*C.VkShaderModule)(unsafe.Pointer(&x.Module)), cgoAllocsUnknown
+ allocs50ba8b60.Borrow(cmodule_allocs)
+
+ var cpName_allocs *cgoAllocMap
+ ref50ba8b60.pName, cpName_allocs = unpackPCharString(x.PName)
+ allocs50ba8b60.Borrow(cpName_allocs)
+
+ var cpSpecializationInfo_allocs *cgoAllocMap
+ ref50ba8b60.pSpecializationInfo, cpSpecializationInfo_allocs = unpackSSpecializationInfo(x.PSpecializationInfo)
+ allocs50ba8b60.Borrow(cpSpecializationInfo_allocs)
+
+ x.ref50ba8b60 = ref50ba8b60
+ x.allocs50ba8b60 = allocs50ba8b60
+ return ref50ba8b60, allocs50ba8b60
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PipelineShaderStageCreateInfo) PassValue() (C.VkPipelineShaderStageCreateInfo, *cgoAllocMap) {
+ if x.ref50ba8b60 != nil {
+ return *x.ref50ba8b60, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PipelineShaderStageCreateInfo) Deref() {
+ if x.ref50ba8b60 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref50ba8b60.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref50ba8b60.pNext))
+ x.Flags = (PipelineShaderStageCreateFlags)(x.ref50ba8b60.flags)
+ x.Stage = (ShaderStageFlagBits)(x.ref50ba8b60.stage)
+ x.Module = *(*ShaderModule)(unsafe.Pointer(&x.ref50ba8b60.module))
+ x.PName = packPCharString(x.ref50ba8b60.pName)
+ packSSpecializationInfo(x.PSpecializationInfo, x.ref50ba8b60.pSpecializationInfo)
+}
+
+// allocComputePipelineCreateInfoMemory allocates memory for type C.VkComputePipelineCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocComputePipelineCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfComputePipelineCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfComputePipelineCreateInfoValue = unsafe.Sizeof([1]C.VkComputePipelineCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ComputePipelineCreateInfo) Ref() *C.VkComputePipelineCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref77823220
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ComputePipelineCreateInfo) Free() {
+ if x != nil && x.allocs77823220 != nil {
+ x.allocs77823220.(*cgoAllocMap).Free()
+ x.ref77823220 = nil
+ }
+}
+
+// NewComputePipelineCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewComputePipelineCreateInfoRef(ref unsafe.Pointer) *ComputePipelineCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ComputePipelineCreateInfo)
+ obj.ref77823220 = (*C.VkComputePipelineCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ComputePipelineCreateInfo) PassRef() (*C.VkComputePipelineCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref77823220 != nil {
+ return x.ref77823220, nil
+ }
+ mem77823220 := allocComputePipelineCreateInfoMemory(1)
+ ref77823220 := (*C.VkComputePipelineCreateInfo)(mem77823220)
+ allocs77823220 := new(cgoAllocMap)
+ allocs77823220.Add(mem77823220)
+
+ var csType_allocs *cgoAllocMap
+ ref77823220.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs77823220.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref77823220.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs77823220.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref77823220.flags, cflags_allocs = (C.VkPipelineCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocs77823220.Borrow(cflags_allocs)
+
+ var cstage_allocs *cgoAllocMap
+ ref77823220.stage, cstage_allocs = x.Stage.PassValue()
+ allocs77823220.Borrow(cstage_allocs)
+
+ var clayout_allocs *cgoAllocMap
+ ref77823220.layout, clayout_allocs = *(*C.VkPipelineLayout)(unsafe.Pointer(&x.Layout)), cgoAllocsUnknown
+ allocs77823220.Borrow(clayout_allocs)
+
+ var cbasePipelineHandle_allocs *cgoAllocMap
+ ref77823220.basePipelineHandle, cbasePipelineHandle_allocs = *(*C.VkPipeline)(unsafe.Pointer(&x.BasePipelineHandle)), cgoAllocsUnknown
+ allocs77823220.Borrow(cbasePipelineHandle_allocs)
+
+ var cbasePipelineIndex_allocs *cgoAllocMap
+ ref77823220.basePipelineIndex, cbasePipelineIndex_allocs = (C.int32_t)(x.BasePipelineIndex), cgoAllocsUnknown
+ allocs77823220.Borrow(cbasePipelineIndex_allocs)
+
+ x.ref77823220 = ref77823220
+ x.allocs77823220 = allocs77823220
+ return ref77823220, allocs77823220
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ComputePipelineCreateInfo) PassValue() (C.VkComputePipelineCreateInfo, *cgoAllocMap) {
+ if x.ref77823220 != nil {
+ return *x.ref77823220, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ComputePipelineCreateInfo) Deref() {
+ if x.ref77823220 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref77823220.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref77823220.pNext))
+ x.Flags = (PipelineCreateFlags)(x.ref77823220.flags)
+ x.Stage = *NewPipelineShaderStageCreateInfoRef(unsafe.Pointer(&x.ref77823220.stage))
+ x.Layout = *(*PipelineLayout)(unsafe.Pointer(&x.ref77823220.layout))
+ x.BasePipelineHandle = *(*Pipeline)(unsafe.Pointer(&x.ref77823220.basePipelineHandle))
+ x.BasePipelineIndex = (int32)(x.ref77823220.basePipelineIndex)
+}
+
+// allocVertexInputBindingDescriptionMemory allocates memory for type C.VkVertexInputBindingDescription in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocVertexInputBindingDescriptionMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfVertexInputBindingDescriptionValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfVertexInputBindingDescriptionValue = unsafe.Sizeof([1]C.VkVertexInputBindingDescription{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *VertexInputBindingDescription) Ref() *C.VkVertexInputBindingDescription {
+ if x == nil {
+ return nil
+ }
+ return x.ref5c9d8c23
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *VertexInputBindingDescription) Free() {
+ if x != nil && x.allocs5c9d8c23 != nil {
+ x.allocs5c9d8c23.(*cgoAllocMap).Free()
+ x.ref5c9d8c23 = nil
+ }
+}
+
+// NewVertexInputBindingDescriptionRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewVertexInputBindingDescriptionRef(ref unsafe.Pointer) *VertexInputBindingDescription {
+ if ref == nil {
+ return nil
+ }
+ obj := new(VertexInputBindingDescription)
+ obj.ref5c9d8c23 = (*C.VkVertexInputBindingDescription)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *VertexInputBindingDescription) PassRef() (*C.VkVertexInputBindingDescription, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref5c9d8c23 != nil {
+ return x.ref5c9d8c23, nil
+ }
+ mem5c9d8c23 := allocVertexInputBindingDescriptionMemory(1)
+ ref5c9d8c23 := (*C.VkVertexInputBindingDescription)(mem5c9d8c23)
+ allocs5c9d8c23 := new(cgoAllocMap)
+ allocs5c9d8c23.Add(mem5c9d8c23)
+
+ var cbinding_allocs *cgoAllocMap
+ ref5c9d8c23.binding, cbinding_allocs = (C.uint32_t)(x.Binding), cgoAllocsUnknown
+ allocs5c9d8c23.Borrow(cbinding_allocs)
+
+ var cstride_allocs *cgoAllocMap
+ ref5c9d8c23.stride, cstride_allocs = (C.uint32_t)(x.Stride), cgoAllocsUnknown
+ allocs5c9d8c23.Borrow(cstride_allocs)
+
+ var cinputRate_allocs *cgoAllocMap
+ ref5c9d8c23.inputRate, cinputRate_allocs = (C.VkVertexInputRate)(x.InputRate), cgoAllocsUnknown
+ allocs5c9d8c23.Borrow(cinputRate_allocs)
+
+ x.ref5c9d8c23 = ref5c9d8c23
+ x.allocs5c9d8c23 = allocs5c9d8c23
+ return ref5c9d8c23, allocs5c9d8c23
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x VertexInputBindingDescription) PassValue() (C.VkVertexInputBindingDescription, *cgoAllocMap) {
+ if x.ref5c9d8c23 != nil {
+ return *x.ref5c9d8c23, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *VertexInputBindingDescription) Deref() {
+ if x.ref5c9d8c23 == nil {
+ return
+ }
+ x.Binding = (uint32)(x.ref5c9d8c23.binding)
+ x.Stride = (uint32)(x.ref5c9d8c23.stride)
+ x.InputRate = (VertexInputRate)(x.ref5c9d8c23.inputRate)
+}
+
+// allocVertexInputAttributeDescriptionMemory allocates memory for type C.VkVertexInputAttributeDescription in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocVertexInputAttributeDescriptionMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfVertexInputAttributeDescriptionValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfVertexInputAttributeDescriptionValue = unsafe.Sizeof([1]C.VkVertexInputAttributeDescription{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *VertexInputAttributeDescription) Ref() *C.VkVertexInputAttributeDescription {
+ if x == nil {
+ return nil
+ }
+ return x.refdc4635ff
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *VertexInputAttributeDescription) Free() {
+ if x != nil && x.allocsdc4635ff != nil {
+ x.allocsdc4635ff.(*cgoAllocMap).Free()
+ x.refdc4635ff = nil
+ }
+}
+
+// NewVertexInputAttributeDescriptionRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewVertexInputAttributeDescriptionRef(ref unsafe.Pointer) *VertexInputAttributeDescription {
+ if ref == nil {
+ return nil
+ }
+ obj := new(VertexInputAttributeDescription)
+ obj.refdc4635ff = (*C.VkVertexInputAttributeDescription)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *VertexInputAttributeDescription) PassRef() (*C.VkVertexInputAttributeDescription, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refdc4635ff != nil {
+ return x.refdc4635ff, nil
+ }
+ memdc4635ff := allocVertexInputAttributeDescriptionMemory(1)
+ refdc4635ff := (*C.VkVertexInputAttributeDescription)(memdc4635ff)
+ allocsdc4635ff := new(cgoAllocMap)
+ allocsdc4635ff.Add(memdc4635ff)
+
+ var clocation_allocs *cgoAllocMap
+ refdc4635ff.location, clocation_allocs = (C.uint32_t)(x.Location), cgoAllocsUnknown
+ allocsdc4635ff.Borrow(clocation_allocs)
+
+ var cbinding_allocs *cgoAllocMap
+ refdc4635ff.binding, cbinding_allocs = (C.uint32_t)(x.Binding), cgoAllocsUnknown
+ allocsdc4635ff.Borrow(cbinding_allocs)
+
+ var cformat_allocs *cgoAllocMap
+ refdc4635ff.format, cformat_allocs = (C.VkFormat)(x.Format), cgoAllocsUnknown
+ allocsdc4635ff.Borrow(cformat_allocs)
+
+ var coffset_allocs *cgoAllocMap
+ refdc4635ff.offset, coffset_allocs = (C.uint32_t)(x.Offset), cgoAllocsUnknown
+ allocsdc4635ff.Borrow(coffset_allocs)
+
+ x.refdc4635ff = refdc4635ff
+ x.allocsdc4635ff = allocsdc4635ff
+ return refdc4635ff, allocsdc4635ff
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x VertexInputAttributeDescription) PassValue() (C.VkVertexInputAttributeDescription, *cgoAllocMap) {
+ if x.refdc4635ff != nil {
+ return *x.refdc4635ff, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *VertexInputAttributeDescription) Deref() {
+ if x.refdc4635ff == nil {
+ return
+ }
+ x.Location = (uint32)(x.refdc4635ff.location)
+ x.Binding = (uint32)(x.refdc4635ff.binding)
+ x.Format = (Format)(x.refdc4635ff.format)
+ x.Offset = (uint32)(x.refdc4635ff.offset)
+}
+
+// allocPipelineVertexInputStateCreateInfoMemory allocates memory for type C.VkPipelineVertexInputStateCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPipelineVertexInputStateCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineVertexInputStateCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPipelineVertexInputStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineVertexInputStateCreateInfo{})
+
+// unpackSVertexInputBindingDescription transforms a sliced Go data structure into plain C format.
+func unpackSVertexInputBindingDescription(x []VertexInputBindingDescription) (unpacked *C.VkVertexInputBindingDescription, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkVertexInputBindingDescription) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocVertexInputBindingDescriptionMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkVertexInputBindingDescription)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkVertexInputBindingDescription)(h.Data)
+ return
+}
+
+// unpackSVertexInputAttributeDescription transforms a sliced Go data structure into plain C format.
+func unpackSVertexInputAttributeDescription(x []VertexInputAttributeDescription) (unpacked *C.VkVertexInputAttributeDescription, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkVertexInputAttributeDescription) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocVertexInputAttributeDescriptionMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkVertexInputAttributeDescription)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkVertexInputAttributeDescription)(h.Data)
+ return
+}
+
+// packSVertexInputBindingDescription reads sliced Go data structure out from plain C format.
+func packSVertexInputBindingDescription(v []VertexInputBindingDescription, ptr0 *C.VkVertexInputBindingDescription) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfVertexInputBindingDescriptionValue]C.VkVertexInputBindingDescription)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewVertexInputBindingDescriptionRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// packSVertexInputAttributeDescription reads sliced Go data structure out from plain C format.
+func packSVertexInputAttributeDescription(v []VertexInputAttributeDescription, ptr0 *C.VkVertexInputAttributeDescription) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfVertexInputAttributeDescriptionValue]C.VkVertexInputAttributeDescription)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewVertexInputAttributeDescriptionRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PipelineVertexInputStateCreateInfo) Ref() *C.VkPipelineVertexInputStateCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref5fe4aa50
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PipelineVertexInputStateCreateInfo) Free() {
+ if x != nil && x.allocs5fe4aa50 != nil {
+ x.allocs5fe4aa50.(*cgoAllocMap).Free()
+ x.ref5fe4aa50 = nil
+ }
+}
+
+// NewPipelineVertexInputStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPipelineVertexInputStateCreateInfoRef(ref unsafe.Pointer) *PipelineVertexInputStateCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PipelineVertexInputStateCreateInfo)
+ obj.ref5fe4aa50 = (*C.VkPipelineVertexInputStateCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PipelineVertexInputStateCreateInfo) PassRef() (*C.VkPipelineVertexInputStateCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref5fe4aa50 != nil {
+ return x.ref5fe4aa50, nil
+ }
+ mem5fe4aa50 := allocPipelineVertexInputStateCreateInfoMemory(1)
+ ref5fe4aa50 := (*C.VkPipelineVertexInputStateCreateInfo)(mem5fe4aa50)
+ allocs5fe4aa50 := new(cgoAllocMap)
+ allocs5fe4aa50.Add(mem5fe4aa50)
+
+ var csType_allocs *cgoAllocMap
+ ref5fe4aa50.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs5fe4aa50.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref5fe4aa50.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs5fe4aa50.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref5fe4aa50.flags, cflags_allocs = (C.VkPipelineVertexInputStateCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocs5fe4aa50.Borrow(cflags_allocs)
+
+ var cvertexBindingDescriptionCount_allocs *cgoAllocMap
+ ref5fe4aa50.vertexBindingDescriptionCount, cvertexBindingDescriptionCount_allocs = (C.uint32_t)(x.VertexBindingDescriptionCount), cgoAllocsUnknown
+ allocs5fe4aa50.Borrow(cvertexBindingDescriptionCount_allocs)
+
+ var cpVertexBindingDescriptions_allocs *cgoAllocMap
+ ref5fe4aa50.pVertexBindingDescriptions, cpVertexBindingDescriptions_allocs = unpackSVertexInputBindingDescription(x.PVertexBindingDescriptions)
+ allocs5fe4aa50.Borrow(cpVertexBindingDescriptions_allocs)
+
+ var cvertexAttributeDescriptionCount_allocs *cgoAllocMap
+ ref5fe4aa50.vertexAttributeDescriptionCount, cvertexAttributeDescriptionCount_allocs = (C.uint32_t)(x.VertexAttributeDescriptionCount), cgoAllocsUnknown
+ allocs5fe4aa50.Borrow(cvertexAttributeDescriptionCount_allocs)
+
+ var cpVertexAttributeDescriptions_allocs *cgoAllocMap
+ ref5fe4aa50.pVertexAttributeDescriptions, cpVertexAttributeDescriptions_allocs = unpackSVertexInputAttributeDescription(x.PVertexAttributeDescriptions)
+ allocs5fe4aa50.Borrow(cpVertexAttributeDescriptions_allocs)
+
+ x.ref5fe4aa50 = ref5fe4aa50
+ x.allocs5fe4aa50 = allocs5fe4aa50
+ return ref5fe4aa50, allocs5fe4aa50
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PipelineVertexInputStateCreateInfo) PassValue() (C.VkPipelineVertexInputStateCreateInfo, *cgoAllocMap) {
+ if x.ref5fe4aa50 != nil {
+ return *x.ref5fe4aa50, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PipelineVertexInputStateCreateInfo) Deref() {
+ if x.ref5fe4aa50 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref5fe4aa50.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5fe4aa50.pNext))
+ x.Flags = (PipelineVertexInputStateCreateFlags)(x.ref5fe4aa50.flags)
+ x.VertexBindingDescriptionCount = (uint32)(x.ref5fe4aa50.vertexBindingDescriptionCount)
+ packSVertexInputBindingDescription(x.PVertexBindingDescriptions, x.ref5fe4aa50.pVertexBindingDescriptions)
+ x.VertexAttributeDescriptionCount = (uint32)(x.ref5fe4aa50.vertexAttributeDescriptionCount)
+ packSVertexInputAttributeDescription(x.PVertexAttributeDescriptions, x.ref5fe4aa50.pVertexAttributeDescriptions)
+}
+
+// allocPipelineInputAssemblyStateCreateInfoMemory allocates memory for type C.VkPipelineInputAssemblyStateCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPipelineInputAssemblyStateCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineInputAssemblyStateCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPipelineInputAssemblyStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineInputAssemblyStateCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PipelineInputAssemblyStateCreateInfo) Ref() *C.VkPipelineInputAssemblyStateCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref22e1691d
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PipelineInputAssemblyStateCreateInfo) Free() {
+ if x != nil && x.allocs22e1691d != nil {
+ x.allocs22e1691d.(*cgoAllocMap).Free()
+ x.ref22e1691d = nil
+ }
+}
+
+// NewPipelineInputAssemblyStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPipelineInputAssemblyStateCreateInfoRef(ref unsafe.Pointer) *PipelineInputAssemblyStateCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PipelineInputAssemblyStateCreateInfo)
+ obj.ref22e1691d = (*C.VkPipelineInputAssemblyStateCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PipelineInputAssemblyStateCreateInfo) PassRef() (*C.VkPipelineInputAssemblyStateCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref22e1691d != nil {
+ return x.ref22e1691d, nil
+ }
+ mem22e1691d := allocPipelineInputAssemblyStateCreateInfoMemory(1)
+ ref22e1691d := (*C.VkPipelineInputAssemblyStateCreateInfo)(mem22e1691d)
+ allocs22e1691d := new(cgoAllocMap)
+ allocs22e1691d.Add(mem22e1691d)
+
+ var csType_allocs *cgoAllocMap
+ ref22e1691d.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs22e1691d.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref22e1691d.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs22e1691d.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref22e1691d.flags, cflags_allocs = (C.VkPipelineInputAssemblyStateCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocs22e1691d.Borrow(cflags_allocs)
+
+ var ctopology_allocs *cgoAllocMap
+ ref22e1691d.topology, ctopology_allocs = (C.VkPrimitiveTopology)(x.Topology), cgoAllocsUnknown
+ allocs22e1691d.Borrow(ctopology_allocs)
+
+ var cprimitiveRestartEnable_allocs *cgoAllocMap
+ ref22e1691d.primitiveRestartEnable, cprimitiveRestartEnable_allocs = (C.VkBool32)(x.PrimitiveRestartEnable), cgoAllocsUnknown
+ allocs22e1691d.Borrow(cprimitiveRestartEnable_allocs)
+
+ x.ref22e1691d = ref22e1691d
+ x.allocs22e1691d = allocs22e1691d
+ return ref22e1691d, allocs22e1691d
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PipelineInputAssemblyStateCreateInfo) PassValue() (C.VkPipelineInputAssemblyStateCreateInfo, *cgoAllocMap) {
+ if x.ref22e1691d != nil {
+ return *x.ref22e1691d, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PipelineInputAssemblyStateCreateInfo) Deref() {
+ if x.ref22e1691d == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref22e1691d.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref22e1691d.pNext))
+ x.Flags = (PipelineInputAssemblyStateCreateFlags)(x.ref22e1691d.flags)
+ x.Topology = (PrimitiveTopology)(x.ref22e1691d.topology)
+ x.PrimitiveRestartEnable = (Bool32)(x.ref22e1691d.primitiveRestartEnable)
+}
+
+// allocPipelineTessellationStateCreateInfoMemory allocates memory for type C.VkPipelineTessellationStateCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPipelineTessellationStateCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineTessellationStateCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPipelineTessellationStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineTessellationStateCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PipelineTessellationStateCreateInfo) Ref() *C.VkPipelineTessellationStateCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref4ef3997a
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PipelineTessellationStateCreateInfo) Free() {
+ if x != nil && x.allocs4ef3997a != nil {
+ x.allocs4ef3997a.(*cgoAllocMap).Free()
+ x.ref4ef3997a = nil
+ }
+}
+
+// NewPipelineTessellationStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPipelineTessellationStateCreateInfoRef(ref unsafe.Pointer) *PipelineTessellationStateCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PipelineTessellationStateCreateInfo)
+ obj.ref4ef3997a = (*C.VkPipelineTessellationStateCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PipelineTessellationStateCreateInfo) PassRef() (*C.VkPipelineTessellationStateCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref4ef3997a != nil {
+ return x.ref4ef3997a, nil
+ }
+ mem4ef3997a := allocPipelineTessellationStateCreateInfoMemory(1)
+ ref4ef3997a := (*C.VkPipelineTessellationStateCreateInfo)(mem4ef3997a)
+ allocs4ef3997a := new(cgoAllocMap)
+ allocs4ef3997a.Add(mem4ef3997a)
+
+ var csType_allocs *cgoAllocMap
+ ref4ef3997a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs4ef3997a.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref4ef3997a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs4ef3997a.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref4ef3997a.flags, cflags_allocs = (C.VkPipelineTessellationStateCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocs4ef3997a.Borrow(cflags_allocs)
+
+ var cpatchControlPoints_allocs *cgoAllocMap
+ ref4ef3997a.patchControlPoints, cpatchControlPoints_allocs = (C.uint32_t)(x.PatchControlPoints), cgoAllocsUnknown
+ allocs4ef3997a.Borrow(cpatchControlPoints_allocs)
+
+ x.ref4ef3997a = ref4ef3997a
+ x.allocs4ef3997a = allocs4ef3997a
+ return ref4ef3997a, allocs4ef3997a
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PipelineTessellationStateCreateInfo) PassValue() (C.VkPipelineTessellationStateCreateInfo, *cgoAllocMap) {
+ if x.ref4ef3997a != nil {
+ return *x.ref4ef3997a, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PipelineTessellationStateCreateInfo) Deref() {
+ if x.ref4ef3997a == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref4ef3997a.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref4ef3997a.pNext))
+ x.Flags = (PipelineTessellationStateCreateFlags)(x.ref4ef3997a.flags)
+ x.PatchControlPoints = (uint32)(x.ref4ef3997a.patchControlPoints)
+}
+
+// allocViewportMemory allocates memory for type C.VkViewport in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocViewportMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfViewportValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfViewportValue = unsafe.Sizeof([1]C.VkViewport{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *Viewport) Ref() *C.VkViewport {
+ if x == nil {
+ return nil
+ }
+ return x.ref75cf5291
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *Viewport) Free() {
+ if x != nil && x.allocs75cf5291 != nil {
+ x.allocs75cf5291.(*cgoAllocMap).Free()
+ x.ref75cf5291 = nil
+ }
+}
+
+// NewViewportRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewViewportRef(ref unsafe.Pointer) *Viewport {
+ if ref == nil {
+ return nil
+ }
+ obj := new(Viewport)
+ obj.ref75cf5291 = (*C.VkViewport)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *Viewport) PassRef() (*C.VkViewport, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref75cf5291 != nil {
+ return x.ref75cf5291, nil
+ }
+ mem75cf5291 := allocViewportMemory(1)
+ ref75cf5291 := (*C.VkViewport)(mem75cf5291)
+ allocs75cf5291 := new(cgoAllocMap)
+ allocs75cf5291.Add(mem75cf5291)
+
+ var cx_allocs *cgoAllocMap
+ ref75cf5291.x, cx_allocs = (C.float)(x.X), cgoAllocsUnknown
+ allocs75cf5291.Borrow(cx_allocs)
+
+ var cy_allocs *cgoAllocMap
+ ref75cf5291.y, cy_allocs = (C.float)(x.Y), cgoAllocsUnknown
+ allocs75cf5291.Borrow(cy_allocs)
+
+ var cwidth_allocs *cgoAllocMap
+ ref75cf5291.width, cwidth_allocs = (C.float)(x.Width), cgoAllocsUnknown
+ allocs75cf5291.Borrow(cwidth_allocs)
+
+ var cheight_allocs *cgoAllocMap
+ ref75cf5291.height, cheight_allocs = (C.float)(x.Height), cgoAllocsUnknown
+ allocs75cf5291.Borrow(cheight_allocs)
+
+ var cminDepth_allocs *cgoAllocMap
+ ref75cf5291.minDepth, cminDepth_allocs = (C.float)(x.MinDepth), cgoAllocsUnknown
+ allocs75cf5291.Borrow(cminDepth_allocs)
+
+ var cmaxDepth_allocs *cgoAllocMap
+ ref75cf5291.maxDepth, cmaxDepth_allocs = (C.float)(x.MaxDepth), cgoAllocsUnknown
+ allocs75cf5291.Borrow(cmaxDepth_allocs)
+
+ x.ref75cf5291 = ref75cf5291
+ x.allocs75cf5291 = allocs75cf5291
+ return ref75cf5291, allocs75cf5291
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x Viewport) PassValue() (C.VkViewport, *cgoAllocMap) {
+ if x.ref75cf5291 != nil {
+ return *x.ref75cf5291, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *Viewport) Deref() {
+ if x.ref75cf5291 == nil {
+ return
+ }
+ x.X = (float32)(x.ref75cf5291.x)
+ x.Y = (float32)(x.ref75cf5291.y)
+ x.Width = (float32)(x.ref75cf5291.width)
+ x.Height = (float32)(x.ref75cf5291.height)
+ x.MinDepth = (float32)(x.ref75cf5291.minDepth)
+ x.MaxDepth = (float32)(x.ref75cf5291.maxDepth)
+}
+
+// allocPipelineViewportStateCreateInfoMemory allocates memory for type C.VkPipelineViewportStateCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPipelineViewportStateCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineViewportStateCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPipelineViewportStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineViewportStateCreateInfo{})
+
+// unpackSViewport transforms a sliced Go data structure into plain C format.
+func unpackSViewport(x []Viewport) (unpacked *C.VkViewport, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkViewport) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocViewportMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkViewport)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkViewport)(h.Data)
+ return
+}
+
+// unpackSRect2D transforms a sliced Go data structure into plain C format.
+func unpackSRect2D(x []Rect2D) (unpacked *C.VkRect2D, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkRect2D) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocRect2DMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkRect2D)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkRect2D)(h.Data)
+ return
+}
+
+// packSViewport reads sliced Go data structure out from plain C format.
+func packSViewport(v []Viewport, ptr0 *C.VkViewport) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfViewportValue]C.VkViewport)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewViewportRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// packSRect2D reads sliced Go data structure out from plain C format.
+func packSRect2D(v []Rect2D, ptr0 *C.VkRect2D) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfRect2DValue]C.VkRect2D)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewRect2DRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PipelineViewportStateCreateInfo) Ref() *C.VkPipelineViewportStateCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refc4705791
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PipelineViewportStateCreateInfo) Free() {
+ if x != nil && x.allocsc4705791 != nil {
+ x.allocsc4705791.(*cgoAllocMap).Free()
+ x.refc4705791 = nil
+ }
+}
+
+// NewPipelineViewportStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPipelineViewportStateCreateInfoRef(ref unsafe.Pointer) *PipelineViewportStateCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PipelineViewportStateCreateInfo)
+ obj.refc4705791 = (*C.VkPipelineViewportStateCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PipelineViewportStateCreateInfo) PassRef() (*C.VkPipelineViewportStateCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refc4705791 != nil {
+ return x.refc4705791, nil
+ }
+ memc4705791 := allocPipelineViewportStateCreateInfoMemory(1)
+ refc4705791 := (*C.VkPipelineViewportStateCreateInfo)(memc4705791)
+ allocsc4705791 := new(cgoAllocMap)
+ allocsc4705791.Add(memc4705791)
+
+ var csType_allocs *cgoAllocMap
+ refc4705791.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsc4705791.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refc4705791.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsc4705791.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ refc4705791.flags, cflags_allocs = (C.VkPipelineViewportStateCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocsc4705791.Borrow(cflags_allocs)
+
+ var cviewportCount_allocs *cgoAllocMap
+ refc4705791.viewportCount, cviewportCount_allocs = (C.uint32_t)(x.ViewportCount), cgoAllocsUnknown
+ allocsc4705791.Borrow(cviewportCount_allocs)
+
+ var cpViewports_allocs *cgoAllocMap
+ refc4705791.pViewports, cpViewports_allocs = unpackSViewport(x.PViewports)
+ allocsc4705791.Borrow(cpViewports_allocs)
+
+ var cscissorCount_allocs *cgoAllocMap
+ refc4705791.scissorCount, cscissorCount_allocs = (C.uint32_t)(x.ScissorCount), cgoAllocsUnknown
+ allocsc4705791.Borrow(cscissorCount_allocs)
+
+ var cpScissors_allocs *cgoAllocMap
+ refc4705791.pScissors, cpScissors_allocs = unpackSRect2D(x.PScissors)
+ allocsc4705791.Borrow(cpScissors_allocs)
+
+ x.refc4705791 = refc4705791
+ x.allocsc4705791 = allocsc4705791
+ return refc4705791, allocsc4705791
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PipelineViewportStateCreateInfo) PassValue() (C.VkPipelineViewportStateCreateInfo, *cgoAllocMap) {
+ if x.refc4705791 != nil {
+ return *x.refc4705791, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PipelineViewportStateCreateInfo) Deref() {
+ if x.refc4705791 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refc4705791.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc4705791.pNext))
+ x.Flags = (PipelineViewportStateCreateFlags)(x.refc4705791.flags)
+ x.ViewportCount = (uint32)(x.refc4705791.viewportCount)
+ packSViewport(x.PViewports, x.refc4705791.pViewports)
+ x.ScissorCount = (uint32)(x.refc4705791.scissorCount)
+ packSRect2D(x.PScissors, x.refc4705791.pScissors)
+}
+
+// allocPipelineRasterizationStateCreateInfoMemory allocates memory for type C.VkPipelineRasterizationStateCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPipelineRasterizationStateCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineRasterizationStateCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPipelineRasterizationStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineRasterizationStateCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PipelineRasterizationStateCreateInfo) Ref() *C.VkPipelineRasterizationStateCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref48cb9fad
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PipelineRasterizationStateCreateInfo) Free() {
+ if x != nil && x.allocs48cb9fad != nil {
+ x.allocs48cb9fad.(*cgoAllocMap).Free()
+ x.ref48cb9fad = nil
+ }
+}
+
+// NewPipelineRasterizationStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPipelineRasterizationStateCreateInfoRef(ref unsafe.Pointer) *PipelineRasterizationStateCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PipelineRasterizationStateCreateInfo)
+ obj.ref48cb9fad = (*C.VkPipelineRasterizationStateCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PipelineRasterizationStateCreateInfo) PassRef() (*C.VkPipelineRasterizationStateCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref48cb9fad != nil {
+ return x.ref48cb9fad, nil
+ }
+ mem48cb9fad := allocPipelineRasterizationStateCreateInfoMemory(1)
+ ref48cb9fad := (*C.VkPipelineRasterizationStateCreateInfo)(mem48cb9fad)
+ allocs48cb9fad := new(cgoAllocMap)
+ allocs48cb9fad.Add(mem48cb9fad)
+
+ var csType_allocs *cgoAllocMap
+ ref48cb9fad.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs48cb9fad.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref48cb9fad.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs48cb9fad.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref48cb9fad.flags, cflags_allocs = (C.VkPipelineRasterizationStateCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocs48cb9fad.Borrow(cflags_allocs)
+
+ var cdepthClampEnable_allocs *cgoAllocMap
+ ref48cb9fad.depthClampEnable, cdepthClampEnable_allocs = (C.VkBool32)(x.DepthClampEnable), cgoAllocsUnknown
+ allocs48cb9fad.Borrow(cdepthClampEnable_allocs)
+
+ var crasterizerDiscardEnable_allocs *cgoAllocMap
+ ref48cb9fad.rasterizerDiscardEnable, crasterizerDiscardEnable_allocs = (C.VkBool32)(x.RasterizerDiscardEnable), cgoAllocsUnknown
+ allocs48cb9fad.Borrow(crasterizerDiscardEnable_allocs)
+
+ var cpolygonMode_allocs *cgoAllocMap
+ ref48cb9fad.polygonMode, cpolygonMode_allocs = (C.VkPolygonMode)(x.PolygonMode), cgoAllocsUnknown
+ allocs48cb9fad.Borrow(cpolygonMode_allocs)
+
+ var ccullMode_allocs *cgoAllocMap
+ ref48cb9fad.cullMode, ccullMode_allocs = (C.VkCullModeFlags)(x.CullMode), cgoAllocsUnknown
+ allocs48cb9fad.Borrow(ccullMode_allocs)
+
+ var cfrontFace_allocs *cgoAllocMap
+ ref48cb9fad.frontFace, cfrontFace_allocs = (C.VkFrontFace)(x.FrontFace), cgoAllocsUnknown
+ allocs48cb9fad.Borrow(cfrontFace_allocs)
+
+ var cdepthBiasEnable_allocs *cgoAllocMap
+ ref48cb9fad.depthBiasEnable, cdepthBiasEnable_allocs = (C.VkBool32)(x.DepthBiasEnable), cgoAllocsUnknown
+ allocs48cb9fad.Borrow(cdepthBiasEnable_allocs)
+
+ var cdepthBiasConstantFactor_allocs *cgoAllocMap
+ ref48cb9fad.depthBiasConstantFactor, cdepthBiasConstantFactor_allocs = (C.float)(x.DepthBiasConstantFactor), cgoAllocsUnknown
+ allocs48cb9fad.Borrow(cdepthBiasConstantFactor_allocs)
+
+ var cdepthBiasClamp_allocs *cgoAllocMap
+ ref48cb9fad.depthBiasClamp, cdepthBiasClamp_allocs = (C.float)(x.DepthBiasClamp), cgoAllocsUnknown
+ allocs48cb9fad.Borrow(cdepthBiasClamp_allocs)
+
+ var cdepthBiasSlopeFactor_allocs *cgoAllocMap
+ ref48cb9fad.depthBiasSlopeFactor, cdepthBiasSlopeFactor_allocs = (C.float)(x.DepthBiasSlopeFactor), cgoAllocsUnknown
+ allocs48cb9fad.Borrow(cdepthBiasSlopeFactor_allocs)
+
+ var clineWidth_allocs *cgoAllocMap
+ ref48cb9fad.lineWidth, clineWidth_allocs = (C.float)(x.LineWidth), cgoAllocsUnknown
+ allocs48cb9fad.Borrow(clineWidth_allocs)
+
+ x.ref48cb9fad = ref48cb9fad
+ x.allocs48cb9fad = allocs48cb9fad
+ return ref48cb9fad, allocs48cb9fad
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PipelineRasterizationStateCreateInfo) PassValue() (C.VkPipelineRasterizationStateCreateInfo, *cgoAllocMap) {
+ if x.ref48cb9fad != nil {
+ return *x.ref48cb9fad, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PipelineRasterizationStateCreateInfo) Deref() {
+ if x.ref48cb9fad == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref48cb9fad.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref48cb9fad.pNext))
+ x.Flags = (PipelineRasterizationStateCreateFlags)(x.ref48cb9fad.flags)
+ x.DepthClampEnable = (Bool32)(x.ref48cb9fad.depthClampEnable)
+ x.RasterizerDiscardEnable = (Bool32)(x.ref48cb9fad.rasterizerDiscardEnable)
+ x.PolygonMode = (PolygonMode)(x.ref48cb9fad.polygonMode)
+ x.CullMode = (CullModeFlags)(x.ref48cb9fad.cullMode)
+ x.FrontFace = (FrontFace)(x.ref48cb9fad.frontFace)
+ x.DepthBiasEnable = (Bool32)(x.ref48cb9fad.depthBiasEnable)
+ x.DepthBiasConstantFactor = (float32)(x.ref48cb9fad.depthBiasConstantFactor)
+ x.DepthBiasClamp = (float32)(x.ref48cb9fad.depthBiasClamp)
+ x.DepthBiasSlopeFactor = (float32)(x.ref48cb9fad.depthBiasSlopeFactor)
+ x.LineWidth = (float32)(x.ref48cb9fad.lineWidth)
+}
+
+// allocPipelineMultisampleStateCreateInfoMemory allocates memory for type C.VkPipelineMultisampleStateCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPipelineMultisampleStateCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineMultisampleStateCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPipelineMultisampleStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineMultisampleStateCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PipelineMultisampleStateCreateInfo) Ref() *C.VkPipelineMultisampleStateCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refb6538bfb
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PipelineMultisampleStateCreateInfo) Free() {
+ if x != nil && x.allocsb6538bfb != nil {
+ x.allocsb6538bfb.(*cgoAllocMap).Free()
+ x.refb6538bfb = nil
+ }
+}
+
+// NewPipelineMultisampleStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPipelineMultisampleStateCreateInfoRef(ref unsafe.Pointer) *PipelineMultisampleStateCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PipelineMultisampleStateCreateInfo)
+ obj.refb6538bfb = (*C.VkPipelineMultisampleStateCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PipelineMultisampleStateCreateInfo) PassRef() (*C.VkPipelineMultisampleStateCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refb6538bfb != nil {
+ return x.refb6538bfb, nil
+ }
+ memb6538bfb := allocPipelineMultisampleStateCreateInfoMemory(1)
+ refb6538bfb := (*C.VkPipelineMultisampleStateCreateInfo)(memb6538bfb)
+ allocsb6538bfb := new(cgoAllocMap)
+ allocsb6538bfb.Add(memb6538bfb)
+
+ var csType_allocs *cgoAllocMap
+ refb6538bfb.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsb6538bfb.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refb6538bfb.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsb6538bfb.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ refb6538bfb.flags, cflags_allocs = (C.VkPipelineMultisampleStateCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocsb6538bfb.Borrow(cflags_allocs)
+
+ var crasterizationSamples_allocs *cgoAllocMap
+ refb6538bfb.rasterizationSamples, crasterizationSamples_allocs = (C.VkSampleCountFlagBits)(x.RasterizationSamples), cgoAllocsUnknown
+ allocsb6538bfb.Borrow(crasterizationSamples_allocs)
+
+ var csampleShadingEnable_allocs *cgoAllocMap
+ refb6538bfb.sampleShadingEnable, csampleShadingEnable_allocs = (C.VkBool32)(x.SampleShadingEnable), cgoAllocsUnknown
+ allocsb6538bfb.Borrow(csampleShadingEnable_allocs)
+
+ var cminSampleShading_allocs *cgoAllocMap
+ refb6538bfb.minSampleShading, cminSampleShading_allocs = (C.float)(x.MinSampleShading), cgoAllocsUnknown
+ allocsb6538bfb.Borrow(cminSampleShading_allocs)
+
+ var cpSampleMask_allocs *cgoAllocMap
+ refb6538bfb.pSampleMask, cpSampleMask_allocs = (*C.VkSampleMask)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PSampleMask)).Data)), cgoAllocsUnknown
+ allocsb6538bfb.Borrow(cpSampleMask_allocs)
+
+ var calphaToCoverageEnable_allocs *cgoAllocMap
+ refb6538bfb.alphaToCoverageEnable, calphaToCoverageEnable_allocs = (C.VkBool32)(x.AlphaToCoverageEnable), cgoAllocsUnknown
+ allocsb6538bfb.Borrow(calphaToCoverageEnable_allocs)
+
+ var calphaToOneEnable_allocs *cgoAllocMap
+ refb6538bfb.alphaToOneEnable, calphaToOneEnable_allocs = (C.VkBool32)(x.AlphaToOneEnable), cgoAllocsUnknown
+ allocsb6538bfb.Borrow(calphaToOneEnable_allocs)
+
+ x.refb6538bfb = refb6538bfb
+ x.allocsb6538bfb = allocsb6538bfb
+ return refb6538bfb, allocsb6538bfb
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PipelineMultisampleStateCreateInfo) PassValue() (C.VkPipelineMultisampleStateCreateInfo, *cgoAllocMap) {
+ if x.refb6538bfb != nil {
+ return *x.refb6538bfb, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PipelineMultisampleStateCreateInfo) Deref() {
+ if x.refb6538bfb == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refb6538bfb.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb6538bfb.pNext))
+ x.Flags = (PipelineMultisampleStateCreateFlags)(x.refb6538bfb.flags)
+ x.RasterizationSamples = (SampleCountFlagBits)(x.refb6538bfb.rasterizationSamples)
+ x.SampleShadingEnable = (Bool32)(x.refb6538bfb.sampleShadingEnable)
+ x.MinSampleShading = (float32)(x.refb6538bfb.minSampleShading)
+ hxf3b8dbd := (*sliceHeader)(unsafe.Pointer(&x.PSampleMask))
+ hxf3b8dbd.Data = unsafe.Pointer(x.refb6538bfb.pSampleMask)
+ hxf3b8dbd.Cap = 0x7fffffff
+ // hxf3b8dbd.Len = ?
+
+ x.AlphaToCoverageEnable = (Bool32)(x.refb6538bfb.alphaToCoverageEnable)
+ x.AlphaToOneEnable = (Bool32)(x.refb6538bfb.alphaToOneEnable)
+}
+
+// allocStencilOpStateMemory allocates memory for type C.VkStencilOpState in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocStencilOpStateMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfStencilOpStateValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfStencilOpStateValue = unsafe.Sizeof([1]C.VkStencilOpState{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *StencilOpState) Ref() *C.VkStencilOpState {
+ if x == nil {
+ return nil
+ }
+ return x.ref28886871
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *StencilOpState) Free() {
+ if x != nil && x.allocs28886871 != nil {
+ x.allocs28886871.(*cgoAllocMap).Free()
+ x.ref28886871 = nil
+ }
+}
+
+// NewStencilOpStateRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewStencilOpStateRef(ref unsafe.Pointer) *StencilOpState {
+ if ref == nil {
+ return nil
+ }
+ obj := new(StencilOpState)
+ obj.ref28886871 = (*C.VkStencilOpState)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *StencilOpState) PassRef() (*C.VkStencilOpState, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref28886871 != nil {
+ return x.ref28886871, nil
+ }
+ mem28886871 := allocStencilOpStateMemory(1)
+ ref28886871 := (*C.VkStencilOpState)(mem28886871)
+ allocs28886871 := new(cgoAllocMap)
+ allocs28886871.Add(mem28886871)
+
+ var cfailOp_allocs *cgoAllocMap
+ ref28886871.failOp, cfailOp_allocs = (C.VkStencilOp)(x.FailOp), cgoAllocsUnknown
+ allocs28886871.Borrow(cfailOp_allocs)
+
+ var cpassOp_allocs *cgoAllocMap
+ ref28886871.passOp, cpassOp_allocs = (C.VkStencilOp)(x.PassOp), cgoAllocsUnknown
+ allocs28886871.Borrow(cpassOp_allocs)
+
+ var cdepthFailOp_allocs *cgoAllocMap
+ ref28886871.depthFailOp, cdepthFailOp_allocs = (C.VkStencilOp)(x.DepthFailOp), cgoAllocsUnknown
+ allocs28886871.Borrow(cdepthFailOp_allocs)
+
+ var ccompareOp_allocs *cgoAllocMap
+ ref28886871.compareOp, ccompareOp_allocs = (C.VkCompareOp)(x.CompareOp), cgoAllocsUnknown
+ allocs28886871.Borrow(ccompareOp_allocs)
+
+ var ccompareMask_allocs *cgoAllocMap
+ ref28886871.compareMask, ccompareMask_allocs = (C.uint32_t)(x.CompareMask), cgoAllocsUnknown
+ allocs28886871.Borrow(ccompareMask_allocs)
+
+ var cwriteMask_allocs *cgoAllocMap
+ ref28886871.writeMask, cwriteMask_allocs = (C.uint32_t)(x.WriteMask), cgoAllocsUnknown
+ allocs28886871.Borrow(cwriteMask_allocs)
+
+ var creference_allocs *cgoAllocMap
+ ref28886871.reference, creference_allocs = (C.uint32_t)(x.Reference), cgoAllocsUnknown
+ allocs28886871.Borrow(creference_allocs)
+
+ x.ref28886871 = ref28886871
+ x.allocs28886871 = allocs28886871
+ return ref28886871, allocs28886871
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x StencilOpState) PassValue() (C.VkStencilOpState, *cgoAllocMap) {
+ if x.ref28886871 != nil {
+ return *x.ref28886871, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *StencilOpState) Deref() {
+ if x.ref28886871 == nil {
+ return
+ }
+ x.FailOp = (StencilOp)(x.ref28886871.failOp)
+ x.PassOp = (StencilOp)(x.ref28886871.passOp)
+ x.DepthFailOp = (StencilOp)(x.ref28886871.depthFailOp)
+ x.CompareOp = (CompareOp)(x.ref28886871.compareOp)
+ x.CompareMask = (uint32)(x.ref28886871.compareMask)
+ x.WriteMask = (uint32)(x.ref28886871.writeMask)
+ x.Reference = (uint32)(x.ref28886871.reference)
+}
+
+// allocPipelineDepthStencilStateCreateInfoMemory allocates memory for type C.VkPipelineDepthStencilStateCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPipelineDepthStencilStateCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineDepthStencilStateCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPipelineDepthStencilStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineDepthStencilStateCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PipelineDepthStencilStateCreateInfo) Ref() *C.VkPipelineDepthStencilStateCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refeabfcf1
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PipelineDepthStencilStateCreateInfo) Free() {
+ if x != nil && x.allocseabfcf1 != nil {
+ x.allocseabfcf1.(*cgoAllocMap).Free()
+ x.refeabfcf1 = nil
+ }
+}
+
+// NewPipelineDepthStencilStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPipelineDepthStencilStateCreateInfoRef(ref unsafe.Pointer) *PipelineDepthStencilStateCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PipelineDepthStencilStateCreateInfo)
+ obj.refeabfcf1 = (*C.VkPipelineDepthStencilStateCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PipelineDepthStencilStateCreateInfo) PassRef() (*C.VkPipelineDepthStencilStateCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refeabfcf1 != nil {
+ return x.refeabfcf1, nil
+ }
+ memeabfcf1 := allocPipelineDepthStencilStateCreateInfoMemory(1)
+ refeabfcf1 := (*C.VkPipelineDepthStencilStateCreateInfo)(memeabfcf1)
+ allocseabfcf1 := new(cgoAllocMap)
+ allocseabfcf1.Add(memeabfcf1)
+
+ var csType_allocs *cgoAllocMap
+ refeabfcf1.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocseabfcf1.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refeabfcf1.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocseabfcf1.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ refeabfcf1.flags, cflags_allocs = (C.VkPipelineDepthStencilStateCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocseabfcf1.Borrow(cflags_allocs)
+
+ var cdepthTestEnable_allocs *cgoAllocMap
+ refeabfcf1.depthTestEnable, cdepthTestEnable_allocs = (C.VkBool32)(x.DepthTestEnable), cgoAllocsUnknown
+ allocseabfcf1.Borrow(cdepthTestEnable_allocs)
+
+ var cdepthWriteEnable_allocs *cgoAllocMap
+ refeabfcf1.depthWriteEnable, cdepthWriteEnable_allocs = (C.VkBool32)(x.DepthWriteEnable), cgoAllocsUnknown
+ allocseabfcf1.Borrow(cdepthWriteEnable_allocs)
+
+ var cdepthCompareOp_allocs *cgoAllocMap
+ refeabfcf1.depthCompareOp, cdepthCompareOp_allocs = (C.VkCompareOp)(x.DepthCompareOp), cgoAllocsUnknown
+ allocseabfcf1.Borrow(cdepthCompareOp_allocs)
+
+ var cdepthBoundsTestEnable_allocs *cgoAllocMap
+ refeabfcf1.depthBoundsTestEnable, cdepthBoundsTestEnable_allocs = (C.VkBool32)(x.DepthBoundsTestEnable), cgoAllocsUnknown
+ allocseabfcf1.Borrow(cdepthBoundsTestEnable_allocs)
+
+ var cstencilTestEnable_allocs *cgoAllocMap
+ refeabfcf1.stencilTestEnable, cstencilTestEnable_allocs = (C.VkBool32)(x.StencilTestEnable), cgoAllocsUnknown
+ allocseabfcf1.Borrow(cstencilTestEnable_allocs)
+
+ var cfront_allocs *cgoAllocMap
+ refeabfcf1.front, cfront_allocs = x.Front.PassValue()
+ allocseabfcf1.Borrow(cfront_allocs)
+
+ var cback_allocs *cgoAllocMap
+ refeabfcf1.back, cback_allocs = x.Back.PassValue()
+ allocseabfcf1.Borrow(cback_allocs)
+
+ var cminDepthBounds_allocs *cgoAllocMap
+ refeabfcf1.minDepthBounds, cminDepthBounds_allocs = (C.float)(x.MinDepthBounds), cgoAllocsUnknown
+ allocseabfcf1.Borrow(cminDepthBounds_allocs)
+
+ var cmaxDepthBounds_allocs *cgoAllocMap
+ refeabfcf1.maxDepthBounds, cmaxDepthBounds_allocs = (C.float)(x.MaxDepthBounds), cgoAllocsUnknown
+ allocseabfcf1.Borrow(cmaxDepthBounds_allocs)
+
+ x.refeabfcf1 = refeabfcf1
+ x.allocseabfcf1 = allocseabfcf1
+ return refeabfcf1, allocseabfcf1
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PipelineDepthStencilStateCreateInfo) PassValue() (C.VkPipelineDepthStencilStateCreateInfo, *cgoAllocMap) {
+ if x.refeabfcf1 != nil {
+ return *x.refeabfcf1, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PipelineDepthStencilStateCreateInfo) Deref() {
+ if x.refeabfcf1 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refeabfcf1.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refeabfcf1.pNext))
+ x.Flags = (PipelineDepthStencilStateCreateFlags)(x.refeabfcf1.flags)
+ x.DepthTestEnable = (Bool32)(x.refeabfcf1.depthTestEnable)
+ x.DepthWriteEnable = (Bool32)(x.refeabfcf1.depthWriteEnable)
+ x.DepthCompareOp = (CompareOp)(x.refeabfcf1.depthCompareOp)
+ x.DepthBoundsTestEnable = (Bool32)(x.refeabfcf1.depthBoundsTestEnable)
+ x.StencilTestEnable = (Bool32)(x.refeabfcf1.stencilTestEnable)
+ x.Front = *NewStencilOpStateRef(unsafe.Pointer(&x.refeabfcf1.front))
+ x.Back = *NewStencilOpStateRef(unsafe.Pointer(&x.refeabfcf1.back))
+ x.MinDepthBounds = (float32)(x.refeabfcf1.minDepthBounds)
+ x.MaxDepthBounds = (float32)(x.refeabfcf1.maxDepthBounds)
+}
+
+// allocPipelineColorBlendAttachmentStateMemory allocates memory for type C.VkPipelineColorBlendAttachmentState in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPipelineColorBlendAttachmentStateMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineColorBlendAttachmentStateValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPipelineColorBlendAttachmentStateValue = unsafe.Sizeof([1]C.VkPipelineColorBlendAttachmentState{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PipelineColorBlendAttachmentState) Ref() *C.VkPipelineColorBlendAttachmentState {
+ if x == nil {
+ return nil
+ }
+ return x.ref9e889477
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PipelineColorBlendAttachmentState) Free() {
+ if x != nil && x.allocs9e889477 != nil {
+ x.allocs9e889477.(*cgoAllocMap).Free()
+ x.ref9e889477 = nil
+ }
+}
+
+// NewPipelineColorBlendAttachmentStateRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPipelineColorBlendAttachmentStateRef(ref unsafe.Pointer) *PipelineColorBlendAttachmentState {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PipelineColorBlendAttachmentState)
+ obj.ref9e889477 = (*C.VkPipelineColorBlendAttachmentState)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PipelineColorBlendAttachmentState) PassRef() (*C.VkPipelineColorBlendAttachmentState, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref9e889477 != nil {
+ return x.ref9e889477, nil
+ }
+ mem9e889477 := allocPipelineColorBlendAttachmentStateMemory(1)
+ ref9e889477 := (*C.VkPipelineColorBlendAttachmentState)(mem9e889477)
+ allocs9e889477 := new(cgoAllocMap)
+ allocs9e889477.Add(mem9e889477)
+
+ var cblendEnable_allocs *cgoAllocMap
+ ref9e889477.blendEnable, cblendEnable_allocs = (C.VkBool32)(x.BlendEnable), cgoAllocsUnknown
+ allocs9e889477.Borrow(cblendEnable_allocs)
+
+ var csrcColorBlendFactor_allocs *cgoAllocMap
+ ref9e889477.srcColorBlendFactor, csrcColorBlendFactor_allocs = (C.VkBlendFactor)(x.SrcColorBlendFactor), cgoAllocsUnknown
+ allocs9e889477.Borrow(csrcColorBlendFactor_allocs)
+
+ var cdstColorBlendFactor_allocs *cgoAllocMap
+ ref9e889477.dstColorBlendFactor, cdstColorBlendFactor_allocs = (C.VkBlendFactor)(x.DstColorBlendFactor), cgoAllocsUnknown
+ allocs9e889477.Borrow(cdstColorBlendFactor_allocs)
+
+ var ccolorBlendOp_allocs *cgoAllocMap
+ ref9e889477.colorBlendOp, ccolorBlendOp_allocs = (C.VkBlendOp)(x.ColorBlendOp), cgoAllocsUnknown
+ allocs9e889477.Borrow(ccolorBlendOp_allocs)
+
+ var csrcAlphaBlendFactor_allocs *cgoAllocMap
+ ref9e889477.srcAlphaBlendFactor, csrcAlphaBlendFactor_allocs = (C.VkBlendFactor)(x.SrcAlphaBlendFactor), cgoAllocsUnknown
+ allocs9e889477.Borrow(csrcAlphaBlendFactor_allocs)
+
+ var cdstAlphaBlendFactor_allocs *cgoAllocMap
+ ref9e889477.dstAlphaBlendFactor, cdstAlphaBlendFactor_allocs = (C.VkBlendFactor)(x.DstAlphaBlendFactor), cgoAllocsUnknown
+ allocs9e889477.Borrow(cdstAlphaBlendFactor_allocs)
+
+ var calphaBlendOp_allocs *cgoAllocMap
+ ref9e889477.alphaBlendOp, calphaBlendOp_allocs = (C.VkBlendOp)(x.AlphaBlendOp), cgoAllocsUnknown
+ allocs9e889477.Borrow(calphaBlendOp_allocs)
+
+ var ccolorWriteMask_allocs *cgoAllocMap
+ ref9e889477.colorWriteMask, ccolorWriteMask_allocs = (C.VkColorComponentFlags)(x.ColorWriteMask), cgoAllocsUnknown
+ allocs9e889477.Borrow(ccolorWriteMask_allocs)
+
+ x.ref9e889477 = ref9e889477
+ x.allocs9e889477 = allocs9e889477
+ return ref9e889477, allocs9e889477
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PipelineColorBlendAttachmentState) PassValue() (C.VkPipelineColorBlendAttachmentState, *cgoAllocMap) {
+ if x.ref9e889477 != nil {
+ return *x.ref9e889477, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PipelineColorBlendAttachmentState) Deref() {
+ if x.ref9e889477 == nil {
+ return
+ }
+ x.BlendEnable = (Bool32)(x.ref9e889477.blendEnable)
+ x.SrcColorBlendFactor = (BlendFactor)(x.ref9e889477.srcColorBlendFactor)
+ x.DstColorBlendFactor = (BlendFactor)(x.ref9e889477.dstColorBlendFactor)
+ x.ColorBlendOp = (BlendOp)(x.ref9e889477.colorBlendOp)
+ x.SrcAlphaBlendFactor = (BlendFactor)(x.ref9e889477.srcAlphaBlendFactor)
+ x.DstAlphaBlendFactor = (BlendFactor)(x.ref9e889477.dstAlphaBlendFactor)
+ x.AlphaBlendOp = (BlendOp)(x.ref9e889477.alphaBlendOp)
+ x.ColorWriteMask = (ColorComponentFlags)(x.ref9e889477.colorWriteMask)
+}
+
+// allocPipelineColorBlendStateCreateInfoMemory allocates memory for type C.VkPipelineColorBlendStateCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPipelineColorBlendStateCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineColorBlendStateCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPipelineColorBlendStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineColorBlendStateCreateInfo{})
+
+// unpackSPipelineColorBlendAttachmentState transforms a sliced Go data structure into plain C format.
+func unpackSPipelineColorBlendAttachmentState(x []PipelineColorBlendAttachmentState) (unpacked *C.VkPipelineColorBlendAttachmentState, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkPipelineColorBlendAttachmentState) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocPipelineColorBlendAttachmentStateMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkPipelineColorBlendAttachmentState)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkPipelineColorBlendAttachmentState)(h.Data)
+ return
+}
+
+// packSPipelineColorBlendAttachmentState reads sliced Go data structure out from plain C format.
+func packSPipelineColorBlendAttachmentState(v []PipelineColorBlendAttachmentState, ptr0 *C.VkPipelineColorBlendAttachmentState) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfPipelineColorBlendAttachmentStateValue]C.VkPipelineColorBlendAttachmentState)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewPipelineColorBlendAttachmentStateRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PipelineColorBlendStateCreateInfo) Ref() *C.VkPipelineColorBlendStateCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref2a9b490b
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PipelineColorBlendStateCreateInfo) Free() {
+ if x != nil && x.allocs2a9b490b != nil {
+ x.allocs2a9b490b.(*cgoAllocMap).Free()
+ x.ref2a9b490b = nil
+ }
+}
+
+// NewPipelineColorBlendStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPipelineColorBlendStateCreateInfoRef(ref unsafe.Pointer) *PipelineColorBlendStateCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PipelineColorBlendStateCreateInfo)
+ obj.ref2a9b490b = (*C.VkPipelineColorBlendStateCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PipelineColorBlendStateCreateInfo) PassRef() (*C.VkPipelineColorBlendStateCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref2a9b490b != nil {
+ return x.ref2a9b490b, nil
+ }
+ mem2a9b490b := allocPipelineColorBlendStateCreateInfoMemory(1)
+ ref2a9b490b := (*C.VkPipelineColorBlendStateCreateInfo)(mem2a9b490b)
+ allocs2a9b490b := new(cgoAllocMap)
+ allocs2a9b490b.Add(mem2a9b490b)
+
+ var csType_allocs *cgoAllocMap
+ ref2a9b490b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs2a9b490b.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref2a9b490b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs2a9b490b.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref2a9b490b.flags, cflags_allocs = (C.VkPipelineColorBlendStateCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocs2a9b490b.Borrow(cflags_allocs)
+
+ var clogicOpEnable_allocs *cgoAllocMap
+ ref2a9b490b.logicOpEnable, clogicOpEnable_allocs = (C.VkBool32)(x.LogicOpEnable), cgoAllocsUnknown
+ allocs2a9b490b.Borrow(clogicOpEnable_allocs)
+
+ var clogicOp_allocs *cgoAllocMap
+ ref2a9b490b.logicOp, clogicOp_allocs = (C.VkLogicOp)(x.LogicOp), cgoAllocsUnknown
+ allocs2a9b490b.Borrow(clogicOp_allocs)
+
+ var cattachmentCount_allocs *cgoAllocMap
+ ref2a9b490b.attachmentCount, cattachmentCount_allocs = (C.uint32_t)(x.AttachmentCount), cgoAllocsUnknown
+ allocs2a9b490b.Borrow(cattachmentCount_allocs)
+
+ var cpAttachments_allocs *cgoAllocMap
+ ref2a9b490b.pAttachments, cpAttachments_allocs = unpackSPipelineColorBlendAttachmentState(x.PAttachments)
+ allocs2a9b490b.Borrow(cpAttachments_allocs)
+
+ var cblendConstants_allocs *cgoAllocMap
+ ref2a9b490b.blendConstants, cblendConstants_allocs = *(*[4]C.float)(unsafe.Pointer(&x.BlendConstants)), cgoAllocsUnknown
+ allocs2a9b490b.Borrow(cblendConstants_allocs)
+
+ x.ref2a9b490b = ref2a9b490b
+ x.allocs2a9b490b = allocs2a9b490b
+ return ref2a9b490b, allocs2a9b490b
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PipelineColorBlendStateCreateInfo) PassValue() (C.VkPipelineColorBlendStateCreateInfo, *cgoAllocMap) {
+ if x.ref2a9b490b != nil {
+ return *x.ref2a9b490b, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PipelineColorBlendStateCreateInfo) Deref() {
+ if x.ref2a9b490b == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref2a9b490b.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref2a9b490b.pNext))
+ x.Flags = (PipelineColorBlendStateCreateFlags)(x.ref2a9b490b.flags)
+ x.LogicOpEnable = (Bool32)(x.ref2a9b490b.logicOpEnable)
+ x.LogicOp = (LogicOp)(x.ref2a9b490b.logicOp)
+ x.AttachmentCount = (uint32)(x.ref2a9b490b.attachmentCount)
+ packSPipelineColorBlendAttachmentState(x.PAttachments, x.ref2a9b490b.pAttachments)
+ x.BlendConstants = *(*[4]float32)(unsafe.Pointer(&x.ref2a9b490b.blendConstants))
+}
+
+// allocPipelineDynamicStateCreateInfoMemory allocates memory for type C.VkPipelineDynamicStateCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPipelineDynamicStateCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineDynamicStateCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPipelineDynamicStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineDynamicStateCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PipelineDynamicStateCreateInfo) Ref() *C.VkPipelineDynamicStateCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref246d7bc8
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PipelineDynamicStateCreateInfo) Free() {
+ if x != nil && x.allocs246d7bc8 != nil {
+ x.allocs246d7bc8.(*cgoAllocMap).Free()
+ x.ref246d7bc8 = nil
+ }
+}
+
+// NewPipelineDynamicStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPipelineDynamicStateCreateInfoRef(ref unsafe.Pointer) *PipelineDynamicStateCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PipelineDynamicStateCreateInfo)
+ obj.ref246d7bc8 = (*C.VkPipelineDynamicStateCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PipelineDynamicStateCreateInfo) PassRef() (*C.VkPipelineDynamicStateCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref246d7bc8 != nil {
+ return x.ref246d7bc8, nil
+ }
+ mem246d7bc8 := allocPipelineDynamicStateCreateInfoMemory(1)
+ ref246d7bc8 := (*C.VkPipelineDynamicStateCreateInfo)(mem246d7bc8)
+ allocs246d7bc8 := new(cgoAllocMap)
+ allocs246d7bc8.Add(mem246d7bc8)
+
+ var csType_allocs *cgoAllocMap
+ ref246d7bc8.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs246d7bc8.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref246d7bc8.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs246d7bc8.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref246d7bc8.flags, cflags_allocs = (C.VkPipelineDynamicStateCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocs246d7bc8.Borrow(cflags_allocs)
+
+ var cdynamicStateCount_allocs *cgoAllocMap
+ ref246d7bc8.dynamicStateCount, cdynamicStateCount_allocs = (C.uint32_t)(x.DynamicStateCount), cgoAllocsUnknown
+ allocs246d7bc8.Borrow(cdynamicStateCount_allocs)
+
+ var cpDynamicStates_allocs *cgoAllocMap
+ ref246d7bc8.pDynamicStates, cpDynamicStates_allocs = (*C.VkDynamicState)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PDynamicStates)).Data)), cgoAllocsUnknown
+ allocs246d7bc8.Borrow(cpDynamicStates_allocs)
+
+ x.ref246d7bc8 = ref246d7bc8
+ x.allocs246d7bc8 = allocs246d7bc8
+ return ref246d7bc8, allocs246d7bc8
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PipelineDynamicStateCreateInfo) PassValue() (C.VkPipelineDynamicStateCreateInfo, *cgoAllocMap) {
+ if x.ref246d7bc8 != nil {
+ return *x.ref246d7bc8, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PipelineDynamicStateCreateInfo) Deref() {
+ if x.ref246d7bc8 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref246d7bc8.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref246d7bc8.pNext))
+ x.Flags = (PipelineDynamicStateCreateFlags)(x.ref246d7bc8.flags)
+ x.DynamicStateCount = (uint32)(x.ref246d7bc8.dynamicStateCount)
+ hxf7a6dff := (*sliceHeader)(unsafe.Pointer(&x.PDynamicStates))
+ hxf7a6dff.Data = unsafe.Pointer(x.ref246d7bc8.pDynamicStates)
+ hxf7a6dff.Cap = 0x7fffffff
+ // hxf7a6dff.Len = ?
+
+}
+
+// allocGraphicsPipelineCreateInfoMemory allocates memory for type C.VkGraphicsPipelineCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocGraphicsPipelineCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfGraphicsPipelineCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfGraphicsPipelineCreateInfoValue = unsafe.Sizeof([1]C.VkGraphicsPipelineCreateInfo{})
+
+// unpackSPipelineShaderStageCreateInfo transforms a sliced Go data structure into plain C format.
+func unpackSPipelineShaderStageCreateInfo(x []PipelineShaderStageCreateInfo) (unpacked *C.VkPipelineShaderStageCreateInfo, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkPipelineShaderStageCreateInfo) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocPipelineShaderStageCreateInfoMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkPipelineShaderStageCreateInfo)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkPipelineShaderStageCreateInfo)(h.Data)
+ return
+}
+
+// packSPipelineShaderStageCreateInfo reads sliced Go data structure out from plain C format.
+func packSPipelineShaderStageCreateInfo(v []PipelineShaderStageCreateInfo, ptr0 *C.VkPipelineShaderStageCreateInfo) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfPipelineShaderStageCreateInfoValue]C.VkPipelineShaderStageCreateInfo)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewPipelineShaderStageCreateInfoRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *GraphicsPipelineCreateInfo) Ref() *C.VkGraphicsPipelineCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref178f88b6
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *GraphicsPipelineCreateInfo) Free() {
+ if x != nil && x.allocs178f88b6 != nil {
+ x.allocs178f88b6.(*cgoAllocMap).Free()
+ x.ref178f88b6 = nil
+ }
+}
+
+// NewGraphicsPipelineCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewGraphicsPipelineCreateInfoRef(ref unsafe.Pointer) *GraphicsPipelineCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(GraphicsPipelineCreateInfo)
+ obj.ref178f88b6 = (*C.VkGraphicsPipelineCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *GraphicsPipelineCreateInfo) PassRef() (*C.VkGraphicsPipelineCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref178f88b6 != nil {
+ return x.ref178f88b6, nil
+ }
+ mem178f88b6 := allocGraphicsPipelineCreateInfoMemory(1)
+ ref178f88b6 := (*C.VkGraphicsPipelineCreateInfo)(mem178f88b6)
+ allocs178f88b6 := new(cgoAllocMap)
+ allocs178f88b6.Add(mem178f88b6)
+
+ var csType_allocs *cgoAllocMap
+ ref178f88b6.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs178f88b6.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref178f88b6.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs178f88b6.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref178f88b6.flags, cflags_allocs = (C.VkPipelineCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocs178f88b6.Borrow(cflags_allocs)
+
+ var cstageCount_allocs *cgoAllocMap
+ ref178f88b6.stageCount, cstageCount_allocs = (C.uint32_t)(x.StageCount), cgoAllocsUnknown
+ allocs178f88b6.Borrow(cstageCount_allocs)
+
+ var cpStages_allocs *cgoAllocMap
+ ref178f88b6.pStages, cpStages_allocs = unpackSPipelineShaderStageCreateInfo(x.PStages)
+ allocs178f88b6.Borrow(cpStages_allocs)
+
+ var cpVertexInputState_allocs *cgoAllocMap
+ ref178f88b6.pVertexInputState, cpVertexInputState_allocs = x.PVertexInputState.PassRef()
+ allocs178f88b6.Borrow(cpVertexInputState_allocs)
+
+ var cpInputAssemblyState_allocs *cgoAllocMap
+ ref178f88b6.pInputAssemblyState, cpInputAssemblyState_allocs = x.PInputAssemblyState.PassRef()
+ allocs178f88b6.Borrow(cpInputAssemblyState_allocs)
+
+ var cpTessellationState_allocs *cgoAllocMap
+ ref178f88b6.pTessellationState, cpTessellationState_allocs = x.PTessellationState.PassRef()
+ allocs178f88b6.Borrow(cpTessellationState_allocs)
+
+ var cpViewportState_allocs *cgoAllocMap
+ ref178f88b6.pViewportState, cpViewportState_allocs = x.PViewportState.PassRef()
+ allocs178f88b6.Borrow(cpViewportState_allocs)
+
+ var cpRasterizationState_allocs *cgoAllocMap
+ ref178f88b6.pRasterizationState, cpRasterizationState_allocs = x.PRasterizationState.PassRef()
+ allocs178f88b6.Borrow(cpRasterizationState_allocs)
+
+ var cpMultisampleState_allocs *cgoAllocMap
+ ref178f88b6.pMultisampleState, cpMultisampleState_allocs = x.PMultisampleState.PassRef()
+ allocs178f88b6.Borrow(cpMultisampleState_allocs)
+
+ var cpDepthStencilState_allocs *cgoAllocMap
+ ref178f88b6.pDepthStencilState, cpDepthStencilState_allocs = x.PDepthStencilState.PassRef()
+ allocs178f88b6.Borrow(cpDepthStencilState_allocs)
+
+ var cpColorBlendState_allocs *cgoAllocMap
+ ref178f88b6.pColorBlendState, cpColorBlendState_allocs = x.PColorBlendState.PassRef()
+ allocs178f88b6.Borrow(cpColorBlendState_allocs)
+
+ var cpDynamicState_allocs *cgoAllocMap
+ ref178f88b6.pDynamicState, cpDynamicState_allocs = x.PDynamicState.PassRef()
+ allocs178f88b6.Borrow(cpDynamicState_allocs)
+
+ var clayout_allocs *cgoAllocMap
+ ref178f88b6.layout, clayout_allocs = *(*C.VkPipelineLayout)(unsafe.Pointer(&x.Layout)), cgoAllocsUnknown
+ allocs178f88b6.Borrow(clayout_allocs)
+
+ var crenderPass_allocs *cgoAllocMap
+ ref178f88b6.renderPass, crenderPass_allocs = *(*C.VkRenderPass)(unsafe.Pointer(&x.RenderPass)), cgoAllocsUnknown
+ allocs178f88b6.Borrow(crenderPass_allocs)
+
+ var csubpass_allocs *cgoAllocMap
+ ref178f88b6.subpass, csubpass_allocs = (C.uint32_t)(x.Subpass), cgoAllocsUnknown
+ allocs178f88b6.Borrow(csubpass_allocs)
+
+ var cbasePipelineHandle_allocs *cgoAllocMap
+ ref178f88b6.basePipelineHandle, cbasePipelineHandle_allocs = *(*C.VkPipeline)(unsafe.Pointer(&x.BasePipelineHandle)), cgoAllocsUnknown
+ allocs178f88b6.Borrow(cbasePipelineHandle_allocs)
+
+ var cbasePipelineIndex_allocs *cgoAllocMap
+ ref178f88b6.basePipelineIndex, cbasePipelineIndex_allocs = (C.int32_t)(x.BasePipelineIndex), cgoAllocsUnknown
+ allocs178f88b6.Borrow(cbasePipelineIndex_allocs)
+
+ x.ref178f88b6 = ref178f88b6
+ x.allocs178f88b6 = allocs178f88b6
+ return ref178f88b6, allocs178f88b6
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x GraphicsPipelineCreateInfo) PassValue() (C.VkGraphicsPipelineCreateInfo, *cgoAllocMap) {
+ if x.ref178f88b6 != nil {
+ return *x.ref178f88b6, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *GraphicsPipelineCreateInfo) Deref() {
+ if x.ref178f88b6 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref178f88b6.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref178f88b6.pNext))
+ x.Flags = (PipelineCreateFlags)(x.ref178f88b6.flags)
+ x.StageCount = (uint32)(x.ref178f88b6.stageCount)
+ packSPipelineShaderStageCreateInfo(x.PStages, x.ref178f88b6.pStages)
+ x.PVertexInputState = NewPipelineVertexInputStateCreateInfoRef(unsafe.Pointer(x.ref178f88b6.pVertexInputState))
+ x.PInputAssemblyState = NewPipelineInputAssemblyStateCreateInfoRef(unsafe.Pointer(x.ref178f88b6.pInputAssemblyState))
+ x.PTessellationState = NewPipelineTessellationStateCreateInfoRef(unsafe.Pointer(x.ref178f88b6.pTessellationState))
+ x.PViewportState = NewPipelineViewportStateCreateInfoRef(unsafe.Pointer(x.ref178f88b6.pViewportState))
+ x.PRasterizationState = NewPipelineRasterizationStateCreateInfoRef(unsafe.Pointer(x.ref178f88b6.pRasterizationState))
+ x.PMultisampleState = NewPipelineMultisampleStateCreateInfoRef(unsafe.Pointer(x.ref178f88b6.pMultisampleState))
+ x.PDepthStencilState = NewPipelineDepthStencilStateCreateInfoRef(unsafe.Pointer(x.ref178f88b6.pDepthStencilState))
+ x.PColorBlendState = NewPipelineColorBlendStateCreateInfoRef(unsafe.Pointer(x.ref178f88b6.pColorBlendState))
+ x.PDynamicState = NewPipelineDynamicStateCreateInfoRef(unsafe.Pointer(x.ref178f88b6.pDynamicState))
+ x.Layout = *(*PipelineLayout)(unsafe.Pointer(&x.ref178f88b6.layout))
+ x.RenderPass = *(*RenderPass)(unsafe.Pointer(&x.ref178f88b6.renderPass))
+ x.Subpass = (uint32)(x.ref178f88b6.subpass)
+ x.BasePipelineHandle = *(*Pipeline)(unsafe.Pointer(&x.ref178f88b6.basePipelineHandle))
+ x.BasePipelineIndex = (int32)(x.ref178f88b6.basePipelineIndex)
+}
+
+// allocPushConstantRangeMemory allocates memory for type C.VkPushConstantRange in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPushConstantRangeMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPushConstantRangeValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPushConstantRangeValue = unsafe.Sizeof([1]C.VkPushConstantRange{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PushConstantRange) Ref() *C.VkPushConstantRange {
+ if x == nil {
+ return nil
+ }
+ return x.ref6f025856
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PushConstantRange) Free() {
+ if x != nil && x.allocs6f025856 != nil {
+ x.allocs6f025856.(*cgoAllocMap).Free()
+ x.ref6f025856 = nil
+ }
+}
+
+// NewPushConstantRangeRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPushConstantRangeRef(ref unsafe.Pointer) *PushConstantRange {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PushConstantRange)
+ obj.ref6f025856 = (*C.VkPushConstantRange)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PushConstantRange) PassRef() (*C.VkPushConstantRange, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref6f025856 != nil {
+ return x.ref6f025856, nil
+ }
+ mem6f025856 := allocPushConstantRangeMemory(1)
+ ref6f025856 := (*C.VkPushConstantRange)(mem6f025856)
+ allocs6f025856 := new(cgoAllocMap)
+ allocs6f025856.Add(mem6f025856)
+
+ var cstageFlags_allocs *cgoAllocMap
+ ref6f025856.stageFlags, cstageFlags_allocs = (C.VkShaderStageFlags)(x.StageFlags), cgoAllocsUnknown
+ allocs6f025856.Borrow(cstageFlags_allocs)
+
+ var coffset_allocs *cgoAllocMap
+ ref6f025856.offset, coffset_allocs = (C.uint32_t)(x.Offset), cgoAllocsUnknown
+ allocs6f025856.Borrow(coffset_allocs)
+
+ var csize_allocs *cgoAllocMap
+ ref6f025856.size, csize_allocs = (C.uint32_t)(x.Size), cgoAllocsUnknown
+ allocs6f025856.Borrow(csize_allocs)
+
+ x.ref6f025856 = ref6f025856
+ x.allocs6f025856 = allocs6f025856
+ return ref6f025856, allocs6f025856
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PushConstantRange) PassValue() (C.VkPushConstantRange, *cgoAllocMap) {
+ if x.ref6f025856 != nil {
+ return *x.ref6f025856, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PushConstantRange) Deref() {
+ if x.ref6f025856 == nil {
+ return
+ }
+ x.StageFlags = (ShaderStageFlags)(x.ref6f025856.stageFlags)
+ x.Offset = (uint32)(x.ref6f025856.offset)
+ x.Size = (uint32)(x.ref6f025856.size)
+}
+
+// allocPipelineLayoutCreateInfoMemory allocates memory for type C.VkPipelineLayoutCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPipelineLayoutCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineLayoutCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPipelineLayoutCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineLayoutCreateInfo{})
+
+// unpackSPushConstantRange transforms a sliced Go data structure into plain C format.
+func unpackSPushConstantRange(x []PushConstantRange) (unpacked *C.VkPushConstantRange, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkPushConstantRange) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocPushConstantRangeMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkPushConstantRange)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkPushConstantRange)(h.Data)
+ return
+}
+
+// packSPushConstantRange reads sliced Go data structure out from plain C format.
+func packSPushConstantRange(v []PushConstantRange, ptr0 *C.VkPushConstantRange) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfPushConstantRangeValue]C.VkPushConstantRange)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewPushConstantRangeRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PipelineLayoutCreateInfo) Ref() *C.VkPipelineLayoutCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref64cc4eed
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PipelineLayoutCreateInfo) Free() {
+ if x != nil && x.allocs64cc4eed != nil {
+ x.allocs64cc4eed.(*cgoAllocMap).Free()
+ x.ref64cc4eed = nil
+ }
+}
+
+// NewPipelineLayoutCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPipelineLayoutCreateInfoRef(ref unsafe.Pointer) *PipelineLayoutCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PipelineLayoutCreateInfo)
+ obj.ref64cc4eed = (*C.VkPipelineLayoutCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PipelineLayoutCreateInfo) PassRef() (*C.VkPipelineLayoutCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref64cc4eed != nil {
+ return x.ref64cc4eed, nil
+ }
+ mem64cc4eed := allocPipelineLayoutCreateInfoMemory(1)
+ ref64cc4eed := (*C.VkPipelineLayoutCreateInfo)(mem64cc4eed)
+ allocs64cc4eed := new(cgoAllocMap)
+ allocs64cc4eed.Add(mem64cc4eed)
+
+ var csType_allocs *cgoAllocMap
+ ref64cc4eed.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs64cc4eed.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref64cc4eed.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs64cc4eed.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref64cc4eed.flags, cflags_allocs = (C.VkPipelineLayoutCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocs64cc4eed.Borrow(cflags_allocs)
+
+ var csetLayoutCount_allocs *cgoAllocMap
+ ref64cc4eed.setLayoutCount, csetLayoutCount_allocs = (C.uint32_t)(x.SetLayoutCount), cgoAllocsUnknown
+ allocs64cc4eed.Borrow(csetLayoutCount_allocs)
+
+ var cpSetLayouts_allocs *cgoAllocMap
+ ref64cc4eed.pSetLayouts, cpSetLayouts_allocs = (*C.VkDescriptorSetLayout)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PSetLayouts)).Data)), cgoAllocsUnknown
+ allocs64cc4eed.Borrow(cpSetLayouts_allocs)
+
+ var cpushConstantRangeCount_allocs *cgoAllocMap
+ ref64cc4eed.pushConstantRangeCount, cpushConstantRangeCount_allocs = (C.uint32_t)(x.PushConstantRangeCount), cgoAllocsUnknown
+ allocs64cc4eed.Borrow(cpushConstantRangeCount_allocs)
+
+ var cpPushConstantRanges_allocs *cgoAllocMap
+ ref64cc4eed.pPushConstantRanges, cpPushConstantRanges_allocs = unpackSPushConstantRange(x.PPushConstantRanges)
+ allocs64cc4eed.Borrow(cpPushConstantRanges_allocs)
+
+ x.ref64cc4eed = ref64cc4eed
+ x.allocs64cc4eed = allocs64cc4eed
+ return ref64cc4eed, allocs64cc4eed
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PipelineLayoutCreateInfo) PassValue() (C.VkPipelineLayoutCreateInfo, *cgoAllocMap) {
+ if x.ref64cc4eed != nil {
+ return *x.ref64cc4eed, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PipelineLayoutCreateInfo) Deref() {
+ if x.ref64cc4eed == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref64cc4eed.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref64cc4eed.pNext))
+ x.Flags = (PipelineLayoutCreateFlags)(x.ref64cc4eed.flags)
+ x.SetLayoutCount = (uint32)(x.ref64cc4eed.setLayoutCount)
+ hxfe48d67 := (*sliceHeader)(unsafe.Pointer(&x.PSetLayouts))
+ hxfe48d67.Data = unsafe.Pointer(x.ref64cc4eed.pSetLayouts)
+ hxfe48d67.Cap = 0x7fffffff
+ // hxfe48d67.Len = ?
+
+ x.PushConstantRangeCount = (uint32)(x.ref64cc4eed.pushConstantRangeCount)
+ packSPushConstantRange(x.PPushConstantRanges, x.ref64cc4eed.pPushConstantRanges)
+}
+
+// allocSamplerCreateInfoMemory allocates memory for type C.VkSamplerCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSamplerCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSamplerCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSamplerCreateInfoValue = unsafe.Sizeof([1]C.VkSamplerCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SamplerCreateInfo) Ref() *C.VkSamplerCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refce034abf
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SamplerCreateInfo) Free() {
+ if x != nil && x.allocsce034abf != nil {
+ x.allocsce034abf.(*cgoAllocMap).Free()
+ x.refce034abf = nil
+ }
+}
+
+// NewSamplerCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSamplerCreateInfoRef(ref unsafe.Pointer) *SamplerCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SamplerCreateInfo)
+ obj.refce034abf = (*C.VkSamplerCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SamplerCreateInfo) PassRef() (*C.VkSamplerCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refce034abf != nil {
+ return x.refce034abf, nil
+ }
+ memce034abf := allocSamplerCreateInfoMemory(1)
+ refce034abf := (*C.VkSamplerCreateInfo)(memce034abf)
+ allocsce034abf := new(cgoAllocMap)
+ allocsce034abf.Add(memce034abf)
+
+ var csType_allocs *cgoAllocMap
+ refce034abf.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsce034abf.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refce034abf.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsce034abf.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ refce034abf.flags, cflags_allocs = (C.VkSamplerCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocsce034abf.Borrow(cflags_allocs)
+
+ var cmagFilter_allocs *cgoAllocMap
+ refce034abf.magFilter, cmagFilter_allocs = (C.VkFilter)(x.MagFilter), cgoAllocsUnknown
+ allocsce034abf.Borrow(cmagFilter_allocs)
+
+ var cminFilter_allocs *cgoAllocMap
+ refce034abf.minFilter, cminFilter_allocs = (C.VkFilter)(x.MinFilter), cgoAllocsUnknown
+ allocsce034abf.Borrow(cminFilter_allocs)
+
+ var cmipmapMode_allocs *cgoAllocMap
+ refce034abf.mipmapMode, cmipmapMode_allocs = (C.VkSamplerMipmapMode)(x.MipmapMode), cgoAllocsUnknown
+ allocsce034abf.Borrow(cmipmapMode_allocs)
+
+ var caddressModeU_allocs *cgoAllocMap
+ refce034abf.addressModeU, caddressModeU_allocs = (C.VkSamplerAddressMode)(x.AddressModeU), cgoAllocsUnknown
+ allocsce034abf.Borrow(caddressModeU_allocs)
+
+ var caddressModeV_allocs *cgoAllocMap
+ refce034abf.addressModeV, caddressModeV_allocs = (C.VkSamplerAddressMode)(x.AddressModeV), cgoAllocsUnknown
+ allocsce034abf.Borrow(caddressModeV_allocs)
+
+ var caddressModeW_allocs *cgoAllocMap
+ refce034abf.addressModeW, caddressModeW_allocs = (C.VkSamplerAddressMode)(x.AddressModeW), cgoAllocsUnknown
+ allocsce034abf.Borrow(caddressModeW_allocs)
+
+ var cmipLodBias_allocs *cgoAllocMap
+ refce034abf.mipLodBias, cmipLodBias_allocs = (C.float)(x.MipLodBias), cgoAllocsUnknown
+ allocsce034abf.Borrow(cmipLodBias_allocs)
+
+ var canisotropyEnable_allocs *cgoAllocMap
+ refce034abf.anisotropyEnable, canisotropyEnable_allocs = (C.VkBool32)(x.AnisotropyEnable), cgoAllocsUnknown
+ allocsce034abf.Borrow(canisotropyEnable_allocs)
+
+ var cmaxAnisotropy_allocs *cgoAllocMap
+ refce034abf.maxAnisotropy, cmaxAnisotropy_allocs = (C.float)(x.MaxAnisotropy), cgoAllocsUnknown
+ allocsce034abf.Borrow(cmaxAnisotropy_allocs)
+
+ var ccompareEnable_allocs *cgoAllocMap
+ refce034abf.compareEnable, ccompareEnable_allocs = (C.VkBool32)(x.CompareEnable), cgoAllocsUnknown
+ allocsce034abf.Borrow(ccompareEnable_allocs)
+
+ var ccompareOp_allocs *cgoAllocMap
+ refce034abf.compareOp, ccompareOp_allocs = (C.VkCompareOp)(x.CompareOp), cgoAllocsUnknown
+ allocsce034abf.Borrow(ccompareOp_allocs)
+
+ var cminLod_allocs *cgoAllocMap
+ refce034abf.minLod, cminLod_allocs = (C.float)(x.MinLod), cgoAllocsUnknown
+ allocsce034abf.Borrow(cminLod_allocs)
+
+ var cmaxLod_allocs *cgoAllocMap
+ refce034abf.maxLod, cmaxLod_allocs = (C.float)(x.MaxLod), cgoAllocsUnknown
+ allocsce034abf.Borrow(cmaxLod_allocs)
+
+ var cborderColor_allocs *cgoAllocMap
+ refce034abf.borderColor, cborderColor_allocs = (C.VkBorderColor)(x.BorderColor), cgoAllocsUnknown
+ allocsce034abf.Borrow(cborderColor_allocs)
+
+ var cunnormalizedCoordinates_allocs *cgoAllocMap
+ refce034abf.unnormalizedCoordinates, cunnormalizedCoordinates_allocs = (C.VkBool32)(x.UnnormalizedCoordinates), cgoAllocsUnknown
+ allocsce034abf.Borrow(cunnormalizedCoordinates_allocs)
+
+ x.refce034abf = refce034abf
+ x.allocsce034abf = allocsce034abf
+ return refce034abf, allocsce034abf
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SamplerCreateInfo) PassValue() (C.VkSamplerCreateInfo, *cgoAllocMap) {
+ if x.refce034abf != nil {
+ return *x.refce034abf, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SamplerCreateInfo) Deref() {
+ if x.refce034abf == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refce034abf.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refce034abf.pNext))
+ x.Flags = (SamplerCreateFlags)(x.refce034abf.flags)
+ x.MagFilter = (Filter)(x.refce034abf.magFilter)
+ x.MinFilter = (Filter)(x.refce034abf.minFilter)
+ x.MipmapMode = (SamplerMipmapMode)(x.refce034abf.mipmapMode)
+ x.AddressModeU = (SamplerAddressMode)(x.refce034abf.addressModeU)
+ x.AddressModeV = (SamplerAddressMode)(x.refce034abf.addressModeV)
+ x.AddressModeW = (SamplerAddressMode)(x.refce034abf.addressModeW)
+ x.MipLodBias = (float32)(x.refce034abf.mipLodBias)
+ x.AnisotropyEnable = (Bool32)(x.refce034abf.anisotropyEnable)
+ x.MaxAnisotropy = (float32)(x.refce034abf.maxAnisotropy)
+ x.CompareEnable = (Bool32)(x.refce034abf.compareEnable)
+ x.CompareOp = (CompareOp)(x.refce034abf.compareOp)
+ x.MinLod = (float32)(x.refce034abf.minLod)
+ x.MaxLod = (float32)(x.refce034abf.maxLod)
+ x.BorderColor = (BorderColor)(x.refce034abf.borderColor)
+ x.UnnormalizedCoordinates = (Bool32)(x.refce034abf.unnormalizedCoordinates)
+}
+
+// allocCopyDescriptorSetMemory allocates memory for type C.VkCopyDescriptorSet in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocCopyDescriptorSetMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCopyDescriptorSetValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfCopyDescriptorSetValue = unsafe.Sizeof([1]C.VkCopyDescriptorSet{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *CopyDescriptorSet) Ref() *C.VkCopyDescriptorSet {
+ if x == nil {
+ return nil
+ }
+ return x.reffe237a3a
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *CopyDescriptorSet) Free() {
+ if x != nil && x.allocsfe237a3a != nil {
+ x.allocsfe237a3a.(*cgoAllocMap).Free()
+ x.reffe237a3a = nil
+ }
+}
+
+// NewCopyDescriptorSetRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewCopyDescriptorSetRef(ref unsafe.Pointer) *CopyDescriptorSet {
+ if ref == nil {
+ return nil
+ }
+ obj := new(CopyDescriptorSet)
+ obj.reffe237a3a = (*C.VkCopyDescriptorSet)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *CopyDescriptorSet) PassRef() (*C.VkCopyDescriptorSet, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.reffe237a3a != nil {
+ return x.reffe237a3a, nil
+ }
+ memfe237a3a := allocCopyDescriptorSetMemory(1)
+ reffe237a3a := (*C.VkCopyDescriptorSet)(memfe237a3a)
+ allocsfe237a3a := new(cgoAllocMap)
+ allocsfe237a3a.Add(memfe237a3a)
+
+ var csType_allocs *cgoAllocMap
+ reffe237a3a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsfe237a3a.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ reffe237a3a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsfe237a3a.Borrow(cpNext_allocs)
+
+ var csrcSet_allocs *cgoAllocMap
+ reffe237a3a.srcSet, csrcSet_allocs = *(*C.VkDescriptorSet)(unsafe.Pointer(&x.SrcSet)), cgoAllocsUnknown
+ allocsfe237a3a.Borrow(csrcSet_allocs)
+
+ var csrcBinding_allocs *cgoAllocMap
+ reffe237a3a.srcBinding, csrcBinding_allocs = (C.uint32_t)(x.SrcBinding), cgoAllocsUnknown
+ allocsfe237a3a.Borrow(csrcBinding_allocs)
+
+ var csrcArrayElement_allocs *cgoAllocMap
+ reffe237a3a.srcArrayElement, csrcArrayElement_allocs = (C.uint32_t)(x.SrcArrayElement), cgoAllocsUnknown
+ allocsfe237a3a.Borrow(csrcArrayElement_allocs)
+
+ var cdstSet_allocs *cgoAllocMap
+ reffe237a3a.dstSet, cdstSet_allocs = *(*C.VkDescriptorSet)(unsafe.Pointer(&x.DstSet)), cgoAllocsUnknown
+ allocsfe237a3a.Borrow(cdstSet_allocs)
+
+ var cdstBinding_allocs *cgoAllocMap
+ reffe237a3a.dstBinding, cdstBinding_allocs = (C.uint32_t)(x.DstBinding), cgoAllocsUnknown
+ allocsfe237a3a.Borrow(cdstBinding_allocs)
+
+ var cdstArrayElement_allocs *cgoAllocMap
+ reffe237a3a.dstArrayElement, cdstArrayElement_allocs = (C.uint32_t)(x.DstArrayElement), cgoAllocsUnknown
+ allocsfe237a3a.Borrow(cdstArrayElement_allocs)
+
+ var cdescriptorCount_allocs *cgoAllocMap
+ reffe237a3a.descriptorCount, cdescriptorCount_allocs = (C.uint32_t)(x.DescriptorCount), cgoAllocsUnknown
+ allocsfe237a3a.Borrow(cdescriptorCount_allocs)
+
+ x.reffe237a3a = reffe237a3a
+ x.allocsfe237a3a = allocsfe237a3a
+ return reffe237a3a, allocsfe237a3a
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x CopyDescriptorSet) PassValue() (C.VkCopyDescriptorSet, *cgoAllocMap) {
+ if x.reffe237a3a != nil {
+ return *x.reffe237a3a, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *CopyDescriptorSet) Deref() {
+ if x.reffe237a3a == nil {
+ return
+ }
+ x.SType = (StructureType)(x.reffe237a3a.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reffe237a3a.pNext))
+ x.SrcSet = *(*DescriptorSet)(unsafe.Pointer(&x.reffe237a3a.srcSet))
+ x.SrcBinding = (uint32)(x.reffe237a3a.srcBinding)
+ x.SrcArrayElement = (uint32)(x.reffe237a3a.srcArrayElement)
+ x.DstSet = *(*DescriptorSet)(unsafe.Pointer(&x.reffe237a3a.dstSet))
+ x.DstBinding = (uint32)(x.reffe237a3a.dstBinding)
+ x.DstArrayElement = (uint32)(x.reffe237a3a.dstArrayElement)
+ x.DescriptorCount = (uint32)(x.reffe237a3a.descriptorCount)
+}
+
+// allocDescriptorBufferInfoMemory allocates memory for type C.VkDescriptorBufferInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocDescriptorBufferInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorBufferInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfDescriptorBufferInfoValue = unsafe.Sizeof([1]C.VkDescriptorBufferInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *DescriptorBufferInfo) Ref() *C.VkDescriptorBufferInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refe64bec0e
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *DescriptorBufferInfo) Free() {
+ if x != nil && x.allocse64bec0e != nil {
+ x.allocse64bec0e.(*cgoAllocMap).Free()
+ x.refe64bec0e = nil
+ }
+}
+
+// NewDescriptorBufferInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewDescriptorBufferInfoRef(ref unsafe.Pointer) *DescriptorBufferInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(DescriptorBufferInfo)
+ obj.refe64bec0e = (*C.VkDescriptorBufferInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DescriptorBufferInfo) PassRef() (*C.VkDescriptorBufferInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refe64bec0e != nil {
+ return x.refe64bec0e, nil
+ }
+ meme64bec0e := allocDescriptorBufferInfoMemory(1)
+ refe64bec0e := (*C.VkDescriptorBufferInfo)(meme64bec0e)
+ allocse64bec0e := new(cgoAllocMap)
+ allocse64bec0e.Add(meme64bec0e)
+
+ var cbuffer_allocs *cgoAllocMap
+ refe64bec0e.buffer, cbuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.Buffer)), cgoAllocsUnknown
+ allocse64bec0e.Borrow(cbuffer_allocs)
+
+ var coffset_allocs *cgoAllocMap
+ refe64bec0e.offset, coffset_allocs = (C.VkDeviceSize)(x.Offset), cgoAllocsUnknown
+ allocse64bec0e.Borrow(coffset_allocs)
+
+ var c_range_allocs *cgoAllocMap
+ refe64bec0e._range, c_range_allocs = (C.VkDeviceSize)(x.Range), cgoAllocsUnknown
+ allocse64bec0e.Borrow(c_range_allocs)
+
+ x.refe64bec0e = refe64bec0e
+ x.allocse64bec0e = allocse64bec0e
+ return refe64bec0e, allocse64bec0e
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DescriptorBufferInfo) PassValue() (C.VkDescriptorBufferInfo, *cgoAllocMap) {
+ if x.refe64bec0e != nil {
+ return *x.refe64bec0e, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *DescriptorBufferInfo) Deref() {
+ if x.refe64bec0e == nil {
+ return
+ }
+ x.Buffer = *(*Buffer)(unsafe.Pointer(&x.refe64bec0e.buffer))
+ x.Offset = (DeviceSize)(x.refe64bec0e.offset)
+ x.Range = (DeviceSize)(x.refe64bec0e._range)
+}
+
+// allocDescriptorImageInfoMemory allocates memory for type C.VkDescriptorImageInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocDescriptorImageInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorImageInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfDescriptorImageInfoValue = unsafe.Sizeof([1]C.VkDescriptorImageInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *DescriptorImageInfo) Ref() *C.VkDescriptorImageInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refaf073b07
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *DescriptorImageInfo) Free() {
+ if x != nil && x.allocsaf073b07 != nil {
+ x.allocsaf073b07.(*cgoAllocMap).Free()
+ x.refaf073b07 = nil
+ }
+}
+
+// NewDescriptorImageInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewDescriptorImageInfoRef(ref unsafe.Pointer) *DescriptorImageInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(DescriptorImageInfo)
+ obj.refaf073b07 = (*C.VkDescriptorImageInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DescriptorImageInfo) PassRef() (*C.VkDescriptorImageInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refaf073b07 != nil {
+ return x.refaf073b07, nil
+ }
+ memaf073b07 := allocDescriptorImageInfoMemory(1)
+ refaf073b07 := (*C.VkDescriptorImageInfo)(memaf073b07)
+ allocsaf073b07 := new(cgoAllocMap)
+ allocsaf073b07.Add(memaf073b07)
+
+ var csampler_allocs *cgoAllocMap
+ refaf073b07.sampler, csampler_allocs = *(*C.VkSampler)(unsafe.Pointer(&x.Sampler)), cgoAllocsUnknown
+ allocsaf073b07.Borrow(csampler_allocs)
+
+ var cimageView_allocs *cgoAllocMap
+ refaf073b07.imageView, cimageView_allocs = *(*C.VkImageView)(unsafe.Pointer(&x.ImageView)), cgoAllocsUnknown
+ allocsaf073b07.Borrow(cimageView_allocs)
+
+ var cimageLayout_allocs *cgoAllocMap
+ refaf073b07.imageLayout, cimageLayout_allocs = (C.VkImageLayout)(x.ImageLayout), cgoAllocsUnknown
+ allocsaf073b07.Borrow(cimageLayout_allocs)
+
+ x.refaf073b07 = refaf073b07
+ x.allocsaf073b07 = allocsaf073b07
+ return refaf073b07, allocsaf073b07
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DescriptorImageInfo) PassValue() (C.VkDescriptorImageInfo, *cgoAllocMap) {
+ if x.refaf073b07 != nil {
+ return *x.refaf073b07, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *DescriptorImageInfo) Deref() {
+ if x.refaf073b07 == nil {
+ return
+ }
+ x.Sampler = *(*Sampler)(unsafe.Pointer(&x.refaf073b07.sampler))
+ x.ImageView = *(*ImageView)(unsafe.Pointer(&x.refaf073b07.imageView))
+ x.ImageLayout = (ImageLayout)(x.refaf073b07.imageLayout)
+}
+
+// allocDescriptorPoolSizeMemory allocates memory for type C.VkDescriptorPoolSize in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocDescriptorPoolSizeMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorPoolSizeValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfDescriptorPoolSizeValue = unsafe.Sizeof([1]C.VkDescriptorPoolSize{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *DescriptorPoolSize) Ref() *C.VkDescriptorPoolSize {
+ if x == nil {
+ return nil
+ }
+ return x.refe15137da
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *DescriptorPoolSize) Free() {
+ if x != nil && x.allocse15137da != nil {
+ x.allocse15137da.(*cgoAllocMap).Free()
+ x.refe15137da = nil
+ }
+}
+
+// NewDescriptorPoolSizeRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewDescriptorPoolSizeRef(ref unsafe.Pointer) *DescriptorPoolSize {
+ if ref == nil {
+ return nil
+ }
+ obj := new(DescriptorPoolSize)
+ obj.refe15137da = (*C.VkDescriptorPoolSize)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DescriptorPoolSize) PassRef() (*C.VkDescriptorPoolSize, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refe15137da != nil {
+ return x.refe15137da, nil
+ }
+ meme15137da := allocDescriptorPoolSizeMemory(1)
+ refe15137da := (*C.VkDescriptorPoolSize)(meme15137da)
+ allocse15137da := new(cgoAllocMap)
+ allocse15137da.Add(meme15137da)
+
+ var c_type_allocs *cgoAllocMap
+ refe15137da._type, c_type_allocs = (C.VkDescriptorType)(x.Type), cgoAllocsUnknown
+ allocse15137da.Borrow(c_type_allocs)
+
+ var cdescriptorCount_allocs *cgoAllocMap
+ refe15137da.descriptorCount, cdescriptorCount_allocs = (C.uint32_t)(x.DescriptorCount), cgoAllocsUnknown
+ allocse15137da.Borrow(cdescriptorCount_allocs)
+
+ x.refe15137da = refe15137da
+ x.allocse15137da = allocse15137da
+ return refe15137da, allocse15137da
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DescriptorPoolSize) PassValue() (C.VkDescriptorPoolSize, *cgoAllocMap) {
+ if x.refe15137da != nil {
+ return *x.refe15137da, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *DescriptorPoolSize) Deref() {
+ if x.refe15137da == nil {
+ return
+ }
+ x.Type = (DescriptorType)(x.refe15137da._type)
+ x.DescriptorCount = (uint32)(x.refe15137da.descriptorCount)
+}
+
+// allocDescriptorPoolCreateInfoMemory allocates memory for type C.VkDescriptorPoolCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocDescriptorPoolCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorPoolCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfDescriptorPoolCreateInfoValue = unsafe.Sizeof([1]C.VkDescriptorPoolCreateInfo{})
+
+// unpackSDescriptorPoolSize transforms a sliced Go data structure into plain C format.
+func unpackSDescriptorPoolSize(x []DescriptorPoolSize) (unpacked *C.VkDescriptorPoolSize, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkDescriptorPoolSize) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocDescriptorPoolSizeMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkDescriptorPoolSize)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkDescriptorPoolSize)(h.Data)
+ return
+}
+
+// packSDescriptorPoolSize reads sliced Go data structure out from plain C format.
+func packSDescriptorPoolSize(v []DescriptorPoolSize, ptr0 *C.VkDescriptorPoolSize) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfDescriptorPoolSizeValue]C.VkDescriptorPoolSize)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewDescriptorPoolSizeRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *DescriptorPoolCreateInfo) Ref() *C.VkDescriptorPoolCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref19868463
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *DescriptorPoolCreateInfo) Free() {
+ if x != nil && x.allocs19868463 != nil {
+ x.allocs19868463.(*cgoAllocMap).Free()
+ x.ref19868463 = nil
+ }
+}
+
+// NewDescriptorPoolCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewDescriptorPoolCreateInfoRef(ref unsafe.Pointer) *DescriptorPoolCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(DescriptorPoolCreateInfo)
+ obj.ref19868463 = (*C.VkDescriptorPoolCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DescriptorPoolCreateInfo) PassRef() (*C.VkDescriptorPoolCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref19868463 != nil {
+ return x.ref19868463, nil
+ }
+ mem19868463 := allocDescriptorPoolCreateInfoMemory(1)
+ ref19868463 := (*C.VkDescriptorPoolCreateInfo)(mem19868463)
+ allocs19868463 := new(cgoAllocMap)
+ allocs19868463.Add(mem19868463)
+
+ var csType_allocs *cgoAllocMap
+ ref19868463.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs19868463.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref19868463.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs19868463.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref19868463.flags, cflags_allocs = (C.VkDescriptorPoolCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocs19868463.Borrow(cflags_allocs)
+
+ var cmaxSets_allocs *cgoAllocMap
+ ref19868463.maxSets, cmaxSets_allocs = (C.uint32_t)(x.MaxSets), cgoAllocsUnknown
+ allocs19868463.Borrow(cmaxSets_allocs)
+
+ var cpoolSizeCount_allocs *cgoAllocMap
+ ref19868463.poolSizeCount, cpoolSizeCount_allocs = (C.uint32_t)(x.PoolSizeCount), cgoAllocsUnknown
+ allocs19868463.Borrow(cpoolSizeCount_allocs)
+
+ var cpPoolSizes_allocs *cgoAllocMap
+ ref19868463.pPoolSizes, cpPoolSizes_allocs = unpackSDescriptorPoolSize(x.PPoolSizes)
+ allocs19868463.Borrow(cpPoolSizes_allocs)
+
+ x.ref19868463 = ref19868463
+ x.allocs19868463 = allocs19868463
+ return ref19868463, allocs19868463
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DescriptorPoolCreateInfo) PassValue() (C.VkDescriptorPoolCreateInfo, *cgoAllocMap) {
+ if x.ref19868463 != nil {
+ return *x.ref19868463, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *DescriptorPoolCreateInfo) Deref() {
+ if x.ref19868463 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref19868463.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref19868463.pNext))
+ x.Flags = (DescriptorPoolCreateFlags)(x.ref19868463.flags)
+ x.MaxSets = (uint32)(x.ref19868463.maxSets)
+ x.PoolSizeCount = (uint32)(x.ref19868463.poolSizeCount)
+ packSDescriptorPoolSize(x.PPoolSizes, x.ref19868463.pPoolSizes)
+}
+
+// allocDescriptorSetAllocateInfoMemory allocates memory for type C.VkDescriptorSetAllocateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocDescriptorSetAllocateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorSetAllocateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfDescriptorSetAllocateInfoValue = unsafe.Sizeof([1]C.VkDescriptorSetAllocateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *DescriptorSetAllocateInfo) Ref() *C.VkDescriptorSetAllocateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref2dd6cc22
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *DescriptorSetAllocateInfo) Free() {
+ if x != nil && x.allocs2dd6cc22 != nil {
+ x.allocs2dd6cc22.(*cgoAllocMap).Free()
+ x.ref2dd6cc22 = nil
+ }
+}
+
+// NewDescriptorSetAllocateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewDescriptorSetAllocateInfoRef(ref unsafe.Pointer) *DescriptorSetAllocateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(DescriptorSetAllocateInfo)
+ obj.ref2dd6cc22 = (*C.VkDescriptorSetAllocateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DescriptorSetAllocateInfo) PassRef() (*C.VkDescriptorSetAllocateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref2dd6cc22 != nil {
+ return x.ref2dd6cc22, nil
+ }
+ mem2dd6cc22 := allocDescriptorSetAllocateInfoMemory(1)
+ ref2dd6cc22 := (*C.VkDescriptorSetAllocateInfo)(mem2dd6cc22)
+ allocs2dd6cc22 := new(cgoAllocMap)
+ allocs2dd6cc22.Add(mem2dd6cc22)
+
+ var csType_allocs *cgoAllocMap
+ ref2dd6cc22.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs2dd6cc22.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref2dd6cc22.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs2dd6cc22.Borrow(cpNext_allocs)
+
+ var cdescriptorPool_allocs *cgoAllocMap
+ ref2dd6cc22.descriptorPool, cdescriptorPool_allocs = *(*C.VkDescriptorPool)(unsafe.Pointer(&x.DescriptorPool)), cgoAllocsUnknown
+ allocs2dd6cc22.Borrow(cdescriptorPool_allocs)
+
+ var cdescriptorSetCount_allocs *cgoAllocMap
+ ref2dd6cc22.descriptorSetCount, cdescriptorSetCount_allocs = (C.uint32_t)(x.DescriptorSetCount), cgoAllocsUnknown
+ allocs2dd6cc22.Borrow(cdescriptorSetCount_allocs)
+
+ var cpSetLayouts_allocs *cgoAllocMap
+ ref2dd6cc22.pSetLayouts, cpSetLayouts_allocs = (*C.VkDescriptorSetLayout)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PSetLayouts)).Data)), cgoAllocsUnknown
+ allocs2dd6cc22.Borrow(cpSetLayouts_allocs)
+
+ x.ref2dd6cc22 = ref2dd6cc22
+ x.allocs2dd6cc22 = allocs2dd6cc22
+ return ref2dd6cc22, allocs2dd6cc22
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DescriptorSetAllocateInfo) PassValue() (C.VkDescriptorSetAllocateInfo, *cgoAllocMap) {
+ if x.ref2dd6cc22 != nil {
+ return *x.ref2dd6cc22, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *DescriptorSetAllocateInfo) Deref() {
+ if x.ref2dd6cc22 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref2dd6cc22.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref2dd6cc22.pNext))
+ x.DescriptorPool = *(*DescriptorPool)(unsafe.Pointer(&x.ref2dd6cc22.descriptorPool))
+ x.DescriptorSetCount = (uint32)(x.ref2dd6cc22.descriptorSetCount)
+ hxf4171bf := (*sliceHeader)(unsafe.Pointer(&x.PSetLayouts))
+ hxf4171bf.Data = unsafe.Pointer(x.ref2dd6cc22.pSetLayouts)
+ hxf4171bf.Cap = 0x7fffffff
+ // hxf4171bf.Len = ?
+
+}
+
+// allocDescriptorSetLayoutBindingMemory allocates memory for type C.VkDescriptorSetLayoutBinding in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocDescriptorSetLayoutBindingMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorSetLayoutBindingValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfDescriptorSetLayoutBindingValue = unsafe.Sizeof([1]C.VkDescriptorSetLayoutBinding{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *DescriptorSetLayoutBinding) Ref() *C.VkDescriptorSetLayoutBinding {
+ if x == nil {
+ return nil
+ }
+ return x.ref8b50b4ec
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *DescriptorSetLayoutBinding) Free() {
+ if x != nil && x.allocs8b50b4ec != nil {
+ x.allocs8b50b4ec.(*cgoAllocMap).Free()
+ x.ref8b50b4ec = nil
+ }
+}
+
+// NewDescriptorSetLayoutBindingRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewDescriptorSetLayoutBindingRef(ref unsafe.Pointer) *DescriptorSetLayoutBinding {
+ if ref == nil {
+ return nil
+ }
+ obj := new(DescriptorSetLayoutBinding)
+ obj.ref8b50b4ec = (*C.VkDescriptorSetLayoutBinding)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DescriptorSetLayoutBinding) PassRef() (*C.VkDescriptorSetLayoutBinding, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref8b50b4ec != nil {
+ return x.ref8b50b4ec, nil
+ }
+ mem8b50b4ec := allocDescriptorSetLayoutBindingMemory(1)
+ ref8b50b4ec := (*C.VkDescriptorSetLayoutBinding)(mem8b50b4ec)
+ allocs8b50b4ec := new(cgoAllocMap)
+ allocs8b50b4ec.Add(mem8b50b4ec)
+
+ var cbinding_allocs *cgoAllocMap
+ ref8b50b4ec.binding, cbinding_allocs = (C.uint32_t)(x.Binding), cgoAllocsUnknown
+ allocs8b50b4ec.Borrow(cbinding_allocs)
+
+ var cdescriptorType_allocs *cgoAllocMap
+ ref8b50b4ec.descriptorType, cdescriptorType_allocs = (C.VkDescriptorType)(x.DescriptorType), cgoAllocsUnknown
+ allocs8b50b4ec.Borrow(cdescriptorType_allocs)
+
+ var cdescriptorCount_allocs *cgoAllocMap
+ ref8b50b4ec.descriptorCount, cdescriptorCount_allocs = (C.uint32_t)(x.DescriptorCount), cgoAllocsUnknown
+ allocs8b50b4ec.Borrow(cdescriptorCount_allocs)
+
+ var cstageFlags_allocs *cgoAllocMap
+ ref8b50b4ec.stageFlags, cstageFlags_allocs = (C.VkShaderStageFlags)(x.StageFlags), cgoAllocsUnknown
+ allocs8b50b4ec.Borrow(cstageFlags_allocs)
+
+ var cpImmutableSamplers_allocs *cgoAllocMap
+ ref8b50b4ec.pImmutableSamplers, cpImmutableSamplers_allocs = (*C.VkSampler)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PImmutableSamplers)).Data)), cgoAllocsUnknown
+ allocs8b50b4ec.Borrow(cpImmutableSamplers_allocs)
+
+ x.ref8b50b4ec = ref8b50b4ec
+ x.allocs8b50b4ec = allocs8b50b4ec
+ return ref8b50b4ec, allocs8b50b4ec
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DescriptorSetLayoutBinding) PassValue() (C.VkDescriptorSetLayoutBinding, *cgoAllocMap) {
+ if x.ref8b50b4ec != nil {
+ return *x.ref8b50b4ec, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *DescriptorSetLayoutBinding) Deref() {
+ if x.ref8b50b4ec == nil {
+ return
+ }
+ x.Binding = (uint32)(x.ref8b50b4ec.binding)
+ x.DescriptorType = (DescriptorType)(x.ref8b50b4ec.descriptorType)
+ x.DescriptorCount = (uint32)(x.ref8b50b4ec.descriptorCount)
+ x.StageFlags = (ShaderStageFlags)(x.ref8b50b4ec.stageFlags)
+ hxf058b18 := (*sliceHeader)(unsafe.Pointer(&x.PImmutableSamplers))
+ hxf058b18.Data = unsafe.Pointer(x.ref8b50b4ec.pImmutableSamplers)
+ hxf058b18.Cap = 0x7fffffff
+ // hxf058b18.Len = ?
+
+}
+
+// allocDescriptorSetLayoutCreateInfoMemory allocates memory for type C.VkDescriptorSetLayoutCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocDescriptorSetLayoutCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorSetLayoutCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfDescriptorSetLayoutCreateInfoValue = unsafe.Sizeof([1]C.VkDescriptorSetLayoutCreateInfo{})
+
+// unpackSDescriptorSetLayoutBinding transforms a sliced Go data structure into plain C format.
+func unpackSDescriptorSetLayoutBinding(x []DescriptorSetLayoutBinding) (unpacked *C.VkDescriptorSetLayoutBinding, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkDescriptorSetLayoutBinding) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocDescriptorSetLayoutBindingMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkDescriptorSetLayoutBinding)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkDescriptorSetLayoutBinding)(h.Data)
+ return
+}
+
+// packSDescriptorSetLayoutBinding reads sliced Go data structure out from plain C format.
+func packSDescriptorSetLayoutBinding(v []DescriptorSetLayoutBinding, ptr0 *C.VkDescriptorSetLayoutBinding) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfDescriptorSetLayoutBindingValue]C.VkDescriptorSetLayoutBinding)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewDescriptorSetLayoutBindingRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *DescriptorSetLayoutCreateInfo) Ref() *C.VkDescriptorSetLayoutCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref5ee8e0ed
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *DescriptorSetLayoutCreateInfo) Free() {
+ if x != nil && x.allocs5ee8e0ed != nil {
+ x.allocs5ee8e0ed.(*cgoAllocMap).Free()
+ x.ref5ee8e0ed = nil
+ }
+}
+
+// NewDescriptorSetLayoutCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewDescriptorSetLayoutCreateInfoRef(ref unsafe.Pointer) *DescriptorSetLayoutCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(DescriptorSetLayoutCreateInfo)
+ obj.ref5ee8e0ed = (*C.VkDescriptorSetLayoutCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DescriptorSetLayoutCreateInfo) PassRef() (*C.VkDescriptorSetLayoutCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref5ee8e0ed != nil {
+ return x.ref5ee8e0ed, nil
+ }
+ mem5ee8e0ed := allocDescriptorSetLayoutCreateInfoMemory(1)
+ ref5ee8e0ed := (*C.VkDescriptorSetLayoutCreateInfo)(mem5ee8e0ed)
+ allocs5ee8e0ed := new(cgoAllocMap)
+ allocs5ee8e0ed.Add(mem5ee8e0ed)
+
+ var csType_allocs *cgoAllocMap
+ ref5ee8e0ed.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs5ee8e0ed.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref5ee8e0ed.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs5ee8e0ed.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref5ee8e0ed.flags, cflags_allocs = (C.VkDescriptorSetLayoutCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocs5ee8e0ed.Borrow(cflags_allocs)
+
+ var cbindingCount_allocs *cgoAllocMap
+ ref5ee8e0ed.bindingCount, cbindingCount_allocs = (C.uint32_t)(x.BindingCount), cgoAllocsUnknown
+ allocs5ee8e0ed.Borrow(cbindingCount_allocs)
+
+ var cpBindings_allocs *cgoAllocMap
+ ref5ee8e0ed.pBindings, cpBindings_allocs = unpackSDescriptorSetLayoutBinding(x.PBindings)
+ allocs5ee8e0ed.Borrow(cpBindings_allocs)
+
+ x.ref5ee8e0ed = ref5ee8e0ed
+ x.allocs5ee8e0ed = allocs5ee8e0ed
+ return ref5ee8e0ed, allocs5ee8e0ed
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DescriptorSetLayoutCreateInfo) PassValue() (C.VkDescriptorSetLayoutCreateInfo, *cgoAllocMap) {
+ if x.ref5ee8e0ed != nil {
+ return *x.ref5ee8e0ed, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *DescriptorSetLayoutCreateInfo) Deref() {
+ if x.ref5ee8e0ed == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref5ee8e0ed.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5ee8e0ed.pNext))
+ x.Flags = (DescriptorSetLayoutCreateFlags)(x.ref5ee8e0ed.flags)
+ x.BindingCount = (uint32)(x.ref5ee8e0ed.bindingCount)
+ packSDescriptorSetLayoutBinding(x.PBindings, x.ref5ee8e0ed.pBindings)
+}
+
+// allocWriteDescriptorSetMemory allocates memory for type C.VkWriteDescriptorSet in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocWriteDescriptorSetMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfWriteDescriptorSetValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfWriteDescriptorSetValue = unsafe.Sizeof([1]C.VkWriteDescriptorSet{})
+
+// unpackSDescriptorImageInfo transforms a sliced Go data structure into plain C format.
+func unpackSDescriptorImageInfo(x []DescriptorImageInfo) (unpacked *C.VkDescriptorImageInfo, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkDescriptorImageInfo) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocDescriptorImageInfoMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkDescriptorImageInfo)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkDescriptorImageInfo)(h.Data)
+ return
+}
+
+// unpackSDescriptorBufferInfo transforms a sliced Go data structure into plain C format.
+func unpackSDescriptorBufferInfo(x []DescriptorBufferInfo) (unpacked *C.VkDescriptorBufferInfo, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkDescriptorBufferInfo) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocDescriptorBufferInfoMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkDescriptorBufferInfo)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkDescriptorBufferInfo)(h.Data)
+ return
+}
+
+// packSDescriptorImageInfo reads sliced Go data structure out from plain C format.
+func packSDescriptorImageInfo(v []DescriptorImageInfo, ptr0 *C.VkDescriptorImageInfo) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfDescriptorImageInfoValue]C.VkDescriptorImageInfo)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewDescriptorImageInfoRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// packSDescriptorBufferInfo reads sliced Go data structure out from plain C format.
+func packSDescriptorBufferInfo(v []DescriptorBufferInfo, ptr0 *C.VkDescriptorBufferInfo) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfDescriptorBufferInfoValue]C.VkDescriptorBufferInfo)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewDescriptorBufferInfoRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *WriteDescriptorSet) Ref() *C.VkWriteDescriptorSet {
+ if x == nil {
+ return nil
+ }
+ return x.ref3cec3f3f
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *WriteDescriptorSet) Free() {
+ if x != nil && x.allocs3cec3f3f != nil {
+ x.allocs3cec3f3f.(*cgoAllocMap).Free()
+ x.ref3cec3f3f = nil
+ }
+}
+
+// NewWriteDescriptorSetRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewWriteDescriptorSetRef(ref unsafe.Pointer) *WriteDescriptorSet {
+ if ref == nil {
+ return nil
+ }
+ obj := new(WriteDescriptorSet)
+ obj.ref3cec3f3f = (*C.VkWriteDescriptorSet)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *WriteDescriptorSet) PassRef() (*C.VkWriteDescriptorSet, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref3cec3f3f != nil {
+ return x.ref3cec3f3f, nil
+ }
+ mem3cec3f3f := allocWriteDescriptorSetMemory(1)
+ ref3cec3f3f := (*C.VkWriteDescriptorSet)(mem3cec3f3f)
+ allocs3cec3f3f := new(cgoAllocMap)
+ allocs3cec3f3f.Add(mem3cec3f3f)
+
+ var csType_allocs *cgoAllocMap
+ ref3cec3f3f.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs3cec3f3f.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref3cec3f3f.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs3cec3f3f.Borrow(cpNext_allocs)
+
+ var cdstSet_allocs *cgoAllocMap
+ ref3cec3f3f.dstSet, cdstSet_allocs = *(*C.VkDescriptorSet)(unsafe.Pointer(&x.DstSet)), cgoAllocsUnknown
+ allocs3cec3f3f.Borrow(cdstSet_allocs)
+
+ var cdstBinding_allocs *cgoAllocMap
+ ref3cec3f3f.dstBinding, cdstBinding_allocs = (C.uint32_t)(x.DstBinding), cgoAllocsUnknown
+ allocs3cec3f3f.Borrow(cdstBinding_allocs)
+
+ var cdstArrayElement_allocs *cgoAllocMap
+ ref3cec3f3f.dstArrayElement, cdstArrayElement_allocs = (C.uint32_t)(x.DstArrayElement), cgoAllocsUnknown
+ allocs3cec3f3f.Borrow(cdstArrayElement_allocs)
+
+ var cdescriptorCount_allocs *cgoAllocMap
+ ref3cec3f3f.descriptorCount, cdescriptorCount_allocs = (C.uint32_t)(x.DescriptorCount), cgoAllocsUnknown
+ allocs3cec3f3f.Borrow(cdescriptorCount_allocs)
+
+ var cdescriptorType_allocs *cgoAllocMap
+ ref3cec3f3f.descriptorType, cdescriptorType_allocs = (C.VkDescriptorType)(x.DescriptorType), cgoAllocsUnknown
+ allocs3cec3f3f.Borrow(cdescriptorType_allocs)
+
+ var cpImageInfo_allocs *cgoAllocMap
+ ref3cec3f3f.pImageInfo, cpImageInfo_allocs = unpackSDescriptorImageInfo(x.PImageInfo)
+ allocs3cec3f3f.Borrow(cpImageInfo_allocs)
+
+ var cpBufferInfo_allocs *cgoAllocMap
+ ref3cec3f3f.pBufferInfo, cpBufferInfo_allocs = unpackSDescriptorBufferInfo(x.PBufferInfo)
+ allocs3cec3f3f.Borrow(cpBufferInfo_allocs)
+
+ var cpTexelBufferView_allocs *cgoAllocMap
+ ref3cec3f3f.pTexelBufferView, cpTexelBufferView_allocs = (*C.VkBufferView)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PTexelBufferView)).Data)), cgoAllocsUnknown
+ allocs3cec3f3f.Borrow(cpTexelBufferView_allocs)
+
+ x.ref3cec3f3f = ref3cec3f3f
+ x.allocs3cec3f3f = allocs3cec3f3f
+ return ref3cec3f3f, allocs3cec3f3f
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x WriteDescriptorSet) PassValue() (C.VkWriteDescriptorSet, *cgoAllocMap) {
+ if x.ref3cec3f3f != nil {
+ return *x.ref3cec3f3f, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *WriteDescriptorSet) Deref() {
+ if x.ref3cec3f3f == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref3cec3f3f.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref3cec3f3f.pNext))
+ x.DstSet = *(*DescriptorSet)(unsafe.Pointer(&x.ref3cec3f3f.dstSet))
+ x.DstBinding = (uint32)(x.ref3cec3f3f.dstBinding)
+ x.DstArrayElement = (uint32)(x.ref3cec3f3f.dstArrayElement)
+ x.DescriptorCount = (uint32)(x.ref3cec3f3f.descriptorCount)
+ x.DescriptorType = (DescriptorType)(x.ref3cec3f3f.descriptorType)
+ packSDescriptorImageInfo(x.PImageInfo, x.ref3cec3f3f.pImageInfo)
+ packSDescriptorBufferInfo(x.PBufferInfo, x.ref3cec3f3f.pBufferInfo)
+ hxff6bc57 := (*sliceHeader)(unsafe.Pointer(&x.PTexelBufferView))
+ hxff6bc57.Data = unsafe.Pointer(x.ref3cec3f3f.pTexelBufferView)
+ hxff6bc57.Cap = 0x7fffffff
+ // hxff6bc57.Len = ?
+
+}
+
+// allocAttachmentDescriptionMemory allocates memory for type C.VkAttachmentDescription in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocAttachmentDescriptionMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfAttachmentDescriptionValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfAttachmentDescriptionValue = unsafe.Sizeof([1]C.VkAttachmentDescription{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *AttachmentDescription) Ref() *C.VkAttachmentDescription {
+ if x == nil {
+ return nil
+ }
+ return x.refa5d685fc
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *AttachmentDescription) Free() {
+ if x != nil && x.allocsa5d685fc != nil {
+ x.allocsa5d685fc.(*cgoAllocMap).Free()
+ x.refa5d685fc = nil
+ }
+}
+
+// NewAttachmentDescriptionRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewAttachmentDescriptionRef(ref unsafe.Pointer) *AttachmentDescription {
+ if ref == nil {
+ return nil
+ }
+ obj := new(AttachmentDescription)
+ obj.refa5d685fc = (*C.VkAttachmentDescription)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *AttachmentDescription) PassRef() (*C.VkAttachmentDescription, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refa5d685fc != nil {
+ return x.refa5d685fc, nil
+ }
+ mema5d685fc := allocAttachmentDescriptionMemory(1)
+ refa5d685fc := (*C.VkAttachmentDescription)(mema5d685fc)
+ allocsa5d685fc := new(cgoAllocMap)
+ allocsa5d685fc.Add(mema5d685fc)
+
+ var cflags_allocs *cgoAllocMap
+ refa5d685fc.flags, cflags_allocs = (C.VkAttachmentDescriptionFlags)(x.Flags), cgoAllocsUnknown
+ allocsa5d685fc.Borrow(cflags_allocs)
+
+ var cformat_allocs *cgoAllocMap
+ refa5d685fc.format, cformat_allocs = (C.VkFormat)(x.Format), cgoAllocsUnknown
+ allocsa5d685fc.Borrow(cformat_allocs)
+
+ var csamples_allocs *cgoAllocMap
+ refa5d685fc.samples, csamples_allocs = (C.VkSampleCountFlagBits)(x.Samples), cgoAllocsUnknown
+ allocsa5d685fc.Borrow(csamples_allocs)
+
+ var cloadOp_allocs *cgoAllocMap
+ refa5d685fc.loadOp, cloadOp_allocs = (C.VkAttachmentLoadOp)(x.LoadOp), cgoAllocsUnknown
+ allocsa5d685fc.Borrow(cloadOp_allocs)
+
+ var cstoreOp_allocs *cgoAllocMap
+ refa5d685fc.storeOp, cstoreOp_allocs = (C.VkAttachmentStoreOp)(x.StoreOp), cgoAllocsUnknown
+ allocsa5d685fc.Borrow(cstoreOp_allocs)
+
+ var cstencilLoadOp_allocs *cgoAllocMap
+ refa5d685fc.stencilLoadOp, cstencilLoadOp_allocs = (C.VkAttachmentLoadOp)(x.StencilLoadOp), cgoAllocsUnknown
+ allocsa5d685fc.Borrow(cstencilLoadOp_allocs)
+
+ var cstencilStoreOp_allocs *cgoAllocMap
+ refa5d685fc.stencilStoreOp, cstencilStoreOp_allocs = (C.VkAttachmentStoreOp)(x.StencilStoreOp), cgoAllocsUnknown
+ allocsa5d685fc.Borrow(cstencilStoreOp_allocs)
+
+ var cinitialLayout_allocs *cgoAllocMap
+ refa5d685fc.initialLayout, cinitialLayout_allocs = (C.VkImageLayout)(x.InitialLayout), cgoAllocsUnknown
+ allocsa5d685fc.Borrow(cinitialLayout_allocs)
+
+ var cfinalLayout_allocs *cgoAllocMap
+ refa5d685fc.finalLayout, cfinalLayout_allocs = (C.VkImageLayout)(x.FinalLayout), cgoAllocsUnknown
+ allocsa5d685fc.Borrow(cfinalLayout_allocs)
+
+ x.refa5d685fc = refa5d685fc
+ x.allocsa5d685fc = allocsa5d685fc
+ return refa5d685fc, allocsa5d685fc
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x AttachmentDescription) PassValue() (C.VkAttachmentDescription, *cgoAllocMap) {
+ if x.refa5d685fc != nil {
+ return *x.refa5d685fc, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *AttachmentDescription) Deref() {
+ if x.refa5d685fc == nil {
+ return
+ }
+ x.Flags = (AttachmentDescriptionFlags)(x.refa5d685fc.flags)
+ x.Format = (Format)(x.refa5d685fc.format)
+ x.Samples = (SampleCountFlagBits)(x.refa5d685fc.samples)
+ x.LoadOp = (AttachmentLoadOp)(x.refa5d685fc.loadOp)
+ x.StoreOp = (AttachmentStoreOp)(x.refa5d685fc.storeOp)
+ x.StencilLoadOp = (AttachmentLoadOp)(x.refa5d685fc.stencilLoadOp)
+ x.StencilStoreOp = (AttachmentStoreOp)(x.refa5d685fc.stencilStoreOp)
+ x.InitialLayout = (ImageLayout)(x.refa5d685fc.initialLayout)
+ x.FinalLayout = (ImageLayout)(x.refa5d685fc.finalLayout)
+}
+
+// allocAttachmentReferenceMemory allocates memory for type C.VkAttachmentReference in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocAttachmentReferenceMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfAttachmentReferenceValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfAttachmentReferenceValue = unsafe.Sizeof([1]C.VkAttachmentReference{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *AttachmentReference) Ref() *C.VkAttachmentReference {
+ if x == nil {
+ return nil
+ }
+ return x.refef4776de
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *AttachmentReference) Free() {
+ if x != nil && x.allocsef4776de != nil {
+ x.allocsef4776de.(*cgoAllocMap).Free()
+ x.refef4776de = nil
+ }
+}
+
+// NewAttachmentReferenceRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewAttachmentReferenceRef(ref unsafe.Pointer) *AttachmentReference {
+ if ref == nil {
+ return nil
+ }
+ obj := new(AttachmentReference)
+ obj.refef4776de = (*C.VkAttachmentReference)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *AttachmentReference) PassRef() (*C.VkAttachmentReference, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refef4776de != nil {
+ return x.refef4776de, nil
+ }
+ memef4776de := allocAttachmentReferenceMemory(1)
+ refef4776de := (*C.VkAttachmentReference)(memef4776de)
+ allocsef4776de := new(cgoAllocMap)
+ allocsef4776de.Add(memef4776de)
+
+ var cattachment_allocs *cgoAllocMap
+ refef4776de.attachment, cattachment_allocs = (C.uint32_t)(x.Attachment), cgoAllocsUnknown
+ allocsef4776de.Borrow(cattachment_allocs)
+
+ var clayout_allocs *cgoAllocMap
+ refef4776de.layout, clayout_allocs = (C.VkImageLayout)(x.Layout), cgoAllocsUnknown
+ allocsef4776de.Borrow(clayout_allocs)
+
+ x.refef4776de = refef4776de
+ x.allocsef4776de = allocsef4776de
+ return refef4776de, allocsef4776de
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x AttachmentReference) PassValue() (C.VkAttachmentReference, *cgoAllocMap) {
+ if x.refef4776de != nil {
+ return *x.refef4776de, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *AttachmentReference) Deref() {
+ if x.refef4776de == nil {
+ return
+ }
+ x.Attachment = (uint32)(x.refef4776de.attachment)
+ x.Layout = (ImageLayout)(x.refef4776de.layout)
+}
+
+// allocFramebufferCreateInfoMemory allocates memory for type C.VkFramebufferCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocFramebufferCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfFramebufferCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfFramebufferCreateInfoValue = unsafe.Sizeof([1]C.VkFramebufferCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *FramebufferCreateInfo) Ref() *C.VkFramebufferCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refa3ad85cc
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *FramebufferCreateInfo) Free() {
+ if x != nil && x.allocsa3ad85cc != nil {
+ x.allocsa3ad85cc.(*cgoAllocMap).Free()
+ x.refa3ad85cc = nil
+ }
+}
+
+// NewFramebufferCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewFramebufferCreateInfoRef(ref unsafe.Pointer) *FramebufferCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(FramebufferCreateInfo)
+ obj.refa3ad85cc = (*C.VkFramebufferCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *FramebufferCreateInfo) PassRef() (*C.VkFramebufferCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refa3ad85cc != nil {
+ return x.refa3ad85cc, nil
+ }
+ mema3ad85cc := allocFramebufferCreateInfoMemory(1)
+ refa3ad85cc := (*C.VkFramebufferCreateInfo)(mema3ad85cc)
+ allocsa3ad85cc := new(cgoAllocMap)
+ allocsa3ad85cc.Add(mema3ad85cc)
+
+ var csType_allocs *cgoAllocMap
+ refa3ad85cc.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsa3ad85cc.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refa3ad85cc.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsa3ad85cc.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ refa3ad85cc.flags, cflags_allocs = (C.VkFramebufferCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocsa3ad85cc.Borrow(cflags_allocs)
+
+ var crenderPass_allocs *cgoAllocMap
+ refa3ad85cc.renderPass, crenderPass_allocs = *(*C.VkRenderPass)(unsafe.Pointer(&x.RenderPass)), cgoAllocsUnknown
+ allocsa3ad85cc.Borrow(crenderPass_allocs)
+
+ var cattachmentCount_allocs *cgoAllocMap
+ refa3ad85cc.attachmentCount, cattachmentCount_allocs = (C.uint32_t)(x.AttachmentCount), cgoAllocsUnknown
+ allocsa3ad85cc.Borrow(cattachmentCount_allocs)
+
+ var cpAttachments_allocs *cgoAllocMap
+ refa3ad85cc.pAttachments, cpAttachments_allocs = (*C.VkImageView)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PAttachments)).Data)), cgoAllocsUnknown
+ allocsa3ad85cc.Borrow(cpAttachments_allocs)
+
+ var cwidth_allocs *cgoAllocMap
+ refa3ad85cc.width, cwidth_allocs = (C.uint32_t)(x.Width), cgoAllocsUnknown
+ allocsa3ad85cc.Borrow(cwidth_allocs)
+
+ var cheight_allocs *cgoAllocMap
+ refa3ad85cc.height, cheight_allocs = (C.uint32_t)(x.Height), cgoAllocsUnknown
+ allocsa3ad85cc.Borrow(cheight_allocs)
+
+ var clayers_allocs *cgoAllocMap
+ refa3ad85cc.layers, clayers_allocs = (C.uint32_t)(x.Layers), cgoAllocsUnknown
+ allocsa3ad85cc.Borrow(clayers_allocs)
+
+ x.refa3ad85cc = refa3ad85cc
+ x.allocsa3ad85cc = allocsa3ad85cc
+ return refa3ad85cc, allocsa3ad85cc
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x FramebufferCreateInfo) PassValue() (C.VkFramebufferCreateInfo, *cgoAllocMap) {
+ if x.refa3ad85cc != nil {
+ return *x.refa3ad85cc, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *FramebufferCreateInfo) Deref() {
+ if x.refa3ad85cc == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refa3ad85cc.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa3ad85cc.pNext))
+ x.Flags = (FramebufferCreateFlags)(x.refa3ad85cc.flags)
+ x.RenderPass = *(*RenderPass)(unsafe.Pointer(&x.refa3ad85cc.renderPass))
+ x.AttachmentCount = (uint32)(x.refa3ad85cc.attachmentCount)
+ hxf5fa529 := (*sliceHeader)(unsafe.Pointer(&x.PAttachments))
+ hxf5fa529.Data = unsafe.Pointer(x.refa3ad85cc.pAttachments)
+ hxf5fa529.Cap = 0x7fffffff
+ // hxf5fa529.Len = ?
+
+ x.Width = (uint32)(x.refa3ad85cc.width)
+ x.Height = (uint32)(x.refa3ad85cc.height)
+ x.Layers = (uint32)(x.refa3ad85cc.layers)
+}
+
+// allocSubpassDescriptionMemory allocates memory for type C.VkSubpassDescription in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSubpassDescriptionMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSubpassDescriptionValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSubpassDescriptionValue = unsafe.Sizeof([1]C.VkSubpassDescription{})
+
+// unpackSAttachmentReference transforms a sliced Go data structure into plain C format.
+func unpackSAttachmentReference(x []AttachmentReference) (unpacked *C.VkAttachmentReference, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkAttachmentReference) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocAttachmentReferenceMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkAttachmentReference)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkAttachmentReference)(h.Data)
+ return
+}
+
+// packSAttachmentReference reads sliced Go data structure out from plain C format.
+func packSAttachmentReference(v []AttachmentReference, ptr0 *C.VkAttachmentReference) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfAttachmentReferenceValue]C.VkAttachmentReference)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewAttachmentReferenceRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SubpassDescription) Ref() *C.VkSubpassDescription {
+ if x == nil {
+ return nil
+ }
+ return x.refc7bfeda
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SubpassDescription) Free() {
+ if x != nil && x.allocsc7bfeda != nil {
+ x.allocsc7bfeda.(*cgoAllocMap).Free()
+ x.refc7bfeda = nil
+ }
+}
+
+// NewSubpassDescriptionRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSubpassDescriptionRef(ref unsafe.Pointer) *SubpassDescription {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SubpassDescription)
+ obj.refc7bfeda = (*C.VkSubpassDescription)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SubpassDescription) PassRef() (*C.VkSubpassDescription, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refc7bfeda != nil {
+ return x.refc7bfeda, nil
+ }
+ memc7bfeda := allocSubpassDescriptionMemory(1)
+ refc7bfeda := (*C.VkSubpassDescription)(memc7bfeda)
+ allocsc7bfeda := new(cgoAllocMap)
+ allocsc7bfeda.Add(memc7bfeda)
+
+ var cflags_allocs *cgoAllocMap
+ refc7bfeda.flags, cflags_allocs = (C.VkSubpassDescriptionFlags)(x.Flags), cgoAllocsUnknown
+ allocsc7bfeda.Borrow(cflags_allocs)
+
+ var cpipelineBindPoint_allocs *cgoAllocMap
+ refc7bfeda.pipelineBindPoint, cpipelineBindPoint_allocs = (C.VkPipelineBindPoint)(x.PipelineBindPoint), cgoAllocsUnknown
+ allocsc7bfeda.Borrow(cpipelineBindPoint_allocs)
+
+ var cinputAttachmentCount_allocs *cgoAllocMap
+ refc7bfeda.inputAttachmentCount, cinputAttachmentCount_allocs = (C.uint32_t)(x.InputAttachmentCount), cgoAllocsUnknown
+ allocsc7bfeda.Borrow(cinputAttachmentCount_allocs)
+
+ var cpInputAttachments_allocs *cgoAllocMap
+ refc7bfeda.pInputAttachments, cpInputAttachments_allocs = unpackSAttachmentReference(x.PInputAttachments)
+ allocsc7bfeda.Borrow(cpInputAttachments_allocs)
+
+ var ccolorAttachmentCount_allocs *cgoAllocMap
+ refc7bfeda.colorAttachmentCount, ccolorAttachmentCount_allocs = (C.uint32_t)(x.ColorAttachmentCount), cgoAllocsUnknown
+ allocsc7bfeda.Borrow(ccolorAttachmentCount_allocs)
+
+ var cpColorAttachments_allocs *cgoAllocMap
+ refc7bfeda.pColorAttachments, cpColorAttachments_allocs = unpackSAttachmentReference(x.PColorAttachments)
+ allocsc7bfeda.Borrow(cpColorAttachments_allocs)
+
+ var cpResolveAttachments_allocs *cgoAllocMap
+ refc7bfeda.pResolveAttachments, cpResolveAttachments_allocs = unpackSAttachmentReference(x.PResolveAttachments)
+ allocsc7bfeda.Borrow(cpResolveAttachments_allocs)
+
+ var cpDepthStencilAttachment_allocs *cgoAllocMap
+ refc7bfeda.pDepthStencilAttachment, cpDepthStencilAttachment_allocs = x.PDepthStencilAttachment.PassRef()
+ allocsc7bfeda.Borrow(cpDepthStencilAttachment_allocs)
+
+ var cpreserveAttachmentCount_allocs *cgoAllocMap
+ refc7bfeda.preserveAttachmentCount, cpreserveAttachmentCount_allocs = (C.uint32_t)(x.PreserveAttachmentCount), cgoAllocsUnknown
+ allocsc7bfeda.Borrow(cpreserveAttachmentCount_allocs)
+
+ var cpPreserveAttachments_allocs *cgoAllocMap
+ refc7bfeda.pPreserveAttachments, cpPreserveAttachments_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PPreserveAttachments)).Data)), cgoAllocsUnknown
+ allocsc7bfeda.Borrow(cpPreserveAttachments_allocs)
+
+ x.refc7bfeda = refc7bfeda
+ x.allocsc7bfeda = allocsc7bfeda
+ return refc7bfeda, allocsc7bfeda
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SubpassDescription) PassValue() (C.VkSubpassDescription, *cgoAllocMap) {
+ if x.refc7bfeda != nil {
+ return *x.refc7bfeda, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SubpassDescription) Deref() {
+ if x.refc7bfeda == nil {
+ return
+ }
+ x.Flags = (SubpassDescriptionFlags)(x.refc7bfeda.flags)
+ x.PipelineBindPoint = (PipelineBindPoint)(x.refc7bfeda.pipelineBindPoint)
+ x.InputAttachmentCount = (uint32)(x.refc7bfeda.inputAttachmentCount)
+ packSAttachmentReference(x.PInputAttachments, x.refc7bfeda.pInputAttachments)
+ x.ColorAttachmentCount = (uint32)(x.refc7bfeda.colorAttachmentCount)
+ packSAttachmentReference(x.PColorAttachments, x.refc7bfeda.pColorAttachments)
+ packSAttachmentReference(x.PResolveAttachments, x.refc7bfeda.pResolveAttachments)
+ x.PDepthStencilAttachment = NewAttachmentReferenceRef(unsafe.Pointer(x.refc7bfeda.pDepthStencilAttachment))
+ x.PreserveAttachmentCount = (uint32)(x.refc7bfeda.preserveAttachmentCount)
+ hxf21690b := (*sliceHeader)(unsafe.Pointer(&x.PPreserveAttachments))
+ hxf21690b.Data = unsafe.Pointer(x.refc7bfeda.pPreserveAttachments)
+ hxf21690b.Cap = 0x7fffffff
+ // hxf21690b.Len = ?
+
+}
+
+// allocSubpassDependencyMemory allocates memory for type C.VkSubpassDependency in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSubpassDependencyMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSubpassDependencyValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSubpassDependencyValue = unsafe.Sizeof([1]C.VkSubpassDependency{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SubpassDependency) Ref() *C.VkSubpassDependency {
+ if x == nil {
+ return nil
+ }
+ return x.refdb197adb
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SubpassDependency) Free() {
+ if x != nil && x.allocsdb197adb != nil {
+ x.allocsdb197adb.(*cgoAllocMap).Free()
+ x.refdb197adb = nil
+ }
+}
+
+// NewSubpassDependencyRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSubpassDependencyRef(ref unsafe.Pointer) *SubpassDependency {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SubpassDependency)
+ obj.refdb197adb = (*C.VkSubpassDependency)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SubpassDependency) PassRef() (*C.VkSubpassDependency, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refdb197adb != nil {
+ return x.refdb197adb, nil
+ }
+ memdb197adb := allocSubpassDependencyMemory(1)
+ refdb197adb := (*C.VkSubpassDependency)(memdb197adb)
+ allocsdb197adb := new(cgoAllocMap)
+ allocsdb197adb.Add(memdb197adb)
+
+ var csrcSubpass_allocs *cgoAllocMap
+ refdb197adb.srcSubpass, csrcSubpass_allocs = (C.uint32_t)(x.SrcSubpass), cgoAllocsUnknown
+ allocsdb197adb.Borrow(csrcSubpass_allocs)
+
+ var cdstSubpass_allocs *cgoAllocMap
+ refdb197adb.dstSubpass, cdstSubpass_allocs = (C.uint32_t)(x.DstSubpass), cgoAllocsUnknown
+ allocsdb197adb.Borrow(cdstSubpass_allocs)
+
+ var csrcStageMask_allocs *cgoAllocMap
+ refdb197adb.srcStageMask, csrcStageMask_allocs = (C.VkPipelineStageFlags)(x.SrcStageMask), cgoAllocsUnknown
+ allocsdb197adb.Borrow(csrcStageMask_allocs)
+
+ var cdstStageMask_allocs *cgoAllocMap
+ refdb197adb.dstStageMask, cdstStageMask_allocs = (C.VkPipelineStageFlags)(x.DstStageMask), cgoAllocsUnknown
+ allocsdb197adb.Borrow(cdstStageMask_allocs)
+
+ var csrcAccessMask_allocs *cgoAllocMap
+ refdb197adb.srcAccessMask, csrcAccessMask_allocs = (C.VkAccessFlags)(x.SrcAccessMask), cgoAllocsUnknown
+ allocsdb197adb.Borrow(csrcAccessMask_allocs)
+
+ var cdstAccessMask_allocs *cgoAllocMap
+ refdb197adb.dstAccessMask, cdstAccessMask_allocs = (C.VkAccessFlags)(x.DstAccessMask), cgoAllocsUnknown
+ allocsdb197adb.Borrow(cdstAccessMask_allocs)
+
+ var cdependencyFlags_allocs *cgoAllocMap
+ refdb197adb.dependencyFlags, cdependencyFlags_allocs = (C.VkDependencyFlags)(x.DependencyFlags), cgoAllocsUnknown
+ allocsdb197adb.Borrow(cdependencyFlags_allocs)
+
+ x.refdb197adb = refdb197adb
+ x.allocsdb197adb = allocsdb197adb
+ return refdb197adb, allocsdb197adb
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SubpassDependency) PassValue() (C.VkSubpassDependency, *cgoAllocMap) {
+ if x.refdb197adb != nil {
+ return *x.refdb197adb, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SubpassDependency) Deref() {
+ if x.refdb197adb == nil {
+ return
+ }
+ x.SrcSubpass = (uint32)(x.refdb197adb.srcSubpass)
+ x.DstSubpass = (uint32)(x.refdb197adb.dstSubpass)
+ x.SrcStageMask = (PipelineStageFlags)(x.refdb197adb.srcStageMask)
+ x.DstStageMask = (PipelineStageFlags)(x.refdb197adb.dstStageMask)
+ x.SrcAccessMask = (AccessFlags)(x.refdb197adb.srcAccessMask)
+ x.DstAccessMask = (AccessFlags)(x.refdb197adb.dstAccessMask)
+ x.DependencyFlags = (DependencyFlags)(x.refdb197adb.dependencyFlags)
+}
+
+// allocRenderPassCreateInfoMemory allocates memory for type C.VkRenderPassCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocRenderPassCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfRenderPassCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfRenderPassCreateInfoValue = unsafe.Sizeof([1]C.VkRenderPassCreateInfo{})
+
+// unpackSAttachmentDescription transforms a sliced Go data structure into plain C format.
+func unpackSAttachmentDescription(x []AttachmentDescription) (unpacked *C.VkAttachmentDescription, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkAttachmentDescription) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocAttachmentDescriptionMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkAttachmentDescription)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkAttachmentDescription)(h.Data)
+ return
+}
+
+// unpackSSubpassDescription transforms a sliced Go data structure into plain C format.
+func unpackSSubpassDescription(x []SubpassDescription) (unpacked *C.VkSubpassDescription, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkSubpassDescription) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocSubpassDescriptionMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkSubpassDescription)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkSubpassDescription)(h.Data)
+ return
+}
+
+// unpackSSubpassDependency transforms a sliced Go data structure into plain C format.
+func unpackSSubpassDependency(x []SubpassDependency) (unpacked *C.VkSubpassDependency, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkSubpassDependency) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocSubpassDependencyMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkSubpassDependency)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkSubpassDependency)(h.Data)
+ return
+}
+
+// packSAttachmentDescription reads sliced Go data structure out from plain C format.
+func packSAttachmentDescription(v []AttachmentDescription, ptr0 *C.VkAttachmentDescription) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfAttachmentDescriptionValue]C.VkAttachmentDescription)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewAttachmentDescriptionRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// packSSubpassDescription reads sliced Go data structure out from plain C format.
+func packSSubpassDescription(v []SubpassDescription, ptr0 *C.VkSubpassDescription) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfSubpassDescriptionValue]C.VkSubpassDescription)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewSubpassDescriptionRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// packSSubpassDependency reads sliced Go data structure out from plain C format.
+func packSSubpassDependency(v []SubpassDependency, ptr0 *C.VkSubpassDependency) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfSubpassDependencyValue]C.VkSubpassDependency)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewSubpassDependencyRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *RenderPassCreateInfo) Ref() *C.VkRenderPassCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref886d7d86
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *RenderPassCreateInfo) Free() {
+ if x != nil && x.allocs886d7d86 != nil {
+ x.allocs886d7d86.(*cgoAllocMap).Free()
+ x.ref886d7d86 = nil
+ }
+}
+
+// NewRenderPassCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewRenderPassCreateInfoRef(ref unsafe.Pointer) *RenderPassCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(RenderPassCreateInfo)
+ obj.ref886d7d86 = (*C.VkRenderPassCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *RenderPassCreateInfo) PassRef() (*C.VkRenderPassCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref886d7d86 != nil {
+ return x.ref886d7d86, nil
+ }
+ mem886d7d86 := allocRenderPassCreateInfoMemory(1)
+ ref886d7d86 := (*C.VkRenderPassCreateInfo)(mem886d7d86)
+ allocs886d7d86 := new(cgoAllocMap)
+ allocs886d7d86.Add(mem886d7d86)
+
+ var csType_allocs *cgoAllocMap
+ ref886d7d86.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs886d7d86.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref886d7d86.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs886d7d86.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref886d7d86.flags, cflags_allocs = (C.VkRenderPassCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocs886d7d86.Borrow(cflags_allocs)
+
+ var cattachmentCount_allocs *cgoAllocMap
+ ref886d7d86.attachmentCount, cattachmentCount_allocs = (C.uint32_t)(x.AttachmentCount), cgoAllocsUnknown
+ allocs886d7d86.Borrow(cattachmentCount_allocs)
+
+ var cpAttachments_allocs *cgoAllocMap
+ ref886d7d86.pAttachments, cpAttachments_allocs = unpackSAttachmentDescription(x.PAttachments)
+ allocs886d7d86.Borrow(cpAttachments_allocs)
+
+ var csubpassCount_allocs *cgoAllocMap
+ ref886d7d86.subpassCount, csubpassCount_allocs = (C.uint32_t)(x.SubpassCount), cgoAllocsUnknown
+ allocs886d7d86.Borrow(csubpassCount_allocs)
+
+ var cpSubpasses_allocs *cgoAllocMap
+ ref886d7d86.pSubpasses, cpSubpasses_allocs = unpackSSubpassDescription(x.PSubpasses)
+ allocs886d7d86.Borrow(cpSubpasses_allocs)
+
+ var cdependencyCount_allocs *cgoAllocMap
+ ref886d7d86.dependencyCount, cdependencyCount_allocs = (C.uint32_t)(x.DependencyCount), cgoAllocsUnknown
+ allocs886d7d86.Borrow(cdependencyCount_allocs)
+
+ var cpDependencies_allocs *cgoAllocMap
+ ref886d7d86.pDependencies, cpDependencies_allocs = unpackSSubpassDependency(x.PDependencies)
+ allocs886d7d86.Borrow(cpDependencies_allocs)
+
+ x.ref886d7d86 = ref886d7d86
+ x.allocs886d7d86 = allocs886d7d86
+ return ref886d7d86, allocs886d7d86
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x RenderPassCreateInfo) PassValue() (C.VkRenderPassCreateInfo, *cgoAllocMap) {
+ if x.ref886d7d86 != nil {
+ return *x.ref886d7d86, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *RenderPassCreateInfo) Deref() {
+ if x.ref886d7d86 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref886d7d86.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref886d7d86.pNext))
+ x.Flags = (RenderPassCreateFlags)(x.ref886d7d86.flags)
+ x.AttachmentCount = (uint32)(x.ref886d7d86.attachmentCount)
+ packSAttachmentDescription(x.PAttachments, x.ref886d7d86.pAttachments)
+ x.SubpassCount = (uint32)(x.ref886d7d86.subpassCount)
+ packSSubpassDescription(x.PSubpasses, x.ref886d7d86.pSubpasses)
+ x.DependencyCount = (uint32)(x.ref886d7d86.dependencyCount)
+ packSSubpassDependency(x.PDependencies, x.ref886d7d86.pDependencies)
+}
+
+// allocCommandPoolCreateInfoMemory allocates memory for type C.VkCommandPoolCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocCommandPoolCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCommandPoolCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfCommandPoolCreateInfoValue = unsafe.Sizeof([1]C.VkCommandPoolCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *CommandPoolCreateInfo) Ref() *C.VkCommandPoolCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref73550de0
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *CommandPoolCreateInfo) Free() {
+ if x != nil && x.allocs73550de0 != nil {
+ x.allocs73550de0.(*cgoAllocMap).Free()
+ x.ref73550de0 = nil
+ }
+}
+
+// NewCommandPoolCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewCommandPoolCreateInfoRef(ref unsafe.Pointer) *CommandPoolCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(CommandPoolCreateInfo)
+ obj.ref73550de0 = (*C.VkCommandPoolCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *CommandPoolCreateInfo) PassRef() (*C.VkCommandPoolCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref73550de0 != nil {
+ return x.ref73550de0, nil
+ }
+ mem73550de0 := allocCommandPoolCreateInfoMemory(1)
+ ref73550de0 := (*C.VkCommandPoolCreateInfo)(mem73550de0)
+ allocs73550de0 := new(cgoAllocMap)
+ allocs73550de0.Add(mem73550de0)
+
+ var csType_allocs *cgoAllocMap
+ ref73550de0.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs73550de0.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref73550de0.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs73550de0.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref73550de0.flags, cflags_allocs = (C.VkCommandPoolCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocs73550de0.Borrow(cflags_allocs)
+
+ var cqueueFamilyIndex_allocs *cgoAllocMap
+ ref73550de0.queueFamilyIndex, cqueueFamilyIndex_allocs = (C.uint32_t)(x.QueueFamilyIndex), cgoAllocsUnknown
+ allocs73550de0.Borrow(cqueueFamilyIndex_allocs)
+
+ x.ref73550de0 = ref73550de0
+ x.allocs73550de0 = allocs73550de0
+ return ref73550de0, allocs73550de0
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x CommandPoolCreateInfo) PassValue() (C.VkCommandPoolCreateInfo, *cgoAllocMap) {
+ if x.ref73550de0 != nil {
+ return *x.ref73550de0, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *CommandPoolCreateInfo) Deref() {
+ if x.ref73550de0 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref73550de0.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref73550de0.pNext))
+ x.Flags = (CommandPoolCreateFlags)(x.ref73550de0.flags)
+ x.QueueFamilyIndex = (uint32)(x.ref73550de0.queueFamilyIndex)
+}
+
+// allocCommandBufferAllocateInfoMemory allocates memory for type C.VkCommandBufferAllocateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocCommandBufferAllocateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCommandBufferAllocateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfCommandBufferAllocateInfoValue = unsafe.Sizeof([1]C.VkCommandBufferAllocateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *CommandBufferAllocateInfo) Ref() *C.VkCommandBufferAllocateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refd1a0a7c8
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *CommandBufferAllocateInfo) Free() {
+ if x != nil && x.allocsd1a0a7c8 != nil {
+ x.allocsd1a0a7c8.(*cgoAllocMap).Free()
+ x.refd1a0a7c8 = nil
+ }
+}
+
+// NewCommandBufferAllocateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewCommandBufferAllocateInfoRef(ref unsafe.Pointer) *CommandBufferAllocateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(CommandBufferAllocateInfo)
+ obj.refd1a0a7c8 = (*C.VkCommandBufferAllocateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *CommandBufferAllocateInfo) PassRef() (*C.VkCommandBufferAllocateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refd1a0a7c8 != nil {
+ return x.refd1a0a7c8, nil
+ }
+ memd1a0a7c8 := allocCommandBufferAllocateInfoMemory(1)
+ refd1a0a7c8 := (*C.VkCommandBufferAllocateInfo)(memd1a0a7c8)
+ allocsd1a0a7c8 := new(cgoAllocMap)
+ allocsd1a0a7c8.Add(memd1a0a7c8)
+
+ var csType_allocs *cgoAllocMap
+ refd1a0a7c8.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd1a0a7c8.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refd1a0a7c8.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsd1a0a7c8.Borrow(cpNext_allocs)
+
+ var ccommandPool_allocs *cgoAllocMap
+ refd1a0a7c8.commandPool, ccommandPool_allocs = *(*C.VkCommandPool)(unsafe.Pointer(&x.CommandPool)), cgoAllocsUnknown
+ allocsd1a0a7c8.Borrow(ccommandPool_allocs)
+
+ var clevel_allocs *cgoAllocMap
+ refd1a0a7c8.level, clevel_allocs = (C.VkCommandBufferLevel)(x.Level), cgoAllocsUnknown
+ allocsd1a0a7c8.Borrow(clevel_allocs)
+
+ var ccommandBufferCount_allocs *cgoAllocMap
+ refd1a0a7c8.commandBufferCount, ccommandBufferCount_allocs = (C.uint32_t)(x.CommandBufferCount), cgoAllocsUnknown
+ allocsd1a0a7c8.Borrow(ccommandBufferCount_allocs)
+
+ x.refd1a0a7c8 = refd1a0a7c8
+ x.allocsd1a0a7c8 = allocsd1a0a7c8
+ return refd1a0a7c8, allocsd1a0a7c8
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x CommandBufferAllocateInfo) PassValue() (C.VkCommandBufferAllocateInfo, *cgoAllocMap) {
+ if x.refd1a0a7c8 != nil {
+ return *x.refd1a0a7c8, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *CommandBufferAllocateInfo) Deref() {
+ if x.refd1a0a7c8 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refd1a0a7c8.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd1a0a7c8.pNext))
+ x.CommandPool = *(*CommandPool)(unsafe.Pointer(&x.refd1a0a7c8.commandPool))
+ x.Level = (CommandBufferLevel)(x.refd1a0a7c8.level)
+ x.CommandBufferCount = (uint32)(x.refd1a0a7c8.commandBufferCount)
+}
+
+// allocCommandBufferInheritanceInfoMemory allocates memory for type C.VkCommandBufferInheritanceInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocCommandBufferInheritanceInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCommandBufferInheritanceInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfCommandBufferInheritanceInfoValue = unsafe.Sizeof([1]C.VkCommandBufferInheritanceInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *CommandBufferInheritanceInfo) Ref() *C.VkCommandBufferInheritanceInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref737f8019
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *CommandBufferInheritanceInfo) Free() {
+ if x != nil && x.allocs737f8019 != nil {
+ x.allocs737f8019.(*cgoAllocMap).Free()
+ x.ref737f8019 = nil
+ }
+}
+
+// NewCommandBufferInheritanceInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewCommandBufferInheritanceInfoRef(ref unsafe.Pointer) *CommandBufferInheritanceInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(CommandBufferInheritanceInfo)
+ obj.ref737f8019 = (*C.VkCommandBufferInheritanceInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *CommandBufferInheritanceInfo) PassRef() (*C.VkCommandBufferInheritanceInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref737f8019 != nil {
+ return x.ref737f8019, nil
+ }
+ mem737f8019 := allocCommandBufferInheritanceInfoMemory(1)
+ ref737f8019 := (*C.VkCommandBufferInheritanceInfo)(mem737f8019)
+ allocs737f8019 := new(cgoAllocMap)
+ allocs737f8019.Add(mem737f8019)
+
+ var csType_allocs *cgoAllocMap
+ ref737f8019.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs737f8019.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref737f8019.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs737f8019.Borrow(cpNext_allocs)
+
+ var crenderPass_allocs *cgoAllocMap
+ ref737f8019.renderPass, crenderPass_allocs = *(*C.VkRenderPass)(unsafe.Pointer(&x.RenderPass)), cgoAllocsUnknown
+ allocs737f8019.Borrow(crenderPass_allocs)
+
+ var csubpass_allocs *cgoAllocMap
+ ref737f8019.subpass, csubpass_allocs = (C.uint32_t)(x.Subpass), cgoAllocsUnknown
+ allocs737f8019.Borrow(csubpass_allocs)
+
+ var cframebuffer_allocs *cgoAllocMap
+ ref737f8019.framebuffer, cframebuffer_allocs = *(*C.VkFramebuffer)(unsafe.Pointer(&x.Framebuffer)), cgoAllocsUnknown
+ allocs737f8019.Borrow(cframebuffer_allocs)
+
+ var cocclusionQueryEnable_allocs *cgoAllocMap
+ ref737f8019.occlusionQueryEnable, cocclusionQueryEnable_allocs = (C.VkBool32)(x.OcclusionQueryEnable), cgoAllocsUnknown
+ allocs737f8019.Borrow(cocclusionQueryEnable_allocs)
+
+ var cqueryFlags_allocs *cgoAllocMap
+ ref737f8019.queryFlags, cqueryFlags_allocs = (C.VkQueryControlFlags)(x.QueryFlags), cgoAllocsUnknown
+ allocs737f8019.Borrow(cqueryFlags_allocs)
+
+ var cpipelineStatistics_allocs *cgoAllocMap
+ ref737f8019.pipelineStatistics, cpipelineStatistics_allocs = (C.VkQueryPipelineStatisticFlags)(x.PipelineStatistics), cgoAllocsUnknown
+ allocs737f8019.Borrow(cpipelineStatistics_allocs)
+
+ x.ref737f8019 = ref737f8019
+ x.allocs737f8019 = allocs737f8019
+ return ref737f8019, allocs737f8019
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x CommandBufferInheritanceInfo) PassValue() (C.VkCommandBufferInheritanceInfo, *cgoAllocMap) {
+ if x.ref737f8019 != nil {
+ return *x.ref737f8019, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *CommandBufferInheritanceInfo) Deref() {
+ if x.ref737f8019 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref737f8019.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref737f8019.pNext))
+ x.RenderPass = *(*RenderPass)(unsafe.Pointer(&x.ref737f8019.renderPass))
+ x.Subpass = (uint32)(x.ref737f8019.subpass)
+ x.Framebuffer = *(*Framebuffer)(unsafe.Pointer(&x.ref737f8019.framebuffer))
+ x.OcclusionQueryEnable = (Bool32)(x.ref737f8019.occlusionQueryEnable)
+ x.QueryFlags = (QueryControlFlags)(x.ref737f8019.queryFlags)
+ x.PipelineStatistics = (QueryPipelineStatisticFlags)(x.ref737f8019.pipelineStatistics)
+}
+
+// allocCommandBufferBeginInfoMemory allocates memory for type C.VkCommandBufferBeginInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocCommandBufferBeginInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCommandBufferBeginInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfCommandBufferBeginInfoValue = unsafe.Sizeof([1]C.VkCommandBufferBeginInfo{})
+
+// unpackSCommandBufferInheritanceInfo transforms a sliced Go data structure into plain C format.
+func unpackSCommandBufferInheritanceInfo(x []CommandBufferInheritanceInfo) (unpacked *C.VkCommandBufferInheritanceInfo, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkCommandBufferInheritanceInfo) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocCommandBufferInheritanceInfoMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkCommandBufferInheritanceInfo)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkCommandBufferInheritanceInfo)(h.Data)
+ return
+}
+
+// packSCommandBufferInheritanceInfo reads sliced Go data structure out from plain C format.
+func packSCommandBufferInheritanceInfo(v []CommandBufferInheritanceInfo, ptr0 *C.VkCommandBufferInheritanceInfo) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfCommandBufferInheritanceInfoValue]C.VkCommandBufferInheritanceInfo)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewCommandBufferInheritanceInfoRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *CommandBufferBeginInfo) Ref() *C.VkCommandBufferBeginInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref266762df
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *CommandBufferBeginInfo) Free() {
+ if x != nil && x.allocs266762df != nil {
+ x.allocs266762df.(*cgoAllocMap).Free()
+ x.ref266762df = nil
+ }
+}
+
+// NewCommandBufferBeginInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewCommandBufferBeginInfoRef(ref unsafe.Pointer) *CommandBufferBeginInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(CommandBufferBeginInfo)
+ obj.ref266762df = (*C.VkCommandBufferBeginInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *CommandBufferBeginInfo) PassRef() (*C.VkCommandBufferBeginInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref266762df != nil {
+ return x.ref266762df, nil
+ }
+ mem266762df := allocCommandBufferBeginInfoMemory(1)
+ ref266762df := (*C.VkCommandBufferBeginInfo)(mem266762df)
+ allocs266762df := new(cgoAllocMap)
+ allocs266762df.Add(mem266762df)
+
+ var csType_allocs *cgoAllocMap
+ ref266762df.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs266762df.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref266762df.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs266762df.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref266762df.flags, cflags_allocs = (C.VkCommandBufferUsageFlags)(x.Flags), cgoAllocsUnknown
+ allocs266762df.Borrow(cflags_allocs)
+
+ var cpInheritanceInfo_allocs *cgoAllocMap
+ ref266762df.pInheritanceInfo, cpInheritanceInfo_allocs = unpackSCommandBufferInheritanceInfo(x.PInheritanceInfo)
+ allocs266762df.Borrow(cpInheritanceInfo_allocs)
+
+ x.ref266762df = ref266762df
+ x.allocs266762df = allocs266762df
+ return ref266762df, allocs266762df
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x CommandBufferBeginInfo) PassValue() (C.VkCommandBufferBeginInfo, *cgoAllocMap) {
+ if x.ref266762df != nil {
+ return *x.ref266762df, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *CommandBufferBeginInfo) Deref() {
+ if x.ref266762df == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref266762df.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref266762df.pNext))
+ x.Flags = (CommandBufferUsageFlags)(x.ref266762df.flags)
+ packSCommandBufferInheritanceInfo(x.PInheritanceInfo, x.ref266762df.pInheritanceInfo)
+}
+
+// allocBufferCopyMemory allocates memory for type C.VkBufferCopy in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocBufferCopyMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBufferCopyValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfBufferCopyValue = unsafe.Sizeof([1]C.VkBufferCopy{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *BufferCopy) Ref() *C.VkBufferCopy {
+ if x == nil {
+ return nil
+ }
+ return x.ref12184ffd
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *BufferCopy) Free() {
+ if x != nil && x.allocs12184ffd != nil {
+ x.allocs12184ffd.(*cgoAllocMap).Free()
+ x.ref12184ffd = nil
+ }
+}
+
+// NewBufferCopyRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewBufferCopyRef(ref unsafe.Pointer) *BufferCopy {
+ if ref == nil {
+ return nil
+ }
+ obj := new(BufferCopy)
+ obj.ref12184ffd = (*C.VkBufferCopy)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *BufferCopy) PassRef() (*C.VkBufferCopy, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref12184ffd != nil {
+ return x.ref12184ffd, nil
+ }
+ mem12184ffd := allocBufferCopyMemory(1)
+ ref12184ffd := (*C.VkBufferCopy)(mem12184ffd)
+ allocs12184ffd := new(cgoAllocMap)
+ allocs12184ffd.Add(mem12184ffd)
+
+ var csrcOffset_allocs *cgoAllocMap
+ ref12184ffd.srcOffset, csrcOffset_allocs = (C.VkDeviceSize)(x.SrcOffset), cgoAllocsUnknown
+ allocs12184ffd.Borrow(csrcOffset_allocs)
+
+ var cdstOffset_allocs *cgoAllocMap
+ ref12184ffd.dstOffset, cdstOffset_allocs = (C.VkDeviceSize)(x.DstOffset), cgoAllocsUnknown
+ allocs12184ffd.Borrow(cdstOffset_allocs)
+
+ var csize_allocs *cgoAllocMap
+ ref12184ffd.size, csize_allocs = (C.VkDeviceSize)(x.Size), cgoAllocsUnknown
+ allocs12184ffd.Borrow(csize_allocs)
+
+ x.ref12184ffd = ref12184ffd
+ x.allocs12184ffd = allocs12184ffd
+ return ref12184ffd, allocs12184ffd
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x BufferCopy) PassValue() (C.VkBufferCopy, *cgoAllocMap) {
+ if x.ref12184ffd != nil {
+ return *x.ref12184ffd, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *BufferCopy) Deref() {
+ if x.ref12184ffd == nil {
+ return
+ }
+ x.SrcOffset = (DeviceSize)(x.ref12184ffd.srcOffset)
+ x.DstOffset = (DeviceSize)(x.ref12184ffd.dstOffset)
+ x.Size = (DeviceSize)(x.ref12184ffd.size)
+}
+
+// allocImageSubresourceLayersMemory allocates memory for type C.VkImageSubresourceLayers in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocImageSubresourceLayersMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageSubresourceLayersValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfImageSubresourceLayersValue = unsafe.Sizeof([1]C.VkImageSubresourceLayers{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ImageSubresourceLayers) Ref() *C.VkImageSubresourceLayers {
+ if x == nil {
+ return nil
+ }
+ return x.ref3b13bcd2
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ImageSubresourceLayers) Free() {
+ if x != nil && x.allocs3b13bcd2 != nil {
+ x.allocs3b13bcd2.(*cgoAllocMap).Free()
+ x.ref3b13bcd2 = nil
+ }
+}
+
+// NewImageSubresourceLayersRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewImageSubresourceLayersRef(ref unsafe.Pointer) *ImageSubresourceLayers {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ImageSubresourceLayers)
+ obj.ref3b13bcd2 = (*C.VkImageSubresourceLayers)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ImageSubresourceLayers) PassRef() (*C.VkImageSubresourceLayers, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref3b13bcd2 != nil {
+ return x.ref3b13bcd2, nil
+ }
+ mem3b13bcd2 := allocImageSubresourceLayersMemory(1)
+ ref3b13bcd2 := (*C.VkImageSubresourceLayers)(mem3b13bcd2)
+ allocs3b13bcd2 := new(cgoAllocMap)
+ allocs3b13bcd2.Add(mem3b13bcd2)
+
+ var caspectMask_allocs *cgoAllocMap
+ ref3b13bcd2.aspectMask, caspectMask_allocs = (C.VkImageAspectFlags)(x.AspectMask), cgoAllocsUnknown
+ allocs3b13bcd2.Borrow(caspectMask_allocs)
+
+ var cmipLevel_allocs *cgoAllocMap
+ ref3b13bcd2.mipLevel, cmipLevel_allocs = (C.uint32_t)(x.MipLevel), cgoAllocsUnknown
+ allocs3b13bcd2.Borrow(cmipLevel_allocs)
+
+ var cbaseArrayLayer_allocs *cgoAllocMap
+ ref3b13bcd2.baseArrayLayer, cbaseArrayLayer_allocs = (C.uint32_t)(x.BaseArrayLayer), cgoAllocsUnknown
+ allocs3b13bcd2.Borrow(cbaseArrayLayer_allocs)
+
+ var clayerCount_allocs *cgoAllocMap
+ ref3b13bcd2.layerCount, clayerCount_allocs = (C.uint32_t)(x.LayerCount), cgoAllocsUnknown
+ allocs3b13bcd2.Borrow(clayerCount_allocs)
+
+ x.ref3b13bcd2 = ref3b13bcd2
+ x.allocs3b13bcd2 = allocs3b13bcd2
+ return ref3b13bcd2, allocs3b13bcd2
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ImageSubresourceLayers) PassValue() (C.VkImageSubresourceLayers, *cgoAllocMap) {
+ if x.ref3b13bcd2 != nil {
+ return *x.ref3b13bcd2, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ImageSubresourceLayers) Deref() {
+ if x.ref3b13bcd2 == nil {
+ return
+ }
+ x.AspectMask = (ImageAspectFlags)(x.ref3b13bcd2.aspectMask)
+ x.MipLevel = (uint32)(x.ref3b13bcd2.mipLevel)
+ x.BaseArrayLayer = (uint32)(x.ref3b13bcd2.baseArrayLayer)
+ x.LayerCount = (uint32)(x.ref3b13bcd2.layerCount)
+}
+
+// allocBufferImageCopyMemory allocates memory for type C.VkBufferImageCopy in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocBufferImageCopyMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBufferImageCopyValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfBufferImageCopyValue = unsafe.Sizeof([1]C.VkBufferImageCopy{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *BufferImageCopy) Ref() *C.VkBufferImageCopy {
+ if x == nil {
+ return nil
+ }
+ return x.ref6d50e36e
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *BufferImageCopy) Free() {
+ if x != nil && x.allocs6d50e36e != nil {
+ x.allocs6d50e36e.(*cgoAllocMap).Free()
+ x.ref6d50e36e = nil
+ }
+}
+
+// NewBufferImageCopyRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewBufferImageCopyRef(ref unsafe.Pointer) *BufferImageCopy {
+ if ref == nil {
+ return nil
+ }
+ obj := new(BufferImageCopy)
+ obj.ref6d50e36e = (*C.VkBufferImageCopy)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *BufferImageCopy) PassRef() (*C.VkBufferImageCopy, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref6d50e36e != nil {
+ return x.ref6d50e36e, nil
+ }
+ mem6d50e36e := allocBufferImageCopyMemory(1)
+ ref6d50e36e := (*C.VkBufferImageCopy)(mem6d50e36e)
+ allocs6d50e36e := new(cgoAllocMap)
+ allocs6d50e36e.Add(mem6d50e36e)
+
+ var cbufferOffset_allocs *cgoAllocMap
+ ref6d50e36e.bufferOffset, cbufferOffset_allocs = (C.VkDeviceSize)(x.BufferOffset), cgoAllocsUnknown
+ allocs6d50e36e.Borrow(cbufferOffset_allocs)
+
+ var cbufferRowLength_allocs *cgoAllocMap
+ ref6d50e36e.bufferRowLength, cbufferRowLength_allocs = (C.uint32_t)(x.BufferRowLength), cgoAllocsUnknown
+ allocs6d50e36e.Borrow(cbufferRowLength_allocs)
+
+ var cbufferImageHeight_allocs *cgoAllocMap
+ ref6d50e36e.bufferImageHeight, cbufferImageHeight_allocs = (C.uint32_t)(x.BufferImageHeight), cgoAllocsUnknown
+ allocs6d50e36e.Borrow(cbufferImageHeight_allocs)
+
+ var cimageSubresource_allocs *cgoAllocMap
+ ref6d50e36e.imageSubresource, cimageSubresource_allocs = x.ImageSubresource.PassValue()
+ allocs6d50e36e.Borrow(cimageSubresource_allocs)
+
+ var cimageOffset_allocs *cgoAllocMap
+ ref6d50e36e.imageOffset, cimageOffset_allocs = x.ImageOffset.PassValue()
+ allocs6d50e36e.Borrow(cimageOffset_allocs)
+
+ var cimageExtent_allocs *cgoAllocMap
+ ref6d50e36e.imageExtent, cimageExtent_allocs = x.ImageExtent.PassValue()
+ allocs6d50e36e.Borrow(cimageExtent_allocs)
+
+ x.ref6d50e36e = ref6d50e36e
+ x.allocs6d50e36e = allocs6d50e36e
+ return ref6d50e36e, allocs6d50e36e
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x BufferImageCopy) PassValue() (C.VkBufferImageCopy, *cgoAllocMap) {
+ if x.ref6d50e36e != nil {
+ return *x.ref6d50e36e, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *BufferImageCopy) Deref() {
+ if x.ref6d50e36e == nil {
+ return
+ }
+ x.BufferOffset = (DeviceSize)(x.ref6d50e36e.bufferOffset)
+ x.BufferRowLength = (uint32)(x.ref6d50e36e.bufferRowLength)
+ x.BufferImageHeight = (uint32)(x.ref6d50e36e.bufferImageHeight)
+ x.ImageSubresource = *NewImageSubresourceLayersRef(unsafe.Pointer(&x.ref6d50e36e.imageSubresource))
+ x.ImageOffset = *NewOffset3DRef(unsafe.Pointer(&x.ref6d50e36e.imageOffset))
+ x.ImageExtent = *NewExtent3DRef(unsafe.Pointer(&x.ref6d50e36e.imageExtent))
+}
+
+// allocClearDepthStencilValueMemory allocates memory for type C.VkClearDepthStencilValue in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocClearDepthStencilValueMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfClearDepthStencilValueValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfClearDepthStencilValueValue = unsafe.Sizeof([1]C.VkClearDepthStencilValue{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ClearDepthStencilValue) Ref() *C.VkClearDepthStencilValue {
+ if x == nil {
+ return nil
+ }
+ return x.refa7d07c03
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ClearDepthStencilValue) Free() {
+ if x != nil && x.allocsa7d07c03 != nil {
+ x.allocsa7d07c03.(*cgoAllocMap).Free()
+ x.refa7d07c03 = nil
+ }
+}
+
+// NewClearDepthStencilValueRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewClearDepthStencilValueRef(ref unsafe.Pointer) *ClearDepthStencilValue {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ClearDepthStencilValue)
+ obj.refa7d07c03 = (*C.VkClearDepthStencilValue)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ClearDepthStencilValue) PassRef() (*C.VkClearDepthStencilValue, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refa7d07c03 != nil {
+ return x.refa7d07c03, nil
+ }
+ mema7d07c03 := allocClearDepthStencilValueMemory(1)
+ refa7d07c03 := (*C.VkClearDepthStencilValue)(mema7d07c03)
+ allocsa7d07c03 := new(cgoAllocMap)
+ allocsa7d07c03.Add(mema7d07c03)
+
+ var cdepth_allocs *cgoAllocMap
+ refa7d07c03.depth, cdepth_allocs = (C.float)(x.Depth), cgoAllocsUnknown
+ allocsa7d07c03.Borrow(cdepth_allocs)
+
+ var cstencil_allocs *cgoAllocMap
+ refa7d07c03.stencil, cstencil_allocs = (C.uint32_t)(x.Stencil), cgoAllocsUnknown
+ allocsa7d07c03.Borrow(cstencil_allocs)
+
+ x.refa7d07c03 = refa7d07c03
+ x.allocsa7d07c03 = allocsa7d07c03
+ return refa7d07c03, allocsa7d07c03
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ClearDepthStencilValue) PassValue() (C.VkClearDepthStencilValue, *cgoAllocMap) {
+ if x.refa7d07c03 != nil {
+ return *x.refa7d07c03, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ClearDepthStencilValue) Deref() {
+ if x.refa7d07c03 == nil {
+ return
+ }
+ x.Depth = (float32)(x.refa7d07c03.depth)
+ x.Stencil = (uint32)(x.refa7d07c03.stencil)
+}
+
+// allocClearAttachmentMemory allocates memory for type C.VkClearAttachment in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocClearAttachmentMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfClearAttachmentValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfClearAttachmentValue = unsafe.Sizeof([1]C.VkClearAttachment{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ClearAttachment) Ref() *C.VkClearAttachment {
+ if x == nil {
+ return nil
+ }
+ return x.refe9150303
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ClearAttachment) Free() {
+ if x != nil && x.allocse9150303 != nil {
+ x.allocse9150303.(*cgoAllocMap).Free()
+ x.refe9150303 = nil
+ }
+}
+
+// NewClearAttachmentRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewClearAttachmentRef(ref unsafe.Pointer) *ClearAttachment {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ClearAttachment)
+ obj.refe9150303 = (*C.VkClearAttachment)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ClearAttachment) PassRef() (*C.VkClearAttachment, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refe9150303 != nil {
+ return x.refe9150303, nil
+ }
+ meme9150303 := allocClearAttachmentMemory(1)
+ refe9150303 := (*C.VkClearAttachment)(meme9150303)
+ allocse9150303 := new(cgoAllocMap)
+ allocse9150303.Add(meme9150303)
+
+ var caspectMask_allocs *cgoAllocMap
+ refe9150303.aspectMask, caspectMask_allocs = (C.VkImageAspectFlags)(x.AspectMask), cgoAllocsUnknown
+ allocse9150303.Borrow(caspectMask_allocs)
+
+ var ccolorAttachment_allocs *cgoAllocMap
+ refe9150303.colorAttachment, ccolorAttachment_allocs = (C.uint32_t)(x.ColorAttachment), cgoAllocsUnknown
+ allocse9150303.Borrow(ccolorAttachment_allocs)
+
+ var cclearValue_allocs *cgoAllocMap
+ refe9150303.clearValue, cclearValue_allocs = *(*C.VkClearValue)(unsafe.Pointer(&x.ClearValue)), cgoAllocsUnknown
+ allocse9150303.Borrow(cclearValue_allocs)
+
+ x.refe9150303 = refe9150303
+ x.allocse9150303 = allocse9150303
+ return refe9150303, allocse9150303
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ClearAttachment) PassValue() (C.VkClearAttachment, *cgoAllocMap) {
+ if x.refe9150303 != nil {
+ return *x.refe9150303, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ClearAttachment) Deref() {
+ if x.refe9150303 == nil {
+ return
+ }
+ x.AspectMask = (ImageAspectFlags)(x.refe9150303.aspectMask)
+ x.ColorAttachment = (uint32)(x.refe9150303.colorAttachment)
+ x.ClearValue = *(*ClearValue)(unsafe.Pointer(&x.refe9150303.clearValue))
+}
+
+// allocClearRectMemory allocates memory for type C.VkClearRect in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocClearRectMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfClearRectValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfClearRectValue = unsafe.Sizeof([1]C.VkClearRect{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ClearRect) Ref() *C.VkClearRect {
+ if x == nil {
+ return nil
+ }
+ return x.ref1d449c8b
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ClearRect) Free() {
+ if x != nil && x.allocs1d449c8b != nil {
+ x.allocs1d449c8b.(*cgoAllocMap).Free()
+ x.ref1d449c8b = nil
+ }
+}
+
+// NewClearRectRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewClearRectRef(ref unsafe.Pointer) *ClearRect {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ClearRect)
+ obj.ref1d449c8b = (*C.VkClearRect)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ClearRect) PassRef() (*C.VkClearRect, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref1d449c8b != nil {
+ return x.ref1d449c8b, nil
+ }
+ mem1d449c8b := allocClearRectMemory(1)
+ ref1d449c8b := (*C.VkClearRect)(mem1d449c8b)
+ allocs1d449c8b := new(cgoAllocMap)
+ allocs1d449c8b.Add(mem1d449c8b)
+
+ var crect_allocs *cgoAllocMap
+ ref1d449c8b.rect, crect_allocs = x.Rect.PassValue()
+ allocs1d449c8b.Borrow(crect_allocs)
+
+ var cbaseArrayLayer_allocs *cgoAllocMap
+ ref1d449c8b.baseArrayLayer, cbaseArrayLayer_allocs = (C.uint32_t)(x.BaseArrayLayer), cgoAllocsUnknown
+ allocs1d449c8b.Borrow(cbaseArrayLayer_allocs)
+
+ var clayerCount_allocs *cgoAllocMap
+ ref1d449c8b.layerCount, clayerCount_allocs = (C.uint32_t)(x.LayerCount), cgoAllocsUnknown
+ allocs1d449c8b.Borrow(clayerCount_allocs)
+
+ x.ref1d449c8b = ref1d449c8b
+ x.allocs1d449c8b = allocs1d449c8b
+ return ref1d449c8b, allocs1d449c8b
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ClearRect) PassValue() (C.VkClearRect, *cgoAllocMap) {
+ if x.ref1d449c8b != nil {
+ return *x.ref1d449c8b, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ClearRect) Deref() {
+ if x.ref1d449c8b == nil {
+ return
+ }
+ x.Rect = *NewRect2DRef(unsafe.Pointer(&x.ref1d449c8b.rect))
+ x.BaseArrayLayer = (uint32)(x.ref1d449c8b.baseArrayLayer)
+ x.LayerCount = (uint32)(x.ref1d449c8b.layerCount)
+}
+
+// allocImageBlitMemory allocates memory for type C.VkImageBlit in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocImageBlitMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageBlitValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfImageBlitValue = unsafe.Sizeof([1]C.VkImageBlit{})
+
+// allocA2Offset3DMemory allocates memory for type [2]C.VkOffset3D in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocA2Offset3DMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfA2Offset3DValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfA2Offset3DValue = unsafe.Sizeof([1][2]C.VkOffset3D{})
+
+// unpackA2Offset3D transforms a sliced Go data structure into plain C format.
+func unpackA2Offset3D(x [2]Offset3D) (unpacked [2]C.VkOffset3D, allocs *cgoAllocMap) {
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(*[2]C.VkOffset3D) {
+ go allocs.Free()
+ })
+
+ mem0 := allocA2Offset3DMemory(1)
+ allocs.Add(mem0)
+ v0 := (*[2]C.VkOffset3D)(mem0)
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ unpacked = *(*[2]C.VkOffset3D)(mem0)
+ return
+}
+
+// packA2Offset3D reads sliced Go data structure out from plain C format.
+func packA2Offset3D(v *[2]Offset3D, ptr0 *[2]C.VkOffset3D) {
+ for i0 := range v {
+ ptr1 := ptr0[i0]
+ v[i0] = *NewOffset3DRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ImageBlit) Ref() *C.VkImageBlit {
+ if x == nil {
+ return nil
+ }
+ return x.ref11311e8d
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ImageBlit) Free() {
+ if x != nil && x.allocs11311e8d != nil {
+ x.allocs11311e8d.(*cgoAllocMap).Free()
+ x.ref11311e8d = nil
+ }
+}
+
+// NewImageBlitRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewImageBlitRef(ref unsafe.Pointer) *ImageBlit {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ImageBlit)
+ obj.ref11311e8d = (*C.VkImageBlit)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ImageBlit) PassRef() (*C.VkImageBlit, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref11311e8d != nil {
+ return x.ref11311e8d, nil
+ }
+ mem11311e8d := allocImageBlitMemory(1)
+ ref11311e8d := (*C.VkImageBlit)(mem11311e8d)
+ allocs11311e8d := new(cgoAllocMap)
+ allocs11311e8d.Add(mem11311e8d)
+
+ var csrcSubresource_allocs *cgoAllocMap
+ ref11311e8d.srcSubresource, csrcSubresource_allocs = x.SrcSubresource.PassValue()
+ allocs11311e8d.Borrow(csrcSubresource_allocs)
+
+ var csrcOffsets_allocs *cgoAllocMap
+ ref11311e8d.srcOffsets, csrcOffsets_allocs = unpackA2Offset3D(x.SrcOffsets)
+ allocs11311e8d.Borrow(csrcOffsets_allocs)
+
+ var cdstSubresource_allocs *cgoAllocMap
+ ref11311e8d.dstSubresource, cdstSubresource_allocs = x.DstSubresource.PassValue()
+ allocs11311e8d.Borrow(cdstSubresource_allocs)
+
+ var cdstOffsets_allocs *cgoAllocMap
+ ref11311e8d.dstOffsets, cdstOffsets_allocs = unpackA2Offset3D(x.DstOffsets)
+ allocs11311e8d.Borrow(cdstOffsets_allocs)
+
+ x.ref11311e8d = ref11311e8d
+ x.allocs11311e8d = allocs11311e8d
+ return ref11311e8d, allocs11311e8d
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ImageBlit) PassValue() (C.VkImageBlit, *cgoAllocMap) {
+ if x.ref11311e8d != nil {
+ return *x.ref11311e8d, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ImageBlit) Deref() {
+ if x.ref11311e8d == nil {
+ return
+ }
+ x.SrcSubresource = *NewImageSubresourceLayersRef(unsafe.Pointer(&x.ref11311e8d.srcSubresource))
+ packA2Offset3D(&x.SrcOffsets, (*[2]C.VkOffset3D)(unsafe.Pointer(&x.ref11311e8d.srcOffsets)))
+ x.DstSubresource = *NewImageSubresourceLayersRef(unsafe.Pointer(&x.ref11311e8d.dstSubresource))
+ packA2Offset3D(&x.DstOffsets, (*[2]C.VkOffset3D)(unsafe.Pointer(&x.ref11311e8d.dstOffsets)))
+}
+
+// allocImageCopyMemory allocates memory for type C.VkImageCopy in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocImageCopyMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageCopyValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfImageCopyValue = unsafe.Sizeof([1]C.VkImageCopy{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ImageCopy) Ref() *C.VkImageCopy {
+ if x == nil {
+ return nil
+ }
+ return x.ref4e7a1214
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ImageCopy) Free() {
+ if x != nil && x.allocs4e7a1214 != nil {
+ x.allocs4e7a1214.(*cgoAllocMap).Free()
+ x.ref4e7a1214 = nil
+ }
+}
+
+// NewImageCopyRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewImageCopyRef(ref unsafe.Pointer) *ImageCopy {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ImageCopy)
+ obj.ref4e7a1214 = (*C.VkImageCopy)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ImageCopy) PassRef() (*C.VkImageCopy, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref4e7a1214 != nil {
+ return x.ref4e7a1214, nil
+ }
+ mem4e7a1214 := allocImageCopyMemory(1)
+ ref4e7a1214 := (*C.VkImageCopy)(mem4e7a1214)
+ allocs4e7a1214 := new(cgoAllocMap)
+ allocs4e7a1214.Add(mem4e7a1214)
+
+ var csrcSubresource_allocs *cgoAllocMap
+ ref4e7a1214.srcSubresource, csrcSubresource_allocs = x.SrcSubresource.PassValue()
+ allocs4e7a1214.Borrow(csrcSubresource_allocs)
+
+ var csrcOffset_allocs *cgoAllocMap
+ ref4e7a1214.srcOffset, csrcOffset_allocs = x.SrcOffset.PassValue()
+ allocs4e7a1214.Borrow(csrcOffset_allocs)
+
+ var cdstSubresource_allocs *cgoAllocMap
+ ref4e7a1214.dstSubresource, cdstSubresource_allocs = x.DstSubresource.PassValue()
+ allocs4e7a1214.Borrow(cdstSubresource_allocs)
+
+ var cdstOffset_allocs *cgoAllocMap
+ ref4e7a1214.dstOffset, cdstOffset_allocs = x.DstOffset.PassValue()
+ allocs4e7a1214.Borrow(cdstOffset_allocs)
+
+ var cextent_allocs *cgoAllocMap
+ ref4e7a1214.extent, cextent_allocs = x.Extent.PassValue()
+ allocs4e7a1214.Borrow(cextent_allocs)
+
+ x.ref4e7a1214 = ref4e7a1214
+ x.allocs4e7a1214 = allocs4e7a1214
+ return ref4e7a1214, allocs4e7a1214
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ImageCopy) PassValue() (C.VkImageCopy, *cgoAllocMap) {
+ if x.ref4e7a1214 != nil {
+ return *x.ref4e7a1214, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ImageCopy) Deref() {
+ if x.ref4e7a1214 == nil {
+ return
+ }
+ x.SrcSubresource = *NewImageSubresourceLayersRef(unsafe.Pointer(&x.ref4e7a1214.srcSubresource))
+ x.SrcOffset = *NewOffset3DRef(unsafe.Pointer(&x.ref4e7a1214.srcOffset))
+ x.DstSubresource = *NewImageSubresourceLayersRef(unsafe.Pointer(&x.ref4e7a1214.dstSubresource))
+ x.DstOffset = *NewOffset3DRef(unsafe.Pointer(&x.ref4e7a1214.dstOffset))
+ x.Extent = *NewExtent3DRef(unsafe.Pointer(&x.ref4e7a1214.extent))
+}
+
+// allocImageResolveMemory allocates memory for type C.VkImageResolve in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocImageResolveMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageResolveValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfImageResolveValue = unsafe.Sizeof([1]C.VkImageResolve{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ImageResolve) Ref() *C.VkImageResolve {
+ if x == nil {
+ return nil
+ }
+ return x.ref7bda856d
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ImageResolve) Free() {
+ if x != nil && x.allocs7bda856d != nil {
+ x.allocs7bda856d.(*cgoAllocMap).Free()
+ x.ref7bda856d = nil
+ }
+}
+
+// NewImageResolveRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewImageResolveRef(ref unsafe.Pointer) *ImageResolve {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ImageResolve)
+ obj.ref7bda856d = (*C.VkImageResolve)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ImageResolve) PassRef() (*C.VkImageResolve, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref7bda856d != nil {
+ return x.ref7bda856d, nil
+ }
+ mem7bda856d := allocImageResolveMemory(1)
+ ref7bda856d := (*C.VkImageResolve)(mem7bda856d)
+ allocs7bda856d := new(cgoAllocMap)
+ allocs7bda856d.Add(mem7bda856d)
+
+ var csrcSubresource_allocs *cgoAllocMap
+ ref7bda856d.srcSubresource, csrcSubresource_allocs = x.SrcSubresource.PassValue()
+ allocs7bda856d.Borrow(csrcSubresource_allocs)
+
+ var csrcOffset_allocs *cgoAllocMap
+ ref7bda856d.srcOffset, csrcOffset_allocs = x.SrcOffset.PassValue()
+ allocs7bda856d.Borrow(csrcOffset_allocs)
+
+ var cdstSubresource_allocs *cgoAllocMap
+ ref7bda856d.dstSubresource, cdstSubresource_allocs = x.DstSubresource.PassValue()
+ allocs7bda856d.Borrow(cdstSubresource_allocs)
+
+ var cdstOffset_allocs *cgoAllocMap
+ ref7bda856d.dstOffset, cdstOffset_allocs = x.DstOffset.PassValue()
+ allocs7bda856d.Borrow(cdstOffset_allocs)
+
+ var cextent_allocs *cgoAllocMap
+ ref7bda856d.extent, cextent_allocs = x.Extent.PassValue()
+ allocs7bda856d.Borrow(cextent_allocs)
+
+ x.ref7bda856d = ref7bda856d
+ x.allocs7bda856d = allocs7bda856d
+ return ref7bda856d, allocs7bda856d
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ImageResolve) PassValue() (C.VkImageResolve, *cgoAllocMap) {
+ if x.ref7bda856d != nil {
+ return *x.ref7bda856d, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ImageResolve) Deref() {
+ if x.ref7bda856d == nil {
+ return
+ }
+ x.SrcSubresource = *NewImageSubresourceLayersRef(unsafe.Pointer(&x.ref7bda856d.srcSubresource))
+ x.SrcOffset = *NewOffset3DRef(unsafe.Pointer(&x.ref7bda856d.srcOffset))
+ x.DstSubresource = *NewImageSubresourceLayersRef(unsafe.Pointer(&x.ref7bda856d.dstSubresource))
+ x.DstOffset = *NewOffset3DRef(unsafe.Pointer(&x.ref7bda856d.dstOffset))
+ x.Extent = *NewExtent3DRef(unsafe.Pointer(&x.ref7bda856d.extent))
+}
+
+// allocRenderPassBeginInfoMemory allocates memory for type C.VkRenderPassBeginInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocRenderPassBeginInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfRenderPassBeginInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfRenderPassBeginInfoValue = unsafe.Sizeof([1]C.VkRenderPassBeginInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *RenderPassBeginInfo) Ref() *C.VkRenderPassBeginInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref3c3752c8
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *RenderPassBeginInfo) Free() {
+ if x != nil && x.allocs3c3752c8 != nil {
+ x.allocs3c3752c8.(*cgoAllocMap).Free()
+ x.ref3c3752c8 = nil
+ }
+}
+
+// NewRenderPassBeginInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewRenderPassBeginInfoRef(ref unsafe.Pointer) *RenderPassBeginInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(RenderPassBeginInfo)
+ obj.ref3c3752c8 = (*C.VkRenderPassBeginInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *RenderPassBeginInfo) PassRef() (*C.VkRenderPassBeginInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref3c3752c8 != nil {
+ return x.ref3c3752c8, nil
+ }
+ mem3c3752c8 := allocRenderPassBeginInfoMemory(1)
+ ref3c3752c8 := (*C.VkRenderPassBeginInfo)(mem3c3752c8)
+ allocs3c3752c8 := new(cgoAllocMap)
+ allocs3c3752c8.Add(mem3c3752c8)
+
+ var csType_allocs *cgoAllocMap
+ ref3c3752c8.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs3c3752c8.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref3c3752c8.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs3c3752c8.Borrow(cpNext_allocs)
+
+ var crenderPass_allocs *cgoAllocMap
+ ref3c3752c8.renderPass, crenderPass_allocs = *(*C.VkRenderPass)(unsafe.Pointer(&x.RenderPass)), cgoAllocsUnknown
+ allocs3c3752c8.Borrow(crenderPass_allocs)
+
+ var cframebuffer_allocs *cgoAllocMap
+ ref3c3752c8.framebuffer, cframebuffer_allocs = *(*C.VkFramebuffer)(unsafe.Pointer(&x.Framebuffer)), cgoAllocsUnknown
+ allocs3c3752c8.Borrow(cframebuffer_allocs)
+
+ var crenderArea_allocs *cgoAllocMap
+ ref3c3752c8.renderArea, crenderArea_allocs = x.RenderArea.PassValue()
+ allocs3c3752c8.Borrow(crenderArea_allocs)
+
+ var cclearValueCount_allocs *cgoAllocMap
+ ref3c3752c8.clearValueCount, cclearValueCount_allocs = (C.uint32_t)(x.ClearValueCount), cgoAllocsUnknown
+ allocs3c3752c8.Borrow(cclearValueCount_allocs)
+
+ var cpClearValues_allocs *cgoAllocMap
+ ref3c3752c8.pClearValues, cpClearValues_allocs = (*C.VkClearValue)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PClearValues)).Data)), cgoAllocsUnknown
+ allocs3c3752c8.Borrow(cpClearValues_allocs)
+
+ x.ref3c3752c8 = ref3c3752c8
+ x.allocs3c3752c8 = allocs3c3752c8
+ return ref3c3752c8, allocs3c3752c8
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x RenderPassBeginInfo) PassValue() (C.VkRenderPassBeginInfo, *cgoAllocMap) {
+ if x.ref3c3752c8 != nil {
+ return *x.ref3c3752c8, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *RenderPassBeginInfo) Deref() {
+ if x.ref3c3752c8 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref3c3752c8.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref3c3752c8.pNext))
+ x.RenderPass = *(*RenderPass)(unsafe.Pointer(&x.ref3c3752c8.renderPass))
+ x.Framebuffer = *(*Framebuffer)(unsafe.Pointer(&x.ref3c3752c8.framebuffer))
+ x.RenderArea = *NewRect2DRef(unsafe.Pointer(&x.ref3c3752c8.renderArea))
+ x.ClearValueCount = (uint32)(x.ref3c3752c8.clearValueCount)
+ hxf1231c9 := (*sliceHeader)(unsafe.Pointer(&x.PClearValues))
+ hxf1231c9.Data = unsafe.Pointer(x.ref3c3752c8.pClearValues)
+ hxf1231c9.Cap = 0x7fffffff
+ // hxf1231c9.Len = ?
+
+}
+
+// allocPhysicalDeviceSubgroupPropertiesMemory allocates memory for type C.VkPhysicalDeviceSubgroupProperties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceSubgroupPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceSubgroupPropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceSubgroupPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceSubgroupProperties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceSubgroupProperties) Ref() *C.VkPhysicalDeviceSubgroupProperties {
+ if x == nil {
+ return nil
+ }
+ return x.refb019c29f
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceSubgroupProperties) Free() {
+ if x != nil && x.allocsb019c29f != nil {
+ x.allocsb019c29f.(*cgoAllocMap).Free()
+ x.refb019c29f = nil
+ }
+}
+
+// NewPhysicalDeviceSubgroupPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceSubgroupPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceSubgroupProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceSubgroupProperties)
+ obj.refb019c29f = (*C.VkPhysicalDeviceSubgroupProperties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceSubgroupProperties) PassRef() (*C.VkPhysicalDeviceSubgroupProperties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refb019c29f != nil {
+ return x.refb019c29f, nil
+ }
+ memb019c29f := allocPhysicalDeviceSubgroupPropertiesMemory(1)
+ refb019c29f := (*C.VkPhysicalDeviceSubgroupProperties)(memb019c29f)
+ allocsb019c29f := new(cgoAllocMap)
+ allocsb019c29f.Add(memb019c29f)
+
+ var csType_allocs *cgoAllocMap
+ refb019c29f.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsb019c29f.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refb019c29f.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsb019c29f.Borrow(cpNext_allocs)
+
+ var csubgroupSize_allocs *cgoAllocMap
+ refb019c29f.subgroupSize, csubgroupSize_allocs = (C.uint32_t)(x.SubgroupSize), cgoAllocsUnknown
+ allocsb019c29f.Borrow(csubgroupSize_allocs)
+
+ var csupportedStages_allocs *cgoAllocMap
+ refb019c29f.supportedStages, csupportedStages_allocs = (C.VkShaderStageFlags)(x.SupportedStages), cgoAllocsUnknown
+ allocsb019c29f.Borrow(csupportedStages_allocs)
+
+ var csupportedOperations_allocs *cgoAllocMap
+ refb019c29f.supportedOperations, csupportedOperations_allocs = (C.VkSubgroupFeatureFlags)(x.SupportedOperations), cgoAllocsUnknown
+ allocsb019c29f.Borrow(csupportedOperations_allocs)
+
+ var cquadOperationsInAllStages_allocs *cgoAllocMap
+ refb019c29f.quadOperationsInAllStages, cquadOperationsInAllStages_allocs = (C.VkBool32)(x.QuadOperationsInAllStages), cgoAllocsUnknown
+ allocsb019c29f.Borrow(cquadOperationsInAllStages_allocs)
+
+ x.refb019c29f = refb019c29f
+ x.allocsb019c29f = allocsb019c29f
+ return refb019c29f, allocsb019c29f
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceSubgroupProperties) PassValue() (C.VkPhysicalDeviceSubgroupProperties, *cgoAllocMap) {
+ if x.refb019c29f != nil {
+ return *x.refb019c29f, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceSubgroupProperties) Deref() {
+ if x.refb019c29f == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refb019c29f.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb019c29f.pNext))
+ x.SubgroupSize = (uint32)(x.refb019c29f.subgroupSize)
+ x.SupportedStages = (ShaderStageFlags)(x.refb019c29f.supportedStages)
+ x.SupportedOperations = (SubgroupFeatureFlags)(x.refb019c29f.supportedOperations)
+ x.QuadOperationsInAllStages = (Bool32)(x.refb019c29f.quadOperationsInAllStages)
+}
+
+// allocBindBufferMemoryInfoMemory allocates memory for type C.VkBindBufferMemoryInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocBindBufferMemoryInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBindBufferMemoryInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfBindBufferMemoryInfoValue = unsafe.Sizeof([1]C.VkBindBufferMemoryInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *BindBufferMemoryInfo) Ref() *C.VkBindBufferMemoryInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refd392322d
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *BindBufferMemoryInfo) Free() {
+ if x != nil && x.allocsd392322d != nil {
+ x.allocsd392322d.(*cgoAllocMap).Free()
+ x.refd392322d = nil
+ }
+}
+
+// NewBindBufferMemoryInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewBindBufferMemoryInfoRef(ref unsafe.Pointer) *BindBufferMemoryInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(BindBufferMemoryInfo)
+ obj.refd392322d = (*C.VkBindBufferMemoryInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *BindBufferMemoryInfo) PassRef() (*C.VkBindBufferMemoryInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refd392322d != nil {
+ return x.refd392322d, nil
+ }
+ memd392322d := allocBindBufferMemoryInfoMemory(1)
+ refd392322d := (*C.VkBindBufferMemoryInfo)(memd392322d)
+ allocsd392322d := new(cgoAllocMap)
+ allocsd392322d.Add(memd392322d)
+
+ var csType_allocs *cgoAllocMap
+ refd392322d.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd392322d.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refd392322d.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsd392322d.Borrow(cpNext_allocs)
+
+ var cbuffer_allocs *cgoAllocMap
+ refd392322d.buffer, cbuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.Buffer)), cgoAllocsUnknown
+ allocsd392322d.Borrow(cbuffer_allocs)
+
+ var cmemory_allocs *cgoAllocMap
+ refd392322d.memory, cmemory_allocs = *(*C.VkDeviceMemory)(unsafe.Pointer(&x.Memory)), cgoAllocsUnknown
+ allocsd392322d.Borrow(cmemory_allocs)
+
+ var cmemoryOffset_allocs *cgoAllocMap
+ refd392322d.memoryOffset, cmemoryOffset_allocs = (C.VkDeviceSize)(x.MemoryOffset), cgoAllocsUnknown
+ allocsd392322d.Borrow(cmemoryOffset_allocs)
+
+ x.refd392322d = refd392322d
+ x.allocsd392322d = allocsd392322d
+ return refd392322d, allocsd392322d
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x BindBufferMemoryInfo) PassValue() (C.VkBindBufferMemoryInfo, *cgoAllocMap) {
+ if x.refd392322d != nil {
+ return *x.refd392322d, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *BindBufferMemoryInfo) Deref() {
+ if x.refd392322d == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refd392322d.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd392322d.pNext))
+ x.Buffer = *(*Buffer)(unsafe.Pointer(&x.refd392322d.buffer))
+ x.Memory = *(*DeviceMemory)(unsafe.Pointer(&x.refd392322d.memory))
+ x.MemoryOffset = (DeviceSize)(x.refd392322d.memoryOffset)
+}
+
+// allocBindImageMemoryInfoMemory allocates memory for type C.VkBindImageMemoryInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocBindImageMemoryInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBindImageMemoryInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfBindImageMemoryInfoValue = unsafe.Sizeof([1]C.VkBindImageMemoryInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *BindImageMemoryInfo) Ref() *C.VkBindImageMemoryInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref767a2113
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *BindImageMemoryInfo) Free() {
+ if x != nil && x.allocs767a2113 != nil {
+ x.allocs767a2113.(*cgoAllocMap).Free()
+ x.ref767a2113 = nil
+ }
+}
+
+// NewBindImageMemoryInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewBindImageMemoryInfoRef(ref unsafe.Pointer) *BindImageMemoryInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(BindImageMemoryInfo)
+ obj.ref767a2113 = (*C.VkBindImageMemoryInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *BindImageMemoryInfo) PassRef() (*C.VkBindImageMemoryInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref767a2113 != nil {
+ return x.ref767a2113, nil
+ }
+ mem767a2113 := allocBindImageMemoryInfoMemory(1)
+ ref767a2113 := (*C.VkBindImageMemoryInfo)(mem767a2113)
+ allocs767a2113 := new(cgoAllocMap)
+ allocs767a2113.Add(mem767a2113)
+
+ var csType_allocs *cgoAllocMap
+ ref767a2113.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs767a2113.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref767a2113.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs767a2113.Borrow(cpNext_allocs)
+
+ var cimage_allocs *cgoAllocMap
+ ref767a2113.image, cimage_allocs = *(*C.VkImage)(unsafe.Pointer(&x.Image)), cgoAllocsUnknown
+ allocs767a2113.Borrow(cimage_allocs)
+
+ var cmemory_allocs *cgoAllocMap
+ ref767a2113.memory, cmemory_allocs = *(*C.VkDeviceMemory)(unsafe.Pointer(&x.Memory)), cgoAllocsUnknown
+ allocs767a2113.Borrow(cmemory_allocs)
+
+ var cmemoryOffset_allocs *cgoAllocMap
+ ref767a2113.memoryOffset, cmemoryOffset_allocs = (C.VkDeviceSize)(x.MemoryOffset), cgoAllocsUnknown
+ allocs767a2113.Borrow(cmemoryOffset_allocs)
+
+ x.ref767a2113 = ref767a2113
+ x.allocs767a2113 = allocs767a2113
+ return ref767a2113, allocs767a2113
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x BindImageMemoryInfo) PassValue() (C.VkBindImageMemoryInfo, *cgoAllocMap) {
+ if x.ref767a2113 != nil {
+ return *x.ref767a2113, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *BindImageMemoryInfo) Deref() {
+ if x.ref767a2113 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref767a2113.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref767a2113.pNext))
+ x.Image = *(*Image)(unsafe.Pointer(&x.ref767a2113.image))
+ x.Memory = *(*DeviceMemory)(unsafe.Pointer(&x.ref767a2113.memory))
+ x.MemoryOffset = (DeviceSize)(x.ref767a2113.memoryOffset)
+}
+
+// allocPhysicalDevice16BitStorageFeaturesMemory allocates memory for type C.VkPhysicalDevice16BitStorageFeatures in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDevice16BitStorageFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDevice16BitStorageFeaturesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDevice16BitStorageFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDevice16BitStorageFeatures{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDevice16BitStorageFeatures) Ref() *C.VkPhysicalDevice16BitStorageFeatures {
+ if x == nil {
+ return nil
+ }
+ return x.refa90fed14
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDevice16BitStorageFeatures) Free() {
+ if x != nil && x.allocsa90fed14 != nil {
+ x.allocsa90fed14.(*cgoAllocMap).Free()
+ x.refa90fed14 = nil
+ }
+}
+
+// NewPhysicalDevice16BitStorageFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDevice16BitStorageFeaturesRef(ref unsafe.Pointer) *PhysicalDevice16BitStorageFeatures {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDevice16BitStorageFeatures)
+ obj.refa90fed14 = (*C.VkPhysicalDevice16BitStorageFeatures)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDevice16BitStorageFeatures) PassRef() (*C.VkPhysicalDevice16BitStorageFeatures, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refa90fed14 != nil {
+ return x.refa90fed14, nil
+ }
+ mema90fed14 := allocPhysicalDevice16BitStorageFeaturesMemory(1)
+ refa90fed14 := (*C.VkPhysicalDevice16BitStorageFeatures)(mema90fed14)
+ allocsa90fed14 := new(cgoAllocMap)
+ allocsa90fed14.Add(mema90fed14)
+
+ var csType_allocs *cgoAllocMap
+ refa90fed14.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsa90fed14.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refa90fed14.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsa90fed14.Borrow(cpNext_allocs)
+
+ var cstorageBuffer16BitAccess_allocs *cgoAllocMap
+ refa90fed14.storageBuffer16BitAccess, cstorageBuffer16BitAccess_allocs = (C.VkBool32)(x.StorageBuffer16BitAccess), cgoAllocsUnknown
+ allocsa90fed14.Borrow(cstorageBuffer16BitAccess_allocs)
+
+ var cuniformAndStorageBuffer16BitAccess_allocs *cgoAllocMap
+ refa90fed14.uniformAndStorageBuffer16BitAccess, cuniformAndStorageBuffer16BitAccess_allocs = (C.VkBool32)(x.UniformAndStorageBuffer16BitAccess), cgoAllocsUnknown
+ allocsa90fed14.Borrow(cuniformAndStorageBuffer16BitAccess_allocs)
+
+ var cstoragePushConstant16_allocs *cgoAllocMap
+ refa90fed14.storagePushConstant16, cstoragePushConstant16_allocs = (C.VkBool32)(x.StoragePushConstant16), cgoAllocsUnknown
+ allocsa90fed14.Borrow(cstoragePushConstant16_allocs)
+
+ var cstorageInputOutput16_allocs *cgoAllocMap
+ refa90fed14.storageInputOutput16, cstorageInputOutput16_allocs = (C.VkBool32)(x.StorageInputOutput16), cgoAllocsUnknown
+ allocsa90fed14.Borrow(cstorageInputOutput16_allocs)
+
+ x.refa90fed14 = refa90fed14
+ x.allocsa90fed14 = allocsa90fed14
+ return refa90fed14, allocsa90fed14
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDevice16BitStorageFeatures) PassValue() (C.VkPhysicalDevice16BitStorageFeatures, *cgoAllocMap) {
+ if x.refa90fed14 != nil {
+ return *x.refa90fed14, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDevice16BitStorageFeatures) Deref() {
+ if x.refa90fed14 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refa90fed14.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa90fed14.pNext))
+ x.StorageBuffer16BitAccess = (Bool32)(x.refa90fed14.storageBuffer16BitAccess)
+ x.UniformAndStorageBuffer16BitAccess = (Bool32)(x.refa90fed14.uniformAndStorageBuffer16BitAccess)
+ x.StoragePushConstant16 = (Bool32)(x.refa90fed14.storagePushConstant16)
+ x.StorageInputOutput16 = (Bool32)(x.refa90fed14.storageInputOutput16)
+}
+
+// allocMemoryDedicatedRequirementsMemory allocates memory for type C.VkMemoryDedicatedRequirements in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocMemoryDedicatedRequirementsMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMemoryDedicatedRequirementsValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfMemoryDedicatedRequirementsValue = unsafe.Sizeof([1]C.VkMemoryDedicatedRequirements{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *MemoryDedicatedRequirements) Ref() *C.VkMemoryDedicatedRequirements {
+ if x == nil {
+ return nil
+ }
+ return x.refaa924122
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *MemoryDedicatedRequirements) Free() {
+ if x != nil && x.allocsaa924122 != nil {
+ x.allocsaa924122.(*cgoAllocMap).Free()
+ x.refaa924122 = nil
+ }
+}
+
+// NewMemoryDedicatedRequirementsRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewMemoryDedicatedRequirementsRef(ref unsafe.Pointer) *MemoryDedicatedRequirements {
+ if ref == nil {
+ return nil
+ }
+ obj := new(MemoryDedicatedRequirements)
+ obj.refaa924122 = (*C.VkMemoryDedicatedRequirements)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *MemoryDedicatedRequirements) PassRef() (*C.VkMemoryDedicatedRequirements, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refaa924122 != nil {
+ return x.refaa924122, nil
+ }
+ memaa924122 := allocMemoryDedicatedRequirementsMemory(1)
+ refaa924122 := (*C.VkMemoryDedicatedRequirements)(memaa924122)
+ allocsaa924122 := new(cgoAllocMap)
+ allocsaa924122.Add(memaa924122)
+
+ var csType_allocs *cgoAllocMap
+ refaa924122.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsaa924122.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refaa924122.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsaa924122.Borrow(cpNext_allocs)
+
+ var cprefersDedicatedAllocation_allocs *cgoAllocMap
+ refaa924122.prefersDedicatedAllocation, cprefersDedicatedAllocation_allocs = (C.VkBool32)(x.PrefersDedicatedAllocation), cgoAllocsUnknown
+ allocsaa924122.Borrow(cprefersDedicatedAllocation_allocs)
+
+ var crequiresDedicatedAllocation_allocs *cgoAllocMap
+ refaa924122.requiresDedicatedAllocation, crequiresDedicatedAllocation_allocs = (C.VkBool32)(x.RequiresDedicatedAllocation), cgoAllocsUnknown
+ allocsaa924122.Borrow(crequiresDedicatedAllocation_allocs)
+
+ x.refaa924122 = refaa924122
+ x.allocsaa924122 = allocsaa924122
+ return refaa924122, allocsaa924122
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x MemoryDedicatedRequirements) PassValue() (C.VkMemoryDedicatedRequirements, *cgoAllocMap) {
+ if x.refaa924122 != nil {
+ return *x.refaa924122, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *MemoryDedicatedRequirements) Deref() {
+ if x.refaa924122 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refaa924122.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refaa924122.pNext))
+ x.PrefersDedicatedAllocation = (Bool32)(x.refaa924122.prefersDedicatedAllocation)
+ x.RequiresDedicatedAllocation = (Bool32)(x.refaa924122.requiresDedicatedAllocation)
+}
+
+// allocMemoryDedicatedAllocateInfoMemory allocates memory for type C.VkMemoryDedicatedAllocateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocMemoryDedicatedAllocateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMemoryDedicatedAllocateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfMemoryDedicatedAllocateInfoValue = unsafe.Sizeof([1]C.VkMemoryDedicatedAllocateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *MemoryDedicatedAllocateInfo) Ref() *C.VkMemoryDedicatedAllocateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.reff8fabe62
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *MemoryDedicatedAllocateInfo) Free() {
+ if x != nil && x.allocsf8fabe62 != nil {
+ x.allocsf8fabe62.(*cgoAllocMap).Free()
+ x.reff8fabe62 = nil
+ }
+}
+
+// NewMemoryDedicatedAllocateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewMemoryDedicatedAllocateInfoRef(ref unsafe.Pointer) *MemoryDedicatedAllocateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(MemoryDedicatedAllocateInfo)
+ obj.reff8fabe62 = (*C.VkMemoryDedicatedAllocateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *MemoryDedicatedAllocateInfo) PassRef() (*C.VkMemoryDedicatedAllocateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.reff8fabe62 != nil {
+ return x.reff8fabe62, nil
+ }
+ memf8fabe62 := allocMemoryDedicatedAllocateInfoMemory(1)
+ reff8fabe62 := (*C.VkMemoryDedicatedAllocateInfo)(memf8fabe62)
+ allocsf8fabe62 := new(cgoAllocMap)
+ allocsf8fabe62.Add(memf8fabe62)
+
+ var csType_allocs *cgoAllocMap
+ reff8fabe62.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsf8fabe62.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ reff8fabe62.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsf8fabe62.Borrow(cpNext_allocs)
+
+ var cimage_allocs *cgoAllocMap
+ reff8fabe62.image, cimage_allocs = *(*C.VkImage)(unsafe.Pointer(&x.Image)), cgoAllocsUnknown
+ allocsf8fabe62.Borrow(cimage_allocs)
+
+ var cbuffer_allocs *cgoAllocMap
+ reff8fabe62.buffer, cbuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.Buffer)), cgoAllocsUnknown
+ allocsf8fabe62.Borrow(cbuffer_allocs)
+
+ x.reff8fabe62 = reff8fabe62
+ x.allocsf8fabe62 = allocsf8fabe62
+ return reff8fabe62, allocsf8fabe62
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x MemoryDedicatedAllocateInfo) PassValue() (C.VkMemoryDedicatedAllocateInfo, *cgoAllocMap) {
+ if x.reff8fabe62 != nil {
+ return *x.reff8fabe62, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *MemoryDedicatedAllocateInfo) Deref() {
+ if x.reff8fabe62 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.reff8fabe62.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff8fabe62.pNext))
+ x.Image = *(*Image)(unsafe.Pointer(&x.reff8fabe62.image))
+ x.Buffer = *(*Buffer)(unsafe.Pointer(&x.reff8fabe62.buffer))
+}
+
+// allocMemoryAllocateFlagsInfoMemory allocates memory for type C.VkMemoryAllocateFlagsInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocMemoryAllocateFlagsInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMemoryAllocateFlagsInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfMemoryAllocateFlagsInfoValue = unsafe.Sizeof([1]C.VkMemoryAllocateFlagsInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *MemoryAllocateFlagsInfo) Ref() *C.VkMemoryAllocateFlagsInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref7ca6664
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *MemoryAllocateFlagsInfo) Free() {
+ if x != nil && x.allocs7ca6664 != nil {
+ x.allocs7ca6664.(*cgoAllocMap).Free()
+ x.ref7ca6664 = nil
+ }
+}
+
+// NewMemoryAllocateFlagsInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewMemoryAllocateFlagsInfoRef(ref unsafe.Pointer) *MemoryAllocateFlagsInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(MemoryAllocateFlagsInfo)
+ obj.ref7ca6664 = (*C.VkMemoryAllocateFlagsInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *MemoryAllocateFlagsInfo) PassRef() (*C.VkMemoryAllocateFlagsInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref7ca6664 != nil {
+ return x.ref7ca6664, nil
+ }
+ mem7ca6664 := allocMemoryAllocateFlagsInfoMemory(1)
+ ref7ca6664 := (*C.VkMemoryAllocateFlagsInfo)(mem7ca6664)
+ allocs7ca6664 := new(cgoAllocMap)
+ allocs7ca6664.Add(mem7ca6664)
+
+ var csType_allocs *cgoAllocMap
+ ref7ca6664.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs7ca6664.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref7ca6664.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs7ca6664.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref7ca6664.flags, cflags_allocs = (C.VkMemoryAllocateFlags)(x.Flags), cgoAllocsUnknown
+ allocs7ca6664.Borrow(cflags_allocs)
+
+ var cdeviceMask_allocs *cgoAllocMap
+ ref7ca6664.deviceMask, cdeviceMask_allocs = (C.uint32_t)(x.DeviceMask), cgoAllocsUnknown
+ allocs7ca6664.Borrow(cdeviceMask_allocs)
+
+ x.ref7ca6664 = ref7ca6664
+ x.allocs7ca6664 = allocs7ca6664
+ return ref7ca6664, allocs7ca6664
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x MemoryAllocateFlagsInfo) PassValue() (C.VkMemoryAllocateFlagsInfo, *cgoAllocMap) {
+ if x.ref7ca6664 != nil {
+ return *x.ref7ca6664, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *MemoryAllocateFlagsInfo) Deref() {
+ if x.ref7ca6664 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref7ca6664.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref7ca6664.pNext))
+ x.Flags = (MemoryAllocateFlags)(x.ref7ca6664.flags)
+ x.DeviceMask = (uint32)(x.ref7ca6664.deviceMask)
+}
+
+// allocDeviceGroupRenderPassBeginInfoMemory allocates memory for type C.VkDeviceGroupRenderPassBeginInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocDeviceGroupRenderPassBeginInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceGroupRenderPassBeginInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfDeviceGroupRenderPassBeginInfoValue = unsafe.Sizeof([1]C.VkDeviceGroupRenderPassBeginInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *DeviceGroupRenderPassBeginInfo) Ref() *C.VkDeviceGroupRenderPassBeginInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref139f3599
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *DeviceGroupRenderPassBeginInfo) Free() {
+ if x != nil && x.allocs139f3599 != nil {
+ x.allocs139f3599.(*cgoAllocMap).Free()
+ x.ref139f3599 = nil
+ }
+}
+
+// NewDeviceGroupRenderPassBeginInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewDeviceGroupRenderPassBeginInfoRef(ref unsafe.Pointer) *DeviceGroupRenderPassBeginInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(DeviceGroupRenderPassBeginInfo)
+ obj.ref139f3599 = (*C.VkDeviceGroupRenderPassBeginInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DeviceGroupRenderPassBeginInfo) PassRef() (*C.VkDeviceGroupRenderPassBeginInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref139f3599 != nil {
+ return x.ref139f3599, nil
+ }
+ mem139f3599 := allocDeviceGroupRenderPassBeginInfoMemory(1)
+ ref139f3599 := (*C.VkDeviceGroupRenderPassBeginInfo)(mem139f3599)
+ allocs139f3599 := new(cgoAllocMap)
+ allocs139f3599.Add(mem139f3599)
+
+ var csType_allocs *cgoAllocMap
+ ref139f3599.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs139f3599.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref139f3599.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs139f3599.Borrow(cpNext_allocs)
+
+ var cdeviceMask_allocs *cgoAllocMap
+ ref139f3599.deviceMask, cdeviceMask_allocs = (C.uint32_t)(x.DeviceMask), cgoAllocsUnknown
+ allocs139f3599.Borrow(cdeviceMask_allocs)
+
+ var cdeviceRenderAreaCount_allocs *cgoAllocMap
+ ref139f3599.deviceRenderAreaCount, cdeviceRenderAreaCount_allocs = (C.uint32_t)(x.DeviceRenderAreaCount), cgoAllocsUnknown
+ allocs139f3599.Borrow(cdeviceRenderAreaCount_allocs)
+
+ var cpDeviceRenderAreas_allocs *cgoAllocMap
+ ref139f3599.pDeviceRenderAreas, cpDeviceRenderAreas_allocs = unpackSRect2D(x.PDeviceRenderAreas)
+ allocs139f3599.Borrow(cpDeviceRenderAreas_allocs)
+
+ x.ref139f3599 = ref139f3599
+ x.allocs139f3599 = allocs139f3599
+ return ref139f3599, allocs139f3599
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DeviceGroupRenderPassBeginInfo) PassValue() (C.VkDeviceGroupRenderPassBeginInfo, *cgoAllocMap) {
+ if x.ref139f3599 != nil {
+ return *x.ref139f3599, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *DeviceGroupRenderPassBeginInfo) Deref() {
+ if x.ref139f3599 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref139f3599.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref139f3599.pNext))
+ x.DeviceMask = (uint32)(x.ref139f3599.deviceMask)
+ x.DeviceRenderAreaCount = (uint32)(x.ref139f3599.deviceRenderAreaCount)
+ packSRect2D(x.PDeviceRenderAreas, x.ref139f3599.pDeviceRenderAreas)
+}
+
+// allocDeviceGroupCommandBufferBeginInfoMemory allocates memory for type C.VkDeviceGroupCommandBufferBeginInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocDeviceGroupCommandBufferBeginInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceGroupCommandBufferBeginInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfDeviceGroupCommandBufferBeginInfoValue = unsafe.Sizeof([1]C.VkDeviceGroupCommandBufferBeginInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *DeviceGroupCommandBufferBeginInfo) Ref() *C.VkDeviceGroupCommandBufferBeginInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refb9a8f0cd
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *DeviceGroupCommandBufferBeginInfo) Free() {
+ if x != nil && x.allocsb9a8f0cd != nil {
+ x.allocsb9a8f0cd.(*cgoAllocMap).Free()
+ x.refb9a8f0cd = nil
+ }
+}
+
+// NewDeviceGroupCommandBufferBeginInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewDeviceGroupCommandBufferBeginInfoRef(ref unsafe.Pointer) *DeviceGroupCommandBufferBeginInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(DeviceGroupCommandBufferBeginInfo)
+ obj.refb9a8f0cd = (*C.VkDeviceGroupCommandBufferBeginInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DeviceGroupCommandBufferBeginInfo) PassRef() (*C.VkDeviceGroupCommandBufferBeginInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refb9a8f0cd != nil {
+ return x.refb9a8f0cd, nil
+ }
+ memb9a8f0cd := allocDeviceGroupCommandBufferBeginInfoMemory(1)
+ refb9a8f0cd := (*C.VkDeviceGroupCommandBufferBeginInfo)(memb9a8f0cd)
+ allocsb9a8f0cd := new(cgoAllocMap)
+ allocsb9a8f0cd.Add(memb9a8f0cd)
+
+ var csType_allocs *cgoAllocMap
+ refb9a8f0cd.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsb9a8f0cd.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refb9a8f0cd.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsb9a8f0cd.Borrow(cpNext_allocs)
+
+ var cdeviceMask_allocs *cgoAllocMap
+ refb9a8f0cd.deviceMask, cdeviceMask_allocs = (C.uint32_t)(x.DeviceMask), cgoAllocsUnknown
+ allocsb9a8f0cd.Borrow(cdeviceMask_allocs)
+
+ x.refb9a8f0cd = refb9a8f0cd
+ x.allocsb9a8f0cd = allocsb9a8f0cd
+ return refb9a8f0cd, allocsb9a8f0cd
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DeviceGroupCommandBufferBeginInfo) PassValue() (C.VkDeviceGroupCommandBufferBeginInfo, *cgoAllocMap) {
+ if x.refb9a8f0cd != nil {
+ return *x.refb9a8f0cd, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *DeviceGroupCommandBufferBeginInfo) Deref() {
+ if x.refb9a8f0cd == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refb9a8f0cd.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb9a8f0cd.pNext))
+ x.DeviceMask = (uint32)(x.refb9a8f0cd.deviceMask)
+}
+
+// allocDeviceGroupSubmitInfoMemory allocates memory for type C.VkDeviceGroupSubmitInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocDeviceGroupSubmitInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceGroupSubmitInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfDeviceGroupSubmitInfoValue = unsafe.Sizeof([1]C.VkDeviceGroupSubmitInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *DeviceGroupSubmitInfo) Ref() *C.VkDeviceGroupSubmitInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refea4e7ce4
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *DeviceGroupSubmitInfo) Free() {
+ if x != nil && x.allocsea4e7ce4 != nil {
+ x.allocsea4e7ce4.(*cgoAllocMap).Free()
+ x.refea4e7ce4 = nil
+ }
+}
+
+// NewDeviceGroupSubmitInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewDeviceGroupSubmitInfoRef(ref unsafe.Pointer) *DeviceGroupSubmitInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(DeviceGroupSubmitInfo)
+ obj.refea4e7ce4 = (*C.VkDeviceGroupSubmitInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DeviceGroupSubmitInfo) PassRef() (*C.VkDeviceGroupSubmitInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refea4e7ce4 != nil {
+ return x.refea4e7ce4, nil
+ }
+ memea4e7ce4 := allocDeviceGroupSubmitInfoMemory(1)
+ refea4e7ce4 := (*C.VkDeviceGroupSubmitInfo)(memea4e7ce4)
+ allocsea4e7ce4 := new(cgoAllocMap)
+ allocsea4e7ce4.Add(memea4e7ce4)
+
+ var csType_allocs *cgoAllocMap
+ refea4e7ce4.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsea4e7ce4.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refea4e7ce4.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsea4e7ce4.Borrow(cpNext_allocs)
+
+ var cwaitSemaphoreCount_allocs *cgoAllocMap
+ refea4e7ce4.waitSemaphoreCount, cwaitSemaphoreCount_allocs = (C.uint32_t)(x.WaitSemaphoreCount), cgoAllocsUnknown
+ allocsea4e7ce4.Borrow(cwaitSemaphoreCount_allocs)
+
+ var cpWaitSemaphoreDeviceIndices_allocs *cgoAllocMap
+ refea4e7ce4.pWaitSemaphoreDeviceIndices, cpWaitSemaphoreDeviceIndices_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PWaitSemaphoreDeviceIndices)).Data)), cgoAllocsUnknown
+ allocsea4e7ce4.Borrow(cpWaitSemaphoreDeviceIndices_allocs)
+
+ var ccommandBufferCount_allocs *cgoAllocMap
+ refea4e7ce4.commandBufferCount, ccommandBufferCount_allocs = (C.uint32_t)(x.CommandBufferCount), cgoAllocsUnknown
+ allocsea4e7ce4.Borrow(ccommandBufferCount_allocs)
+
+ var cpCommandBufferDeviceMasks_allocs *cgoAllocMap
+ refea4e7ce4.pCommandBufferDeviceMasks, cpCommandBufferDeviceMasks_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PCommandBufferDeviceMasks)).Data)), cgoAllocsUnknown
+ allocsea4e7ce4.Borrow(cpCommandBufferDeviceMasks_allocs)
+
+ var csignalSemaphoreCount_allocs *cgoAllocMap
+ refea4e7ce4.signalSemaphoreCount, csignalSemaphoreCount_allocs = (C.uint32_t)(x.SignalSemaphoreCount), cgoAllocsUnknown
+ allocsea4e7ce4.Borrow(csignalSemaphoreCount_allocs)
+
+ var cpSignalSemaphoreDeviceIndices_allocs *cgoAllocMap
+ refea4e7ce4.pSignalSemaphoreDeviceIndices, cpSignalSemaphoreDeviceIndices_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PSignalSemaphoreDeviceIndices)).Data)), cgoAllocsUnknown
+ allocsea4e7ce4.Borrow(cpSignalSemaphoreDeviceIndices_allocs)
+
+ x.refea4e7ce4 = refea4e7ce4
+ x.allocsea4e7ce4 = allocsea4e7ce4
+ return refea4e7ce4, allocsea4e7ce4
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DeviceGroupSubmitInfo) PassValue() (C.VkDeviceGroupSubmitInfo, *cgoAllocMap) {
+ if x.refea4e7ce4 != nil {
+ return *x.refea4e7ce4, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *DeviceGroupSubmitInfo) Deref() {
+ if x.refea4e7ce4 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refea4e7ce4.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refea4e7ce4.pNext))
+ x.WaitSemaphoreCount = (uint32)(x.refea4e7ce4.waitSemaphoreCount)
+ hxf04b15b := (*sliceHeader)(unsafe.Pointer(&x.PWaitSemaphoreDeviceIndices))
+ hxf04b15b.Data = unsafe.Pointer(x.refea4e7ce4.pWaitSemaphoreDeviceIndices)
+ hxf04b15b.Cap = 0x7fffffff
+ // hxf04b15b.Len = ?
+
+ x.CommandBufferCount = (uint32)(x.refea4e7ce4.commandBufferCount)
+ hxf2f888b := (*sliceHeader)(unsafe.Pointer(&x.PCommandBufferDeviceMasks))
+ hxf2f888b.Data = unsafe.Pointer(x.refea4e7ce4.pCommandBufferDeviceMasks)
+ hxf2f888b.Cap = 0x7fffffff
+ // hxf2f888b.Len = ?
+
+ x.SignalSemaphoreCount = (uint32)(x.refea4e7ce4.signalSemaphoreCount)
+ hxf5d1de2 := (*sliceHeader)(unsafe.Pointer(&x.PSignalSemaphoreDeviceIndices))
+ hxf5d1de2.Data = unsafe.Pointer(x.refea4e7ce4.pSignalSemaphoreDeviceIndices)
+ hxf5d1de2.Cap = 0x7fffffff
+ // hxf5d1de2.Len = ?
+
+}
+
+// allocDeviceGroupBindSparseInfoMemory allocates memory for type C.VkDeviceGroupBindSparseInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocDeviceGroupBindSparseInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceGroupBindSparseInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfDeviceGroupBindSparseInfoValue = unsafe.Sizeof([1]C.VkDeviceGroupBindSparseInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *DeviceGroupBindSparseInfo) Ref() *C.VkDeviceGroupBindSparseInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref5b5446cd
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *DeviceGroupBindSparseInfo) Free() {
+ if x != nil && x.allocs5b5446cd != nil {
+ x.allocs5b5446cd.(*cgoAllocMap).Free()
+ x.ref5b5446cd = nil
+ }
+}
+
+// NewDeviceGroupBindSparseInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewDeviceGroupBindSparseInfoRef(ref unsafe.Pointer) *DeviceGroupBindSparseInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(DeviceGroupBindSparseInfo)
+ obj.ref5b5446cd = (*C.VkDeviceGroupBindSparseInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DeviceGroupBindSparseInfo) PassRef() (*C.VkDeviceGroupBindSparseInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref5b5446cd != nil {
+ return x.ref5b5446cd, nil
+ }
+ mem5b5446cd := allocDeviceGroupBindSparseInfoMemory(1)
+ ref5b5446cd := (*C.VkDeviceGroupBindSparseInfo)(mem5b5446cd)
+ allocs5b5446cd := new(cgoAllocMap)
+ allocs5b5446cd.Add(mem5b5446cd)
+
+ var csType_allocs *cgoAllocMap
+ ref5b5446cd.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs5b5446cd.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref5b5446cd.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs5b5446cd.Borrow(cpNext_allocs)
+
+ var cresourceDeviceIndex_allocs *cgoAllocMap
+ ref5b5446cd.resourceDeviceIndex, cresourceDeviceIndex_allocs = (C.uint32_t)(x.ResourceDeviceIndex), cgoAllocsUnknown
+ allocs5b5446cd.Borrow(cresourceDeviceIndex_allocs)
+
+ var cmemoryDeviceIndex_allocs *cgoAllocMap
+ ref5b5446cd.memoryDeviceIndex, cmemoryDeviceIndex_allocs = (C.uint32_t)(x.MemoryDeviceIndex), cgoAllocsUnknown
+ allocs5b5446cd.Borrow(cmemoryDeviceIndex_allocs)
+
+ x.ref5b5446cd = ref5b5446cd
+ x.allocs5b5446cd = allocs5b5446cd
+ return ref5b5446cd, allocs5b5446cd
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DeviceGroupBindSparseInfo) PassValue() (C.VkDeviceGroupBindSparseInfo, *cgoAllocMap) {
+ if x.ref5b5446cd != nil {
+ return *x.ref5b5446cd, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *DeviceGroupBindSparseInfo) Deref() {
+ if x.ref5b5446cd == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref5b5446cd.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5b5446cd.pNext))
+ x.ResourceDeviceIndex = (uint32)(x.ref5b5446cd.resourceDeviceIndex)
+ x.MemoryDeviceIndex = (uint32)(x.ref5b5446cd.memoryDeviceIndex)
+}
+
+// allocBindBufferMemoryDeviceGroupInfoMemory allocates memory for type C.VkBindBufferMemoryDeviceGroupInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocBindBufferMemoryDeviceGroupInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBindBufferMemoryDeviceGroupInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfBindBufferMemoryDeviceGroupInfoValue = unsafe.Sizeof([1]C.VkBindBufferMemoryDeviceGroupInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *BindBufferMemoryDeviceGroupInfo) Ref() *C.VkBindBufferMemoryDeviceGroupInfo {
+ if x == nil {
+ return nil
+ }
+ return x.reff136b64f
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *BindBufferMemoryDeviceGroupInfo) Free() {
+ if x != nil && x.allocsf136b64f != nil {
+ x.allocsf136b64f.(*cgoAllocMap).Free()
+ x.reff136b64f = nil
+ }
+}
+
+// NewBindBufferMemoryDeviceGroupInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewBindBufferMemoryDeviceGroupInfoRef(ref unsafe.Pointer) *BindBufferMemoryDeviceGroupInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(BindBufferMemoryDeviceGroupInfo)
+ obj.reff136b64f = (*C.VkBindBufferMemoryDeviceGroupInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *BindBufferMemoryDeviceGroupInfo) PassRef() (*C.VkBindBufferMemoryDeviceGroupInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.reff136b64f != nil {
+ return x.reff136b64f, nil
+ }
+ memf136b64f := allocBindBufferMemoryDeviceGroupInfoMemory(1)
+ reff136b64f := (*C.VkBindBufferMemoryDeviceGroupInfo)(memf136b64f)
+ allocsf136b64f := new(cgoAllocMap)
+ allocsf136b64f.Add(memf136b64f)
+
+ var csType_allocs *cgoAllocMap
+ reff136b64f.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsf136b64f.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ reff136b64f.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsf136b64f.Borrow(cpNext_allocs)
+
+ var cdeviceIndexCount_allocs *cgoAllocMap
+ reff136b64f.deviceIndexCount, cdeviceIndexCount_allocs = (C.uint32_t)(x.DeviceIndexCount), cgoAllocsUnknown
+ allocsf136b64f.Borrow(cdeviceIndexCount_allocs)
+
+ var cpDeviceIndices_allocs *cgoAllocMap
+ reff136b64f.pDeviceIndices, cpDeviceIndices_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PDeviceIndices)).Data)), cgoAllocsUnknown
+ allocsf136b64f.Borrow(cpDeviceIndices_allocs)
+
+ x.reff136b64f = reff136b64f
+ x.allocsf136b64f = allocsf136b64f
+ return reff136b64f, allocsf136b64f
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x BindBufferMemoryDeviceGroupInfo) PassValue() (C.VkBindBufferMemoryDeviceGroupInfo, *cgoAllocMap) {
+ if x.reff136b64f != nil {
+ return *x.reff136b64f, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *BindBufferMemoryDeviceGroupInfo) Deref() {
+ if x.reff136b64f == nil {
+ return
+ }
+ x.SType = (StructureType)(x.reff136b64f.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff136b64f.pNext))
+ x.DeviceIndexCount = (uint32)(x.reff136b64f.deviceIndexCount)
+ hxfe53d34 := (*sliceHeader)(unsafe.Pointer(&x.PDeviceIndices))
+ hxfe53d34.Data = unsafe.Pointer(x.reff136b64f.pDeviceIndices)
+ hxfe53d34.Cap = 0x7fffffff
+ // hxfe53d34.Len = ?
+
+}
+
+// allocBindImageMemoryDeviceGroupInfoMemory allocates memory for type C.VkBindImageMemoryDeviceGroupInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocBindImageMemoryDeviceGroupInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBindImageMemoryDeviceGroupInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfBindImageMemoryDeviceGroupInfoValue = unsafe.Sizeof([1]C.VkBindImageMemoryDeviceGroupInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *BindImageMemoryDeviceGroupInfo) Ref() *C.VkBindImageMemoryDeviceGroupInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref24f026a5
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *BindImageMemoryDeviceGroupInfo) Free() {
+ if x != nil && x.allocs24f026a5 != nil {
+ x.allocs24f026a5.(*cgoAllocMap).Free()
+ x.ref24f026a5 = nil
+ }
+}
+
+// NewBindImageMemoryDeviceGroupInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewBindImageMemoryDeviceGroupInfoRef(ref unsafe.Pointer) *BindImageMemoryDeviceGroupInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(BindImageMemoryDeviceGroupInfo)
+ obj.ref24f026a5 = (*C.VkBindImageMemoryDeviceGroupInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *BindImageMemoryDeviceGroupInfo) PassRef() (*C.VkBindImageMemoryDeviceGroupInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref24f026a5 != nil {
+ return x.ref24f026a5, nil
+ }
+ mem24f026a5 := allocBindImageMemoryDeviceGroupInfoMemory(1)
+ ref24f026a5 := (*C.VkBindImageMemoryDeviceGroupInfo)(mem24f026a5)
+ allocs24f026a5 := new(cgoAllocMap)
+ allocs24f026a5.Add(mem24f026a5)
+
+ var csType_allocs *cgoAllocMap
+ ref24f026a5.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs24f026a5.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref24f026a5.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs24f026a5.Borrow(cpNext_allocs)
+
+ var cdeviceIndexCount_allocs *cgoAllocMap
+ ref24f026a5.deviceIndexCount, cdeviceIndexCount_allocs = (C.uint32_t)(x.DeviceIndexCount), cgoAllocsUnknown
+ allocs24f026a5.Borrow(cdeviceIndexCount_allocs)
+
+ var cpDeviceIndices_allocs *cgoAllocMap
+ ref24f026a5.pDeviceIndices, cpDeviceIndices_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PDeviceIndices)).Data)), cgoAllocsUnknown
+ allocs24f026a5.Borrow(cpDeviceIndices_allocs)
+
+ var csplitInstanceBindRegionCount_allocs *cgoAllocMap
+ ref24f026a5.splitInstanceBindRegionCount, csplitInstanceBindRegionCount_allocs = (C.uint32_t)(x.SplitInstanceBindRegionCount), cgoAllocsUnknown
+ allocs24f026a5.Borrow(csplitInstanceBindRegionCount_allocs)
+
+ var cpSplitInstanceBindRegions_allocs *cgoAllocMap
+ ref24f026a5.pSplitInstanceBindRegions, cpSplitInstanceBindRegions_allocs = unpackSRect2D(x.PSplitInstanceBindRegions)
+ allocs24f026a5.Borrow(cpSplitInstanceBindRegions_allocs)
+
+ x.ref24f026a5 = ref24f026a5
+ x.allocs24f026a5 = allocs24f026a5
+ return ref24f026a5, allocs24f026a5
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x BindImageMemoryDeviceGroupInfo) PassValue() (C.VkBindImageMemoryDeviceGroupInfo, *cgoAllocMap) {
+ if x.ref24f026a5 != nil {
+ return *x.ref24f026a5, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *BindImageMemoryDeviceGroupInfo) Deref() {
+ if x.ref24f026a5 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref24f026a5.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref24f026a5.pNext))
+ x.DeviceIndexCount = (uint32)(x.ref24f026a5.deviceIndexCount)
+ hxf547023 := (*sliceHeader)(unsafe.Pointer(&x.PDeviceIndices))
+ hxf547023.Data = unsafe.Pointer(x.ref24f026a5.pDeviceIndices)
+ hxf547023.Cap = 0x7fffffff
+ // hxf547023.Len = ?
+
+ x.SplitInstanceBindRegionCount = (uint32)(x.ref24f026a5.splitInstanceBindRegionCount)
+ packSRect2D(x.PSplitInstanceBindRegions, x.ref24f026a5.pSplitInstanceBindRegions)
+}
+
+// allocPhysicalDeviceGroupPropertiesMemory allocates memory for type C.VkPhysicalDeviceGroupProperties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceGroupPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceGroupPropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceGroupPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceGroupProperties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceGroupProperties) Ref() *C.VkPhysicalDeviceGroupProperties {
+ if x == nil {
+ return nil
+ }
+ return x.ref2aa9a663
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceGroupProperties) Free() {
+ if x != nil && x.allocs2aa9a663 != nil {
+ x.allocs2aa9a663.(*cgoAllocMap).Free()
+ x.ref2aa9a663 = nil
+ }
+}
+
+// NewPhysicalDeviceGroupPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceGroupPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceGroupProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceGroupProperties)
+ obj.ref2aa9a663 = (*C.VkPhysicalDeviceGroupProperties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceGroupProperties) PassRef() (*C.VkPhysicalDeviceGroupProperties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref2aa9a663 != nil {
+ return x.ref2aa9a663, nil
+ }
+ mem2aa9a663 := allocPhysicalDeviceGroupPropertiesMemory(1)
+ ref2aa9a663 := (*C.VkPhysicalDeviceGroupProperties)(mem2aa9a663)
+ allocs2aa9a663 := new(cgoAllocMap)
+ allocs2aa9a663.Add(mem2aa9a663)
+
+ var csType_allocs *cgoAllocMap
+ ref2aa9a663.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs2aa9a663.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref2aa9a663.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs2aa9a663.Borrow(cpNext_allocs)
+
+ var cphysicalDeviceCount_allocs *cgoAllocMap
+ ref2aa9a663.physicalDeviceCount, cphysicalDeviceCount_allocs = (C.uint32_t)(x.PhysicalDeviceCount), cgoAllocsUnknown
+ allocs2aa9a663.Borrow(cphysicalDeviceCount_allocs)
+
+ var cphysicalDevices_allocs *cgoAllocMap
+ ref2aa9a663.physicalDevices, cphysicalDevices_allocs = *(*[32]C.VkPhysicalDevice)(unsafe.Pointer(&x.PhysicalDevices)), cgoAllocsUnknown
+ allocs2aa9a663.Borrow(cphysicalDevices_allocs)
+
+ var csubsetAllocation_allocs *cgoAllocMap
+ ref2aa9a663.subsetAllocation, csubsetAllocation_allocs = (C.VkBool32)(x.SubsetAllocation), cgoAllocsUnknown
+ allocs2aa9a663.Borrow(csubsetAllocation_allocs)
+
+ x.ref2aa9a663 = ref2aa9a663
+ x.allocs2aa9a663 = allocs2aa9a663
+ return ref2aa9a663, allocs2aa9a663
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceGroupProperties) PassValue() (C.VkPhysicalDeviceGroupProperties, *cgoAllocMap) {
+ if x.ref2aa9a663 != nil {
+ return *x.ref2aa9a663, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceGroupProperties) Deref() {
+ if x.ref2aa9a663 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref2aa9a663.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref2aa9a663.pNext))
+ x.PhysicalDeviceCount = (uint32)(x.ref2aa9a663.physicalDeviceCount)
+ x.PhysicalDevices = *(*[32]PhysicalDevice)(unsafe.Pointer(&x.ref2aa9a663.physicalDevices))
+ x.SubsetAllocation = (Bool32)(x.ref2aa9a663.subsetAllocation)
+}
+
+// allocDeviceGroupDeviceCreateInfoMemory allocates memory for type C.VkDeviceGroupDeviceCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocDeviceGroupDeviceCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceGroupDeviceCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfDeviceGroupDeviceCreateInfoValue = unsafe.Sizeof([1]C.VkDeviceGroupDeviceCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *DeviceGroupDeviceCreateInfo) Ref() *C.VkDeviceGroupDeviceCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refb2275723
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *DeviceGroupDeviceCreateInfo) Free() {
+ if x != nil && x.allocsb2275723 != nil {
+ x.allocsb2275723.(*cgoAllocMap).Free()
+ x.refb2275723 = nil
+ }
+}
+
+// NewDeviceGroupDeviceCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewDeviceGroupDeviceCreateInfoRef(ref unsafe.Pointer) *DeviceGroupDeviceCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(DeviceGroupDeviceCreateInfo)
+ obj.refb2275723 = (*C.VkDeviceGroupDeviceCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DeviceGroupDeviceCreateInfo) PassRef() (*C.VkDeviceGroupDeviceCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refb2275723 != nil {
+ return x.refb2275723, nil
+ }
+ memb2275723 := allocDeviceGroupDeviceCreateInfoMemory(1)
+ refb2275723 := (*C.VkDeviceGroupDeviceCreateInfo)(memb2275723)
+ allocsb2275723 := new(cgoAllocMap)
+ allocsb2275723.Add(memb2275723)
+
+ var csType_allocs *cgoAllocMap
+ refb2275723.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsb2275723.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refb2275723.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsb2275723.Borrow(cpNext_allocs)
+
+ var cphysicalDeviceCount_allocs *cgoAllocMap
+ refb2275723.physicalDeviceCount, cphysicalDeviceCount_allocs = (C.uint32_t)(x.PhysicalDeviceCount), cgoAllocsUnknown
+ allocsb2275723.Borrow(cphysicalDeviceCount_allocs)
+
+ var cpPhysicalDevices_allocs *cgoAllocMap
+ refb2275723.pPhysicalDevices, cpPhysicalDevices_allocs = (*C.VkPhysicalDevice)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PPhysicalDevices)).Data)), cgoAllocsUnknown
+ allocsb2275723.Borrow(cpPhysicalDevices_allocs)
+
+ x.refb2275723 = refb2275723
+ x.allocsb2275723 = allocsb2275723
+ return refb2275723, allocsb2275723
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DeviceGroupDeviceCreateInfo) PassValue() (C.VkDeviceGroupDeviceCreateInfo, *cgoAllocMap) {
+ if x.refb2275723 != nil {
+ return *x.refb2275723, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *DeviceGroupDeviceCreateInfo) Deref() {
+ if x.refb2275723 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refb2275723.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb2275723.pNext))
+ x.PhysicalDeviceCount = (uint32)(x.refb2275723.physicalDeviceCount)
+ hxf5ebb88 := (*sliceHeader)(unsafe.Pointer(&x.PPhysicalDevices))
+ hxf5ebb88.Data = unsafe.Pointer(x.refb2275723.pPhysicalDevices)
+ hxf5ebb88.Cap = 0x7fffffff
+ // hxf5ebb88.Len = ?
+
+}
+
+// allocBufferMemoryRequirementsInfo2Memory allocates memory for type C.VkBufferMemoryRequirementsInfo2 in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocBufferMemoryRequirementsInfo2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBufferMemoryRequirementsInfo2Value))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfBufferMemoryRequirementsInfo2Value = unsafe.Sizeof([1]C.VkBufferMemoryRequirementsInfo2{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *BufferMemoryRequirementsInfo2) Ref() *C.VkBufferMemoryRequirementsInfo2 {
+ if x == nil {
+ return nil
+ }
+ return x.reff54a2a42
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *BufferMemoryRequirementsInfo2) Free() {
+ if x != nil && x.allocsf54a2a42 != nil {
+ x.allocsf54a2a42.(*cgoAllocMap).Free()
+ x.reff54a2a42 = nil
+ }
+}
+
+// NewBufferMemoryRequirementsInfo2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewBufferMemoryRequirementsInfo2Ref(ref unsafe.Pointer) *BufferMemoryRequirementsInfo2 {
+ if ref == nil {
+ return nil
+ }
+ obj := new(BufferMemoryRequirementsInfo2)
+ obj.reff54a2a42 = (*C.VkBufferMemoryRequirementsInfo2)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *BufferMemoryRequirementsInfo2) PassRef() (*C.VkBufferMemoryRequirementsInfo2, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.reff54a2a42 != nil {
+ return x.reff54a2a42, nil
+ }
+ memf54a2a42 := allocBufferMemoryRequirementsInfo2Memory(1)
+ reff54a2a42 := (*C.VkBufferMemoryRequirementsInfo2)(memf54a2a42)
+ allocsf54a2a42 := new(cgoAllocMap)
+ allocsf54a2a42.Add(memf54a2a42)
+
+ var csType_allocs *cgoAllocMap
+ reff54a2a42.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsf54a2a42.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ reff54a2a42.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsf54a2a42.Borrow(cpNext_allocs)
+
+ var cbuffer_allocs *cgoAllocMap
+ reff54a2a42.buffer, cbuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.Buffer)), cgoAllocsUnknown
+ allocsf54a2a42.Borrow(cbuffer_allocs)
+
+ x.reff54a2a42 = reff54a2a42
+ x.allocsf54a2a42 = allocsf54a2a42
+ return reff54a2a42, allocsf54a2a42
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x BufferMemoryRequirementsInfo2) PassValue() (C.VkBufferMemoryRequirementsInfo2, *cgoAllocMap) {
+ if x.reff54a2a42 != nil {
+ return *x.reff54a2a42, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *BufferMemoryRequirementsInfo2) Deref() {
+ if x.reff54a2a42 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.reff54a2a42.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff54a2a42.pNext))
+ x.Buffer = *(*Buffer)(unsafe.Pointer(&x.reff54a2a42.buffer))
+}
+
+// allocImageMemoryRequirementsInfo2Memory allocates memory for type C.VkImageMemoryRequirementsInfo2 in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocImageMemoryRequirementsInfo2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageMemoryRequirementsInfo2Value))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfImageMemoryRequirementsInfo2Value = unsafe.Sizeof([1]C.VkImageMemoryRequirementsInfo2{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ImageMemoryRequirementsInfo2) Ref() *C.VkImageMemoryRequirementsInfo2 {
+ if x == nil {
+ return nil
+ }
+ return x.ref75b3ca05
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ImageMemoryRequirementsInfo2) Free() {
+ if x != nil && x.allocs75b3ca05 != nil {
+ x.allocs75b3ca05.(*cgoAllocMap).Free()
+ x.ref75b3ca05 = nil
+ }
+}
+
+// NewImageMemoryRequirementsInfo2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewImageMemoryRequirementsInfo2Ref(ref unsafe.Pointer) *ImageMemoryRequirementsInfo2 {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ImageMemoryRequirementsInfo2)
+ obj.ref75b3ca05 = (*C.VkImageMemoryRequirementsInfo2)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ImageMemoryRequirementsInfo2) PassRef() (*C.VkImageMemoryRequirementsInfo2, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref75b3ca05 != nil {
+ return x.ref75b3ca05, nil
+ }
+ mem75b3ca05 := allocImageMemoryRequirementsInfo2Memory(1)
+ ref75b3ca05 := (*C.VkImageMemoryRequirementsInfo2)(mem75b3ca05)
+ allocs75b3ca05 := new(cgoAllocMap)
+ allocs75b3ca05.Add(mem75b3ca05)
+
+ var csType_allocs *cgoAllocMap
+ ref75b3ca05.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs75b3ca05.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref75b3ca05.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs75b3ca05.Borrow(cpNext_allocs)
+
+ var cimage_allocs *cgoAllocMap
+ ref75b3ca05.image, cimage_allocs = *(*C.VkImage)(unsafe.Pointer(&x.Image)), cgoAllocsUnknown
+ allocs75b3ca05.Borrow(cimage_allocs)
+
+ x.ref75b3ca05 = ref75b3ca05
+ x.allocs75b3ca05 = allocs75b3ca05
+ return ref75b3ca05, allocs75b3ca05
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ImageMemoryRequirementsInfo2) PassValue() (C.VkImageMemoryRequirementsInfo2, *cgoAllocMap) {
+ if x.ref75b3ca05 != nil {
+ return *x.ref75b3ca05, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ImageMemoryRequirementsInfo2) Deref() {
+ if x.ref75b3ca05 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref75b3ca05.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref75b3ca05.pNext))
+ x.Image = *(*Image)(unsafe.Pointer(&x.ref75b3ca05.image))
+}
+
+// allocImageSparseMemoryRequirementsInfo2Memory allocates memory for type C.VkImageSparseMemoryRequirementsInfo2 in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocImageSparseMemoryRequirementsInfo2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageSparseMemoryRequirementsInfo2Value))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfImageSparseMemoryRequirementsInfo2Value = unsafe.Sizeof([1]C.VkImageSparseMemoryRequirementsInfo2{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ImageSparseMemoryRequirementsInfo2) Ref() *C.VkImageSparseMemoryRequirementsInfo2 {
+ if x == nil {
+ return nil
+ }
+ return x.ref878956f7
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ImageSparseMemoryRequirementsInfo2) Free() {
+ if x != nil && x.allocs878956f7 != nil {
+ x.allocs878956f7.(*cgoAllocMap).Free()
+ x.ref878956f7 = nil
+ }
+}
+
+// NewImageSparseMemoryRequirementsInfo2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewImageSparseMemoryRequirementsInfo2Ref(ref unsafe.Pointer) *ImageSparseMemoryRequirementsInfo2 {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ImageSparseMemoryRequirementsInfo2)
+ obj.ref878956f7 = (*C.VkImageSparseMemoryRequirementsInfo2)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ImageSparseMemoryRequirementsInfo2) PassRef() (*C.VkImageSparseMemoryRequirementsInfo2, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref878956f7 != nil {
+ return x.ref878956f7, nil
+ }
+ mem878956f7 := allocImageSparseMemoryRequirementsInfo2Memory(1)
+ ref878956f7 := (*C.VkImageSparseMemoryRequirementsInfo2)(mem878956f7)
+ allocs878956f7 := new(cgoAllocMap)
+ allocs878956f7.Add(mem878956f7)
+
+ var csType_allocs *cgoAllocMap
+ ref878956f7.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs878956f7.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref878956f7.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs878956f7.Borrow(cpNext_allocs)
+
+ var cimage_allocs *cgoAllocMap
+ ref878956f7.image, cimage_allocs = *(*C.VkImage)(unsafe.Pointer(&x.Image)), cgoAllocsUnknown
+ allocs878956f7.Borrow(cimage_allocs)
+
+ x.ref878956f7 = ref878956f7
+ x.allocs878956f7 = allocs878956f7
+ return ref878956f7, allocs878956f7
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ImageSparseMemoryRequirementsInfo2) PassValue() (C.VkImageSparseMemoryRequirementsInfo2, *cgoAllocMap) {
+ if x.ref878956f7 != nil {
+ return *x.ref878956f7, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ImageSparseMemoryRequirementsInfo2) Deref() {
+ if x.ref878956f7 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref878956f7.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref878956f7.pNext))
+ x.Image = *(*Image)(unsafe.Pointer(&x.ref878956f7.image))
+}
+
+// allocMemoryRequirements2Memory allocates memory for type C.VkMemoryRequirements2 in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocMemoryRequirements2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMemoryRequirements2Value))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfMemoryRequirements2Value = unsafe.Sizeof([1]C.VkMemoryRequirements2{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *MemoryRequirements2) Ref() *C.VkMemoryRequirements2 {
+ if x == nil {
+ return nil
+ }
+ return x.refc0e75f21
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *MemoryRequirements2) Free() {
+ if x != nil && x.allocsc0e75f21 != nil {
+ x.allocsc0e75f21.(*cgoAllocMap).Free()
+ x.refc0e75f21 = nil
+ }
+}
+
+// NewMemoryRequirements2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewMemoryRequirements2Ref(ref unsafe.Pointer) *MemoryRequirements2 {
+ if ref == nil {
+ return nil
+ }
+ obj := new(MemoryRequirements2)
+ obj.refc0e75f21 = (*C.VkMemoryRequirements2)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *MemoryRequirements2) PassRef() (*C.VkMemoryRequirements2, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refc0e75f21 != nil {
+ return x.refc0e75f21, nil
+ }
+ memc0e75f21 := allocMemoryRequirements2Memory(1)
+ refc0e75f21 := (*C.VkMemoryRequirements2)(memc0e75f21)
+ allocsc0e75f21 := new(cgoAllocMap)
+ allocsc0e75f21.Add(memc0e75f21)
+
+ var csType_allocs *cgoAllocMap
+ refc0e75f21.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsc0e75f21.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refc0e75f21.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsc0e75f21.Borrow(cpNext_allocs)
+
+ var cmemoryRequirements_allocs *cgoAllocMap
+ refc0e75f21.memoryRequirements, cmemoryRequirements_allocs = x.MemoryRequirements.PassValue()
+ allocsc0e75f21.Borrow(cmemoryRequirements_allocs)
+
+ x.refc0e75f21 = refc0e75f21
+ x.allocsc0e75f21 = allocsc0e75f21
+ return refc0e75f21, allocsc0e75f21
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x MemoryRequirements2) PassValue() (C.VkMemoryRequirements2, *cgoAllocMap) {
+ if x.refc0e75f21 != nil {
+ return *x.refc0e75f21, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *MemoryRequirements2) Deref() {
+ if x.refc0e75f21 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refc0e75f21.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc0e75f21.pNext))
+ x.MemoryRequirements = *NewMemoryRequirementsRef(unsafe.Pointer(&x.refc0e75f21.memoryRequirements))
+}
+
+// allocSparseImageMemoryRequirements2Memory allocates memory for type C.VkSparseImageMemoryRequirements2 in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSparseImageMemoryRequirements2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSparseImageMemoryRequirements2Value))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSparseImageMemoryRequirements2Value = unsafe.Sizeof([1]C.VkSparseImageMemoryRequirements2{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SparseImageMemoryRequirements2) Ref() *C.VkSparseImageMemoryRequirements2 {
+ if x == nil {
+ return nil
+ }
+ return x.refb8da955c
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SparseImageMemoryRequirements2) Free() {
+ if x != nil && x.allocsb8da955c != nil {
+ x.allocsb8da955c.(*cgoAllocMap).Free()
+ x.refb8da955c = nil
+ }
+}
+
+// NewSparseImageMemoryRequirements2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSparseImageMemoryRequirements2Ref(ref unsafe.Pointer) *SparseImageMemoryRequirements2 {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SparseImageMemoryRequirements2)
+ obj.refb8da955c = (*C.VkSparseImageMemoryRequirements2)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SparseImageMemoryRequirements2) PassRef() (*C.VkSparseImageMemoryRequirements2, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refb8da955c != nil {
+ return x.refb8da955c, nil
+ }
+ memb8da955c := allocSparseImageMemoryRequirements2Memory(1)
+ refb8da955c := (*C.VkSparseImageMemoryRequirements2)(memb8da955c)
+ allocsb8da955c := new(cgoAllocMap)
+ allocsb8da955c.Add(memb8da955c)
+
+ var csType_allocs *cgoAllocMap
+ refb8da955c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsb8da955c.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refb8da955c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsb8da955c.Borrow(cpNext_allocs)
+
+ var cmemoryRequirements_allocs *cgoAllocMap
+ refb8da955c.memoryRequirements, cmemoryRequirements_allocs = x.MemoryRequirements.PassValue()
+ allocsb8da955c.Borrow(cmemoryRequirements_allocs)
+
+ x.refb8da955c = refb8da955c
+ x.allocsb8da955c = allocsb8da955c
+ return refb8da955c, allocsb8da955c
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SparseImageMemoryRequirements2) PassValue() (C.VkSparseImageMemoryRequirements2, *cgoAllocMap) {
+ if x.refb8da955c != nil {
+ return *x.refb8da955c, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SparseImageMemoryRequirements2) Deref() {
+ if x.refb8da955c == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refb8da955c.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb8da955c.pNext))
+ x.MemoryRequirements = *NewSparseImageMemoryRequirementsRef(unsafe.Pointer(&x.refb8da955c.memoryRequirements))
+}
+
+// allocPhysicalDeviceFeatures2Memory allocates memory for type C.VkPhysicalDeviceFeatures2 in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceFeatures2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceFeatures2Value))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceFeatures2Value = unsafe.Sizeof([1]C.VkPhysicalDeviceFeatures2{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceFeatures2) Ref() *C.VkPhysicalDeviceFeatures2 {
+ if x == nil {
+ return nil
+ }
+ return x.refff6ed04
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceFeatures2) Free() {
+ if x != nil && x.allocsff6ed04 != nil {
+ x.allocsff6ed04.(*cgoAllocMap).Free()
+ x.refff6ed04 = nil
+ }
+}
+
+// NewPhysicalDeviceFeatures2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceFeatures2Ref(ref unsafe.Pointer) *PhysicalDeviceFeatures2 {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceFeatures2)
+ obj.refff6ed04 = (*C.VkPhysicalDeviceFeatures2)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceFeatures2) PassRef() (*C.VkPhysicalDeviceFeatures2, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refff6ed04 != nil {
+ return x.refff6ed04, nil
+ }
+ memff6ed04 := allocPhysicalDeviceFeatures2Memory(1)
+ refff6ed04 := (*C.VkPhysicalDeviceFeatures2)(memff6ed04)
+ allocsff6ed04 := new(cgoAllocMap)
+ allocsff6ed04.Add(memff6ed04)
+
+ var csType_allocs *cgoAllocMap
+ refff6ed04.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsff6ed04.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refff6ed04.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsff6ed04.Borrow(cpNext_allocs)
+
+ var cfeatures_allocs *cgoAllocMap
+ refff6ed04.features, cfeatures_allocs = x.Features.PassValue()
+ allocsff6ed04.Borrow(cfeatures_allocs)
+
+ x.refff6ed04 = refff6ed04
+ x.allocsff6ed04 = allocsff6ed04
+ return refff6ed04, allocsff6ed04
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceFeatures2) PassValue() (C.VkPhysicalDeviceFeatures2, *cgoAllocMap) {
+ if x.refff6ed04 != nil {
+ return *x.refff6ed04, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceFeatures2) Deref() {
+ if x.refff6ed04 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refff6ed04.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refff6ed04.pNext))
+ x.Features = *NewPhysicalDeviceFeaturesRef(unsafe.Pointer(&x.refff6ed04.features))
+}
+
+// allocPhysicalDeviceProperties2Memory allocates memory for type C.VkPhysicalDeviceProperties2 in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceProperties2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceProperties2Value))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceProperties2Value = unsafe.Sizeof([1]C.VkPhysicalDeviceProperties2{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceProperties2) Ref() *C.VkPhysicalDeviceProperties2 {
+ if x == nil {
+ return nil
+ }
+ return x.ref947bd13e
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceProperties2) Free() {
+ if x != nil && x.allocs947bd13e != nil {
+ x.allocs947bd13e.(*cgoAllocMap).Free()
+ x.ref947bd13e = nil
+ }
+}
+
+// NewPhysicalDeviceProperties2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceProperties2Ref(ref unsafe.Pointer) *PhysicalDeviceProperties2 {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceProperties2)
+ obj.ref947bd13e = (*C.VkPhysicalDeviceProperties2)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceProperties2) PassRef() (*C.VkPhysicalDeviceProperties2, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref947bd13e != nil {
+ return x.ref947bd13e, nil
+ }
+ mem947bd13e := allocPhysicalDeviceProperties2Memory(1)
+ ref947bd13e := (*C.VkPhysicalDeviceProperties2)(mem947bd13e)
+ allocs947bd13e := new(cgoAllocMap)
+ allocs947bd13e.Add(mem947bd13e)
+
+ var csType_allocs *cgoAllocMap
+ ref947bd13e.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs947bd13e.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref947bd13e.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs947bd13e.Borrow(cpNext_allocs)
+
+ var cproperties_allocs *cgoAllocMap
+ ref947bd13e.properties, cproperties_allocs = x.Properties.PassValue()
+ allocs947bd13e.Borrow(cproperties_allocs)
+
+ x.ref947bd13e = ref947bd13e
+ x.allocs947bd13e = allocs947bd13e
+ return ref947bd13e, allocs947bd13e
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceProperties2) PassValue() (C.VkPhysicalDeviceProperties2, *cgoAllocMap) {
+ if x.ref947bd13e != nil {
+ return *x.ref947bd13e, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceProperties2) Deref() {
+ if x.ref947bd13e == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref947bd13e.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref947bd13e.pNext))
+ x.Properties = *NewPhysicalDevicePropertiesRef(unsafe.Pointer(&x.ref947bd13e.properties))
+}
+
+// allocFormatProperties2Memory allocates memory for type C.VkFormatProperties2 in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocFormatProperties2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfFormatProperties2Value))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfFormatProperties2Value = unsafe.Sizeof([1]C.VkFormatProperties2{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *FormatProperties2) Ref() *C.VkFormatProperties2 {
+ if x == nil {
+ return nil
+ }
+ return x.refddc6af2a
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *FormatProperties2) Free() {
+ if x != nil && x.allocsddc6af2a != nil {
+ x.allocsddc6af2a.(*cgoAllocMap).Free()
+ x.refddc6af2a = nil
+ }
+}
+
+// NewFormatProperties2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewFormatProperties2Ref(ref unsafe.Pointer) *FormatProperties2 {
+ if ref == nil {
+ return nil
+ }
+ obj := new(FormatProperties2)
+ obj.refddc6af2a = (*C.VkFormatProperties2)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *FormatProperties2) PassRef() (*C.VkFormatProperties2, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refddc6af2a != nil {
+ return x.refddc6af2a, nil
+ }
+ memddc6af2a := allocFormatProperties2Memory(1)
+ refddc6af2a := (*C.VkFormatProperties2)(memddc6af2a)
+ allocsddc6af2a := new(cgoAllocMap)
+ allocsddc6af2a.Add(memddc6af2a)
+
+ var csType_allocs *cgoAllocMap
+ refddc6af2a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsddc6af2a.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refddc6af2a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsddc6af2a.Borrow(cpNext_allocs)
+
+ var cformatProperties_allocs *cgoAllocMap
+ refddc6af2a.formatProperties, cformatProperties_allocs = x.FormatProperties.PassValue()
+ allocsddc6af2a.Borrow(cformatProperties_allocs)
+
+ x.refddc6af2a = refddc6af2a
+ x.allocsddc6af2a = allocsddc6af2a
+ return refddc6af2a, allocsddc6af2a
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x FormatProperties2) PassValue() (C.VkFormatProperties2, *cgoAllocMap) {
+ if x.refddc6af2a != nil {
+ return *x.refddc6af2a, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *FormatProperties2) Deref() {
+ if x.refddc6af2a == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refddc6af2a.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refddc6af2a.pNext))
+ x.FormatProperties = *NewFormatPropertiesRef(unsafe.Pointer(&x.refddc6af2a.formatProperties))
+}
+
+// allocImageFormatProperties2Memory allocates memory for type C.VkImageFormatProperties2 in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocImageFormatProperties2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageFormatProperties2Value))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfImageFormatProperties2Value = unsafe.Sizeof([1]C.VkImageFormatProperties2{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ImageFormatProperties2) Ref() *C.VkImageFormatProperties2 {
+ if x == nil {
+ return nil
+ }
+ return x.ref224187e7
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ImageFormatProperties2) Free() {
+ if x != nil && x.allocs224187e7 != nil {
+ x.allocs224187e7.(*cgoAllocMap).Free()
+ x.ref224187e7 = nil
+ }
+}
+
+// NewImageFormatProperties2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewImageFormatProperties2Ref(ref unsafe.Pointer) *ImageFormatProperties2 {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ImageFormatProperties2)
+ obj.ref224187e7 = (*C.VkImageFormatProperties2)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ImageFormatProperties2) PassRef() (*C.VkImageFormatProperties2, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref224187e7 != nil {
+ return x.ref224187e7, nil
+ }
+ mem224187e7 := allocImageFormatProperties2Memory(1)
+ ref224187e7 := (*C.VkImageFormatProperties2)(mem224187e7)
+ allocs224187e7 := new(cgoAllocMap)
+ allocs224187e7.Add(mem224187e7)
+
+ var csType_allocs *cgoAllocMap
+ ref224187e7.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs224187e7.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref224187e7.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs224187e7.Borrow(cpNext_allocs)
+
+ var cimageFormatProperties_allocs *cgoAllocMap
+ ref224187e7.imageFormatProperties, cimageFormatProperties_allocs = x.ImageFormatProperties.PassValue()
+ allocs224187e7.Borrow(cimageFormatProperties_allocs)
+
+ x.ref224187e7 = ref224187e7
+ x.allocs224187e7 = allocs224187e7
+ return ref224187e7, allocs224187e7
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ImageFormatProperties2) PassValue() (C.VkImageFormatProperties2, *cgoAllocMap) {
+ if x.ref224187e7 != nil {
+ return *x.ref224187e7, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ImageFormatProperties2) Deref() {
+ if x.ref224187e7 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref224187e7.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref224187e7.pNext))
+ x.ImageFormatProperties = *NewImageFormatPropertiesRef(unsafe.Pointer(&x.ref224187e7.imageFormatProperties))
+}
+
+// allocPhysicalDeviceImageFormatInfo2Memory allocates memory for type C.VkPhysicalDeviceImageFormatInfo2 in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceImageFormatInfo2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceImageFormatInfo2Value))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceImageFormatInfo2Value = unsafe.Sizeof([1]C.VkPhysicalDeviceImageFormatInfo2{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceImageFormatInfo2) Ref() *C.VkPhysicalDeviceImageFormatInfo2 {
+ if x == nil {
+ return nil
+ }
+ return x.ref5934b445
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceImageFormatInfo2) Free() {
+ if x != nil && x.allocs5934b445 != nil {
+ x.allocs5934b445.(*cgoAllocMap).Free()
+ x.ref5934b445 = nil
+ }
+}
+
+// NewPhysicalDeviceImageFormatInfo2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceImageFormatInfo2Ref(ref unsafe.Pointer) *PhysicalDeviceImageFormatInfo2 {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceImageFormatInfo2)
+ obj.ref5934b445 = (*C.VkPhysicalDeviceImageFormatInfo2)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceImageFormatInfo2) PassRef() (*C.VkPhysicalDeviceImageFormatInfo2, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref5934b445 != nil {
+ return x.ref5934b445, nil
+ }
+ mem5934b445 := allocPhysicalDeviceImageFormatInfo2Memory(1)
+ ref5934b445 := (*C.VkPhysicalDeviceImageFormatInfo2)(mem5934b445)
+ allocs5934b445 := new(cgoAllocMap)
+ allocs5934b445.Add(mem5934b445)
+
+ var csType_allocs *cgoAllocMap
+ ref5934b445.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs5934b445.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref5934b445.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs5934b445.Borrow(cpNext_allocs)
+
+ var cformat_allocs *cgoAllocMap
+ ref5934b445.format, cformat_allocs = (C.VkFormat)(x.Format), cgoAllocsUnknown
+ allocs5934b445.Borrow(cformat_allocs)
+
+ var c_type_allocs *cgoAllocMap
+ ref5934b445._type, c_type_allocs = (C.VkImageType)(x.Type), cgoAllocsUnknown
+ allocs5934b445.Borrow(c_type_allocs)
+
+ var ctiling_allocs *cgoAllocMap
+ ref5934b445.tiling, ctiling_allocs = (C.VkImageTiling)(x.Tiling), cgoAllocsUnknown
+ allocs5934b445.Borrow(ctiling_allocs)
+
+ var cusage_allocs *cgoAllocMap
+ ref5934b445.usage, cusage_allocs = (C.VkImageUsageFlags)(x.Usage), cgoAllocsUnknown
+ allocs5934b445.Borrow(cusage_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref5934b445.flags, cflags_allocs = (C.VkImageCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocs5934b445.Borrow(cflags_allocs)
+
+ x.ref5934b445 = ref5934b445
+ x.allocs5934b445 = allocs5934b445
+ return ref5934b445, allocs5934b445
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceImageFormatInfo2) PassValue() (C.VkPhysicalDeviceImageFormatInfo2, *cgoAllocMap) {
+ if x.ref5934b445 != nil {
+ return *x.ref5934b445, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceImageFormatInfo2) Deref() {
+ if x.ref5934b445 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref5934b445.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5934b445.pNext))
+ x.Format = (Format)(x.ref5934b445.format)
+ x.Type = (ImageType)(x.ref5934b445._type)
+ x.Tiling = (ImageTiling)(x.ref5934b445.tiling)
+ x.Usage = (ImageUsageFlags)(x.ref5934b445.usage)
+ x.Flags = (ImageCreateFlags)(x.ref5934b445.flags)
+}
+
+// allocQueueFamilyProperties2Memory allocates memory for type C.VkQueueFamilyProperties2 in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocQueueFamilyProperties2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfQueueFamilyProperties2Value))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfQueueFamilyProperties2Value = unsafe.Sizeof([1]C.VkQueueFamilyProperties2{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *QueueFamilyProperties2) Ref() *C.VkQueueFamilyProperties2 {
+ if x == nil {
+ return nil
+ }
+ return x.ref85bf626c
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *QueueFamilyProperties2) Free() {
+ if x != nil && x.allocs85bf626c != nil {
+ x.allocs85bf626c.(*cgoAllocMap).Free()
+ x.ref85bf626c = nil
+ }
+}
+
+// NewQueueFamilyProperties2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewQueueFamilyProperties2Ref(ref unsafe.Pointer) *QueueFamilyProperties2 {
+ if ref == nil {
+ return nil
+ }
+ obj := new(QueueFamilyProperties2)
+ obj.ref85bf626c = (*C.VkQueueFamilyProperties2)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *QueueFamilyProperties2) PassRef() (*C.VkQueueFamilyProperties2, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref85bf626c != nil {
+ return x.ref85bf626c, nil
+ }
+ mem85bf626c := allocQueueFamilyProperties2Memory(1)
+ ref85bf626c := (*C.VkQueueFamilyProperties2)(mem85bf626c)
+ allocs85bf626c := new(cgoAllocMap)
+ allocs85bf626c.Add(mem85bf626c)
+
+ var csType_allocs *cgoAllocMap
+ ref85bf626c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs85bf626c.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref85bf626c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs85bf626c.Borrow(cpNext_allocs)
+
+ var cqueueFamilyProperties_allocs *cgoAllocMap
+ ref85bf626c.queueFamilyProperties, cqueueFamilyProperties_allocs = x.QueueFamilyProperties.PassValue()
+ allocs85bf626c.Borrow(cqueueFamilyProperties_allocs)
+
+ x.ref85bf626c = ref85bf626c
+ x.allocs85bf626c = allocs85bf626c
+ return ref85bf626c, allocs85bf626c
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x QueueFamilyProperties2) PassValue() (C.VkQueueFamilyProperties2, *cgoAllocMap) {
+ if x.ref85bf626c != nil {
+ return *x.ref85bf626c, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *QueueFamilyProperties2) Deref() {
+ if x.ref85bf626c == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref85bf626c.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref85bf626c.pNext))
+ x.QueueFamilyProperties = *NewQueueFamilyPropertiesRef(unsafe.Pointer(&x.ref85bf626c.queueFamilyProperties))
+}
+
+// allocPhysicalDeviceMemoryProperties2Memory allocates memory for type C.VkPhysicalDeviceMemoryProperties2 in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceMemoryProperties2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceMemoryProperties2Value))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceMemoryProperties2Value = unsafe.Sizeof([1]C.VkPhysicalDeviceMemoryProperties2{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceMemoryProperties2) Ref() *C.VkPhysicalDeviceMemoryProperties2 {
+ if x == nil {
+ return nil
+ }
+ return x.refd9e39b19
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceMemoryProperties2) Free() {
+ if x != nil && x.allocsd9e39b19 != nil {
+ x.allocsd9e39b19.(*cgoAllocMap).Free()
+ x.refd9e39b19 = nil
+ }
+}
+
+// NewPhysicalDeviceMemoryProperties2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceMemoryProperties2Ref(ref unsafe.Pointer) *PhysicalDeviceMemoryProperties2 {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceMemoryProperties2)
+ obj.refd9e39b19 = (*C.VkPhysicalDeviceMemoryProperties2)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceMemoryProperties2) PassRef() (*C.VkPhysicalDeviceMemoryProperties2, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refd9e39b19 != nil {
+ return x.refd9e39b19, nil
+ }
+ memd9e39b19 := allocPhysicalDeviceMemoryProperties2Memory(1)
+ refd9e39b19 := (*C.VkPhysicalDeviceMemoryProperties2)(memd9e39b19)
+ allocsd9e39b19 := new(cgoAllocMap)
+ allocsd9e39b19.Add(memd9e39b19)
+
+ var csType_allocs *cgoAllocMap
+ refd9e39b19.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd9e39b19.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refd9e39b19.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsd9e39b19.Borrow(cpNext_allocs)
+
+ var cmemoryProperties_allocs *cgoAllocMap
+ refd9e39b19.memoryProperties, cmemoryProperties_allocs = x.MemoryProperties.PassValue()
+ allocsd9e39b19.Borrow(cmemoryProperties_allocs)
+
+ x.refd9e39b19 = refd9e39b19
+ x.allocsd9e39b19 = allocsd9e39b19
+ return refd9e39b19, allocsd9e39b19
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceMemoryProperties2) PassValue() (C.VkPhysicalDeviceMemoryProperties2, *cgoAllocMap) {
+ if x.refd9e39b19 != nil {
+ return *x.refd9e39b19, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceMemoryProperties2) Deref() {
+ if x.refd9e39b19 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refd9e39b19.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd9e39b19.pNext))
+ x.MemoryProperties = *NewPhysicalDeviceMemoryPropertiesRef(unsafe.Pointer(&x.refd9e39b19.memoryProperties))
+}
+
+// allocSparseImageFormatProperties2Memory allocates memory for type C.VkSparseImageFormatProperties2 in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSparseImageFormatProperties2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSparseImageFormatProperties2Value))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSparseImageFormatProperties2Value = unsafe.Sizeof([1]C.VkSparseImageFormatProperties2{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SparseImageFormatProperties2) Ref() *C.VkSparseImageFormatProperties2 {
+ if x == nil {
+ return nil
+ }
+ return x.ref6b48294b
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SparseImageFormatProperties2) Free() {
+ if x != nil && x.allocs6b48294b != nil {
+ x.allocs6b48294b.(*cgoAllocMap).Free()
+ x.ref6b48294b = nil
+ }
+}
+
+// NewSparseImageFormatProperties2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSparseImageFormatProperties2Ref(ref unsafe.Pointer) *SparseImageFormatProperties2 {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SparseImageFormatProperties2)
+ obj.ref6b48294b = (*C.VkSparseImageFormatProperties2)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SparseImageFormatProperties2) PassRef() (*C.VkSparseImageFormatProperties2, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref6b48294b != nil {
+ return x.ref6b48294b, nil
+ }
+ mem6b48294b := allocSparseImageFormatProperties2Memory(1)
+ ref6b48294b := (*C.VkSparseImageFormatProperties2)(mem6b48294b)
+ allocs6b48294b := new(cgoAllocMap)
+ allocs6b48294b.Add(mem6b48294b)
+
+ var csType_allocs *cgoAllocMap
+ ref6b48294b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs6b48294b.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref6b48294b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs6b48294b.Borrow(cpNext_allocs)
+
+ var cproperties_allocs *cgoAllocMap
+ ref6b48294b.properties, cproperties_allocs = x.Properties.PassValue()
+ allocs6b48294b.Borrow(cproperties_allocs)
+
+ x.ref6b48294b = ref6b48294b
+ x.allocs6b48294b = allocs6b48294b
+ return ref6b48294b, allocs6b48294b
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SparseImageFormatProperties2) PassValue() (C.VkSparseImageFormatProperties2, *cgoAllocMap) {
+ if x.ref6b48294b != nil {
+ return *x.ref6b48294b, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SparseImageFormatProperties2) Deref() {
+ if x.ref6b48294b == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref6b48294b.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref6b48294b.pNext))
+ x.Properties = *NewSparseImageFormatPropertiesRef(unsafe.Pointer(&x.ref6b48294b.properties))
+}
+
+// allocPhysicalDeviceSparseImageFormatInfo2Memory allocates memory for type C.VkPhysicalDeviceSparseImageFormatInfo2 in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceSparseImageFormatInfo2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceSparseImageFormatInfo2Value))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceSparseImageFormatInfo2Value = unsafe.Sizeof([1]C.VkPhysicalDeviceSparseImageFormatInfo2{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceSparseImageFormatInfo2) Ref() *C.VkPhysicalDeviceSparseImageFormatInfo2 {
+ if x == nil {
+ return nil
+ }
+ return x.ref566d5513
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceSparseImageFormatInfo2) Free() {
+ if x != nil && x.allocs566d5513 != nil {
+ x.allocs566d5513.(*cgoAllocMap).Free()
+ x.ref566d5513 = nil
+ }
+}
+
+// NewPhysicalDeviceSparseImageFormatInfo2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceSparseImageFormatInfo2Ref(ref unsafe.Pointer) *PhysicalDeviceSparseImageFormatInfo2 {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceSparseImageFormatInfo2)
+ obj.ref566d5513 = (*C.VkPhysicalDeviceSparseImageFormatInfo2)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceSparseImageFormatInfo2) PassRef() (*C.VkPhysicalDeviceSparseImageFormatInfo2, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref566d5513 != nil {
+ return x.ref566d5513, nil
+ }
+ mem566d5513 := allocPhysicalDeviceSparseImageFormatInfo2Memory(1)
+ ref566d5513 := (*C.VkPhysicalDeviceSparseImageFormatInfo2)(mem566d5513)
+ allocs566d5513 := new(cgoAllocMap)
+ allocs566d5513.Add(mem566d5513)
+
+ var csType_allocs *cgoAllocMap
+ ref566d5513.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs566d5513.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref566d5513.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs566d5513.Borrow(cpNext_allocs)
+
+ var cformat_allocs *cgoAllocMap
+ ref566d5513.format, cformat_allocs = (C.VkFormat)(x.Format), cgoAllocsUnknown
+ allocs566d5513.Borrow(cformat_allocs)
+
+ var c_type_allocs *cgoAllocMap
+ ref566d5513._type, c_type_allocs = (C.VkImageType)(x.Type), cgoAllocsUnknown
+ allocs566d5513.Borrow(c_type_allocs)
+
+ var csamples_allocs *cgoAllocMap
+ ref566d5513.samples, csamples_allocs = (C.VkSampleCountFlagBits)(x.Samples), cgoAllocsUnknown
+ allocs566d5513.Borrow(csamples_allocs)
+
+ var cusage_allocs *cgoAllocMap
+ ref566d5513.usage, cusage_allocs = (C.VkImageUsageFlags)(x.Usage), cgoAllocsUnknown
+ allocs566d5513.Borrow(cusage_allocs)
+
+ var ctiling_allocs *cgoAllocMap
+ ref566d5513.tiling, ctiling_allocs = (C.VkImageTiling)(x.Tiling), cgoAllocsUnknown
+ allocs566d5513.Borrow(ctiling_allocs)
+
+ x.ref566d5513 = ref566d5513
+ x.allocs566d5513 = allocs566d5513
+ return ref566d5513, allocs566d5513
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceSparseImageFormatInfo2) PassValue() (C.VkPhysicalDeviceSparseImageFormatInfo2, *cgoAllocMap) {
+ if x.ref566d5513 != nil {
+ return *x.ref566d5513, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceSparseImageFormatInfo2) Deref() {
+ if x.ref566d5513 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref566d5513.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref566d5513.pNext))
+ x.Format = (Format)(x.ref566d5513.format)
+ x.Type = (ImageType)(x.ref566d5513._type)
+ x.Samples = (SampleCountFlagBits)(x.ref566d5513.samples)
+ x.Usage = (ImageUsageFlags)(x.ref566d5513.usage)
+ x.Tiling = (ImageTiling)(x.ref566d5513.tiling)
+}
+
+// allocPhysicalDevicePointClippingPropertiesMemory allocates memory for type C.VkPhysicalDevicePointClippingProperties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDevicePointClippingPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDevicePointClippingPropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDevicePointClippingPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDevicePointClippingProperties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDevicePointClippingProperties) Ref() *C.VkPhysicalDevicePointClippingProperties {
+ if x == nil {
+ return nil
+ }
+ return x.ref5afbd22f
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDevicePointClippingProperties) Free() {
+ if x != nil && x.allocs5afbd22f != nil {
+ x.allocs5afbd22f.(*cgoAllocMap).Free()
+ x.ref5afbd22f = nil
+ }
+}
+
+// NewPhysicalDevicePointClippingPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDevicePointClippingPropertiesRef(ref unsafe.Pointer) *PhysicalDevicePointClippingProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDevicePointClippingProperties)
+ obj.ref5afbd22f = (*C.VkPhysicalDevicePointClippingProperties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDevicePointClippingProperties) PassRef() (*C.VkPhysicalDevicePointClippingProperties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref5afbd22f != nil {
+ return x.ref5afbd22f, nil
+ }
+ mem5afbd22f := allocPhysicalDevicePointClippingPropertiesMemory(1)
+ ref5afbd22f := (*C.VkPhysicalDevicePointClippingProperties)(mem5afbd22f)
+ allocs5afbd22f := new(cgoAllocMap)
+ allocs5afbd22f.Add(mem5afbd22f)
+
+ var csType_allocs *cgoAllocMap
+ ref5afbd22f.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs5afbd22f.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref5afbd22f.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs5afbd22f.Borrow(cpNext_allocs)
+
+ var cpointClippingBehavior_allocs *cgoAllocMap
+ ref5afbd22f.pointClippingBehavior, cpointClippingBehavior_allocs = (C.VkPointClippingBehavior)(x.PointClippingBehavior), cgoAllocsUnknown
+ allocs5afbd22f.Borrow(cpointClippingBehavior_allocs)
+
+ x.ref5afbd22f = ref5afbd22f
+ x.allocs5afbd22f = allocs5afbd22f
+ return ref5afbd22f, allocs5afbd22f
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDevicePointClippingProperties) PassValue() (C.VkPhysicalDevicePointClippingProperties, *cgoAllocMap) {
+ if x.ref5afbd22f != nil {
+ return *x.ref5afbd22f, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDevicePointClippingProperties) Deref() {
+ if x.ref5afbd22f == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref5afbd22f.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5afbd22f.pNext))
+ x.PointClippingBehavior = (PointClippingBehavior)(x.ref5afbd22f.pointClippingBehavior)
+}
+
+// allocInputAttachmentAspectReferenceMemory allocates memory for type C.VkInputAttachmentAspectReference in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocInputAttachmentAspectReferenceMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfInputAttachmentAspectReferenceValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfInputAttachmentAspectReferenceValue = unsafe.Sizeof([1]C.VkInputAttachmentAspectReference{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *InputAttachmentAspectReference) Ref() *C.VkInputAttachmentAspectReference {
+ if x == nil {
+ return nil
+ }
+ return x.ref4f7194e6
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *InputAttachmentAspectReference) Free() {
+ if x != nil && x.allocs4f7194e6 != nil {
+ x.allocs4f7194e6.(*cgoAllocMap).Free()
+ x.ref4f7194e6 = nil
+ }
+}
+
+// NewInputAttachmentAspectReferenceRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewInputAttachmentAspectReferenceRef(ref unsafe.Pointer) *InputAttachmentAspectReference {
+ if ref == nil {
+ return nil
+ }
+ obj := new(InputAttachmentAspectReference)
+ obj.ref4f7194e6 = (*C.VkInputAttachmentAspectReference)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *InputAttachmentAspectReference) PassRef() (*C.VkInputAttachmentAspectReference, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref4f7194e6 != nil {
+ return x.ref4f7194e6, nil
+ }
+ mem4f7194e6 := allocInputAttachmentAspectReferenceMemory(1)
+ ref4f7194e6 := (*C.VkInputAttachmentAspectReference)(mem4f7194e6)
+ allocs4f7194e6 := new(cgoAllocMap)
+ allocs4f7194e6.Add(mem4f7194e6)
+
+ var csubpass_allocs *cgoAllocMap
+ ref4f7194e6.subpass, csubpass_allocs = (C.uint32_t)(x.Subpass), cgoAllocsUnknown
+ allocs4f7194e6.Borrow(csubpass_allocs)
+
+ var cinputAttachmentIndex_allocs *cgoAllocMap
+ ref4f7194e6.inputAttachmentIndex, cinputAttachmentIndex_allocs = (C.uint32_t)(x.InputAttachmentIndex), cgoAllocsUnknown
+ allocs4f7194e6.Borrow(cinputAttachmentIndex_allocs)
+
+ var caspectMask_allocs *cgoAllocMap
+ ref4f7194e6.aspectMask, caspectMask_allocs = (C.VkImageAspectFlags)(x.AspectMask), cgoAllocsUnknown
+ allocs4f7194e6.Borrow(caspectMask_allocs)
+
+ x.ref4f7194e6 = ref4f7194e6
+ x.allocs4f7194e6 = allocs4f7194e6
+ return ref4f7194e6, allocs4f7194e6
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x InputAttachmentAspectReference) PassValue() (C.VkInputAttachmentAspectReference, *cgoAllocMap) {
+ if x.ref4f7194e6 != nil {
+ return *x.ref4f7194e6, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *InputAttachmentAspectReference) Deref() {
+ if x.ref4f7194e6 == nil {
+ return
+ }
+ x.Subpass = (uint32)(x.ref4f7194e6.subpass)
+ x.InputAttachmentIndex = (uint32)(x.ref4f7194e6.inputAttachmentIndex)
+ x.AspectMask = (ImageAspectFlags)(x.ref4f7194e6.aspectMask)
+}
+
+// allocRenderPassInputAttachmentAspectCreateInfoMemory allocates memory for type C.VkRenderPassInputAttachmentAspectCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocRenderPassInputAttachmentAspectCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfRenderPassInputAttachmentAspectCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfRenderPassInputAttachmentAspectCreateInfoValue = unsafe.Sizeof([1]C.VkRenderPassInputAttachmentAspectCreateInfo{})
+
+// unpackSInputAttachmentAspectReference transforms a sliced Go data structure into plain C format.
+func unpackSInputAttachmentAspectReference(x []InputAttachmentAspectReference) (unpacked *C.VkInputAttachmentAspectReference, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkInputAttachmentAspectReference) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocInputAttachmentAspectReferenceMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkInputAttachmentAspectReference)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkInputAttachmentAspectReference)(h.Data)
+ return
+}
+
+// packSInputAttachmentAspectReference reads sliced Go data structure out from plain C format.
+func packSInputAttachmentAspectReference(v []InputAttachmentAspectReference, ptr0 *C.VkInputAttachmentAspectReference) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfInputAttachmentAspectReferenceValue]C.VkInputAttachmentAspectReference)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewInputAttachmentAspectReferenceRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *RenderPassInputAttachmentAspectCreateInfo) Ref() *C.VkRenderPassInputAttachmentAspectCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref34eaa5c7
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *RenderPassInputAttachmentAspectCreateInfo) Free() {
+ if x != nil && x.allocs34eaa5c7 != nil {
+ x.allocs34eaa5c7.(*cgoAllocMap).Free()
+ x.ref34eaa5c7 = nil
+ }
+}
+
+// NewRenderPassInputAttachmentAspectCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewRenderPassInputAttachmentAspectCreateInfoRef(ref unsafe.Pointer) *RenderPassInputAttachmentAspectCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(RenderPassInputAttachmentAspectCreateInfo)
+ obj.ref34eaa5c7 = (*C.VkRenderPassInputAttachmentAspectCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *RenderPassInputAttachmentAspectCreateInfo) PassRef() (*C.VkRenderPassInputAttachmentAspectCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref34eaa5c7 != nil {
+ return x.ref34eaa5c7, nil
+ }
+ mem34eaa5c7 := allocRenderPassInputAttachmentAspectCreateInfoMemory(1)
+ ref34eaa5c7 := (*C.VkRenderPassInputAttachmentAspectCreateInfo)(mem34eaa5c7)
+ allocs34eaa5c7 := new(cgoAllocMap)
+ allocs34eaa5c7.Add(mem34eaa5c7)
+
+ var csType_allocs *cgoAllocMap
+ ref34eaa5c7.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs34eaa5c7.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref34eaa5c7.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs34eaa5c7.Borrow(cpNext_allocs)
+
+ var caspectReferenceCount_allocs *cgoAllocMap
+ ref34eaa5c7.aspectReferenceCount, caspectReferenceCount_allocs = (C.uint32_t)(x.AspectReferenceCount), cgoAllocsUnknown
+ allocs34eaa5c7.Borrow(caspectReferenceCount_allocs)
+
+ var cpAspectReferences_allocs *cgoAllocMap
+ ref34eaa5c7.pAspectReferences, cpAspectReferences_allocs = unpackSInputAttachmentAspectReference(x.PAspectReferences)
+ allocs34eaa5c7.Borrow(cpAspectReferences_allocs)
+
+ x.ref34eaa5c7 = ref34eaa5c7
+ x.allocs34eaa5c7 = allocs34eaa5c7
+ return ref34eaa5c7, allocs34eaa5c7
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x RenderPassInputAttachmentAspectCreateInfo) PassValue() (C.VkRenderPassInputAttachmentAspectCreateInfo, *cgoAllocMap) {
+ if x.ref34eaa5c7 != nil {
+ return *x.ref34eaa5c7, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *RenderPassInputAttachmentAspectCreateInfo) Deref() {
+ if x.ref34eaa5c7 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref34eaa5c7.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref34eaa5c7.pNext))
+ x.AspectReferenceCount = (uint32)(x.ref34eaa5c7.aspectReferenceCount)
+ packSInputAttachmentAspectReference(x.PAspectReferences, x.ref34eaa5c7.pAspectReferences)
+}
+
+// allocImageViewUsageCreateInfoMemory allocates memory for type C.VkImageViewUsageCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocImageViewUsageCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageViewUsageCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfImageViewUsageCreateInfoValue = unsafe.Sizeof([1]C.VkImageViewUsageCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ImageViewUsageCreateInfo) Ref() *C.VkImageViewUsageCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref3791cec9
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ImageViewUsageCreateInfo) Free() {
+ if x != nil && x.allocs3791cec9 != nil {
+ x.allocs3791cec9.(*cgoAllocMap).Free()
+ x.ref3791cec9 = nil
+ }
+}
+
+// NewImageViewUsageCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewImageViewUsageCreateInfoRef(ref unsafe.Pointer) *ImageViewUsageCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ImageViewUsageCreateInfo)
+ obj.ref3791cec9 = (*C.VkImageViewUsageCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ImageViewUsageCreateInfo) PassRef() (*C.VkImageViewUsageCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref3791cec9 != nil {
+ return x.ref3791cec9, nil
+ }
+ mem3791cec9 := allocImageViewUsageCreateInfoMemory(1)
+ ref3791cec9 := (*C.VkImageViewUsageCreateInfo)(mem3791cec9)
+ allocs3791cec9 := new(cgoAllocMap)
+ allocs3791cec9.Add(mem3791cec9)
+
+ var csType_allocs *cgoAllocMap
+ ref3791cec9.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs3791cec9.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref3791cec9.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs3791cec9.Borrow(cpNext_allocs)
+
+ var cusage_allocs *cgoAllocMap
+ ref3791cec9.usage, cusage_allocs = (C.VkImageUsageFlags)(x.Usage), cgoAllocsUnknown
+ allocs3791cec9.Borrow(cusage_allocs)
+
+ x.ref3791cec9 = ref3791cec9
+ x.allocs3791cec9 = allocs3791cec9
+ return ref3791cec9, allocs3791cec9
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ImageViewUsageCreateInfo) PassValue() (C.VkImageViewUsageCreateInfo, *cgoAllocMap) {
+ if x.ref3791cec9 != nil {
+ return *x.ref3791cec9, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ImageViewUsageCreateInfo) Deref() {
+ if x.ref3791cec9 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref3791cec9.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref3791cec9.pNext))
+ x.Usage = (ImageUsageFlags)(x.ref3791cec9.usage)
+}
+
+// allocPipelineTessellationDomainOriginStateCreateInfoMemory allocates memory for type C.VkPipelineTessellationDomainOriginStateCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPipelineTessellationDomainOriginStateCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineTessellationDomainOriginStateCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPipelineTessellationDomainOriginStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineTessellationDomainOriginStateCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PipelineTessellationDomainOriginStateCreateInfo) Ref() *C.VkPipelineTessellationDomainOriginStateCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref58ef29bf
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PipelineTessellationDomainOriginStateCreateInfo) Free() {
+ if x != nil && x.allocs58ef29bf != nil {
+ x.allocs58ef29bf.(*cgoAllocMap).Free()
+ x.ref58ef29bf = nil
+ }
+}
+
+// NewPipelineTessellationDomainOriginStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPipelineTessellationDomainOriginStateCreateInfoRef(ref unsafe.Pointer) *PipelineTessellationDomainOriginStateCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PipelineTessellationDomainOriginStateCreateInfo)
+ obj.ref58ef29bf = (*C.VkPipelineTessellationDomainOriginStateCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PipelineTessellationDomainOriginStateCreateInfo) PassRef() (*C.VkPipelineTessellationDomainOriginStateCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref58ef29bf != nil {
+ return x.ref58ef29bf, nil
+ }
+ mem58ef29bf := allocPipelineTessellationDomainOriginStateCreateInfoMemory(1)
+ ref58ef29bf := (*C.VkPipelineTessellationDomainOriginStateCreateInfo)(mem58ef29bf)
+ allocs58ef29bf := new(cgoAllocMap)
+ allocs58ef29bf.Add(mem58ef29bf)
+
+ var csType_allocs *cgoAllocMap
+ ref58ef29bf.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs58ef29bf.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref58ef29bf.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs58ef29bf.Borrow(cpNext_allocs)
+
+ var cdomainOrigin_allocs *cgoAllocMap
+ ref58ef29bf.domainOrigin, cdomainOrigin_allocs = (C.VkTessellationDomainOrigin)(x.DomainOrigin), cgoAllocsUnknown
+ allocs58ef29bf.Borrow(cdomainOrigin_allocs)
+
+ x.ref58ef29bf = ref58ef29bf
+ x.allocs58ef29bf = allocs58ef29bf
+ return ref58ef29bf, allocs58ef29bf
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PipelineTessellationDomainOriginStateCreateInfo) PassValue() (C.VkPipelineTessellationDomainOriginStateCreateInfo, *cgoAllocMap) {
+ if x.ref58ef29bf != nil {
+ return *x.ref58ef29bf, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PipelineTessellationDomainOriginStateCreateInfo) Deref() {
+ if x.ref58ef29bf == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref58ef29bf.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref58ef29bf.pNext))
+ x.DomainOrigin = (TessellationDomainOrigin)(x.ref58ef29bf.domainOrigin)
+}
+
+// allocRenderPassMultiviewCreateInfoMemory allocates memory for type C.VkRenderPassMultiviewCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocRenderPassMultiviewCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfRenderPassMultiviewCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfRenderPassMultiviewCreateInfoValue = unsafe.Sizeof([1]C.VkRenderPassMultiviewCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *RenderPassMultiviewCreateInfo) Ref() *C.VkRenderPassMultiviewCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refee413e05
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *RenderPassMultiviewCreateInfo) Free() {
+ if x != nil && x.allocsee413e05 != nil {
+ x.allocsee413e05.(*cgoAllocMap).Free()
+ x.refee413e05 = nil
+ }
+}
+
+// NewRenderPassMultiviewCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewRenderPassMultiviewCreateInfoRef(ref unsafe.Pointer) *RenderPassMultiviewCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(RenderPassMultiviewCreateInfo)
+ obj.refee413e05 = (*C.VkRenderPassMultiviewCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *RenderPassMultiviewCreateInfo) PassRef() (*C.VkRenderPassMultiviewCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refee413e05 != nil {
+ return x.refee413e05, nil
+ }
+ memee413e05 := allocRenderPassMultiviewCreateInfoMemory(1)
+ refee413e05 := (*C.VkRenderPassMultiviewCreateInfo)(memee413e05)
+ allocsee413e05 := new(cgoAllocMap)
+ allocsee413e05.Add(memee413e05)
+
+ var csType_allocs *cgoAllocMap
+ refee413e05.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsee413e05.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refee413e05.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsee413e05.Borrow(cpNext_allocs)
+
+ var csubpassCount_allocs *cgoAllocMap
+ refee413e05.subpassCount, csubpassCount_allocs = (C.uint32_t)(x.SubpassCount), cgoAllocsUnknown
+ allocsee413e05.Borrow(csubpassCount_allocs)
+
+ var cpViewMasks_allocs *cgoAllocMap
+ refee413e05.pViewMasks, cpViewMasks_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PViewMasks)).Data)), cgoAllocsUnknown
+ allocsee413e05.Borrow(cpViewMasks_allocs)
+
+ var cdependencyCount_allocs *cgoAllocMap
+ refee413e05.dependencyCount, cdependencyCount_allocs = (C.uint32_t)(x.DependencyCount), cgoAllocsUnknown
+ allocsee413e05.Borrow(cdependencyCount_allocs)
+
+ var cpViewOffsets_allocs *cgoAllocMap
+ refee413e05.pViewOffsets, cpViewOffsets_allocs = (*C.int32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PViewOffsets)).Data)), cgoAllocsUnknown
+ allocsee413e05.Borrow(cpViewOffsets_allocs)
+
+ var ccorrelationMaskCount_allocs *cgoAllocMap
+ refee413e05.correlationMaskCount, ccorrelationMaskCount_allocs = (C.uint32_t)(x.CorrelationMaskCount), cgoAllocsUnknown
+ allocsee413e05.Borrow(ccorrelationMaskCount_allocs)
+
+ var cpCorrelationMasks_allocs *cgoAllocMap
+ refee413e05.pCorrelationMasks, cpCorrelationMasks_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PCorrelationMasks)).Data)), cgoAllocsUnknown
+ allocsee413e05.Borrow(cpCorrelationMasks_allocs)
+
+ x.refee413e05 = refee413e05
+ x.allocsee413e05 = allocsee413e05
+ return refee413e05, allocsee413e05
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x RenderPassMultiviewCreateInfo) PassValue() (C.VkRenderPassMultiviewCreateInfo, *cgoAllocMap) {
+ if x.refee413e05 != nil {
+ return *x.refee413e05, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *RenderPassMultiviewCreateInfo) Deref() {
+ if x.refee413e05 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refee413e05.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refee413e05.pNext))
+ x.SubpassCount = (uint32)(x.refee413e05.subpassCount)
+ hxff20e84 := (*sliceHeader)(unsafe.Pointer(&x.PViewMasks))
+ hxff20e84.Data = unsafe.Pointer(x.refee413e05.pViewMasks)
+ hxff20e84.Cap = 0x7fffffff
+ // hxff20e84.Len = ?
+
+ x.DependencyCount = (uint32)(x.refee413e05.dependencyCount)
+ hxfa26a4d := (*sliceHeader)(unsafe.Pointer(&x.PViewOffsets))
+ hxfa26a4d.Data = unsafe.Pointer(x.refee413e05.pViewOffsets)
+ hxfa26a4d.Cap = 0x7fffffff
+ // hxfa26a4d.Len = ?
+
+ x.CorrelationMaskCount = (uint32)(x.refee413e05.correlationMaskCount)
+ hxfe48098 := (*sliceHeader)(unsafe.Pointer(&x.PCorrelationMasks))
+ hxfe48098.Data = unsafe.Pointer(x.refee413e05.pCorrelationMasks)
+ hxfe48098.Cap = 0x7fffffff
+ // hxfe48098.Len = ?
+
+}
+
+// allocPhysicalDeviceMultiviewFeaturesMemory allocates memory for type C.VkPhysicalDeviceMultiviewFeatures in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceMultiviewFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceMultiviewFeaturesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceMultiviewFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceMultiviewFeatures{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceMultiviewFeatures) Ref() *C.VkPhysicalDeviceMultiviewFeatures {
+ if x == nil {
+ return nil
+ }
+ return x.refd7a7434b
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceMultiviewFeatures) Free() {
+ if x != nil && x.allocsd7a7434b != nil {
+ x.allocsd7a7434b.(*cgoAllocMap).Free()
+ x.refd7a7434b = nil
+ }
+}
+
+// NewPhysicalDeviceMultiviewFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceMultiviewFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceMultiviewFeatures {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceMultiviewFeatures)
+ obj.refd7a7434b = (*C.VkPhysicalDeviceMultiviewFeatures)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceMultiviewFeatures) PassRef() (*C.VkPhysicalDeviceMultiviewFeatures, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refd7a7434b != nil {
+ return x.refd7a7434b, nil
+ }
+ memd7a7434b := allocPhysicalDeviceMultiviewFeaturesMemory(1)
+ refd7a7434b := (*C.VkPhysicalDeviceMultiviewFeatures)(memd7a7434b)
+ allocsd7a7434b := new(cgoAllocMap)
+ allocsd7a7434b.Add(memd7a7434b)
+
+ var csType_allocs *cgoAllocMap
+ refd7a7434b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd7a7434b.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refd7a7434b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsd7a7434b.Borrow(cpNext_allocs)
+
+ var cmultiview_allocs *cgoAllocMap
+ refd7a7434b.multiview, cmultiview_allocs = (C.VkBool32)(x.Multiview), cgoAllocsUnknown
+ allocsd7a7434b.Borrow(cmultiview_allocs)
+
+ var cmultiviewGeometryShader_allocs *cgoAllocMap
+ refd7a7434b.multiviewGeometryShader, cmultiviewGeometryShader_allocs = (C.VkBool32)(x.MultiviewGeometryShader), cgoAllocsUnknown
+ allocsd7a7434b.Borrow(cmultiviewGeometryShader_allocs)
+
+ var cmultiviewTessellationShader_allocs *cgoAllocMap
+ refd7a7434b.multiviewTessellationShader, cmultiviewTessellationShader_allocs = (C.VkBool32)(x.MultiviewTessellationShader), cgoAllocsUnknown
+ allocsd7a7434b.Borrow(cmultiviewTessellationShader_allocs)
+
+ x.refd7a7434b = refd7a7434b
+ x.allocsd7a7434b = allocsd7a7434b
+ return refd7a7434b, allocsd7a7434b
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceMultiviewFeatures) PassValue() (C.VkPhysicalDeviceMultiviewFeatures, *cgoAllocMap) {
+ if x.refd7a7434b != nil {
+ return *x.refd7a7434b, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceMultiviewFeatures) Deref() {
+ if x.refd7a7434b == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refd7a7434b.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd7a7434b.pNext))
+ x.Multiview = (Bool32)(x.refd7a7434b.multiview)
+ x.MultiviewGeometryShader = (Bool32)(x.refd7a7434b.multiviewGeometryShader)
+ x.MultiviewTessellationShader = (Bool32)(x.refd7a7434b.multiviewTessellationShader)
+}
+
+// allocPhysicalDeviceMultiviewPropertiesMemory allocates memory for type C.VkPhysicalDeviceMultiviewProperties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceMultiviewPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceMultiviewPropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceMultiviewPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceMultiviewProperties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceMultiviewProperties) Ref() *C.VkPhysicalDeviceMultiviewProperties {
+ if x == nil {
+ return nil
+ }
+ return x.ref95110029
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceMultiviewProperties) Free() {
+ if x != nil && x.allocs95110029 != nil {
+ x.allocs95110029.(*cgoAllocMap).Free()
+ x.ref95110029 = nil
+ }
+}
+
+// NewPhysicalDeviceMultiviewPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceMultiviewPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceMultiviewProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceMultiviewProperties)
+ obj.ref95110029 = (*C.VkPhysicalDeviceMultiviewProperties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceMultiviewProperties) PassRef() (*C.VkPhysicalDeviceMultiviewProperties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref95110029 != nil {
+ return x.ref95110029, nil
+ }
+ mem95110029 := allocPhysicalDeviceMultiviewPropertiesMemory(1)
+ ref95110029 := (*C.VkPhysicalDeviceMultiviewProperties)(mem95110029)
+ allocs95110029 := new(cgoAllocMap)
+ allocs95110029.Add(mem95110029)
+
+ var csType_allocs *cgoAllocMap
+ ref95110029.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs95110029.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref95110029.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs95110029.Borrow(cpNext_allocs)
+
+ var cmaxMultiviewViewCount_allocs *cgoAllocMap
+ ref95110029.maxMultiviewViewCount, cmaxMultiviewViewCount_allocs = (C.uint32_t)(x.MaxMultiviewViewCount), cgoAllocsUnknown
+ allocs95110029.Borrow(cmaxMultiviewViewCount_allocs)
+
+ var cmaxMultiviewInstanceIndex_allocs *cgoAllocMap
+ ref95110029.maxMultiviewInstanceIndex, cmaxMultiviewInstanceIndex_allocs = (C.uint32_t)(x.MaxMultiviewInstanceIndex), cgoAllocsUnknown
+ allocs95110029.Borrow(cmaxMultiviewInstanceIndex_allocs)
+
+ x.ref95110029 = ref95110029
+ x.allocs95110029 = allocs95110029
+ return ref95110029, allocs95110029
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceMultiviewProperties) PassValue() (C.VkPhysicalDeviceMultiviewProperties, *cgoAllocMap) {
+ if x.ref95110029 != nil {
+ return *x.ref95110029, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceMultiviewProperties) Deref() {
+ if x.ref95110029 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref95110029.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref95110029.pNext))
+ x.MaxMultiviewViewCount = (uint32)(x.ref95110029.maxMultiviewViewCount)
+ x.MaxMultiviewInstanceIndex = (uint32)(x.ref95110029.maxMultiviewInstanceIndex)
+}
+
+// allocPhysicalDeviceVariablePointersFeaturesMemory allocates memory for type C.VkPhysicalDeviceVariablePointersFeatures in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceVariablePointersFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceVariablePointersFeaturesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceVariablePointersFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceVariablePointersFeatures{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceVariablePointersFeatures) Ref() *C.VkPhysicalDeviceVariablePointersFeatures {
+ if x == nil {
+ return nil
+ }
+ return x.refb49644a0
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceVariablePointersFeatures) Free() {
+ if x != nil && x.allocsb49644a0 != nil {
+ x.allocsb49644a0.(*cgoAllocMap).Free()
+ x.refb49644a0 = nil
+ }
+}
+
+// NewPhysicalDeviceVariablePointersFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceVariablePointersFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceVariablePointersFeatures {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceVariablePointersFeatures)
+ obj.refb49644a0 = (*C.VkPhysicalDeviceVariablePointersFeatures)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceVariablePointersFeatures) PassRef() (*C.VkPhysicalDeviceVariablePointersFeatures, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refb49644a0 != nil {
+ return x.refb49644a0, nil
+ }
+ memb49644a0 := allocPhysicalDeviceVariablePointersFeaturesMemory(1)
+ refb49644a0 := (*C.VkPhysicalDeviceVariablePointersFeatures)(memb49644a0)
+ allocsb49644a0 := new(cgoAllocMap)
+ allocsb49644a0.Add(memb49644a0)
+
+ var csType_allocs *cgoAllocMap
+ refb49644a0.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsb49644a0.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refb49644a0.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsb49644a0.Borrow(cpNext_allocs)
+
+ var cvariablePointersStorageBuffer_allocs *cgoAllocMap
+ refb49644a0.variablePointersStorageBuffer, cvariablePointersStorageBuffer_allocs = (C.VkBool32)(x.VariablePointersStorageBuffer), cgoAllocsUnknown
+ allocsb49644a0.Borrow(cvariablePointersStorageBuffer_allocs)
+
+ var cvariablePointers_allocs *cgoAllocMap
+ refb49644a0.variablePointers, cvariablePointers_allocs = (C.VkBool32)(x.VariablePointers), cgoAllocsUnknown
+ allocsb49644a0.Borrow(cvariablePointers_allocs)
+
+ x.refb49644a0 = refb49644a0
+ x.allocsb49644a0 = allocsb49644a0
+ return refb49644a0, allocsb49644a0
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceVariablePointersFeatures) PassValue() (C.VkPhysicalDeviceVariablePointersFeatures, *cgoAllocMap) {
+ if x.refb49644a0 != nil {
+ return *x.refb49644a0, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceVariablePointersFeatures) Deref() {
+ if x.refb49644a0 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refb49644a0.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb49644a0.pNext))
+ x.VariablePointersStorageBuffer = (Bool32)(x.refb49644a0.variablePointersStorageBuffer)
+ x.VariablePointers = (Bool32)(x.refb49644a0.variablePointers)
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceVariablePointerFeatures) Ref() *C.VkPhysicalDeviceVariablePointersFeatures {
+ if x == nil {
+ return nil
+ }
+ return x.refb49644a0
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceVariablePointerFeatures) Free() {
+ if x != nil && x.allocsb49644a0 != nil {
+ x.allocsb49644a0.(*cgoAllocMap).Free()
+ x.refb49644a0 = nil
+ }
+}
+
+// NewPhysicalDeviceVariablePointerFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceVariablePointerFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceVariablePointerFeatures {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceVariablePointerFeatures)
+ obj.refb49644a0 = (*C.VkPhysicalDeviceVariablePointersFeatures)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceVariablePointerFeatures) PassRef() (*C.VkPhysicalDeviceVariablePointersFeatures, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refb49644a0 != nil {
+ return x.refb49644a0, nil
+ }
+ memb49644a0 := allocPhysicalDeviceVariablePointersFeaturesMemory(1)
+ refb49644a0 := (*C.VkPhysicalDeviceVariablePointersFeatures)(memb49644a0)
+ allocsb49644a0 := new(cgoAllocMap)
+ allocsb49644a0.Add(memb49644a0)
+
+ var csType_allocs *cgoAllocMap
+ refb49644a0.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsb49644a0.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refb49644a0.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsb49644a0.Borrow(cpNext_allocs)
+
+ var cvariablePointersStorageBuffer_allocs *cgoAllocMap
+ refb49644a0.variablePointersStorageBuffer, cvariablePointersStorageBuffer_allocs = (C.VkBool32)(x.VariablePointersStorageBuffer), cgoAllocsUnknown
+ allocsb49644a0.Borrow(cvariablePointersStorageBuffer_allocs)
+
+ var cvariablePointers_allocs *cgoAllocMap
+ refb49644a0.variablePointers, cvariablePointers_allocs = (C.VkBool32)(x.VariablePointers), cgoAllocsUnknown
+ allocsb49644a0.Borrow(cvariablePointers_allocs)
+
+ x.refb49644a0 = refb49644a0
+ x.allocsb49644a0 = allocsb49644a0
+ return refb49644a0, allocsb49644a0
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceVariablePointerFeatures) PassValue() (C.VkPhysicalDeviceVariablePointersFeatures, *cgoAllocMap) {
+ if x.refb49644a0 != nil {
+ return *x.refb49644a0, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceVariablePointerFeatures) Deref() {
+ if x.refb49644a0 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refb49644a0.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb49644a0.pNext))
+ x.VariablePointersStorageBuffer = (Bool32)(x.refb49644a0.variablePointersStorageBuffer)
+ x.VariablePointers = (Bool32)(x.refb49644a0.variablePointers)
+}
+
+// allocPhysicalDeviceProtectedMemoryFeaturesMemory allocates memory for type C.VkPhysicalDeviceProtectedMemoryFeatures in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceProtectedMemoryFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceProtectedMemoryFeaturesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceProtectedMemoryFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceProtectedMemoryFeatures{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceProtectedMemoryFeatures) Ref() *C.VkPhysicalDeviceProtectedMemoryFeatures {
+ if x == nil {
+ return nil
+ }
+ return x.refac441ed1
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceProtectedMemoryFeatures) Free() {
+ if x != nil && x.allocsac441ed1 != nil {
+ x.allocsac441ed1.(*cgoAllocMap).Free()
+ x.refac441ed1 = nil
+ }
+}
+
+// NewPhysicalDeviceProtectedMemoryFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceProtectedMemoryFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceProtectedMemoryFeatures {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceProtectedMemoryFeatures)
+ obj.refac441ed1 = (*C.VkPhysicalDeviceProtectedMemoryFeatures)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceProtectedMemoryFeatures) PassRef() (*C.VkPhysicalDeviceProtectedMemoryFeatures, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refac441ed1 != nil {
+ return x.refac441ed1, nil
+ }
+ memac441ed1 := allocPhysicalDeviceProtectedMemoryFeaturesMemory(1)
+ refac441ed1 := (*C.VkPhysicalDeviceProtectedMemoryFeatures)(memac441ed1)
+ allocsac441ed1 := new(cgoAllocMap)
+ allocsac441ed1.Add(memac441ed1)
+
+ var csType_allocs *cgoAllocMap
+ refac441ed1.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsac441ed1.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refac441ed1.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsac441ed1.Borrow(cpNext_allocs)
+
+ var cprotectedMemory_allocs *cgoAllocMap
+ refac441ed1.protectedMemory, cprotectedMemory_allocs = (C.VkBool32)(x.ProtectedMemory), cgoAllocsUnknown
+ allocsac441ed1.Borrow(cprotectedMemory_allocs)
+
+ x.refac441ed1 = refac441ed1
+ x.allocsac441ed1 = allocsac441ed1
+ return refac441ed1, allocsac441ed1
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceProtectedMemoryFeatures) PassValue() (C.VkPhysicalDeviceProtectedMemoryFeatures, *cgoAllocMap) {
+ if x.refac441ed1 != nil {
+ return *x.refac441ed1, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceProtectedMemoryFeatures) Deref() {
+ if x.refac441ed1 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refac441ed1.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refac441ed1.pNext))
+ x.ProtectedMemory = (Bool32)(x.refac441ed1.protectedMemory)
+}
+
+// allocPhysicalDeviceProtectedMemoryPropertiesMemory allocates memory for type C.VkPhysicalDeviceProtectedMemoryProperties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceProtectedMemoryPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceProtectedMemoryPropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceProtectedMemoryPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceProtectedMemoryProperties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceProtectedMemoryProperties) Ref() *C.VkPhysicalDeviceProtectedMemoryProperties {
+ if x == nil {
+ return nil
+ }
+ return x.refb653413
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceProtectedMemoryProperties) Free() {
+ if x != nil && x.allocsb653413 != nil {
+ x.allocsb653413.(*cgoAllocMap).Free()
+ x.refb653413 = nil
+ }
+}
+
+// NewPhysicalDeviceProtectedMemoryPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceProtectedMemoryPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceProtectedMemoryProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceProtectedMemoryProperties)
+ obj.refb653413 = (*C.VkPhysicalDeviceProtectedMemoryProperties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceProtectedMemoryProperties) PassRef() (*C.VkPhysicalDeviceProtectedMemoryProperties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refb653413 != nil {
+ return x.refb653413, nil
+ }
+ memb653413 := allocPhysicalDeviceProtectedMemoryPropertiesMemory(1)
+ refb653413 := (*C.VkPhysicalDeviceProtectedMemoryProperties)(memb653413)
+ allocsb653413 := new(cgoAllocMap)
+ allocsb653413.Add(memb653413)
+
+ var csType_allocs *cgoAllocMap
+ refb653413.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsb653413.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refb653413.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsb653413.Borrow(cpNext_allocs)
+
+ var cprotectedNoFault_allocs *cgoAllocMap
+ refb653413.protectedNoFault, cprotectedNoFault_allocs = (C.VkBool32)(x.ProtectedNoFault), cgoAllocsUnknown
+ allocsb653413.Borrow(cprotectedNoFault_allocs)
+
+ x.refb653413 = refb653413
+ x.allocsb653413 = allocsb653413
+ return refb653413, allocsb653413
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceProtectedMemoryProperties) PassValue() (C.VkPhysicalDeviceProtectedMemoryProperties, *cgoAllocMap) {
+ if x.refb653413 != nil {
+ return *x.refb653413, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceProtectedMemoryProperties) Deref() {
+ if x.refb653413 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refb653413.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb653413.pNext))
+ x.ProtectedNoFault = (Bool32)(x.refb653413.protectedNoFault)
+}
+
+// allocDeviceQueueInfo2Memory allocates memory for type C.VkDeviceQueueInfo2 in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocDeviceQueueInfo2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceQueueInfo2Value))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfDeviceQueueInfo2Value = unsafe.Sizeof([1]C.VkDeviceQueueInfo2{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *DeviceQueueInfo2) Ref() *C.VkDeviceQueueInfo2 {
+ if x == nil {
+ return nil
+ }
+ return x.ref2f267e52
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *DeviceQueueInfo2) Free() {
+ if x != nil && x.allocs2f267e52 != nil {
+ x.allocs2f267e52.(*cgoAllocMap).Free()
+ x.ref2f267e52 = nil
+ }
+}
+
+// NewDeviceQueueInfo2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewDeviceQueueInfo2Ref(ref unsafe.Pointer) *DeviceQueueInfo2 {
+ if ref == nil {
+ return nil
+ }
+ obj := new(DeviceQueueInfo2)
+ obj.ref2f267e52 = (*C.VkDeviceQueueInfo2)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DeviceQueueInfo2) PassRef() (*C.VkDeviceQueueInfo2, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref2f267e52 != nil {
+ return x.ref2f267e52, nil
+ }
+ mem2f267e52 := allocDeviceQueueInfo2Memory(1)
+ ref2f267e52 := (*C.VkDeviceQueueInfo2)(mem2f267e52)
+ allocs2f267e52 := new(cgoAllocMap)
+ allocs2f267e52.Add(mem2f267e52)
+
+ var csType_allocs *cgoAllocMap
+ ref2f267e52.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs2f267e52.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref2f267e52.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs2f267e52.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref2f267e52.flags, cflags_allocs = (C.VkDeviceQueueCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocs2f267e52.Borrow(cflags_allocs)
+
+ var cqueueFamilyIndex_allocs *cgoAllocMap
+ ref2f267e52.queueFamilyIndex, cqueueFamilyIndex_allocs = (C.uint32_t)(x.QueueFamilyIndex), cgoAllocsUnknown
+ allocs2f267e52.Borrow(cqueueFamilyIndex_allocs)
+
+ var cqueueIndex_allocs *cgoAllocMap
+ ref2f267e52.queueIndex, cqueueIndex_allocs = (C.uint32_t)(x.QueueIndex), cgoAllocsUnknown
+ allocs2f267e52.Borrow(cqueueIndex_allocs)
+
+ x.ref2f267e52 = ref2f267e52
+ x.allocs2f267e52 = allocs2f267e52
+ return ref2f267e52, allocs2f267e52
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DeviceQueueInfo2) PassValue() (C.VkDeviceQueueInfo2, *cgoAllocMap) {
+ if x.ref2f267e52 != nil {
+ return *x.ref2f267e52, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *DeviceQueueInfo2) Deref() {
+ if x.ref2f267e52 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref2f267e52.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref2f267e52.pNext))
+ x.Flags = (DeviceQueueCreateFlags)(x.ref2f267e52.flags)
+ x.QueueFamilyIndex = (uint32)(x.ref2f267e52.queueFamilyIndex)
+ x.QueueIndex = (uint32)(x.ref2f267e52.queueIndex)
+}
+
+// allocProtectedSubmitInfoMemory allocates memory for type C.VkProtectedSubmitInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocProtectedSubmitInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfProtectedSubmitInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfProtectedSubmitInfoValue = unsafe.Sizeof([1]C.VkProtectedSubmitInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ProtectedSubmitInfo) Ref() *C.VkProtectedSubmitInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref6bd69669
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ProtectedSubmitInfo) Free() {
+ if x != nil && x.allocs6bd69669 != nil {
+ x.allocs6bd69669.(*cgoAllocMap).Free()
+ x.ref6bd69669 = nil
+ }
+}
+
+// NewProtectedSubmitInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewProtectedSubmitInfoRef(ref unsafe.Pointer) *ProtectedSubmitInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ProtectedSubmitInfo)
+ obj.ref6bd69669 = (*C.VkProtectedSubmitInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ProtectedSubmitInfo) PassRef() (*C.VkProtectedSubmitInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref6bd69669 != nil {
+ return x.ref6bd69669, nil
+ }
+ mem6bd69669 := allocProtectedSubmitInfoMemory(1)
+ ref6bd69669 := (*C.VkProtectedSubmitInfo)(mem6bd69669)
+ allocs6bd69669 := new(cgoAllocMap)
+ allocs6bd69669.Add(mem6bd69669)
+
+ var csType_allocs *cgoAllocMap
+ ref6bd69669.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs6bd69669.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref6bd69669.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs6bd69669.Borrow(cpNext_allocs)
+
+ var cprotectedSubmit_allocs *cgoAllocMap
+ ref6bd69669.protectedSubmit, cprotectedSubmit_allocs = (C.VkBool32)(x.ProtectedSubmit), cgoAllocsUnknown
+ allocs6bd69669.Borrow(cprotectedSubmit_allocs)
+
+ x.ref6bd69669 = ref6bd69669
+ x.allocs6bd69669 = allocs6bd69669
+ return ref6bd69669, allocs6bd69669
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ProtectedSubmitInfo) PassValue() (C.VkProtectedSubmitInfo, *cgoAllocMap) {
+ if x.ref6bd69669 != nil {
+ return *x.ref6bd69669, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ProtectedSubmitInfo) Deref() {
+ if x.ref6bd69669 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref6bd69669.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref6bd69669.pNext))
+ x.ProtectedSubmit = (Bool32)(x.ref6bd69669.protectedSubmit)
+}
+
+// allocSamplerYcbcrConversionCreateInfoMemory allocates memory for type C.VkSamplerYcbcrConversionCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSamplerYcbcrConversionCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSamplerYcbcrConversionCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSamplerYcbcrConversionCreateInfoValue = unsafe.Sizeof([1]C.VkSamplerYcbcrConversionCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SamplerYcbcrConversionCreateInfo) Ref() *C.VkSamplerYcbcrConversionCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref9875bff7
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SamplerYcbcrConversionCreateInfo) Free() {
+ if x != nil && x.allocs9875bff7 != nil {
+ x.allocs9875bff7.(*cgoAllocMap).Free()
+ x.ref9875bff7 = nil
+ }
+}
+
+// NewSamplerYcbcrConversionCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSamplerYcbcrConversionCreateInfoRef(ref unsafe.Pointer) *SamplerYcbcrConversionCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SamplerYcbcrConversionCreateInfo)
+ obj.ref9875bff7 = (*C.VkSamplerYcbcrConversionCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SamplerYcbcrConversionCreateInfo) PassRef() (*C.VkSamplerYcbcrConversionCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref9875bff7 != nil {
+ return x.ref9875bff7, nil
+ }
+ mem9875bff7 := allocSamplerYcbcrConversionCreateInfoMemory(1)
+ ref9875bff7 := (*C.VkSamplerYcbcrConversionCreateInfo)(mem9875bff7)
+ allocs9875bff7 := new(cgoAllocMap)
+ allocs9875bff7.Add(mem9875bff7)
+
+ var csType_allocs *cgoAllocMap
+ ref9875bff7.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs9875bff7.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref9875bff7.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs9875bff7.Borrow(cpNext_allocs)
+
+ var cformat_allocs *cgoAllocMap
+ ref9875bff7.format, cformat_allocs = (C.VkFormat)(x.Format), cgoAllocsUnknown
+ allocs9875bff7.Borrow(cformat_allocs)
+
+ var cycbcrModel_allocs *cgoAllocMap
+ ref9875bff7.ycbcrModel, cycbcrModel_allocs = (C.VkSamplerYcbcrModelConversion)(x.YcbcrModel), cgoAllocsUnknown
+ allocs9875bff7.Borrow(cycbcrModel_allocs)
+
+ var cycbcrRange_allocs *cgoAllocMap
+ ref9875bff7.ycbcrRange, cycbcrRange_allocs = (C.VkSamplerYcbcrRange)(x.YcbcrRange), cgoAllocsUnknown
+ allocs9875bff7.Borrow(cycbcrRange_allocs)
+
+ var ccomponents_allocs *cgoAllocMap
+ ref9875bff7.components, ccomponents_allocs = x.Components.PassValue()
+ allocs9875bff7.Borrow(ccomponents_allocs)
+
+ var cxChromaOffset_allocs *cgoAllocMap
+ ref9875bff7.xChromaOffset, cxChromaOffset_allocs = (C.VkChromaLocation)(x.XChromaOffset), cgoAllocsUnknown
+ allocs9875bff7.Borrow(cxChromaOffset_allocs)
+
+ var cyChromaOffset_allocs *cgoAllocMap
+ ref9875bff7.yChromaOffset, cyChromaOffset_allocs = (C.VkChromaLocation)(x.YChromaOffset), cgoAllocsUnknown
+ allocs9875bff7.Borrow(cyChromaOffset_allocs)
+
+ var cchromaFilter_allocs *cgoAllocMap
+ ref9875bff7.chromaFilter, cchromaFilter_allocs = (C.VkFilter)(x.ChromaFilter), cgoAllocsUnknown
+ allocs9875bff7.Borrow(cchromaFilter_allocs)
+
+ var cforceExplicitReconstruction_allocs *cgoAllocMap
+ ref9875bff7.forceExplicitReconstruction, cforceExplicitReconstruction_allocs = (C.VkBool32)(x.ForceExplicitReconstruction), cgoAllocsUnknown
+ allocs9875bff7.Borrow(cforceExplicitReconstruction_allocs)
+
+ x.ref9875bff7 = ref9875bff7
+ x.allocs9875bff7 = allocs9875bff7
+ return ref9875bff7, allocs9875bff7
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SamplerYcbcrConversionCreateInfo) PassValue() (C.VkSamplerYcbcrConversionCreateInfo, *cgoAllocMap) {
+ if x.ref9875bff7 != nil {
+ return *x.ref9875bff7, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SamplerYcbcrConversionCreateInfo) Deref() {
+ if x.ref9875bff7 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref9875bff7.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref9875bff7.pNext))
+ x.Format = (Format)(x.ref9875bff7.format)
+ x.YcbcrModel = (SamplerYcbcrModelConversion)(x.ref9875bff7.ycbcrModel)
+ x.YcbcrRange = (SamplerYcbcrRange)(x.ref9875bff7.ycbcrRange)
+ x.Components = *NewComponentMappingRef(unsafe.Pointer(&x.ref9875bff7.components))
+ x.XChromaOffset = (ChromaLocation)(x.ref9875bff7.xChromaOffset)
+ x.YChromaOffset = (ChromaLocation)(x.ref9875bff7.yChromaOffset)
+ x.ChromaFilter = (Filter)(x.ref9875bff7.chromaFilter)
+ x.ForceExplicitReconstruction = (Bool32)(x.ref9875bff7.forceExplicitReconstruction)
+}
+
+// allocSamplerYcbcrConversionInfoMemory allocates memory for type C.VkSamplerYcbcrConversionInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSamplerYcbcrConversionInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSamplerYcbcrConversionInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSamplerYcbcrConversionInfoValue = unsafe.Sizeof([1]C.VkSamplerYcbcrConversionInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SamplerYcbcrConversionInfo) Ref() *C.VkSamplerYcbcrConversionInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref11ff5547
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SamplerYcbcrConversionInfo) Free() {
+ if x != nil && x.allocs11ff5547 != nil {
+ x.allocs11ff5547.(*cgoAllocMap).Free()
+ x.ref11ff5547 = nil
+ }
+}
+
+// NewSamplerYcbcrConversionInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSamplerYcbcrConversionInfoRef(ref unsafe.Pointer) *SamplerYcbcrConversionInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SamplerYcbcrConversionInfo)
+ obj.ref11ff5547 = (*C.VkSamplerYcbcrConversionInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SamplerYcbcrConversionInfo) PassRef() (*C.VkSamplerYcbcrConversionInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref11ff5547 != nil {
+ return x.ref11ff5547, nil
+ }
+ mem11ff5547 := allocSamplerYcbcrConversionInfoMemory(1)
+ ref11ff5547 := (*C.VkSamplerYcbcrConversionInfo)(mem11ff5547)
+ allocs11ff5547 := new(cgoAllocMap)
+ allocs11ff5547.Add(mem11ff5547)
+
+ var csType_allocs *cgoAllocMap
+ ref11ff5547.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs11ff5547.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref11ff5547.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs11ff5547.Borrow(cpNext_allocs)
+
+ var cconversion_allocs *cgoAllocMap
+ ref11ff5547.conversion, cconversion_allocs = *(*C.VkSamplerYcbcrConversion)(unsafe.Pointer(&x.Conversion)), cgoAllocsUnknown
+ allocs11ff5547.Borrow(cconversion_allocs)
+
+ x.ref11ff5547 = ref11ff5547
+ x.allocs11ff5547 = allocs11ff5547
+ return ref11ff5547, allocs11ff5547
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SamplerYcbcrConversionInfo) PassValue() (C.VkSamplerYcbcrConversionInfo, *cgoAllocMap) {
+ if x.ref11ff5547 != nil {
+ return *x.ref11ff5547, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SamplerYcbcrConversionInfo) Deref() {
+ if x.ref11ff5547 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref11ff5547.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref11ff5547.pNext))
+ x.Conversion = *(*SamplerYcbcrConversion)(unsafe.Pointer(&x.ref11ff5547.conversion))
+}
+
+// allocBindImagePlaneMemoryInfoMemory allocates memory for type C.VkBindImagePlaneMemoryInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocBindImagePlaneMemoryInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBindImagePlaneMemoryInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfBindImagePlaneMemoryInfoValue = unsafe.Sizeof([1]C.VkBindImagePlaneMemoryInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *BindImagePlaneMemoryInfo) Ref() *C.VkBindImagePlaneMemoryInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref56b81476
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *BindImagePlaneMemoryInfo) Free() {
+ if x != nil && x.allocs56b81476 != nil {
+ x.allocs56b81476.(*cgoAllocMap).Free()
+ x.ref56b81476 = nil
+ }
+}
+
+// NewBindImagePlaneMemoryInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewBindImagePlaneMemoryInfoRef(ref unsafe.Pointer) *BindImagePlaneMemoryInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(BindImagePlaneMemoryInfo)
+ obj.ref56b81476 = (*C.VkBindImagePlaneMemoryInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *BindImagePlaneMemoryInfo) PassRef() (*C.VkBindImagePlaneMemoryInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref56b81476 != nil {
+ return x.ref56b81476, nil
+ }
+ mem56b81476 := allocBindImagePlaneMemoryInfoMemory(1)
+ ref56b81476 := (*C.VkBindImagePlaneMemoryInfo)(mem56b81476)
+ allocs56b81476 := new(cgoAllocMap)
+ allocs56b81476.Add(mem56b81476)
+
+ var csType_allocs *cgoAllocMap
+ ref56b81476.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs56b81476.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref56b81476.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs56b81476.Borrow(cpNext_allocs)
+
+ var cplaneAspect_allocs *cgoAllocMap
+ ref56b81476.planeAspect, cplaneAspect_allocs = (C.VkImageAspectFlagBits)(x.PlaneAspect), cgoAllocsUnknown
+ allocs56b81476.Borrow(cplaneAspect_allocs)
+
+ x.ref56b81476 = ref56b81476
+ x.allocs56b81476 = allocs56b81476
+ return ref56b81476, allocs56b81476
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x BindImagePlaneMemoryInfo) PassValue() (C.VkBindImagePlaneMemoryInfo, *cgoAllocMap) {
+ if x.ref56b81476 != nil {
+ return *x.ref56b81476, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *BindImagePlaneMemoryInfo) Deref() {
+ if x.ref56b81476 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref56b81476.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref56b81476.pNext))
+ x.PlaneAspect = (ImageAspectFlagBits)(x.ref56b81476.planeAspect)
+}
+
+// allocImagePlaneMemoryRequirementsInfoMemory allocates memory for type C.VkImagePlaneMemoryRequirementsInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocImagePlaneMemoryRequirementsInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImagePlaneMemoryRequirementsInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfImagePlaneMemoryRequirementsInfoValue = unsafe.Sizeof([1]C.VkImagePlaneMemoryRequirementsInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ImagePlaneMemoryRequirementsInfo) Ref() *C.VkImagePlaneMemoryRequirementsInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refefec131f
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ImagePlaneMemoryRequirementsInfo) Free() {
+ if x != nil && x.allocsefec131f != nil {
+ x.allocsefec131f.(*cgoAllocMap).Free()
+ x.refefec131f = nil
+ }
+}
+
+// NewImagePlaneMemoryRequirementsInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewImagePlaneMemoryRequirementsInfoRef(ref unsafe.Pointer) *ImagePlaneMemoryRequirementsInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ImagePlaneMemoryRequirementsInfo)
+ obj.refefec131f = (*C.VkImagePlaneMemoryRequirementsInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ImagePlaneMemoryRequirementsInfo) PassRef() (*C.VkImagePlaneMemoryRequirementsInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refefec131f != nil {
+ return x.refefec131f, nil
+ }
+ memefec131f := allocImagePlaneMemoryRequirementsInfoMemory(1)
+ refefec131f := (*C.VkImagePlaneMemoryRequirementsInfo)(memefec131f)
+ allocsefec131f := new(cgoAllocMap)
+ allocsefec131f.Add(memefec131f)
+
+ var csType_allocs *cgoAllocMap
+ refefec131f.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsefec131f.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refefec131f.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsefec131f.Borrow(cpNext_allocs)
+
+ var cplaneAspect_allocs *cgoAllocMap
+ refefec131f.planeAspect, cplaneAspect_allocs = (C.VkImageAspectFlagBits)(x.PlaneAspect), cgoAllocsUnknown
+ allocsefec131f.Borrow(cplaneAspect_allocs)
+
+ x.refefec131f = refefec131f
+ x.allocsefec131f = allocsefec131f
+ return refefec131f, allocsefec131f
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ImagePlaneMemoryRequirementsInfo) PassValue() (C.VkImagePlaneMemoryRequirementsInfo, *cgoAllocMap) {
+ if x.refefec131f != nil {
+ return *x.refefec131f, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ImagePlaneMemoryRequirementsInfo) Deref() {
+ if x.refefec131f == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refefec131f.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refefec131f.pNext))
+ x.PlaneAspect = (ImageAspectFlagBits)(x.refefec131f.planeAspect)
+}
+
+// allocPhysicalDeviceSamplerYcbcrConversionFeaturesMemory allocates memory for type C.VkPhysicalDeviceSamplerYcbcrConversionFeatures in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceSamplerYcbcrConversionFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceSamplerYcbcrConversionFeaturesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceSamplerYcbcrConversionFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceSamplerYcbcrConversionFeatures{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceSamplerYcbcrConversionFeatures) Ref() *C.VkPhysicalDeviceSamplerYcbcrConversionFeatures {
+ if x == nil {
+ return nil
+ }
+ return x.ref1d054d67
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceSamplerYcbcrConversionFeatures) Free() {
+ if x != nil && x.allocs1d054d67 != nil {
+ x.allocs1d054d67.(*cgoAllocMap).Free()
+ x.ref1d054d67 = nil
+ }
+}
+
+// NewPhysicalDeviceSamplerYcbcrConversionFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceSamplerYcbcrConversionFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceSamplerYcbcrConversionFeatures {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceSamplerYcbcrConversionFeatures)
+ obj.ref1d054d67 = (*C.VkPhysicalDeviceSamplerYcbcrConversionFeatures)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceSamplerYcbcrConversionFeatures) PassRef() (*C.VkPhysicalDeviceSamplerYcbcrConversionFeatures, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref1d054d67 != nil {
+ return x.ref1d054d67, nil
+ }
+ mem1d054d67 := allocPhysicalDeviceSamplerYcbcrConversionFeaturesMemory(1)
+ ref1d054d67 := (*C.VkPhysicalDeviceSamplerYcbcrConversionFeatures)(mem1d054d67)
+ allocs1d054d67 := new(cgoAllocMap)
+ allocs1d054d67.Add(mem1d054d67)
+
+ var csType_allocs *cgoAllocMap
+ ref1d054d67.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs1d054d67.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref1d054d67.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs1d054d67.Borrow(cpNext_allocs)
+
+ var csamplerYcbcrConversion_allocs *cgoAllocMap
+ ref1d054d67.samplerYcbcrConversion, csamplerYcbcrConversion_allocs = (C.VkBool32)(x.SamplerYcbcrConversion), cgoAllocsUnknown
+ allocs1d054d67.Borrow(csamplerYcbcrConversion_allocs)
+
+ x.ref1d054d67 = ref1d054d67
+ x.allocs1d054d67 = allocs1d054d67
+ return ref1d054d67, allocs1d054d67
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceSamplerYcbcrConversionFeatures) PassValue() (C.VkPhysicalDeviceSamplerYcbcrConversionFeatures, *cgoAllocMap) {
+ if x.ref1d054d67 != nil {
+ return *x.ref1d054d67, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceSamplerYcbcrConversionFeatures) Deref() {
+ if x.ref1d054d67 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref1d054d67.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref1d054d67.pNext))
+ x.SamplerYcbcrConversion = (Bool32)(x.ref1d054d67.samplerYcbcrConversion)
+}
+
+// allocSamplerYcbcrConversionImageFormatPropertiesMemory allocates memory for type C.VkSamplerYcbcrConversionImageFormatProperties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSamplerYcbcrConversionImageFormatPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSamplerYcbcrConversionImageFormatPropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSamplerYcbcrConversionImageFormatPropertiesValue = unsafe.Sizeof([1]C.VkSamplerYcbcrConversionImageFormatProperties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SamplerYcbcrConversionImageFormatProperties) Ref() *C.VkSamplerYcbcrConversionImageFormatProperties {
+ if x == nil {
+ return nil
+ }
+ return x.ref6bc79530
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SamplerYcbcrConversionImageFormatProperties) Free() {
+ if x != nil && x.allocs6bc79530 != nil {
+ x.allocs6bc79530.(*cgoAllocMap).Free()
+ x.ref6bc79530 = nil
+ }
+}
+
+// NewSamplerYcbcrConversionImageFormatPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSamplerYcbcrConversionImageFormatPropertiesRef(ref unsafe.Pointer) *SamplerYcbcrConversionImageFormatProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SamplerYcbcrConversionImageFormatProperties)
+ obj.ref6bc79530 = (*C.VkSamplerYcbcrConversionImageFormatProperties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SamplerYcbcrConversionImageFormatProperties) PassRef() (*C.VkSamplerYcbcrConversionImageFormatProperties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref6bc79530 != nil {
+ return x.ref6bc79530, nil
+ }
+ mem6bc79530 := allocSamplerYcbcrConversionImageFormatPropertiesMemory(1)
+ ref6bc79530 := (*C.VkSamplerYcbcrConversionImageFormatProperties)(mem6bc79530)
+ allocs6bc79530 := new(cgoAllocMap)
+ allocs6bc79530.Add(mem6bc79530)
+
+ var csType_allocs *cgoAllocMap
+ ref6bc79530.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs6bc79530.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref6bc79530.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs6bc79530.Borrow(cpNext_allocs)
+
+ var ccombinedImageSamplerDescriptorCount_allocs *cgoAllocMap
+ ref6bc79530.combinedImageSamplerDescriptorCount, ccombinedImageSamplerDescriptorCount_allocs = (C.uint32_t)(x.CombinedImageSamplerDescriptorCount), cgoAllocsUnknown
+ allocs6bc79530.Borrow(ccombinedImageSamplerDescriptorCount_allocs)
+
+ x.ref6bc79530 = ref6bc79530
+ x.allocs6bc79530 = allocs6bc79530
+ return ref6bc79530, allocs6bc79530
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SamplerYcbcrConversionImageFormatProperties) PassValue() (C.VkSamplerYcbcrConversionImageFormatProperties, *cgoAllocMap) {
+ if x.ref6bc79530 != nil {
+ return *x.ref6bc79530, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SamplerYcbcrConversionImageFormatProperties) Deref() {
+ if x.ref6bc79530 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref6bc79530.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref6bc79530.pNext))
+ x.CombinedImageSamplerDescriptorCount = (uint32)(x.ref6bc79530.combinedImageSamplerDescriptorCount)
+}
+
+// allocDescriptorUpdateTemplateEntryMemory allocates memory for type C.VkDescriptorUpdateTemplateEntry in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocDescriptorUpdateTemplateEntryMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorUpdateTemplateEntryValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfDescriptorUpdateTemplateEntryValue = unsafe.Sizeof([1]C.VkDescriptorUpdateTemplateEntry{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *DescriptorUpdateTemplateEntry) Ref() *C.VkDescriptorUpdateTemplateEntry {
+ if x == nil {
+ return nil
+ }
+ return x.refabf78fb7
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *DescriptorUpdateTemplateEntry) Free() {
+ if x != nil && x.allocsabf78fb7 != nil {
+ x.allocsabf78fb7.(*cgoAllocMap).Free()
+ x.refabf78fb7 = nil
+ }
+}
+
+// NewDescriptorUpdateTemplateEntryRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewDescriptorUpdateTemplateEntryRef(ref unsafe.Pointer) *DescriptorUpdateTemplateEntry {
+ if ref == nil {
+ return nil
+ }
+ obj := new(DescriptorUpdateTemplateEntry)
+ obj.refabf78fb7 = (*C.VkDescriptorUpdateTemplateEntry)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DescriptorUpdateTemplateEntry) PassRef() (*C.VkDescriptorUpdateTemplateEntry, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refabf78fb7 != nil {
+ return x.refabf78fb7, nil
+ }
+ memabf78fb7 := allocDescriptorUpdateTemplateEntryMemory(1)
+ refabf78fb7 := (*C.VkDescriptorUpdateTemplateEntry)(memabf78fb7)
+ allocsabf78fb7 := new(cgoAllocMap)
+ allocsabf78fb7.Add(memabf78fb7)
+
+ var cdstBinding_allocs *cgoAllocMap
+ refabf78fb7.dstBinding, cdstBinding_allocs = (C.uint32_t)(x.DstBinding), cgoAllocsUnknown
+ allocsabf78fb7.Borrow(cdstBinding_allocs)
+
+ var cdstArrayElement_allocs *cgoAllocMap
+ refabf78fb7.dstArrayElement, cdstArrayElement_allocs = (C.uint32_t)(x.DstArrayElement), cgoAllocsUnknown
+ allocsabf78fb7.Borrow(cdstArrayElement_allocs)
+
+ var cdescriptorCount_allocs *cgoAllocMap
+ refabf78fb7.descriptorCount, cdescriptorCount_allocs = (C.uint32_t)(x.DescriptorCount), cgoAllocsUnknown
+ allocsabf78fb7.Borrow(cdescriptorCount_allocs)
+
+ var cdescriptorType_allocs *cgoAllocMap
+ refabf78fb7.descriptorType, cdescriptorType_allocs = (C.VkDescriptorType)(x.DescriptorType), cgoAllocsUnknown
+ allocsabf78fb7.Borrow(cdescriptorType_allocs)
+
+ var coffset_allocs *cgoAllocMap
+ refabf78fb7.offset, coffset_allocs = (C.size_t)(x.Offset), cgoAllocsUnknown
+ allocsabf78fb7.Borrow(coffset_allocs)
+
+ var cstride_allocs *cgoAllocMap
+ refabf78fb7.stride, cstride_allocs = (C.size_t)(x.Stride), cgoAllocsUnknown
+ allocsabf78fb7.Borrow(cstride_allocs)
+
+ x.refabf78fb7 = refabf78fb7
+ x.allocsabf78fb7 = allocsabf78fb7
+ return refabf78fb7, allocsabf78fb7
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DescriptorUpdateTemplateEntry) PassValue() (C.VkDescriptorUpdateTemplateEntry, *cgoAllocMap) {
+ if x.refabf78fb7 != nil {
+ return *x.refabf78fb7, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *DescriptorUpdateTemplateEntry) Deref() {
+ if x.refabf78fb7 == nil {
+ return
+ }
+ x.DstBinding = (uint32)(x.refabf78fb7.dstBinding)
+ x.DstArrayElement = (uint32)(x.refabf78fb7.dstArrayElement)
+ x.DescriptorCount = (uint32)(x.refabf78fb7.descriptorCount)
+ x.DescriptorType = (DescriptorType)(x.refabf78fb7.descriptorType)
+ x.Offset = (uint64)(x.refabf78fb7.offset)
+ x.Stride = (uint64)(x.refabf78fb7.stride)
+}
+
+// allocDescriptorUpdateTemplateCreateInfoMemory allocates memory for type C.VkDescriptorUpdateTemplateCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocDescriptorUpdateTemplateCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorUpdateTemplateCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfDescriptorUpdateTemplateCreateInfoValue = unsafe.Sizeof([1]C.VkDescriptorUpdateTemplateCreateInfo{})
+
+// unpackSDescriptorUpdateTemplateEntry transforms a sliced Go data structure into plain C format.
+func unpackSDescriptorUpdateTemplateEntry(x []DescriptorUpdateTemplateEntry) (unpacked *C.VkDescriptorUpdateTemplateEntry, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkDescriptorUpdateTemplateEntry) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocDescriptorUpdateTemplateEntryMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkDescriptorUpdateTemplateEntry)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkDescriptorUpdateTemplateEntry)(h.Data)
+ return
+}
+
+// packSDescriptorUpdateTemplateEntry reads sliced Go data structure out from plain C format.
+func packSDescriptorUpdateTemplateEntry(v []DescriptorUpdateTemplateEntry, ptr0 *C.VkDescriptorUpdateTemplateEntry) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfDescriptorUpdateTemplateEntryValue]C.VkDescriptorUpdateTemplateEntry)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewDescriptorUpdateTemplateEntryRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *DescriptorUpdateTemplateCreateInfo) Ref() *C.VkDescriptorUpdateTemplateCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref2af95951
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *DescriptorUpdateTemplateCreateInfo) Free() {
+ if x != nil && x.allocs2af95951 != nil {
+ x.allocs2af95951.(*cgoAllocMap).Free()
+ x.ref2af95951 = nil
+ }
+}
+
+// NewDescriptorUpdateTemplateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewDescriptorUpdateTemplateCreateInfoRef(ref unsafe.Pointer) *DescriptorUpdateTemplateCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(DescriptorUpdateTemplateCreateInfo)
+ obj.ref2af95951 = (*C.VkDescriptorUpdateTemplateCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DescriptorUpdateTemplateCreateInfo) PassRef() (*C.VkDescriptorUpdateTemplateCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref2af95951 != nil {
+ return x.ref2af95951, nil
+ }
+ mem2af95951 := allocDescriptorUpdateTemplateCreateInfoMemory(1)
+ ref2af95951 := (*C.VkDescriptorUpdateTemplateCreateInfo)(mem2af95951)
+ allocs2af95951 := new(cgoAllocMap)
+ allocs2af95951.Add(mem2af95951)
+
+ var csType_allocs *cgoAllocMap
+ ref2af95951.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs2af95951.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref2af95951.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs2af95951.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref2af95951.flags, cflags_allocs = (C.VkDescriptorUpdateTemplateCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocs2af95951.Borrow(cflags_allocs)
+
+ var cdescriptorUpdateEntryCount_allocs *cgoAllocMap
+ ref2af95951.descriptorUpdateEntryCount, cdescriptorUpdateEntryCount_allocs = (C.uint32_t)(x.DescriptorUpdateEntryCount), cgoAllocsUnknown
+ allocs2af95951.Borrow(cdescriptorUpdateEntryCount_allocs)
+
+ var cpDescriptorUpdateEntries_allocs *cgoAllocMap
+ ref2af95951.pDescriptorUpdateEntries, cpDescriptorUpdateEntries_allocs = unpackSDescriptorUpdateTemplateEntry(x.PDescriptorUpdateEntries)
+ allocs2af95951.Borrow(cpDescriptorUpdateEntries_allocs)
+
+ var ctemplateType_allocs *cgoAllocMap
+ ref2af95951.templateType, ctemplateType_allocs = (C.VkDescriptorUpdateTemplateType)(x.TemplateType), cgoAllocsUnknown
+ allocs2af95951.Borrow(ctemplateType_allocs)
+
+ var cdescriptorSetLayout_allocs *cgoAllocMap
+ ref2af95951.descriptorSetLayout, cdescriptorSetLayout_allocs = *(*C.VkDescriptorSetLayout)(unsafe.Pointer(&x.DescriptorSetLayout)), cgoAllocsUnknown
+ allocs2af95951.Borrow(cdescriptorSetLayout_allocs)
+
+ var cpipelineBindPoint_allocs *cgoAllocMap
+ ref2af95951.pipelineBindPoint, cpipelineBindPoint_allocs = (C.VkPipelineBindPoint)(x.PipelineBindPoint), cgoAllocsUnknown
+ allocs2af95951.Borrow(cpipelineBindPoint_allocs)
+
+ var cpipelineLayout_allocs *cgoAllocMap
+ ref2af95951.pipelineLayout, cpipelineLayout_allocs = *(*C.VkPipelineLayout)(unsafe.Pointer(&x.PipelineLayout)), cgoAllocsUnknown
+ allocs2af95951.Borrow(cpipelineLayout_allocs)
+
+ var cset_allocs *cgoAllocMap
+ ref2af95951.set, cset_allocs = (C.uint32_t)(x.Set), cgoAllocsUnknown
+ allocs2af95951.Borrow(cset_allocs)
+
+ x.ref2af95951 = ref2af95951
+ x.allocs2af95951 = allocs2af95951
+ return ref2af95951, allocs2af95951
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DescriptorUpdateTemplateCreateInfo) PassValue() (C.VkDescriptorUpdateTemplateCreateInfo, *cgoAllocMap) {
+ if x.ref2af95951 != nil {
+ return *x.ref2af95951, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *DescriptorUpdateTemplateCreateInfo) Deref() {
+ if x.ref2af95951 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref2af95951.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref2af95951.pNext))
+ x.Flags = (DescriptorUpdateTemplateCreateFlags)(x.ref2af95951.flags)
+ x.DescriptorUpdateEntryCount = (uint32)(x.ref2af95951.descriptorUpdateEntryCount)
+ packSDescriptorUpdateTemplateEntry(x.PDescriptorUpdateEntries, x.ref2af95951.pDescriptorUpdateEntries)
+ x.TemplateType = (DescriptorUpdateTemplateType)(x.ref2af95951.templateType)
+ x.DescriptorSetLayout = *(*DescriptorSetLayout)(unsafe.Pointer(&x.ref2af95951.descriptorSetLayout))
+ x.PipelineBindPoint = (PipelineBindPoint)(x.ref2af95951.pipelineBindPoint)
+ x.PipelineLayout = *(*PipelineLayout)(unsafe.Pointer(&x.ref2af95951.pipelineLayout))
+ x.Set = (uint32)(x.ref2af95951.set)
+}
+
+// allocExternalMemoryPropertiesMemory allocates memory for type C.VkExternalMemoryProperties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocExternalMemoryPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExternalMemoryPropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfExternalMemoryPropertiesValue = unsafe.Sizeof([1]C.VkExternalMemoryProperties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ExternalMemoryProperties) Ref() *C.VkExternalMemoryProperties {
+ if x == nil {
+ return nil
+ }
+ return x.ref4b738f01
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ExternalMemoryProperties) Free() {
+ if x != nil && x.allocs4b738f01 != nil {
+ x.allocs4b738f01.(*cgoAllocMap).Free()
+ x.ref4b738f01 = nil
+ }
+}
+
+// NewExternalMemoryPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewExternalMemoryPropertiesRef(ref unsafe.Pointer) *ExternalMemoryProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ExternalMemoryProperties)
+ obj.ref4b738f01 = (*C.VkExternalMemoryProperties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ExternalMemoryProperties) PassRef() (*C.VkExternalMemoryProperties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref4b738f01 != nil {
+ return x.ref4b738f01, nil
+ }
+ mem4b738f01 := allocExternalMemoryPropertiesMemory(1)
+ ref4b738f01 := (*C.VkExternalMemoryProperties)(mem4b738f01)
+ allocs4b738f01 := new(cgoAllocMap)
+ allocs4b738f01.Add(mem4b738f01)
+
+ var cexternalMemoryFeatures_allocs *cgoAllocMap
+ ref4b738f01.externalMemoryFeatures, cexternalMemoryFeatures_allocs = (C.VkExternalMemoryFeatureFlags)(x.ExternalMemoryFeatures), cgoAllocsUnknown
+ allocs4b738f01.Borrow(cexternalMemoryFeatures_allocs)
+
+ var cexportFromImportedHandleTypes_allocs *cgoAllocMap
+ ref4b738f01.exportFromImportedHandleTypes, cexportFromImportedHandleTypes_allocs = (C.VkExternalMemoryHandleTypeFlags)(x.ExportFromImportedHandleTypes), cgoAllocsUnknown
+ allocs4b738f01.Borrow(cexportFromImportedHandleTypes_allocs)
+
+ var ccompatibleHandleTypes_allocs *cgoAllocMap
+ ref4b738f01.compatibleHandleTypes, ccompatibleHandleTypes_allocs = (C.VkExternalMemoryHandleTypeFlags)(x.CompatibleHandleTypes), cgoAllocsUnknown
+ allocs4b738f01.Borrow(ccompatibleHandleTypes_allocs)
+
+ x.ref4b738f01 = ref4b738f01
+ x.allocs4b738f01 = allocs4b738f01
+ return ref4b738f01, allocs4b738f01
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ExternalMemoryProperties) PassValue() (C.VkExternalMemoryProperties, *cgoAllocMap) {
+ if x.ref4b738f01 != nil {
+ return *x.ref4b738f01, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ExternalMemoryProperties) Deref() {
+ if x.ref4b738f01 == nil {
+ return
+ }
+ x.ExternalMemoryFeatures = (ExternalMemoryFeatureFlags)(x.ref4b738f01.externalMemoryFeatures)
+ x.ExportFromImportedHandleTypes = (ExternalMemoryHandleTypeFlags)(x.ref4b738f01.exportFromImportedHandleTypes)
+ x.CompatibleHandleTypes = (ExternalMemoryHandleTypeFlags)(x.ref4b738f01.compatibleHandleTypes)
+}
+
+// allocPhysicalDeviceExternalImageFormatInfoMemory allocates memory for type C.VkPhysicalDeviceExternalImageFormatInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceExternalImageFormatInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceExternalImageFormatInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceExternalImageFormatInfoValue = unsafe.Sizeof([1]C.VkPhysicalDeviceExternalImageFormatInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceExternalImageFormatInfo) Ref() *C.VkPhysicalDeviceExternalImageFormatInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refc839c724
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceExternalImageFormatInfo) Free() {
+ if x != nil && x.allocsc839c724 != nil {
+ x.allocsc839c724.(*cgoAllocMap).Free()
+ x.refc839c724 = nil
+ }
+}
+
+// NewPhysicalDeviceExternalImageFormatInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceExternalImageFormatInfoRef(ref unsafe.Pointer) *PhysicalDeviceExternalImageFormatInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceExternalImageFormatInfo)
+ obj.refc839c724 = (*C.VkPhysicalDeviceExternalImageFormatInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceExternalImageFormatInfo) PassRef() (*C.VkPhysicalDeviceExternalImageFormatInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refc839c724 != nil {
+ return x.refc839c724, nil
+ }
+ memc839c724 := allocPhysicalDeviceExternalImageFormatInfoMemory(1)
+ refc839c724 := (*C.VkPhysicalDeviceExternalImageFormatInfo)(memc839c724)
+ allocsc839c724 := new(cgoAllocMap)
+ allocsc839c724.Add(memc839c724)
+
+ var csType_allocs *cgoAllocMap
+ refc839c724.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsc839c724.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refc839c724.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsc839c724.Borrow(cpNext_allocs)
+
+ var chandleType_allocs *cgoAllocMap
+ refc839c724.handleType, chandleType_allocs = (C.VkExternalMemoryHandleTypeFlagBits)(x.HandleType), cgoAllocsUnknown
+ allocsc839c724.Borrow(chandleType_allocs)
+
+ x.refc839c724 = refc839c724
+ x.allocsc839c724 = allocsc839c724
+ return refc839c724, allocsc839c724
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceExternalImageFormatInfo) PassValue() (C.VkPhysicalDeviceExternalImageFormatInfo, *cgoAllocMap) {
+ if x.refc839c724 != nil {
+ return *x.refc839c724, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceExternalImageFormatInfo) Deref() {
+ if x.refc839c724 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refc839c724.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc839c724.pNext))
+ x.HandleType = (ExternalMemoryHandleTypeFlagBits)(x.refc839c724.handleType)
+}
+
+// allocExternalImageFormatPropertiesMemory allocates memory for type C.VkExternalImageFormatProperties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocExternalImageFormatPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExternalImageFormatPropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfExternalImageFormatPropertiesValue = unsafe.Sizeof([1]C.VkExternalImageFormatProperties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ExternalImageFormatProperties) Ref() *C.VkExternalImageFormatProperties {
+ if x == nil {
+ return nil
+ }
+ return x.refd404c4b5
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ExternalImageFormatProperties) Free() {
+ if x != nil && x.allocsd404c4b5 != nil {
+ x.allocsd404c4b5.(*cgoAllocMap).Free()
+ x.refd404c4b5 = nil
+ }
+}
+
+// NewExternalImageFormatPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewExternalImageFormatPropertiesRef(ref unsafe.Pointer) *ExternalImageFormatProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ExternalImageFormatProperties)
+ obj.refd404c4b5 = (*C.VkExternalImageFormatProperties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ExternalImageFormatProperties) PassRef() (*C.VkExternalImageFormatProperties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refd404c4b5 != nil {
+ return x.refd404c4b5, nil
+ }
+ memd404c4b5 := allocExternalImageFormatPropertiesMemory(1)
+ refd404c4b5 := (*C.VkExternalImageFormatProperties)(memd404c4b5)
+ allocsd404c4b5 := new(cgoAllocMap)
+ allocsd404c4b5.Add(memd404c4b5)
+
+ var csType_allocs *cgoAllocMap
+ refd404c4b5.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd404c4b5.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refd404c4b5.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsd404c4b5.Borrow(cpNext_allocs)
+
+ var cexternalMemoryProperties_allocs *cgoAllocMap
+ refd404c4b5.externalMemoryProperties, cexternalMemoryProperties_allocs = x.ExternalMemoryProperties.PassValue()
+ allocsd404c4b5.Borrow(cexternalMemoryProperties_allocs)
+
+ x.refd404c4b5 = refd404c4b5
+ x.allocsd404c4b5 = allocsd404c4b5
+ return refd404c4b5, allocsd404c4b5
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ExternalImageFormatProperties) PassValue() (C.VkExternalImageFormatProperties, *cgoAllocMap) {
+ if x.refd404c4b5 != nil {
+ return *x.refd404c4b5, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ExternalImageFormatProperties) Deref() {
+ if x.refd404c4b5 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refd404c4b5.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd404c4b5.pNext))
+ x.ExternalMemoryProperties = *NewExternalMemoryPropertiesRef(unsafe.Pointer(&x.refd404c4b5.externalMemoryProperties))
+}
+
+// allocPhysicalDeviceExternalBufferInfoMemory allocates memory for type C.VkPhysicalDeviceExternalBufferInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceExternalBufferInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceExternalBufferInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceExternalBufferInfoValue = unsafe.Sizeof([1]C.VkPhysicalDeviceExternalBufferInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceExternalBufferInfo) Ref() *C.VkPhysicalDeviceExternalBufferInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref8d758947
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceExternalBufferInfo) Free() {
+ if x != nil && x.allocs8d758947 != nil {
+ x.allocs8d758947.(*cgoAllocMap).Free()
+ x.ref8d758947 = nil
+ }
+}
+
+// NewPhysicalDeviceExternalBufferInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceExternalBufferInfoRef(ref unsafe.Pointer) *PhysicalDeviceExternalBufferInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceExternalBufferInfo)
+ obj.ref8d758947 = (*C.VkPhysicalDeviceExternalBufferInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceExternalBufferInfo) PassRef() (*C.VkPhysicalDeviceExternalBufferInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref8d758947 != nil {
+ return x.ref8d758947, nil
+ }
+ mem8d758947 := allocPhysicalDeviceExternalBufferInfoMemory(1)
+ ref8d758947 := (*C.VkPhysicalDeviceExternalBufferInfo)(mem8d758947)
+ allocs8d758947 := new(cgoAllocMap)
+ allocs8d758947.Add(mem8d758947)
+
+ var csType_allocs *cgoAllocMap
+ ref8d758947.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs8d758947.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref8d758947.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs8d758947.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref8d758947.flags, cflags_allocs = (C.VkBufferCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocs8d758947.Borrow(cflags_allocs)
+
+ var cusage_allocs *cgoAllocMap
+ ref8d758947.usage, cusage_allocs = (C.VkBufferUsageFlags)(x.Usage), cgoAllocsUnknown
+ allocs8d758947.Borrow(cusage_allocs)
+
+ var chandleType_allocs *cgoAllocMap
+ ref8d758947.handleType, chandleType_allocs = (C.VkExternalMemoryHandleTypeFlagBits)(x.HandleType), cgoAllocsUnknown
+ allocs8d758947.Borrow(chandleType_allocs)
+
+ x.ref8d758947 = ref8d758947
+ x.allocs8d758947 = allocs8d758947
+ return ref8d758947, allocs8d758947
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceExternalBufferInfo) PassValue() (C.VkPhysicalDeviceExternalBufferInfo, *cgoAllocMap) {
+ if x.ref8d758947 != nil {
+ return *x.ref8d758947, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceExternalBufferInfo) Deref() {
+ if x.ref8d758947 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref8d758947.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref8d758947.pNext))
+ x.Flags = (BufferCreateFlags)(x.ref8d758947.flags)
+ x.Usage = (BufferUsageFlags)(x.ref8d758947.usage)
+ x.HandleType = (ExternalMemoryHandleTypeFlagBits)(x.ref8d758947.handleType)
+}
+
+// allocExternalBufferPropertiesMemory allocates memory for type C.VkExternalBufferProperties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocExternalBufferPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExternalBufferPropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfExternalBufferPropertiesValue = unsafe.Sizeof([1]C.VkExternalBufferProperties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ExternalBufferProperties) Ref() *C.VkExternalBufferProperties {
+ if x == nil {
+ return nil
+ }
+ return x.ref12f7c546
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ExternalBufferProperties) Free() {
+ if x != nil && x.allocs12f7c546 != nil {
+ x.allocs12f7c546.(*cgoAllocMap).Free()
+ x.ref12f7c546 = nil
+ }
+}
+
+// NewExternalBufferPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewExternalBufferPropertiesRef(ref unsafe.Pointer) *ExternalBufferProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ExternalBufferProperties)
+ obj.ref12f7c546 = (*C.VkExternalBufferProperties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ExternalBufferProperties) PassRef() (*C.VkExternalBufferProperties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref12f7c546 != nil {
+ return x.ref12f7c546, nil
+ }
+ mem12f7c546 := allocExternalBufferPropertiesMemory(1)
+ ref12f7c546 := (*C.VkExternalBufferProperties)(mem12f7c546)
+ allocs12f7c546 := new(cgoAllocMap)
+ allocs12f7c546.Add(mem12f7c546)
+
+ var csType_allocs *cgoAllocMap
+ ref12f7c546.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs12f7c546.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref12f7c546.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs12f7c546.Borrow(cpNext_allocs)
+
+ var cexternalMemoryProperties_allocs *cgoAllocMap
+ ref12f7c546.externalMemoryProperties, cexternalMemoryProperties_allocs = x.ExternalMemoryProperties.PassValue()
+ allocs12f7c546.Borrow(cexternalMemoryProperties_allocs)
+
+ x.ref12f7c546 = ref12f7c546
+ x.allocs12f7c546 = allocs12f7c546
+ return ref12f7c546, allocs12f7c546
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ExternalBufferProperties) PassValue() (C.VkExternalBufferProperties, *cgoAllocMap) {
+ if x.ref12f7c546 != nil {
+ return *x.ref12f7c546, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ExternalBufferProperties) Deref() {
+ if x.ref12f7c546 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref12f7c546.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref12f7c546.pNext))
+ x.ExternalMemoryProperties = *NewExternalMemoryPropertiesRef(unsafe.Pointer(&x.ref12f7c546.externalMemoryProperties))
+}
+
+// allocPhysicalDeviceIDPropertiesMemory allocates memory for type C.VkPhysicalDeviceIDProperties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceIDPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceIDPropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceIDPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceIDProperties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceIDProperties) Ref() *C.VkPhysicalDeviceIDProperties {
+ if x == nil {
+ return nil
+ }
+ return x.refe990a9f3
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceIDProperties) Free() {
+ if x != nil && x.allocse990a9f3 != nil {
+ x.allocse990a9f3.(*cgoAllocMap).Free()
+ x.refe990a9f3 = nil
+ }
+}
+
+// NewPhysicalDeviceIDPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceIDPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceIDProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceIDProperties)
+ obj.refe990a9f3 = (*C.VkPhysicalDeviceIDProperties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceIDProperties) PassRef() (*C.VkPhysicalDeviceIDProperties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refe990a9f3 != nil {
+ return x.refe990a9f3, nil
+ }
+ meme990a9f3 := allocPhysicalDeviceIDPropertiesMemory(1)
+ refe990a9f3 := (*C.VkPhysicalDeviceIDProperties)(meme990a9f3)
+ allocse990a9f3 := new(cgoAllocMap)
+ allocse990a9f3.Add(meme990a9f3)
+
+ var csType_allocs *cgoAllocMap
+ refe990a9f3.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocse990a9f3.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refe990a9f3.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocse990a9f3.Borrow(cpNext_allocs)
+
+ var cdeviceUUID_allocs *cgoAllocMap
+ refe990a9f3.deviceUUID, cdeviceUUID_allocs = *(*[16]C.uint8_t)(unsafe.Pointer(&x.DeviceUUID)), cgoAllocsUnknown
+ allocse990a9f3.Borrow(cdeviceUUID_allocs)
+
+ var cdriverUUID_allocs *cgoAllocMap
+ refe990a9f3.driverUUID, cdriverUUID_allocs = *(*[16]C.uint8_t)(unsafe.Pointer(&x.DriverUUID)), cgoAllocsUnknown
+ allocse990a9f3.Borrow(cdriverUUID_allocs)
+
+ var cdeviceLUID_allocs *cgoAllocMap
+ refe990a9f3.deviceLUID, cdeviceLUID_allocs = *(*[8]C.uint8_t)(unsafe.Pointer(&x.DeviceLUID)), cgoAllocsUnknown
+ allocse990a9f3.Borrow(cdeviceLUID_allocs)
+
+ var cdeviceNodeMask_allocs *cgoAllocMap
+ refe990a9f3.deviceNodeMask, cdeviceNodeMask_allocs = (C.uint32_t)(x.DeviceNodeMask), cgoAllocsUnknown
+ allocse990a9f3.Borrow(cdeviceNodeMask_allocs)
+
+ var cdeviceLUIDValid_allocs *cgoAllocMap
+ refe990a9f3.deviceLUIDValid, cdeviceLUIDValid_allocs = (C.VkBool32)(x.DeviceLUIDValid), cgoAllocsUnknown
+ allocse990a9f3.Borrow(cdeviceLUIDValid_allocs)
+
+ x.refe990a9f3 = refe990a9f3
+ x.allocse990a9f3 = allocse990a9f3
+ return refe990a9f3, allocse990a9f3
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceIDProperties) PassValue() (C.VkPhysicalDeviceIDProperties, *cgoAllocMap) {
+ if x.refe990a9f3 != nil {
+ return *x.refe990a9f3, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceIDProperties) Deref() {
+ if x.refe990a9f3 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refe990a9f3.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refe990a9f3.pNext))
+ x.DeviceUUID = *(*[16]byte)(unsafe.Pointer(&x.refe990a9f3.deviceUUID))
+ x.DriverUUID = *(*[16]byte)(unsafe.Pointer(&x.refe990a9f3.driverUUID))
+ x.DeviceLUID = *(*[8]byte)(unsafe.Pointer(&x.refe990a9f3.deviceLUID))
+ x.DeviceNodeMask = (uint32)(x.refe990a9f3.deviceNodeMask)
+ x.DeviceLUIDValid = (Bool32)(x.refe990a9f3.deviceLUIDValid)
+}
+
+// allocExternalMemoryImageCreateInfoMemory allocates memory for type C.VkExternalMemoryImageCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocExternalMemoryImageCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExternalMemoryImageCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfExternalMemoryImageCreateInfoValue = unsafe.Sizeof([1]C.VkExternalMemoryImageCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ExternalMemoryImageCreateInfo) Ref() *C.VkExternalMemoryImageCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refdaf1185e
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ExternalMemoryImageCreateInfo) Free() {
+ if x != nil && x.allocsdaf1185e != nil {
+ x.allocsdaf1185e.(*cgoAllocMap).Free()
+ x.refdaf1185e = nil
+ }
+}
+
+// NewExternalMemoryImageCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewExternalMemoryImageCreateInfoRef(ref unsafe.Pointer) *ExternalMemoryImageCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ExternalMemoryImageCreateInfo)
+ obj.refdaf1185e = (*C.VkExternalMemoryImageCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ExternalMemoryImageCreateInfo) PassRef() (*C.VkExternalMemoryImageCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refdaf1185e != nil {
+ return x.refdaf1185e, nil
+ }
+ memdaf1185e := allocExternalMemoryImageCreateInfoMemory(1)
+ refdaf1185e := (*C.VkExternalMemoryImageCreateInfo)(memdaf1185e)
+ allocsdaf1185e := new(cgoAllocMap)
+ allocsdaf1185e.Add(memdaf1185e)
+
+ var csType_allocs *cgoAllocMap
+ refdaf1185e.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsdaf1185e.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refdaf1185e.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsdaf1185e.Borrow(cpNext_allocs)
+
+ var chandleTypes_allocs *cgoAllocMap
+ refdaf1185e.handleTypes, chandleTypes_allocs = (C.VkExternalMemoryHandleTypeFlags)(x.HandleTypes), cgoAllocsUnknown
+ allocsdaf1185e.Borrow(chandleTypes_allocs)
+
+ x.refdaf1185e = refdaf1185e
+ x.allocsdaf1185e = allocsdaf1185e
+ return refdaf1185e, allocsdaf1185e
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ExternalMemoryImageCreateInfo) PassValue() (C.VkExternalMemoryImageCreateInfo, *cgoAllocMap) {
+ if x.refdaf1185e != nil {
+ return *x.refdaf1185e, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ExternalMemoryImageCreateInfo) Deref() {
+ if x.refdaf1185e == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refdaf1185e.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refdaf1185e.pNext))
+ x.HandleTypes = (ExternalMemoryHandleTypeFlags)(x.refdaf1185e.handleTypes)
+}
+
+// allocExternalMemoryBufferCreateInfoMemory allocates memory for type C.VkExternalMemoryBufferCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocExternalMemoryBufferCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExternalMemoryBufferCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfExternalMemoryBufferCreateInfoValue = unsafe.Sizeof([1]C.VkExternalMemoryBufferCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ExternalMemoryBufferCreateInfo) Ref() *C.VkExternalMemoryBufferCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refd33a9423
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ExternalMemoryBufferCreateInfo) Free() {
+ if x != nil && x.allocsd33a9423 != nil {
+ x.allocsd33a9423.(*cgoAllocMap).Free()
+ x.refd33a9423 = nil
+ }
+}
+
+// NewExternalMemoryBufferCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewExternalMemoryBufferCreateInfoRef(ref unsafe.Pointer) *ExternalMemoryBufferCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ExternalMemoryBufferCreateInfo)
+ obj.refd33a9423 = (*C.VkExternalMemoryBufferCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ExternalMemoryBufferCreateInfo) PassRef() (*C.VkExternalMemoryBufferCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refd33a9423 != nil {
+ return x.refd33a9423, nil
+ }
+ memd33a9423 := allocExternalMemoryBufferCreateInfoMemory(1)
+ refd33a9423 := (*C.VkExternalMemoryBufferCreateInfo)(memd33a9423)
+ allocsd33a9423 := new(cgoAllocMap)
+ allocsd33a9423.Add(memd33a9423)
+
+ var csType_allocs *cgoAllocMap
+ refd33a9423.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd33a9423.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refd33a9423.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsd33a9423.Borrow(cpNext_allocs)
+
+ var chandleTypes_allocs *cgoAllocMap
+ refd33a9423.handleTypes, chandleTypes_allocs = (C.VkExternalMemoryHandleTypeFlags)(x.HandleTypes), cgoAllocsUnknown
+ allocsd33a9423.Borrow(chandleTypes_allocs)
+
+ x.refd33a9423 = refd33a9423
+ x.allocsd33a9423 = allocsd33a9423
+ return refd33a9423, allocsd33a9423
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ExternalMemoryBufferCreateInfo) PassValue() (C.VkExternalMemoryBufferCreateInfo, *cgoAllocMap) {
+ if x.refd33a9423 != nil {
+ return *x.refd33a9423, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ExternalMemoryBufferCreateInfo) Deref() {
+ if x.refd33a9423 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refd33a9423.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd33a9423.pNext))
+ x.HandleTypes = (ExternalMemoryHandleTypeFlags)(x.refd33a9423.handleTypes)
+}
+
+// allocExportMemoryAllocateInfoMemory allocates memory for type C.VkExportMemoryAllocateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocExportMemoryAllocateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExportMemoryAllocateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfExportMemoryAllocateInfoValue = unsafe.Sizeof([1]C.VkExportMemoryAllocateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ExportMemoryAllocateInfo) Ref() *C.VkExportMemoryAllocateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refeb76ec64
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ExportMemoryAllocateInfo) Free() {
+ if x != nil && x.allocseb76ec64 != nil {
+ x.allocseb76ec64.(*cgoAllocMap).Free()
+ x.refeb76ec64 = nil
+ }
+}
+
+// NewExportMemoryAllocateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewExportMemoryAllocateInfoRef(ref unsafe.Pointer) *ExportMemoryAllocateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ExportMemoryAllocateInfo)
+ obj.refeb76ec64 = (*C.VkExportMemoryAllocateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ExportMemoryAllocateInfo) PassRef() (*C.VkExportMemoryAllocateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refeb76ec64 != nil {
+ return x.refeb76ec64, nil
+ }
+ memeb76ec64 := allocExportMemoryAllocateInfoMemory(1)
+ refeb76ec64 := (*C.VkExportMemoryAllocateInfo)(memeb76ec64)
+ allocseb76ec64 := new(cgoAllocMap)
+ allocseb76ec64.Add(memeb76ec64)
+
+ var csType_allocs *cgoAllocMap
+ refeb76ec64.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocseb76ec64.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refeb76ec64.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocseb76ec64.Borrow(cpNext_allocs)
+
+ var chandleTypes_allocs *cgoAllocMap
+ refeb76ec64.handleTypes, chandleTypes_allocs = (C.VkExternalMemoryHandleTypeFlags)(x.HandleTypes), cgoAllocsUnknown
+ allocseb76ec64.Borrow(chandleTypes_allocs)
+
+ x.refeb76ec64 = refeb76ec64
+ x.allocseb76ec64 = allocseb76ec64
+ return refeb76ec64, allocseb76ec64
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ExportMemoryAllocateInfo) PassValue() (C.VkExportMemoryAllocateInfo, *cgoAllocMap) {
+ if x.refeb76ec64 != nil {
+ return *x.refeb76ec64, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ExportMemoryAllocateInfo) Deref() {
+ if x.refeb76ec64 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refeb76ec64.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refeb76ec64.pNext))
+ x.HandleTypes = (ExternalMemoryHandleTypeFlags)(x.refeb76ec64.handleTypes)
+}
+
+// allocPhysicalDeviceExternalFenceInfoMemory allocates memory for type C.VkPhysicalDeviceExternalFenceInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceExternalFenceInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceExternalFenceInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceExternalFenceInfoValue = unsafe.Sizeof([1]C.VkPhysicalDeviceExternalFenceInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceExternalFenceInfo) Ref() *C.VkPhysicalDeviceExternalFenceInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref9bb660cc
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceExternalFenceInfo) Free() {
+ if x != nil && x.allocs9bb660cc != nil {
+ x.allocs9bb660cc.(*cgoAllocMap).Free()
+ x.ref9bb660cc = nil
+ }
+}
+
+// NewPhysicalDeviceExternalFenceInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceExternalFenceInfoRef(ref unsafe.Pointer) *PhysicalDeviceExternalFenceInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceExternalFenceInfo)
+ obj.ref9bb660cc = (*C.VkPhysicalDeviceExternalFenceInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceExternalFenceInfo) PassRef() (*C.VkPhysicalDeviceExternalFenceInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref9bb660cc != nil {
+ return x.ref9bb660cc, nil
+ }
+ mem9bb660cc := allocPhysicalDeviceExternalFenceInfoMemory(1)
+ ref9bb660cc := (*C.VkPhysicalDeviceExternalFenceInfo)(mem9bb660cc)
+ allocs9bb660cc := new(cgoAllocMap)
+ allocs9bb660cc.Add(mem9bb660cc)
+
+ var csType_allocs *cgoAllocMap
+ ref9bb660cc.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs9bb660cc.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref9bb660cc.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs9bb660cc.Borrow(cpNext_allocs)
+
+ var chandleType_allocs *cgoAllocMap
+ ref9bb660cc.handleType, chandleType_allocs = (C.VkExternalFenceHandleTypeFlagBits)(x.HandleType), cgoAllocsUnknown
+ allocs9bb660cc.Borrow(chandleType_allocs)
+
+ x.ref9bb660cc = ref9bb660cc
+ x.allocs9bb660cc = allocs9bb660cc
+ return ref9bb660cc, allocs9bb660cc
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceExternalFenceInfo) PassValue() (C.VkPhysicalDeviceExternalFenceInfo, *cgoAllocMap) {
+ if x.ref9bb660cc != nil {
+ return *x.ref9bb660cc, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceExternalFenceInfo) Deref() {
+ if x.ref9bb660cc == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref9bb660cc.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref9bb660cc.pNext))
+ x.HandleType = (ExternalFenceHandleTypeFlagBits)(x.ref9bb660cc.handleType)
+}
+
+// allocExternalFencePropertiesMemory allocates memory for type C.VkExternalFenceProperties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocExternalFencePropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExternalFencePropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfExternalFencePropertiesValue = unsafe.Sizeof([1]C.VkExternalFenceProperties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ExternalFenceProperties) Ref() *C.VkExternalFenceProperties {
+ if x == nil {
+ return nil
+ }
+ return x.ref18806773
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ExternalFenceProperties) Free() {
+ if x != nil && x.allocs18806773 != nil {
+ x.allocs18806773.(*cgoAllocMap).Free()
+ x.ref18806773 = nil
+ }
+}
+
+// NewExternalFencePropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewExternalFencePropertiesRef(ref unsafe.Pointer) *ExternalFenceProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ExternalFenceProperties)
+ obj.ref18806773 = (*C.VkExternalFenceProperties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ExternalFenceProperties) PassRef() (*C.VkExternalFenceProperties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref18806773 != nil {
+ return x.ref18806773, nil
+ }
+ mem18806773 := allocExternalFencePropertiesMemory(1)
+ ref18806773 := (*C.VkExternalFenceProperties)(mem18806773)
+ allocs18806773 := new(cgoAllocMap)
+ allocs18806773.Add(mem18806773)
+
+ var csType_allocs *cgoAllocMap
+ ref18806773.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs18806773.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref18806773.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs18806773.Borrow(cpNext_allocs)
+
+ var cexportFromImportedHandleTypes_allocs *cgoAllocMap
+ ref18806773.exportFromImportedHandleTypes, cexportFromImportedHandleTypes_allocs = (C.VkExternalFenceHandleTypeFlags)(x.ExportFromImportedHandleTypes), cgoAllocsUnknown
+ allocs18806773.Borrow(cexportFromImportedHandleTypes_allocs)
+
+ var ccompatibleHandleTypes_allocs *cgoAllocMap
+ ref18806773.compatibleHandleTypes, ccompatibleHandleTypes_allocs = (C.VkExternalFenceHandleTypeFlags)(x.CompatibleHandleTypes), cgoAllocsUnknown
+ allocs18806773.Borrow(ccompatibleHandleTypes_allocs)
+
+ var cexternalFenceFeatures_allocs *cgoAllocMap
+ ref18806773.externalFenceFeatures, cexternalFenceFeatures_allocs = (C.VkExternalFenceFeatureFlags)(x.ExternalFenceFeatures), cgoAllocsUnknown
+ allocs18806773.Borrow(cexternalFenceFeatures_allocs)
+
+ x.ref18806773 = ref18806773
+ x.allocs18806773 = allocs18806773
+ return ref18806773, allocs18806773
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ExternalFenceProperties) PassValue() (C.VkExternalFenceProperties, *cgoAllocMap) {
+ if x.ref18806773 != nil {
+ return *x.ref18806773, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ExternalFenceProperties) Deref() {
+ if x.ref18806773 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref18806773.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref18806773.pNext))
+ x.ExportFromImportedHandleTypes = (ExternalFenceHandleTypeFlags)(x.ref18806773.exportFromImportedHandleTypes)
+ x.CompatibleHandleTypes = (ExternalFenceHandleTypeFlags)(x.ref18806773.compatibleHandleTypes)
+ x.ExternalFenceFeatures = (ExternalFenceFeatureFlags)(x.ref18806773.externalFenceFeatures)
+}
+
+// allocExportFenceCreateInfoMemory allocates memory for type C.VkExportFenceCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocExportFenceCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExportFenceCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfExportFenceCreateInfoValue = unsafe.Sizeof([1]C.VkExportFenceCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ExportFenceCreateInfo) Ref() *C.VkExportFenceCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref5fef8c3a
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ExportFenceCreateInfo) Free() {
+ if x != nil && x.allocs5fef8c3a != nil {
+ x.allocs5fef8c3a.(*cgoAllocMap).Free()
+ x.ref5fef8c3a = nil
+ }
+}
+
+// NewExportFenceCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewExportFenceCreateInfoRef(ref unsafe.Pointer) *ExportFenceCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ExportFenceCreateInfo)
+ obj.ref5fef8c3a = (*C.VkExportFenceCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ExportFenceCreateInfo) PassRef() (*C.VkExportFenceCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref5fef8c3a != nil {
+ return x.ref5fef8c3a, nil
+ }
+ mem5fef8c3a := allocExportFenceCreateInfoMemory(1)
+ ref5fef8c3a := (*C.VkExportFenceCreateInfo)(mem5fef8c3a)
+ allocs5fef8c3a := new(cgoAllocMap)
+ allocs5fef8c3a.Add(mem5fef8c3a)
+
+ var csType_allocs *cgoAllocMap
+ ref5fef8c3a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs5fef8c3a.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref5fef8c3a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs5fef8c3a.Borrow(cpNext_allocs)
+
+ var chandleTypes_allocs *cgoAllocMap
+ ref5fef8c3a.handleTypes, chandleTypes_allocs = (C.VkExternalFenceHandleTypeFlags)(x.HandleTypes), cgoAllocsUnknown
+ allocs5fef8c3a.Borrow(chandleTypes_allocs)
+
+ x.ref5fef8c3a = ref5fef8c3a
+ x.allocs5fef8c3a = allocs5fef8c3a
+ return ref5fef8c3a, allocs5fef8c3a
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ExportFenceCreateInfo) PassValue() (C.VkExportFenceCreateInfo, *cgoAllocMap) {
+ if x.ref5fef8c3a != nil {
+ return *x.ref5fef8c3a, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ExportFenceCreateInfo) Deref() {
+ if x.ref5fef8c3a == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref5fef8c3a.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5fef8c3a.pNext))
+ x.HandleTypes = (ExternalFenceHandleTypeFlags)(x.ref5fef8c3a.handleTypes)
+}
+
+// allocExportSemaphoreCreateInfoMemory allocates memory for type C.VkExportSemaphoreCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocExportSemaphoreCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExportSemaphoreCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfExportSemaphoreCreateInfoValue = unsafe.Sizeof([1]C.VkExportSemaphoreCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ExportSemaphoreCreateInfo) Ref() *C.VkExportSemaphoreCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref17b8d6c5
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ExportSemaphoreCreateInfo) Free() {
+ if x != nil && x.allocs17b8d6c5 != nil {
+ x.allocs17b8d6c5.(*cgoAllocMap).Free()
+ x.ref17b8d6c5 = nil
+ }
+}
+
+// NewExportSemaphoreCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewExportSemaphoreCreateInfoRef(ref unsafe.Pointer) *ExportSemaphoreCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ExportSemaphoreCreateInfo)
+ obj.ref17b8d6c5 = (*C.VkExportSemaphoreCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ExportSemaphoreCreateInfo) PassRef() (*C.VkExportSemaphoreCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref17b8d6c5 != nil {
+ return x.ref17b8d6c5, nil
+ }
+ mem17b8d6c5 := allocExportSemaphoreCreateInfoMemory(1)
+ ref17b8d6c5 := (*C.VkExportSemaphoreCreateInfo)(mem17b8d6c5)
+ allocs17b8d6c5 := new(cgoAllocMap)
+ allocs17b8d6c5.Add(mem17b8d6c5)
+
+ var csType_allocs *cgoAllocMap
+ ref17b8d6c5.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs17b8d6c5.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref17b8d6c5.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs17b8d6c5.Borrow(cpNext_allocs)
+
+ var chandleTypes_allocs *cgoAllocMap
+ ref17b8d6c5.handleTypes, chandleTypes_allocs = (C.VkExternalSemaphoreHandleTypeFlags)(x.HandleTypes), cgoAllocsUnknown
+ allocs17b8d6c5.Borrow(chandleTypes_allocs)
+
+ x.ref17b8d6c5 = ref17b8d6c5
+ x.allocs17b8d6c5 = allocs17b8d6c5
+ return ref17b8d6c5, allocs17b8d6c5
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ExportSemaphoreCreateInfo) PassValue() (C.VkExportSemaphoreCreateInfo, *cgoAllocMap) {
+ if x.ref17b8d6c5 != nil {
+ return *x.ref17b8d6c5, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ExportSemaphoreCreateInfo) Deref() {
+ if x.ref17b8d6c5 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref17b8d6c5.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref17b8d6c5.pNext))
+ x.HandleTypes = (ExternalSemaphoreHandleTypeFlags)(x.ref17b8d6c5.handleTypes)
+}
+
+// allocPhysicalDeviceExternalSemaphoreInfoMemory allocates memory for type C.VkPhysicalDeviceExternalSemaphoreInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceExternalSemaphoreInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceExternalSemaphoreInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceExternalSemaphoreInfoValue = unsafe.Sizeof([1]C.VkPhysicalDeviceExternalSemaphoreInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceExternalSemaphoreInfo) Ref() *C.VkPhysicalDeviceExternalSemaphoreInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref5981d29e
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceExternalSemaphoreInfo) Free() {
+ if x != nil && x.allocs5981d29e != nil {
+ x.allocs5981d29e.(*cgoAllocMap).Free()
+ x.ref5981d29e = nil
+ }
+}
+
+// NewPhysicalDeviceExternalSemaphoreInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceExternalSemaphoreInfoRef(ref unsafe.Pointer) *PhysicalDeviceExternalSemaphoreInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceExternalSemaphoreInfo)
+ obj.ref5981d29e = (*C.VkPhysicalDeviceExternalSemaphoreInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceExternalSemaphoreInfo) PassRef() (*C.VkPhysicalDeviceExternalSemaphoreInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref5981d29e != nil {
+ return x.ref5981d29e, nil
+ }
+ mem5981d29e := allocPhysicalDeviceExternalSemaphoreInfoMemory(1)
+ ref5981d29e := (*C.VkPhysicalDeviceExternalSemaphoreInfo)(mem5981d29e)
+ allocs5981d29e := new(cgoAllocMap)
+ allocs5981d29e.Add(mem5981d29e)
+
+ var csType_allocs *cgoAllocMap
+ ref5981d29e.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs5981d29e.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref5981d29e.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs5981d29e.Borrow(cpNext_allocs)
+
+ var chandleType_allocs *cgoAllocMap
+ ref5981d29e.handleType, chandleType_allocs = (C.VkExternalSemaphoreHandleTypeFlagBits)(x.HandleType), cgoAllocsUnknown
+ allocs5981d29e.Borrow(chandleType_allocs)
+
+ x.ref5981d29e = ref5981d29e
+ x.allocs5981d29e = allocs5981d29e
+ return ref5981d29e, allocs5981d29e
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceExternalSemaphoreInfo) PassValue() (C.VkPhysicalDeviceExternalSemaphoreInfo, *cgoAllocMap) {
+ if x.ref5981d29e != nil {
+ return *x.ref5981d29e, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceExternalSemaphoreInfo) Deref() {
+ if x.ref5981d29e == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref5981d29e.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5981d29e.pNext))
+ x.HandleType = (ExternalSemaphoreHandleTypeFlagBits)(x.ref5981d29e.handleType)
+}
+
+// allocExternalSemaphorePropertiesMemory allocates memory for type C.VkExternalSemaphoreProperties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocExternalSemaphorePropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExternalSemaphorePropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfExternalSemaphorePropertiesValue = unsafe.Sizeof([1]C.VkExternalSemaphoreProperties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ExternalSemaphoreProperties) Ref() *C.VkExternalSemaphoreProperties {
+ if x == nil {
+ return nil
+ }
+ return x.ref87ec1054
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ExternalSemaphoreProperties) Free() {
+ if x != nil && x.allocs87ec1054 != nil {
+ x.allocs87ec1054.(*cgoAllocMap).Free()
+ x.ref87ec1054 = nil
+ }
+}
+
+// NewExternalSemaphorePropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewExternalSemaphorePropertiesRef(ref unsafe.Pointer) *ExternalSemaphoreProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ExternalSemaphoreProperties)
+ obj.ref87ec1054 = (*C.VkExternalSemaphoreProperties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ExternalSemaphoreProperties) PassRef() (*C.VkExternalSemaphoreProperties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref87ec1054 != nil {
+ return x.ref87ec1054, nil
+ }
+ mem87ec1054 := allocExternalSemaphorePropertiesMemory(1)
+ ref87ec1054 := (*C.VkExternalSemaphoreProperties)(mem87ec1054)
+ allocs87ec1054 := new(cgoAllocMap)
+ allocs87ec1054.Add(mem87ec1054)
+
+ var csType_allocs *cgoAllocMap
+ ref87ec1054.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs87ec1054.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref87ec1054.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs87ec1054.Borrow(cpNext_allocs)
+
+ var cexportFromImportedHandleTypes_allocs *cgoAllocMap
+ ref87ec1054.exportFromImportedHandleTypes, cexportFromImportedHandleTypes_allocs = (C.VkExternalSemaphoreHandleTypeFlags)(x.ExportFromImportedHandleTypes), cgoAllocsUnknown
+ allocs87ec1054.Borrow(cexportFromImportedHandleTypes_allocs)
+
+ var ccompatibleHandleTypes_allocs *cgoAllocMap
+ ref87ec1054.compatibleHandleTypes, ccompatibleHandleTypes_allocs = (C.VkExternalSemaphoreHandleTypeFlags)(x.CompatibleHandleTypes), cgoAllocsUnknown
+ allocs87ec1054.Borrow(ccompatibleHandleTypes_allocs)
+
+ var cexternalSemaphoreFeatures_allocs *cgoAllocMap
+ ref87ec1054.externalSemaphoreFeatures, cexternalSemaphoreFeatures_allocs = (C.VkExternalSemaphoreFeatureFlags)(x.ExternalSemaphoreFeatures), cgoAllocsUnknown
+ allocs87ec1054.Borrow(cexternalSemaphoreFeatures_allocs)
+
+ x.ref87ec1054 = ref87ec1054
+ x.allocs87ec1054 = allocs87ec1054
+ return ref87ec1054, allocs87ec1054
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ExternalSemaphoreProperties) PassValue() (C.VkExternalSemaphoreProperties, *cgoAllocMap) {
+ if x.ref87ec1054 != nil {
+ return *x.ref87ec1054, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ExternalSemaphoreProperties) Deref() {
+ if x.ref87ec1054 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref87ec1054.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref87ec1054.pNext))
+ x.ExportFromImportedHandleTypes = (ExternalSemaphoreHandleTypeFlags)(x.ref87ec1054.exportFromImportedHandleTypes)
+ x.CompatibleHandleTypes = (ExternalSemaphoreHandleTypeFlags)(x.ref87ec1054.compatibleHandleTypes)
+ x.ExternalSemaphoreFeatures = (ExternalSemaphoreFeatureFlags)(x.ref87ec1054.externalSemaphoreFeatures)
+}
+
+// allocPhysicalDeviceMaintenance3PropertiesMemory allocates memory for type C.VkPhysicalDeviceMaintenance3Properties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceMaintenance3PropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceMaintenance3PropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceMaintenance3PropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceMaintenance3Properties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceMaintenance3Properties) Ref() *C.VkPhysicalDeviceMaintenance3Properties {
+ if x == nil {
+ return nil
+ }
+ return x.ref12c07777
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceMaintenance3Properties) Free() {
+ if x != nil && x.allocs12c07777 != nil {
+ x.allocs12c07777.(*cgoAllocMap).Free()
+ x.ref12c07777 = nil
+ }
+}
+
+// NewPhysicalDeviceMaintenance3PropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceMaintenance3PropertiesRef(ref unsafe.Pointer) *PhysicalDeviceMaintenance3Properties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceMaintenance3Properties)
+ obj.ref12c07777 = (*C.VkPhysicalDeviceMaintenance3Properties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceMaintenance3Properties) PassRef() (*C.VkPhysicalDeviceMaintenance3Properties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref12c07777 != nil {
+ return x.ref12c07777, nil
+ }
+ mem12c07777 := allocPhysicalDeviceMaintenance3PropertiesMemory(1)
+ ref12c07777 := (*C.VkPhysicalDeviceMaintenance3Properties)(mem12c07777)
+ allocs12c07777 := new(cgoAllocMap)
+ allocs12c07777.Add(mem12c07777)
+
+ var csType_allocs *cgoAllocMap
+ ref12c07777.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs12c07777.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref12c07777.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs12c07777.Borrow(cpNext_allocs)
+
+ var cmaxPerSetDescriptors_allocs *cgoAllocMap
+ ref12c07777.maxPerSetDescriptors, cmaxPerSetDescriptors_allocs = (C.uint32_t)(x.MaxPerSetDescriptors), cgoAllocsUnknown
+ allocs12c07777.Borrow(cmaxPerSetDescriptors_allocs)
+
+ var cmaxMemoryAllocationSize_allocs *cgoAllocMap
+ ref12c07777.maxMemoryAllocationSize, cmaxMemoryAllocationSize_allocs = (C.VkDeviceSize)(x.MaxMemoryAllocationSize), cgoAllocsUnknown
+ allocs12c07777.Borrow(cmaxMemoryAllocationSize_allocs)
+
+ x.ref12c07777 = ref12c07777
+ x.allocs12c07777 = allocs12c07777
+ return ref12c07777, allocs12c07777
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceMaintenance3Properties) PassValue() (C.VkPhysicalDeviceMaintenance3Properties, *cgoAllocMap) {
+ if x.ref12c07777 != nil {
+ return *x.ref12c07777, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceMaintenance3Properties) Deref() {
+ if x.ref12c07777 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref12c07777.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref12c07777.pNext))
+ x.MaxPerSetDescriptors = (uint32)(x.ref12c07777.maxPerSetDescriptors)
+ x.MaxMemoryAllocationSize = (DeviceSize)(x.ref12c07777.maxMemoryAllocationSize)
+}
+
+// allocDescriptorSetLayoutSupportMemory allocates memory for type C.VkDescriptorSetLayoutSupport in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocDescriptorSetLayoutSupportMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorSetLayoutSupportValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfDescriptorSetLayoutSupportValue = unsafe.Sizeof([1]C.VkDescriptorSetLayoutSupport{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *DescriptorSetLayoutSupport) Ref() *C.VkDescriptorSetLayoutSupport {
+ if x == nil {
+ return nil
+ }
+ return x.ref5802686c
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *DescriptorSetLayoutSupport) Free() {
+ if x != nil && x.allocs5802686c != nil {
+ x.allocs5802686c.(*cgoAllocMap).Free()
+ x.ref5802686c = nil
+ }
+}
+
+// NewDescriptorSetLayoutSupportRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewDescriptorSetLayoutSupportRef(ref unsafe.Pointer) *DescriptorSetLayoutSupport {
+ if ref == nil {
+ return nil
+ }
+ obj := new(DescriptorSetLayoutSupport)
+ obj.ref5802686c = (*C.VkDescriptorSetLayoutSupport)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DescriptorSetLayoutSupport) PassRef() (*C.VkDescriptorSetLayoutSupport, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref5802686c != nil {
+ return x.ref5802686c, nil
+ }
+ mem5802686c := allocDescriptorSetLayoutSupportMemory(1)
+ ref5802686c := (*C.VkDescriptorSetLayoutSupport)(mem5802686c)
+ allocs5802686c := new(cgoAllocMap)
+ allocs5802686c.Add(mem5802686c)
+
+ var csType_allocs *cgoAllocMap
+ ref5802686c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs5802686c.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref5802686c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs5802686c.Borrow(cpNext_allocs)
+
+ var csupported_allocs *cgoAllocMap
+ ref5802686c.supported, csupported_allocs = (C.VkBool32)(x.Supported), cgoAllocsUnknown
+ allocs5802686c.Borrow(csupported_allocs)
+
+ x.ref5802686c = ref5802686c
+ x.allocs5802686c = allocs5802686c
+ return ref5802686c, allocs5802686c
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DescriptorSetLayoutSupport) PassValue() (C.VkDescriptorSetLayoutSupport, *cgoAllocMap) {
+ if x.ref5802686c != nil {
+ return *x.ref5802686c, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *DescriptorSetLayoutSupport) Deref() {
+ if x.ref5802686c == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref5802686c.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5802686c.pNext))
+ x.Supported = (Bool32)(x.ref5802686c.supported)
+}
+
+// allocPhysicalDeviceShaderDrawParametersFeaturesMemory allocates memory for type C.VkPhysicalDeviceShaderDrawParametersFeatures in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceShaderDrawParametersFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceShaderDrawParametersFeaturesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceShaderDrawParametersFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceShaderDrawParametersFeatures{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceShaderDrawParametersFeatures) Ref() *C.VkPhysicalDeviceShaderDrawParametersFeatures {
+ if x == nil {
+ return nil
+ }
+ return x.ref35d5aa70
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceShaderDrawParametersFeatures) Free() {
+ if x != nil && x.allocs35d5aa70 != nil {
+ x.allocs35d5aa70.(*cgoAllocMap).Free()
+ x.ref35d5aa70 = nil
+ }
+}
+
+// NewPhysicalDeviceShaderDrawParametersFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceShaderDrawParametersFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceShaderDrawParametersFeatures {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceShaderDrawParametersFeatures)
+ obj.ref35d5aa70 = (*C.VkPhysicalDeviceShaderDrawParametersFeatures)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceShaderDrawParametersFeatures) PassRef() (*C.VkPhysicalDeviceShaderDrawParametersFeatures, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref35d5aa70 != nil {
+ return x.ref35d5aa70, nil
+ }
+ mem35d5aa70 := allocPhysicalDeviceShaderDrawParametersFeaturesMemory(1)
+ ref35d5aa70 := (*C.VkPhysicalDeviceShaderDrawParametersFeatures)(mem35d5aa70)
+ allocs35d5aa70 := new(cgoAllocMap)
+ allocs35d5aa70.Add(mem35d5aa70)
+
+ var csType_allocs *cgoAllocMap
+ ref35d5aa70.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs35d5aa70.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref35d5aa70.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs35d5aa70.Borrow(cpNext_allocs)
+
+ var cshaderDrawParameters_allocs *cgoAllocMap
+ ref35d5aa70.shaderDrawParameters, cshaderDrawParameters_allocs = (C.VkBool32)(x.ShaderDrawParameters), cgoAllocsUnknown
+ allocs35d5aa70.Borrow(cshaderDrawParameters_allocs)
+
+ x.ref35d5aa70 = ref35d5aa70
+ x.allocs35d5aa70 = allocs35d5aa70
+ return ref35d5aa70, allocs35d5aa70
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceShaderDrawParametersFeatures) PassValue() (C.VkPhysicalDeviceShaderDrawParametersFeatures, *cgoAllocMap) {
+ if x.ref35d5aa70 != nil {
+ return *x.ref35d5aa70, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceShaderDrawParametersFeatures) Deref() {
+ if x.ref35d5aa70 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref35d5aa70.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref35d5aa70.pNext))
+ x.ShaderDrawParameters = (Bool32)(x.ref35d5aa70.shaderDrawParameters)
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceShaderDrawParameterFeatures) Ref() *C.VkPhysicalDeviceShaderDrawParametersFeatures {
+ if x == nil {
+ return nil
+ }
+ return x.ref35d5aa70
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceShaderDrawParameterFeatures) Free() {
+ if x != nil && x.allocs35d5aa70 != nil {
+ x.allocs35d5aa70.(*cgoAllocMap).Free()
+ x.ref35d5aa70 = nil
+ }
+}
+
+// NewPhysicalDeviceShaderDrawParameterFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceShaderDrawParameterFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceShaderDrawParameterFeatures {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceShaderDrawParameterFeatures)
+ obj.ref35d5aa70 = (*C.VkPhysicalDeviceShaderDrawParametersFeatures)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceShaderDrawParameterFeatures) PassRef() (*C.VkPhysicalDeviceShaderDrawParametersFeatures, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref35d5aa70 != nil {
+ return x.ref35d5aa70, nil
+ }
+ mem35d5aa70 := allocPhysicalDeviceShaderDrawParametersFeaturesMemory(1)
+ ref35d5aa70 := (*C.VkPhysicalDeviceShaderDrawParametersFeatures)(mem35d5aa70)
+ allocs35d5aa70 := new(cgoAllocMap)
+ allocs35d5aa70.Add(mem35d5aa70)
+
+ var csType_allocs *cgoAllocMap
+ ref35d5aa70.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs35d5aa70.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref35d5aa70.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs35d5aa70.Borrow(cpNext_allocs)
+
+ var cshaderDrawParameters_allocs *cgoAllocMap
+ ref35d5aa70.shaderDrawParameters, cshaderDrawParameters_allocs = (C.VkBool32)(x.ShaderDrawParameters), cgoAllocsUnknown
+ allocs35d5aa70.Borrow(cshaderDrawParameters_allocs)
+
+ x.ref35d5aa70 = ref35d5aa70
+ x.allocs35d5aa70 = allocs35d5aa70
+ return ref35d5aa70, allocs35d5aa70
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceShaderDrawParameterFeatures) PassValue() (C.VkPhysicalDeviceShaderDrawParametersFeatures, *cgoAllocMap) {
+ if x.ref35d5aa70 != nil {
+ return *x.ref35d5aa70, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceShaderDrawParameterFeatures) Deref() {
+ if x.ref35d5aa70 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref35d5aa70.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref35d5aa70.pNext))
+ x.ShaderDrawParameters = (Bool32)(x.ref35d5aa70.shaderDrawParameters)
+}
+
+// allocPhysicalDeviceVulkan11FeaturesMemory allocates memory for type C.VkPhysicalDeviceVulkan11Features in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceVulkan11FeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceVulkan11FeaturesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceVulkan11FeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceVulkan11Features{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceVulkan11Features) Ref() *C.VkPhysicalDeviceVulkan11Features {
+ if x == nil {
+ return nil
+ }
+ return x.refd5335cef
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceVulkan11Features) Free() {
+ if x != nil && x.allocsd5335cef != nil {
+ x.allocsd5335cef.(*cgoAllocMap).Free()
+ x.refd5335cef = nil
+ }
+}
+
+// NewPhysicalDeviceVulkan11FeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceVulkan11FeaturesRef(ref unsafe.Pointer) *PhysicalDeviceVulkan11Features {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceVulkan11Features)
+ obj.refd5335cef = (*C.VkPhysicalDeviceVulkan11Features)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceVulkan11Features) PassRef() (*C.VkPhysicalDeviceVulkan11Features, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refd5335cef != nil {
+ return x.refd5335cef, nil
+ }
+ memd5335cef := allocPhysicalDeviceVulkan11FeaturesMemory(1)
+ refd5335cef := (*C.VkPhysicalDeviceVulkan11Features)(memd5335cef)
+ allocsd5335cef := new(cgoAllocMap)
+ allocsd5335cef.Add(memd5335cef)
+
+ var csType_allocs *cgoAllocMap
+ refd5335cef.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd5335cef.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refd5335cef.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsd5335cef.Borrow(cpNext_allocs)
+
+ var cstorageBuffer16BitAccess_allocs *cgoAllocMap
+ refd5335cef.storageBuffer16BitAccess, cstorageBuffer16BitAccess_allocs = (C.VkBool32)(x.StorageBuffer16BitAccess), cgoAllocsUnknown
+ allocsd5335cef.Borrow(cstorageBuffer16BitAccess_allocs)
+
+ var cuniformAndStorageBuffer16BitAccess_allocs *cgoAllocMap
+ refd5335cef.uniformAndStorageBuffer16BitAccess, cuniformAndStorageBuffer16BitAccess_allocs = (C.VkBool32)(x.UniformAndStorageBuffer16BitAccess), cgoAllocsUnknown
+ allocsd5335cef.Borrow(cuniformAndStorageBuffer16BitAccess_allocs)
+
+ var cstoragePushConstant16_allocs *cgoAllocMap
+ refd5335cef.storagePushConstant16, cstoragePushConstant16_allocs = (C.VkBool32)(x.StoragePushConstant16), cgoAllocsUnknown
+ allocsd5335cef.Borrow(cstoragePushConstant16_allocs)
+
+ var cstorageInputOutput16_allocs *cgoAllocMap
+ refd5335cef.storageInputOutput16, cstorageInputOutput16_allocs = (C.VkBool32)(x.StorageInputOutput16), cgoAllocsUnknown
+ allocsd5335cef.Borrow(cstorageInputOutput16_allocs)
+
+ var cmultiview_allocs *cgoAllocMap
+ refd5335cef.multiview, cmultiview_allocs = (C.VkBool32)(x.Multiview), cgoAllocsUnknown
+ allocsd5335cef.Borrow(cmultiview_allocs)
+
+ var cmultiviewGeometryShader_allocs *cgoAllocMap
+ refd5335cef.multiviewGeometryShader, cmultiviewGeometryShader_allocs = (C.VkBool32)(x.MultiviewGeometryShader), cgoAllocsUnknown
+ allocsd5335cef.Borrow(cmultiviewGeometryShader_allocs)
+
+ var cmultiviewTessellationShader_allocs *cgoAllocMap
+ refd5335cef.multiviewTessellationShader, cmultiviewTessellationShader_allocs = (C.VkBool32)(x.MultiviewTessellationShader), cgoAllocsUnknown
+ allocsd5335cef.Borrow(cmultiviewTessellationShader_allocs)
+
+ var cvariablePointersStorageBuffer_allocs *cgoAllocMap
+ refd5335cef.variablePointersStorageBuffer, cvariablePointersStorageBuffer_allocs = (C.VkBool32)(x.VariablePointersStorageBuffer), cgoAllocsUnknown
+ allocsd5335cef.Borrow(cvariablePointersStorageBuffer_allocs)
+
+ var cvariablePointers_allocs *cgoAllocMap
+ refd5335cef.variablePointers, cvariablePointers_allocs = (C.VkBool32)(x.VariablePointers), cgoAllocsUnknown
+ allocsd5335cef.Borrow(cvariablePointers_allocs)
+
+ var cprotectedMemory_allocs *cgoAllocMap
+ refd5335cef.protectedMemory, cprotectedMemory_allocs = (C.VkBool32)(x.ProtectedMemory), cgoAllocsUnknown
+ allocsd5335cef.Borrow(cprotectedMemory_allocs)
+
+ var csamplerYcbcrConversion_allocs *cgoAllocMap
+ refd5335cef.samplerYcbcrConversion, csamplerYcbcrConversion_allocs = (C.VkBool32)(x.SamplerYcbcrConversion), cgoAllocsUnknown
+ allocsd5335cef.Borrow(csamplerYcbcrConversion_allocs)
+
+ var cshaderDrawParameters_allocs *cgoAllocMap
+ refd5335cef.shaderDrawParameters, cshaderDrawParameters_allocs = (C.VkBool32)(x.ShaderDrawParameters), cgoAllocsUnknown
+ allocsd5335cef.Borrow(cshaderDrawParameters_allocs)
+
+ x.refd5335cef = refd5335cef
+ x.allocsd5335cef = allocsd5335cef
+ return refd5335cef, allocsd5335cef
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceVulkan11Features) PassValue() (C.VkPhysicalDeviceVulkan11Features, *cgoAllocMap) {
+ if x.refd5335cef != nil {
+ return *x.refd5335cef, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceVulkan11Features) Deref() {
+ if x.refd5335cef == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refd5335cef.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd5335cef.pNext))
+ x.StorageBuffer16BitAccess = (Bool32)(x.refd5335cef.storageBuffer16BitAccess)
+ x.UniformAndStorageBuffer16BitAccess = (Bool32)(x.refd5335cef.uniformAndStorageBuffer16BitAccess)
+ x.StoragePushConstant16 = (Bool32)(x.refd5335cef.storagePushConstant16)
+ x.StorageInputOutput16 = (Bool32)(x.refd5335cef.storageInputOutput16)
+ x.Multiview = (Bool32)(x.refd5335cef.multiview)
+ x.MultiviewGeometryShader = (Bool32)(x.refd5335cef.multiviewGeometryShader)
+ x.MultiviewTessellationShader = (Bool32)(x.refd5335cef.multiviewTessellationShader)
+ x.VariablePointersStorageBuffer = (Bool32)(x.refd5335cef.variablePointersStorageBuffer)
+ x.VariablePointers = (Bool32)(x.refd5335cef.variablePointers)
+ x.ProtectedMemory = (Bool32)(x.refd5335cef.protectedMemory)
+ x.SamplerYcbcrConversion = (Bool32)(x.refd5335cef.samplerYcbcrConversion)
+ x.ShaderDrawParameters = (Bool32)(x.refd5335cef.shaderDrawParameters)
+}
+
+// allocPhysicalDeviceVulkan11PropertiesMemory allocates memory for type C.VkPhysicalDeviceVulkan11Properties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceVulkan11PropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceVulkan11PropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceVulkan11PropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceVulkan11Properties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceVulkan11Properties) Ref() *C.VkPhysicalDeviceVulkan11Properties {
+ if x == nil {
+ return nil
+ }
+ return x.refd27276a5
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceVulkan11Properties) Free() {
+ if x != nil && x.allocsd27276a5 != nil {
+ x.allocsd27276a5.(*cgoAllocMap).Free()
+ x.refd27276a5 = nil
+ }
+}
+
+// NewPhysicalDeviceVulkan11PropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceVulkan11PropertiesRef(ref unsafe.Pointer) *PhysicalDeviceVulkan11Properties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceVulkan11Properties)
+ obj.refd27276a5 = (*C.VkPhysicalDeviceVulkan11Properties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceVulkan11Properties) PassRef() (*C.VkPhysicalDeviceVulkan11Properties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refd27276a5 != nil {
+ return x.refd27276a5, nil
+ }
+ memd27276a5 := allocPhysicalDeviceVulkan11PropertiesMemory(1)
+ refd27276a5 := (*C.VkPhysicalDeviceVulkan11Properties)(memd27276a5)
+ allocsd27276a5 := new(cgoAllocMap)
+ allocsd27276a5.Add(memd27276a5)
+
+ var csType_allocs *cgoAllocMap
+ refd27276a5.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd27276a5.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refd27276a5.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsd27276a5.Borrow(cpNext_allocs)
+
+ var cdeviceUUID_allocs *cgoAllocMap
+ refd27276a5.deviceUUID, cdeviceUUID_allocs = *(*[16]C.uint8_t)(unsafe.Pointer(&x.DeviceUUID)), cgoAllocsUnknown
+ allocsd27276a5.Borrow(cdeviceUUID_allocs)
+
+ var cdriverUUID_allocs *cgoAllocMap
+ refd27276a5.driverUUID, cdriverUUID_allocs = *(*[16]C.uint8_t)(unsafe.Pointer(&x.DriverUUID)), cgoAllocsUnknown
+ allocsd27276a5.Borrow(cdriverUUID_allocs)
+
+ var cdeviceLUID_allocs *cgoAllocMap
+ refd27276a5.deviceLUID, cdeviceLUID_allocs = *(*[8]C.uint8_t)(unsafe.Pointer(&x.DeviceLUID)), cgoAllocsUnknown
+ allocsd27276a5.Borrow(cdeviceLUID_allocs)
+
+ var cdeviceNodeMask_allocs *cgoAllocMap
+ refd27276a5.deviceNodeMask, cdeviceNodeMask_allocs = (C.uint32_t)(x.DeviceNodeMask), cgoAllocsUnknown
+ allocsd27276a5.Borrow(cdeviceNodeMask_allocs)
+
+ var cdeviceLUIDValid_allocs *cgoAllocMap
+ refd27276a5.deviceLUIDValid, cdeviceLUIDValid_allocs = (C.VkBool32)(x.DeviceLUIDValid), cgoAllocsUnknown
+ allocsd27276a5.Borrow(cdeviceLUIDValid_allocs)
+
+ var csubgroupSize_allocs *cgoAllocMap
+ refd27276a5.subgroupSize, csubgroupSize_allocs = (C.uint32_t)(x.SubgroupSize), cgoAllocsUnknown
+ allocsd27276a5.Borrow(csubgroupSize_allocs)
+
+ var csubgroupSupportedStages_allocs *cgoAllocMap
+ refd27276a5.subgroupSupportedStages, csubgroupSupportedStages_allocs = (C.VkShaderStageFlags)(x.SubgroupSupportedStages), cgoAllocsUnknown
+ allocsd27276a5.Borrow(csubgroupSupportedStages_allocs)
+
+ var csubgroupSupportedOperations_allocs *cgoAllocMap
+ refd27276a5.subgroupSupportedOperations, csubgroupSupportedOperations_allocs = (C.VkSubgroupFeatureFlags)(x.SubgroupSupportedOperations), cgoAllocsUnknown
+ allocsd27276a5.Borrow(csubgroupSupportedOperations_allocs)
+
+ var csubgroupQuadOperationsInAllStages_allocs *cgoAllocMap
+ refd27276a5.subgroupQuadOperationsInAllStages, csubgroupQuadOperationsInAllStages_allocs = (C.VkBool32)(x.SubgroupQuadOperationsInAllStages), cgoAllocsUnknown
+ allocsd27276a5.Borrow(csubgroupQuadOperationsInAllStages_allocs)
+
+ var cpointClippingBehavior_allocs *cgoAllocMap
+ refd27276a5.pointClippingBehavior, cpointClippingBehavior_allocs = (C.VkPointClippingBehavior)(x.PointClippingBehavior), cgoAllocsUnknown
+ allocsd27276a5.Borrow(cpointClippingBehavior_allocs)
+
+ var cmaxMultiviewViewCount_allocs *cgoAllocMap
+ refd27276a5.maxMultiviewViewCount, cmaxMultiviewViewCount_allocs = (C.uint32_t)(x.MaxMultiviewViewCount), cgoAllocsUnknown
+ allocsd27276a5.Borrow(cmaxMultiviewViewCount_allocs)
+
+ var cmaxMultiviewInstanceIndex_allocs *cgoAllocMap
+ refd27276a5.maxMultiviewInstanceIndex, cmaxMultiviewInstanceIndex_allocs = (C.uint32_t)(x.MaxMultiviewInstanceIndex), cgoAllocsUnknown
+ allocsd27276a5.Borrow(cmaxMultiviewInstanceIndex_allocs)
+
+ var cprotectedNoFault_allocs *cgoAllocMap
+ refd27276a5.protectedNoFault, cprotectedNoFault_allocs = (C.VkBool32)(x.ProtectedNoFault), cgoAllocsUnknown
+ allocsd27276a5.Borrow(cprotectedNoFault_allocs)
+
+ var cmaxPerSetDescriptors_allocs *cgoAllocMap
+ refd27276a5.maxPerSetDescriptors, cmaxPerSetDescriptors_allocs = (C.uint32_t)(x.MaxPerSetDescriptors), cgoAllocsUnknown
+ allocsd27276a5.Borrow(cmaxPerSetDescriptors_allocs)
+
+ var cmaxMemoryAllocationSize_allocs *cgoAllocMap
+ refd27276a5.maxMemoryAllocationSize, cmaxMemoryAllocationSize_allocs = (C.VkDeviceSize)(x.MaxMemoryAllocationSize), cgoAllocsUnknown
+ allocsd27276a5.Borrow(cmaxMemoryAllocationSize_allocs)
+
+ x.refd27276a5 = refd27276a5
+ x.allocsd27276a5 = allocsd27276a5
+ return refd27276a5, allocsd27276a5
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceVulkan11Properties) PassValue() (C.VkPhysicalDeviceVulkan11Properties, *cgoAllocMap) {
+ if x.refd27276a5 != nil {
+ return *x.refd27276a5, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceVulkan11Properties) Deref() {
+ if x.refd27276a5 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refd27276a5.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd27276a5.pNext))
+ x.DeviceUUID = *(*[16]byte)(unsafe.Pointer(&x.refd27276a5.deviceUUID))
+ x.DriverUUID = *(*[16]byte)(unsafe.Pointer(&x.refd27276a5.driverUUID))
+ x.DeviceLUID = *(*[8]byte)(unsafe.Pointer(&x.refd27276a5.deviceLUID))
+ x.DeviceNodeMask = (uint32)(x.refd27276a5.deviceNodeMask)
+ x.DeviceLUIDValid = (Bool32)(x.refd27276a5.deviceLUIDValid)
+ x.SubgroupSize = (uint32)(x.refd27276a5.subgroupSize)
+ x.SubgroupSupportedStages = (ShaderStageFlags)(x.refd27276a5.subgroupSupportedStages)
+ x.SubgroupSupportedOperations = (SubgroupFeatureFlags)(x.refd27276a5.subgroupSupportedOperations)
+ x.SubgroupQuadOperationsInAllStages = (Bool32)(x.refd27276a5.subgroupQuadOperationsInAllStages)
+ x.PointClippingBehavior = (PointClippingBehavior)(x.refd27276a5.pointClippingBehavior)
+ x.MaxMultiviewViewCount = (uint32)(x.refd27276a5.maxMultiviewViewCount)
+ x.MaxMultiviewInstanceIndex = (uint32)(x.refd27276a5.maxMultiviewInstanceIndex)
+ x.ProtectedNoFault = (Bool32)(x.refd27276a5.protectedNoFault)
+ x.MaxPerSetDescriptors = (uint32)(x.refd27276a5.maxPerSetDescriptors)
+ x.MaxMemoryAllocationSize = (DeviceSize)(x.refd27276a5.maxMemoryAllocationSize)
+}
+
+// allocPhysicalDeviceVulkan12FeaturesMemory allocates memory for type C.VkPhysicalDeviceVulkan12Features in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceVulkan12FeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceVulkan12FeaturesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceVulkan12FeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceVulkan12Features{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceVulkan12Features) Ref() *C.VkPhysicalDeviceVulkan12Features {
+ if x == nil {
+ return nil
+ }
+ return x.refecbe602a
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceVulkan12Features) Free() {
+ if x != nil && x.allocsecbe602a != nil {
+ x.allocsecbe602a.(*cgoAllocMap).Free()
+ x.refecbe602a = nil
+ }
+}
+
+// NewPhysicalDeviceVulkan12FeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceVulkan12FeaturesRef(ref unsafe.Pointer) *PhysicalDeviceVulkan12Features {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceVulkan12Features)
+ obj.refecbe602a = (*C.VkPhysicalDeviceVulkan12Features)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceVulkan12Features) PassRef() (*C.VkPhysicalDeviceVulkan12Features, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refecbe602a != nil {
+ return x.refecbe602a, nil
+ }
+ memecbe602a := allocPhysicalDeviceVulkan12FeaturesMemory(1)
+ refecbe602a := (*C.VkPhysicalDeviceVulkan12Features)(memecbe602a)
+ allocsecbe602a := new(cgoAllocMap)
+ allocsecbe602a.Add(memecbe602a)
+
+ var csType_allocs *cgoAllocMap
+ refecbe602a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsecbe602a.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refecbe602a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cpNext_allocs)
+
+ var csamplerMirrorClampToEdge_allocs *cgoAllocMap
+ refecbe602a.samplerMirrorClampToEdge, csamplerMirrorClampToEdge_allocs = (C.VkBool32)(x.SamplerMirrorClampToEdge), cgoAllocsUnknown
+ allocsecbe602a.Borrow(csamplerMirrorClampToEdge_allocs)
+
+ var cdrawIndirectCount_allocs *cgoAllocMap
+ refecbe602a.drawIndirectCount, cdrawIndirectCount_allocs = (C.VkBool32)(x.DrawIndirectCount), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cdrawIndirectCount_allocs)
+
+ var cstorageBuffer8BitAccess_allocs *cgoAllocMap
+ refecbe602a.storageBuffer8BitAccess, cstorageBuffer8BitAccess_allocs = (C.VkBool32)(x.StorageBuffer8BitAccess), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cstorageBuffer8BitAccess_allocs)
+
+ var cuniformAndStorageBuffer8BitAccess_allocs *cgoAllocMap
+ refecbe602a.uniformAndStorageBuffer8BitAccess, cuniformAndStorageBuffer8BitAccess_allocs = (C.VkBool32)(x.UniformAndStorageBuffer8BitAccess), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cuniformAndStorageBuffer8BitAccess_allocs)
+
+ var cstoragePushConstant8_allocs *cgoAllocMap
+ refecbe602a.storagePushConstant8, cstoragePushConstant8_allocs = (C.VkBool32)(x.StoragePushConstant8), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cstoragePushConstant8_allocs)
+
+ var cshaderBufferInt64Atomics_allocs *cgoAllocMap
+ refecbe602a.shaderBufferInt64Atomics, cshaderBufferInt64Atomics_allocs = (C.VkBool32)(x.ShaderBufferInt64Atomics), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cshaderBufferInt64Atomics_allocs)
+
+ var cshaderSharedInt64Atomics_allocs *cgoAllocMap
+ refecbe602a.shaderSharedInt64Atomics, cshaderSharedInt64Atomics_allocs = (C.VkBool32)(x.ShaderSharedInt64Atomics), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cshaderSharedInt64Atomics_allocs)
+
+ var cshaderFloat16_allocs *cgoAllocMap
+ refecbe602a.shaderFloat16, cshaderFloat16_allocs = (C.VkBool32)(x.ShaderFloat16), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cshaderFloat16_allocs)
+
+ var cshaderInt8_allocs *cgoAllocMap
+ refecbe602a.shaderInt8, cshaderInt8_allocs = (C.VkBool32)(x.ShaderInt8), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cshaderInt8_allocs)
+
+ var cdescriptorIndexing_allocs *cgoAllocMap
+ refecbe602a.descriptorIndexing, cdescriptorIndexing_allocs = (C.VkBool32)(x.DescriptorIndexing), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cdescriptorIndexing_allocs)
+
+ var cshaderInputAttachmentArrayDynamicIndexing_allocs *cgoAllocMap
+ refecbe602a.shaderInputAttachmentArrayDynamicIndexing, cshaderInputAttachmentArrayDynamicIndexing_allocs = (C.VkBool32)(x.ShaderInputAttachmentArrayDynamicIndexing), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cshaderInputAttachmentArrayDynamicIndexing_allocs)
+
+ var cshaderUniformTexelBufferArrayDynamicIndexing_allocs *cgoAllocMap
+ refecbe602a.shaderUniformTexelBufferArrayDynamicIndexing, cshaderUniformTexelBufferArrayDynamicIndexing_allocs = (C.VkBool32)(x.ShaderUniformTexelBufferArrayDynamicIndexing), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cshaderUniformTexelBufferArrayDynamicIndexing_allocs)
+
+ var cshaderStorageTexelBufferArrayDynamicIndexing_allocs *cgoAllocMap
+ refecbe602a.shaderStorageTexelBufferArrayDynamicIndexing, cshaderStorageTexelBufferArrayDynamicIndexing_allocs = (C.VkBool32)(x.ShaderStorageTexelBufferArrayDynamicIndexing), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cshaderStorageTexelBufferArrayDynamicIndexing_allocs)
+
+ var cshaderUniformBufferArrayNonUniformIndexing_allocs *cgoAllocMap
+ refecbe602a.shaderUniformBufferArrayNonUniformIndexing, cshaderUniformBufferArrayNonUniformIndexing_allocs = (C.VkBool32)(x.ShaderUniformBufferArrayNonUniformIndexing), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cshaderUniformBufferArrayNonUniformIndexing_allocs)
+
+ var cshaderSampledImageArrayNonUniformIndexing_allocs *cgoAllocMap
+ refecbe602a.shaderSampledImageArrayNonUniformIndexing, cshaderSampledImageArrayNonUniformIndexing_allocs = (C.VkBool32)(x.ShaderSampledImageArrayNonUniformIndexing), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cshaderSampledImageArrayNonUniformIndexing_allocs)
+
+ var cshaderStorageBufferArrayNonUniformIndexing_allocs *cgoAllocMap
+ refecbe602a.shaderStorageBufferArrayNonUniformIndexing, cshaderStorageBufferArrayNonUniformIndexing_allocs = (C.VkBool32)(x.ShaderStorageBufferArrayNonUniformIndexing), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cshaderStorageBufferArrayNonUniformIndexing_allocs)
+
+ var cshaderStorageImageArrayNonUniformIndexing_allocs *cgoAllocMap
+ refecbe602a.shaderStorageImageArrayNonUniformIndexing, cshaderStorageImageArrayNonUniformIndexing_allocs = (C.VkBool32)(x.ShaderStorageImageArrayNonUniformIndexing), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cshaderStorageImageArrayNonUniformIndexing_allocs)
+
+ var cshaderInputAttachmentArrayNonUniformIndexing_allocs *cgoAllocMap
+ refecbe602a.shaderInputAttachmentArrayNonUniformIndexing, cshaderInputAttachmentArrayNonUniformIndexing_allocs = (C.VkBool32)(x.ShaderInputAttachmentArrayNonUniformIndexing), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cshaderInputAttachmentArrayNonUniformIndexing_allocs)
+
+ var cshaderUniformTexelBufferArrayNonUniformIndexing_allocs *cgoAllocMap
+ refecbe602a.shaderUniformTexelBufferArrayNonUniformIndexing, cshaderUniformTexelBufferArrayNonUniformIndexing_allocs = (C.VkBool32)(x.ShaderUniformTexelBufferArrayNonUniformIndexing), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cshaderUniformTexelBufferArrayNonUniformIndexing_allocs)
+
+ var cshaderStorageTexelBufferArrayNonUniformIndexing_allocs *cgoAllocMap
+ refecbe602a.shaderStorageTexelBufferArrayNonUniformIndexing, cshaderStorageTexelBufferArrayNonUniformIndexing_allocs = (C.VkBool32)(x.ShaderStorageTexelBufferArrayNonUniformIndexing), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cshaderStorageTexelBufferArrayNonUniformIndexing_allocs)
+
+ var cdescriptorBindingUniformBufferUpdateAfterBind_allocs *cgoAllocMap
+ refecbe602a.descriptorBindingUniformBufferUpdateAfterBind, cdescriptorBindingUniformBufferUpdateAfterBind_allocs = (C.VkBool32)(x.DescriptorBindingUniformBufferUpdateAfterBind), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cdescriptorBindingUniformBufferUpdateAfterBind_allocs)
+
+ var cdescriptorBindingSampledImageUpdateAfterBind_allocs *cgoAllocMap
+ refecbe602a.descriptorBindingSampledImageUpdateAfterBind, cdescriptorBindingSampledImageUpdateAfterBind_allocs = (C.VkBool32)(x.DescriptorBindingSampledImageUpdateAfterBind), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cdescriptorBindingSampledImageUpdateAfterBind_allocs)
+
+ var cdescriptorBindingStorageImageUpdateAfterBind_allocs *cgoAllocMap
+ refecbe602a.descriptorBindingStorageImageUpdateAfterBind, cdescriptorBindingStorageImageUpdateAfterBind_allocs = (C.VkBool32)(x.DescriptorBindingStorageImageUpdateAfterBind), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cdescriptorBindingStorageImageUpdateAfterBind_allocs)
+
+ var cdescriptorBindingStorageBufferUpdateAfterBind_allocs *cgoAllocMap
+ refecbe602a.descriptorBindingStorageBufferUpdateAfterBind, cdescriptorBindingStorageBufferUpdateAfterBind_allocs = (C.VkBool32)(x.DescriptorBindingStorageBufferUpdateAfterBind), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cdescriptorBindingStorageBufferUpdateAfterBind_allocs)
+
+ var cdescriptorBindingUniformTexelBufferUpdateAfterBind_allocs *cgoAllocMap
+ refecbe602a.descriptorBindingUniformTexelBufferUpdateAfterBind, cdescriptorBindingUniformTexelBufferUpdateAfterBind_allocs = (C.VkBool32)(x.DescriptorBindingUniformTexelBufferUpdateAfterBind), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cdescriptorBindingUniformTexelBufferUpdateAfterBind_allocs)
+
+ var cdescriptorBindingStorageTexelBufferUpdateAfterBind_allocs *cgoAllocMap
+ refecbe602a.descriptorBindingStorageTexelBufferUpdateAfterBind, cdescriptorBindingStorageTexelBufferUpdateAfterBind_allocs = (C.VkBool32)(x.DescriptorBindingStorageTexelBufferUpdateAfterBind), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cdescriptorBindingStorageTexelBufferUpdateAfterBind_allocs)
+
+ var cdescriptorBindingUpdateUnusedWhilePending_allocs *cgoAllocMap
+ refecbe602a.descriptorBindingUpdateUnusedWhilePending, cdescriptorBindingUpdateUnusedWhilePending_allocs = (C.VkBool32)(x.DescriptorBindingUpdateUnusedWhilePending), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cdescriptorBindingUpdateUnusedWhilePending_allocs)
+
+ var cdescriptorBindingPartiallyBound_allocs *cgoAllocMap
+ refecbe602a.descriptorBindingPartiallyBound, cdescriptorBindingPartiallyBound_allocs = (C.VkBool32)(x.DescriptorBindingPartiallyBound), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cdescriptorBindingPartiallyBound_allocs)
+
+ var cdescriptorBindingVariableDescriptorCount_allocs *cgoAllocMap
+ refecbe602a.descriptorBindingVariableDescriptorCount, cdescriptorBindingVariableDescriptorCount_allocs = (C.VkBool32)(x.DescriptorBindingVariableDescriptorCount), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cdescriptorBindingVariableDescriptorCount_allocs)
+
+ var cruntimeDescriptorArray_allocs *cgoAllocMap
+ refecbe602a.runtimeDescriptorArray, cruntimeDescriptorArray_allocs = (C.VkBool32)(x.RuntimeDescriptorArray), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cruntimeDescriptorArray_allocs)
+
+ var csamplerFilterMinmax_allocs *cgoAllocMap
+ refecbe602a.samplerFilterMinmax, csamplerFilterMinmax_allocs = (C.VkBool32)(x.SamplerFilterMinmax), cgoAllocsUnknown
+ allocsecbe602a.Borrow(csamplerFilterMinmax_allocs)
+
+ var cscalarBlockLayout_allocs *cgoAllocMap
+ refecbe602a.scalarBlockLayout, cscalarBlockLayout_allocs = (C.VkBool32)(x.ScalarBlockLayout), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cscalarBlockLayout_allocs)
+
+ var cimagelessFramebuffer_allocs *cgoAllocMap
+ refecbe602a.imagelessFramebuffer, cimagelessFramebuffer_allocs = (C.VkBool32)(x.ImagelessFramebuffer), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cimagelessFramebuffer_allocs)
+
+ var cuniformBufferStandardLayout_allocs *cgoAllocMap
+ refecbe602a.uniformBufferStandardLayout, cuniformBufferStandardLayout_allocs = (C.VkBool32)(x.UniformBufferStandardLayout), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cuniformBufferStandardLayout_allocs)
+
+ var cshaderSubgroupExtendedTypes_allocs *cgoAllocMap
+ refecbe602a.shaderSubgroupExtendedTypes, cshaderSubgroupExtendedTypes_allocs = (C.VkBool32)(x.ShaderSubgroupExtendedTypes), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cshaderSubgroupExtendedTypes_allocs)
+
+ var cseparateDepthStencilLayouts_allocs *cgoAllocMap
+ refecbe602a.separateDepthStencilLayouts, cseparateDepthStencilLayouts_allocs = (C.VkBool32)(x.SeparateDepthStencilLayouts), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cseparateDepthStencilLayouts_allocs)
+
+ var chostQueryReset_allocs *cgoAllocMap
+ refecbe602a.hostQueryReset, chostQueryReset_allocs = (C.VkBool32)(x.HostQueryReset), cgoAllocsUnknown
+ allocsecbe602a.Borrow(chostQueryReset_allocs)
+
+ var ctimelineSemaphore_allocs *cgoAllocMap
+ refecbe602a.timelineSemaphore, ctimelineSemaphore_allocs = (C.VkBool32)(x.TimelineSemaphore), cgoAllocsUnknown
+ allocsecbe602a.Borrow(ctimelineSemaphore_allocs)
+
+ var cbufferDeviceAddress_allocs *cgoAllocMap
+ refecbe602a.bufferDeviceAddress, cbufferDeviceAddress_allocs = (C.VkBool32)(x.BufferDeviceAddress), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cbufferDeviceAddress_allocs)
+
+ var cbufferDeviceAddressCaptureReplay_allocs *cgoAllocMap
+ refecbe602a.bufferDeviceAddressCaptureReplay, cbufferDeviceAddressCaptureReplay_allocs = (C.VkBool32)(x.BufferDeviceAddressCaptureReplay), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cbufferDeviceAddressCaptureReplay_allocs)
+
+ var cbufferDeviceAddressMultiDevice_allocs *cgoAllocMap
+ refecbe602a.bufferDeviceAddressMultiDevice, cbufferDeviceAddressMultiDevice_allocs = (C.VkBool32)(x.BufferDeviceAddressMultiDevice), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cbufferDeviceAddressMultiDevice_allocs)
+
+ var cvulkanMemoryModel_allocs *cgoAllocMap
+ refecbe602a.vulkanMemoryModel, cvulkanMemoryModel_allocs = (C.VkBool32)(x.VulkanMemoryModel), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cvulkanMemoryModel_allocs)
+
+ var cvulkanMemoryModelDeviceScope_allocs *cgoAllocMap
+ refecbe602a.vulkanMemoryModelDeviceScope, cvulkanMemoryModelDeviceScope_allocs = (C.VkBool32)(x.VulkanMemoryModelDeviceScope), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cvulkanMemoryModelDeviceScope_allocs)
+
+ var cvulkanMemoryModelAvailabilityVisibilityChains_allocs *cgoAllocMap
+ refecbe602a.vulkanMemoryModelAvailabilityVisibilityChains, cvulkanMemoryModelAvailabilityVisibilityChains_allocs = (C.VkBool32)(x.VulkanMemoryModelAvailabilityVisibilityChains), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cvulkanMemoryModelAvailabilityVisibilityChains_allocs)
+
+ var cshaderOutputViewportIndex_allocs *cgoAllocMap
+ refecbe602a.shaderOutputViewportIndex, cshaderOutputViewportIndex_allocs = (C.VkBool32)(x.ShaderOutputViewportIndex), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cshaderOutputViewportIndex_allocs)
+
+ var cshaderOutputLayer_allocs *cgoAllocMap
+ refecbe602a.shaderOutputLayer, cshaderOutputLayer_allocs = (C.VkBool32)(x.ShaderOutputLayer), cgoAllocsUnknown
+ allocsecbe602a.Borrow(cshaderOutputLayer_allocs)
+
+ var csubgroupBroadcastDynamicId_allocs *cgoAllocMap
+ refecbe602a.subgroupBroadcastDynamicId, csubgroupBroadcastDynamicId_allocs = (C.VkBool32)(x.SubgroupBroadcastDynamicId), cgoAllocsUnknown
+ allocsecbe602a.Borrow(csubgroupBroadcastDynamicId_allocs)
+
+ x.refecbe602a = refecbe602a
+ x.allocsecbe602a = allocsecbe602a
+ return refecbe602a, allocsecbe602a
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceVulkan12Features) PassValue() (C.VkPhysicalDeviceVulkan12Features, *cgoAllocMap) {
+ if x.refecbe602a != nil {
+ return *x.refecbe602a, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceVulkan12Features) Deref() {
+ if x.refecbe602a == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refecbe602a.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refecbe602a.pNext))
+ x.SamplerMirrorClampToEdge = (Bool32)(x.refecbe602a.samplerMirrorClampToEdge)
+ x.DrawIndirectCount = (Bool32)(x.refecbe602a.drawIndirectCount)
+ x.StorageBuffer8BitAccess = (Bool32)(x.refecbe602a.storageBuffer8BitAccess)
+ x.UniformAndStorageBuffer8BitAccess = (Bool32)(x.refecbe602a.uniformAndStorageBuffer8BitAccess)
+ x.StoragePushConstant8 = (Bool32)(x.refecbe602a.storagePushConstant8)
+ x.ShaderBufferInt64Atomics = (Bool32)(x.refecbe602a.shaderBufferInt64Atomics)
+ x.ShaderSharedInt64Atomics = (Bool32)(x.refecbe602a.shaderSharedInt64Atomics)
+ x.ShaderFloat16 = (Bool32)(x.refecbe602a.shaderFloat16)
+ x.ShaderInt8 = (Bool32)(x.refecbe602a.shaderInt8)
+ x.DescriptorIndexing = (Bool32)(x.refecbe602a.descriptorIndexing)
+ x.ShaderInputAttachmentArrayDynamicIndexing = (Bool32)(x.refecbe602a.shaderInputAttachmentArrayDynamicIndexing)
+ x.ShaderUniformTexelBufferArrayDynamicIndexing = (Bool32)(x.refecbe602a.shaderUniformTexelBufferArrayDynamicIndexing)
+ x.ShaderStorageTexelBufferArrayDynamicIndexing = (Bool32)(x.refecbe602a.shaderStorageTexelBufferArrayDynamicIndexing)
+ x.ShaderUniformBufferArrayNonUniformIndexing = (Bool32)(x.refecbe602a.shaderUniformBufferArrayNonUniformIndexing)
+ x.ShaderSampledImageArrayNonUniformIndexing = (Bool32)(x.refecbe602a.shaderSampledImageArrayNonUniformIndexing)
+ x.ShaderStorageBufferArrayNonUniformIndexing = (Bool32)(x.refecbe602a.shaderStorageBufferArrayNonUniformIndexing)
+ x.ShaderStorageImageArrayNonUniformIndexing = (Bool32)(x.refecbe602a.shaderStorageImageArrayNonUniformIndexing)
+ x.ShaderInputAttachmentArrayNonUniformIndexing = (Bool32)(x.refecbe602a.shaderInputAttachmentArrayNonUniformIndexing)
+ x.ShaderUniformTexelBufferArrayNonUniformIndexing = (Bool32)(x.refecbe602a.shaderUniformTexelBufferArrayNonUniformIndexing)
+ x.ShaderStorageTexelBufferArrayNonUniformIndexing = (Bool32)(x.refecbe602a.shaderStorageTexelBufferArrayNonUniformIndexing)
+ x.DescriptorBindingUniformBufferUpdateAfterBind = (Bool32)(x.refecbe602a.descriptorBindingUniformBufferUpdateAfterBind)
+ x.DescriptorBindingSampledImageUpdateAfterBind = (Bool32)(x.refecbe602a.descriptorBindingSampledImageUpdateAfterBind)
+ x.DescriptorBindingStorageImageUpdateAfterBind = (Bool32)(x.refecbe602a.descriptorBindingStorageImageUpdateAfterBind)
+ x.DescriptorBindingStorageBufferUpdateAfterBind = (Bool32)(x.refecbe602a.descriptorBindingStorageBufferUpdateAfterBind)
+ x.DescriptorBindingUniformTexelBufferUpdateAfterBind = (Bool32)(x.refecbe602a.descriptorBindingUniformTexelBufferUpdateAfterBind)
+ x.DescriptorBindingStorageTexelBufferUpdateAfterBind = (Bool32)(x.refecbe602a.descriptorBindingStorageTexelBufferUpdateAfterBind)
+ x.DescriptorBindingUpdateUnusedWhilePending = (Bool32)(x.refecbe602a.descriptorBindingUpdateUnusedWhilePending)
+ x.DescriptorBindingPartiallyBound = (Bool32)(x.refecbe602a.descriptorBindingPartiallyBound)
+ x.DescriptorBindingVariableDescriptorCount = (Bool32)(x.refecbe602a.descriptorBindingVariableDescriptorCount)
+ x.RuntimeDescriptorArray = (Bool32)(x.refecbe602a.runtimeDescriptorArray)
+ x.SamplerFilterMinmax = (Bool32)(x.refecbe602a.samplerFilterMinmax)
+ x.ScalarBlockLayout = (Bool32)(x.refecbe602a.scalarBlockLayout)
+ x.ImagelessFramebuffer = (Bool32)(x.refecbe602a.imagelessFramebuffer)
+ x.UniformBufferStandardLayout = (Bool32)(x.refecbe602a.uniformBufferStandardLayout)
+ x.ShaderSubgroupExtendedTypes = (Bool32)(x.refecbe602a.shaderSubgroupExtendedTypes)
+ x.SeparateDepthStencilLayouts = (Bool32)(x.refecbe602a.separateDepthStencilLayouts)
+ x.HostQueryReset = (Bool32)(x.refecbe602a.hostQueryReset)
+ x.TimelineSemaphore = (Bool32)(x.refecbe602a.timelineSemaphore)
+ x.BufferDeviceAddress = (Bool32)(x.refecbe602a.bufferDeviceAddress)
+ x.BufferDeviceAddressCaptureReplay = (Bool32)(x.refecbe602a.bufferDeviceAddressCaptureReplay)
+ x.BufferDeviceAddressMultiDevice = (Bool32)(x.refecbe602a.bufferDeviceAddressMultiDevice)
+ x.VulkanMemoryModel = (Bool32)(x.refecbe602a.vulkanMemoryModel)
+ x.VulkanMemoryModelDeviceScope = (Bool32)(x.refecbe602a.vulkanMemoryModelDeviceScope)
+ x.VulkanMemoryModelAvailabilityVisibilityChains = (Bool32)(x.refecbe602a.vulkanMemoryModelAvailabilityVisibilityChains)
+ x.ShaderOutputViewportIndex = (Bool32)(x.refecbe602a.shaderOutputViewportIndex)
+ x.ShaderOutputLayer = (Bool32)(x.refecbe602a.shaderOutputLayer)
+ x.SubgroupBroadcastDynamicId = (Bool32)(x.refecbe602a.subgroupBroadcastDynamicId)
+}
+
+// allocConformanceVersionMemory allocates memory for type C.VkConformanceVersion in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocConformanceVersionMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfConformanceVersionValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfConformanceVersionValue = unsafe.Sizeof([1]C.VkConformanceVersion{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ConformanceVersion) Ref() *C.VkConformanceVersion {
+ if x == nil {
+ return nil
+ }
+ return x.reffb98ebcd
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ConformanceVersion) Free() {
+ if x != nil && x.allocsfb98ebcd != nil {
+ x.allocsfb98ebcd.(*cgoAllocMap).Free()
+ x.reffb98ebcd = nil
+ }
+}
+
+// NewConformanceVersionRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewConformanceVersionRef(ref unsafe.Pointer) *ConformanceVersion {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ConformanceVersion)
+ obj.reffb98ebcd = (*C.VkConformanceVersion)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ConformanceVersion) PassRef() (*C.VkConformanceVersion, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.reffb98ebcd != nil {
+ return x.reffb98ebcd, nil
+ }
+ memfb98ebcd := allocConformanceVersionMemory(1)
+ reffb98ebcd := (*C.VkConformanceVersion)(memfb98ebcd)
+ allocsfb98ebcd := new(cgoAllocMap)
+ allocsfb98ebcd.Add(memfb98ebcd)
+
+ var cmajor_allocs *cgoAllocMap
+ reffb98ebcd.major, cmajor_allocs = (C.uint8_t)(x.Major), cgoAllocsUnknown
+ allocsfb98ebcd.Borrow(cmajor_allocs)
+
+ var cminor_allocs *cgoAllocMap
+ reffb98ebcd.minor, cminor_allocs = (C.uint8_t)(x.Minor), cgoAllocsUnknown
+ allocsfb98ebcd.Borrow(cminor_allocs)
+
+ var csubminor_allocs *cgoAllocMap
+ reffb98ebcd.subminor, csubminor_allocs = (C.uint8_t)(x.Subminor), cgoAllocsUnknown
+ allocsfb98ebcd.Borrow(csubminor_allocs)
+
+ var cpatch_allocs *cgoAllocMap
+ reffb98ebcd.patch, cpatch_allocs = (C.uint8_t)(x.Patch), cgoAllocsUnknown
+ allocsfb98ebcd.Borrow(cpatch_allocs)
+
+ x.reffb98ebcd = reffb98ebcd
+ x.allocsfb98ebcd = allocsfb98ebcd
+ return reffb98ebcd, allocsfb98ebcd
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ConformanceVersion) PassValue() (C.VkConformanceVersion, *cgoAllocMap) {
+ if x.reffb98ebcd != nil {
+ return *x.reffb98ebcd, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ConformanceVersion) Deref() {
+ if x.reffb98ebcd == nil {
+ return
+ }
+ x.Major = (byte)(x.reffb98ebcd.major)
+ x.Minor = (byte)(x.reffb98ebcd.minor)
+ x.Subminor = (byte)(x.reffb98ebcd.subminor)
+ x.Patch = (byte)(x.reffb98ebcd.patch)
+}
+
+// allocPhysicalDeviceVulkan12PropertiesMemory allocates memory for type C.VkPhysicalDeviceVulkan12Properties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceVulkan12PropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceVulkan12PropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceVulkan12PropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceVulkan12Properties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceVulkan12Properties) Ref() *C.VkPhysicalDeviceVulkan12Properties {
+ if x == nil {
+ return nil
+ }
+ return x.ref4b9010a4
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceVulkan12Properties) Free() {
+ if x != nil && x.allocs4b9010a4 != nil {
+ x.allocs4b9010a4.(*cgoAllocMap).Free()
+ x.ref4b9010a4 = nil
+ }
+}
+
+// NewPhysicalDeviceVulkan12PropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceVulkan12PropertiesRef(ref unsafe.Pointer) *PhysicalDeviceVulkan12Properties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceVulkan12Properties)
+ obj.ref4b9010a4 = (*C.VkPhysicalDeviceVulkan12Properties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceVulkan12Properties) PassRef() (*C.VkPhysicalDeviceVulkan12Properties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref4b9010a4 != nil {
+ return x.ref4b9010a4, nil
+ }
+ mem4b9010a4 := allocPhysicalDeviceVulkan12PropertiesMemory(1)
+ ref4b9010a4 := (*C.VkPhysicalDeviceVulkan12Properties)(mem4b9010a4)
+ allocs4b9010a4 := new(cgoAllocMap)
+ allocs4b9010a4.Add(mem4b9010a4)
+
+ var csType_allocs *cgoAllocMap
+ ref4b9010a4.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref4b9010a4.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cpNext_allocs)
+
+ var cdriverID_allocs *cgoAllocMap
+ ref4b9010a4.driverID, cdriverID_allocs = (C.VkDriverId)(x.DriverID), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cdriverID_allocs)
+
+ var cdriverName_allocs *cgoAllocMap
+ ref4b9010a4.driverName, cdriverName_allocs = *(*[256]C.char)(unsafe.Pointer(&x.DriverName)), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cdriverName_allocs)
+
+ var cdriverInfo_allocs *cgoAllocMap
+ ref4b9010a4.driverInfo, cdriverInfo_allocs = *(*[256]C.char)(unsafe.Pointer(&x.DriverInfo)), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cdriverInfo_allocs)
+
+ var cconformanceVersion_allocs *cgoAllocMap
+ ref4b9010a4.conformanceVersion, cconformanceVersion_allocs = x.ConformanceVersion.PassValue()
+ allocs4b9010a4.Borrow(cconformanceVersion_allocs)
+
+ var cdenormBehaviorIndependence_allocs *cgoAllocMap
+ ref4b9010a4.denormBehaviorIndependence, cdenormBehaviorIndependence_allocs = (C.VkShaderFloatControlsIndependence)(x.DenormBehaviorIndependence), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cdenormBehaviorIndependence_allocs)
+
+ var croundingModeIndependence_allocs *cgoAllocMap
+ ref4b9010a4.roundingModeIndependence, croundingModeIndependence_allocs = (C.VkShaderFloatControlsIndependence)(x.RoundingModeIndependence), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(croundingModeIndependence_allocs)
+
+ var cshaderSignedZeroInfNanPreserveFloat16_allocs *cgoAllocMap
+ ref4b9010a4.shaderSignedZeroInfNanPreserveFloat16, cshaderSignedZeroInfNanPreserveFloat16_allocs = (C.VkBool32)(x.ShaderSignedZeroInfNanPreserveFloat16), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cshaderSignedZeroInfNanPreserveFloat16_allocs)
+
+ var cshaderSignedZeroInfNanPreserveFloat32_allocs *cgoAllocMap
+ ref4b9010a4.shaderSignedZeroInfNanPreserveFloat32, cshaderSignedZeroInfNanPreserveFloat32_allocs = (C.VkBool32)(x.ShaderSignedZeroInfNanPreserveFloat32), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cshaderSignedZeroInfNanPreserveFloat32_allocs)
+
+ var cshaderSignedZeroInfNanPreserveFloat64_allocs *cgoAllocMap
+ ref4b9010a4.shaderSignedZeroInfNanPreserveFloat64, cshaderSignedZeroInfNanPreserveFloat64_allocs = (C.VkBool32)(x.ShaderSignedZeroInfNanPreserveFloat64), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cshaderSignedZeroInfNanPreserveFloat64_allocs)
+
+ var cshaderDenormPreserveFloat16_allocs *cgoAllocMap
+ ref4b9010a4.shaderDenormPreserveFloat16, cshaderDenormPreserveFloat16_allocs = (C.VkBool32)(x.ShaderDenormPreserveFloat16), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cshaderDenormPreserveFloat16_allocs)
+
+ var cshaderDenormPreserveFloat32_allocs *cgoAllocMap
+ ref4b9010a4.shaderDenormPreserveFloat32, cshaderDenormPreserveFloat32_allocs = (C.VkBool32)(x.ShaderDenormPreserveFloat32), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cshaderDenormPreserveFloat32_allocs)
+
+ var cshaderDenormPreserveFloat64_allocs *cgoAllocMap
+ ref4b9010a4.shaderDenormPreserveFloat64, cshaderDenormPreserveFloat64_allocs = (C.VkBool32)(x.ShaderDenormPreserveFloat64), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cshaderDenormPreserveFloat64_allocs)
+
+ var cshaderDenormFlushToZeroFloat16_allocs *cgoAllocMap
+ ref4b9010a4.shaderDenormFlushToZeroFloat16, cshaderDenormFlushToZeroFloat16_allocs = (C.VkBool32)(x.ShaderDenormFlushToZeroFloat16), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cshaderDenormFlushToZeroFloat16_allocs)
+
+ var cshaderDenormFlushToZeroFloat32_allocs *cgoAllocMap
+ ref4b9010a4.shaderDenormFlushToZeroFloat32, cshaderDenormFlushToZeroFloat32_allocs = (C.VkBool32)(x.ShaderDenormFlushToZeroFloat32), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cshaderDenormFlushToZeroFloat32_allocs)
+
+ var cshaderDenormFlushToZeroFloat64_allocs *cgoAllocMap
+ ref4b9010a4.shaderDenormFlushToZeroFloat64, cshaderDenormFlushToZeroFloat64_allocs = (C.VkBool32)(x.ShaderDenormFlushToZeroFloat64), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cshaderDenormFlushToZeroFloat64_allocs)
+
+ var cshaderRoundingModeRTEFloat16_allocs *cgoAllocMap
+ ref4b9010a4.shaderRoundingModeRTEFloat16, cshaderRoundingModeRTEFloat16_allocs = (C.VkBool32)(x.ShaderRoundingModeRTEFloat16), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cshaderRoundingModeRTEFloat16_allocs)
+
+ var cshaderRoundingModeRTEFloat32_allocs *cgoAllocMap
+ ref4b9010a4.shaderRoundingModeRTEFloat32, cshaderRoundingModeRTEFloat32_allocs = (C.VkBool32)(x.ShaderRoundingModeRTEFloat32), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cshaderRoundingModeRTEFloat32_allocs)
+
+ var cshaderRoundingModeRTEFloat64_allocs *cgoAllocMap
+ ref4b9010a4.shaderRoundingModeRTEFloat64, cshaderRoundingModeRTEFloat64_allocs = (C.VkBool32)(x.ShaderRoundingModeRTEFloat64), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cshaderRoundingModeRTEFloat64_allocs)
+
+ var cshaderRoundingModeRTZFloat16_allocs *cgoAllocMap
+ ref4b9010a4.shaderRoundingModeRTZFloat16, cshaderRoundingModeRTZFloat16_allocs = (C.VkBool32)(x.ShaderRoundingModeRTZFloat16), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cshaderRoundingModeRTZFloat16_allocs)
+
+ var cshaderRoundingModeRTZFloat32_allocs *cgoAllocMap
+ ref4b9010a4.shaderRoundingModeRTZFloat32, cshaderRoundingModeRTZFloat32_allocs = (C.VkBool32)(x.ShaderRoundingModeRTZFloat32), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cshaderRoundingModeRTZFloat32_allocs)
+
+ var cshaderRoundingModeRTZFloat64_allocs *cgoAllocMap
+ ref4b9010a4.shaderRoundingModeRTZFloat64, cshaderRoundingModeRTZFloat64_allocs = (C.VkBool32)(x.ShaderRoundingModeRTZFloat64), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cshaderRoundingModeRTZFloat64_allocs)
+
+ var cmaxUpdateAfterBindDescriptorsInAllPools_allocs *cgoAllocMap
+ ref4b9010a4.maxUpdateAfterBindDescriptorsInAllPools, cmaxUpdateAfterBindDescriptorsInAllPools_allocs = (C.uint32_t)(x.MaxUpdateAfterBindDescriptorsInAllPools), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cmaxUpdateAfterBindDescriptorsInAllPools_allocs)
+
+ var cshaderUniformBufferArrayNonUniformIndexingNative_allocs *cgoAllocMap
+ ref4b9010a4.shaderUniformBufferArrayNonUniformIndexingNative, cshaderUniformBufferArrayNonUniformIndexingNative_allocs = (C.VkBool32)(x.ShaderUniformBufferArrayNonUniformIndexingNative), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cshaderUniformBufferArrayNonUniformIndexingNative_allocs)
+
+ var cshaderSampledImageArrayNonUniformIndexingNative_allocs *cgoAllocMap
+ ref4b9010a4.shaderSampledImageArrayNonUniformIndexingNative, cshaderSampledImageArrayNonUniformIndexingNative_allocs = (C.VkBool32)(x.ShaderSampledImageArrayNonUniformIndexingNative), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cshaderSampledImageArrayNonUniformIndexingNative_allocs)
+
+ var cshaderStorageBufferArrayNonUniformIndexingNative_allocs *cgoAllocMap
+ ref4b9010a4.shaderStorageBufferArrayNonUniformIndexingNative, cshaderStorageBufferArrayNonUniformIndexingNative_allocs = (C.VkBool32)(x.ShaderStorageBufferArrayNonUniformIndexingNative), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cshaderStorageBufferArrayNonUniformIndexingNative_allocs)
+
+ var cshaderStorageImageArrayNonUniformIndexingNative_allocs *cgoAllocMap
+ ref4b9010a4.shaderStorageImageArrayNonUniformIndexingNative, cshaderStorageImageArrayNonUniformIndexingNative_allocs = (C.VkBool32)(x.ShaderStorageImageArrayNonUniformIndexingNative), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cshaderStorageImageArrayNonUniformIndexingNative_allocs)
+
+ var cshaderInputAttachmentArrayNonUniformIndexingNative_allocs *cgoAllocMap
+ ref4b9010a4.shaderInputAttachmentArrayNonUniformIndexingNative, cshaderInputAttachmentArrayNonUniformIndexingNative_allocs = (C.VkBool32)(x.ShaderInputAttachmentArrayNonUniformIndexingNative), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cshaderInputAttachmentArrayNonUniformIndexingNative_allocs)
+
+ var crobustBufferAccessUpdateAfterBind_allocs *cgoAllocMap
+ ref4b9010a4.robustBufferAccessUpdateAfterBind, crobustBufferAccessUpdateAfterBind_allocs = (C.VkBool32)(x.RobustBufferAccessUpdateAfterBind), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(crobustBufferAccessUpdateAfterBind_allocs)
+
+ var cquadDivergentImplicitLod_allocs *cgoAllocMap
+ ref4b9010a4.quadDivergentImplicitLod, cquadDivergentImplicitLod_allocs = (C.VkBool32)(x.QuadDivergentImplicitLod), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cquadDivergentImplicitLod_allocs)
+
+ var cmaxPerStageDescriptorUpdateAfterBindSamplers_allocs *cgoAllocMap
+ ref4b9010a4.maxPerStageDescriptorUpdateAfterBindSamplers, cmaxPerStageDescriptorUpdateAfterBindSamplers_allocs = (C.uint32_t)(x.MaxPerStageDescriptorUpdateAfterBindSamplers), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cmaxPerStageDescriptorUpdateAfterBindSamplers_allocs)
+
+ var cmaxPerStageDescriptorUpdateAfterBindUniformBuffers_allocs *cgoAllocMap
+ ref4b9010a4.maxPerStageDescriptorUpdateAfterBindUniformBuffers, cmaxPerStageDescriptorUpdateAfterBindUniformBuffers_allocs = (C.uint32_t)(x.MaxPerStageDescriptorUpdateAfterBindUniformBuffers), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cmaxPerStageDescriptorUpdateAfterBindUniformBuffers_allocs)
+
+ var cmaxPerStageDescriptorUpdateAfterBindStorageBuffers_allocs *cgoAllocMap
+ ref4b9010a4.maxPerStageDescriptorUpdateAfterBindStorageBuffers, cmaxPerStageDescriptorUpdateAfterBindStorageBuffers_allocs = (C.uint32_t)(x.MaxPerStageDescriptorUpdateAfterBindStorageBuffers), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cmaxPerStageDescriptorUpdateAfterBindStorageBuffers_allocs)
+
+ var cmaxPerStageDescriptorUpdateAfterBindSampledImages_allocs *cgoAllocMap
+ ref4b9010a4.maxPerStageDescriptorUpdateAfterBindSampledImages, cmaxPerStageDescriptorUpdateAfterBindSampledImages_allocs = (C.uint32_t)(x.MaxPerStageDescriptorUpdateAfterBindSampledImages), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cmaxPerStageDescriptorUpdateAfterBindSampledImages_allocs)
+
+ var cmaxPerStageDescriptorUpdateAfterBindStorageImages_allocs *cgoAllocMap
+ ref4b9010a4.maxPerStageDescriptorUpdateAfterBindStorageImages, cmaxPerStageDescriptorUpdateAfterBindStorageImages_allocs = (C.uint32_t)(x.MaxPerStageDescriptorUpdateAfterBindStorageImages), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cmaxPerStageDescriptorUpdateAfterBindStorageImages_allocs)
+
+ var cmaxPerStageDescriptorUpdateAfterBindInputAttachments_allocs *cgoAllocMap
+ ref4b9010a4.maxPerStageDescriptorUpdateAfterBindInputAttachments, cmaxPerStageDescriptorUpdateAfterBindInputAttachments_allocs = (C.uint32_t)(x.MaxPerStageDescriptorUpdateAfterBindInputAttachments), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cmaxPerStageDescriptorUpdateAfterBindInputAttachments_allocs)
+
+ var cmaxPerStageUpdateAfterBindResources_allocs *cgoAllocMap
+ ref4b9010a4.maxPerStageUpdateAfterBindResources, cmaxPerStageUpdateAfterBindResources_allocs = (C.uint32_t)(x.MaxPerStageUpdateAfterBindResources), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cmaxPerStageUpdateAfterBindResources_allocs)
+
+ var cmaxDescriptorSetUpdateAfterBindSamplers_allocs *cgoAllocMap
+ ref4b9010a4.maxDescriptorSetUpdateAfterBindSamplers, cmaxDescriptorSetUpdateAfterBindSamplers_allocs = (C.uint32_t)(x.MaxDescriptorSetUpdateAfterBindSamplers), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cmaxDescriptorSetUpdateAfterBindSamplers_allocs)
+
+ var cmaxDescriptorSetUpdateAfterBindUniformBuffers_allocs *cgoAllocMap
+ ref4b9010a4.maxDescriptorSetUpdateAfterBindUniformBuffers, cmaxDescriptorSetUpdateAfterBindUniformBuffers_allocs = (C.uint32_t)(x.MaxDescriptorSetUpdateAfterBindUniformBuffers), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cmaxDescriptorSetUpdateAfterBindUniformBuffers_allocs)
+
+ var cmaxDescriptorSetUpdateAfterBindUniformBuffersDynamic_allocs *cgoAllocMap
+ ref4b9010a4.maxDescriptorSetUpdateAfterBindUniformBuffersDynamic, cmaxDescriptorSetUpdateAfterBindUniformBuffersDynamic_allocs = (C.uint32_t)(x.MaxDescriptorSetUpdateAfterBindUniformBuffersDynamic), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cmaxDescriptorSetUpdateAfterBindUniformBuffersDynamic_allocs)
+
+ var cmaxDescriptorSetUpdateAfterBindStorageBuffers_allocs *cgoAllocMap
+ ref4b9010a4.maxDescriptorSetUpdateAfterBindStorageBuffers, cmaxDescriptorSetUpdateAfterBindStorageBuffers_allocs = (C.uint32_t)(x.MaxDescriptorSetUpdateAfterBindStorageBuffers), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cmaxDescriptorSetUpdateAfterBindStorageBuffers_allocs)
+
+ var cmaxDescriptorSetUpdateAfterBindStorageBuffersDynamic_allocs *cgoAllocMap
+ ref4b9010a4.maxDescriptorSetUpdateAfterBindStorageBuffersDynamic, cmaxDescriptorSetUpdateAfterBindStorageBuffersDynamic_allocs = (C.uint32_t)(x.MaxDescriptorSetUpdateAfterBindStorageBuffersDynamic), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cmaxDescriptorSetUpdateAfterBindStorageBuffersDynamic_allocs)
+
+ var cmaxDescriptorSetUpdateAfterBindSampledImages_allocs *cgoAllocMap
+ ref4b9010a4.maxDescriptorSetUpdateAfterBindSampledImages, cmaxDescriptorSetUpdateAfterBindSampledImages_allocs = (C.uint32_t)(x.MaxDescriptorSetUpdateAfterBindSampledImages), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cmaxDescriptorSetUpdateAfterBindSampledImages_allocs)
+
+ var cmaxDescriptorSetUpdateAfterBindStorageImages_allocs *cgoAllocMap
+ ref4b9010a4.maxDescriptorSetUpdateAfterBindStorageImages, cmaxDescriptorSetUpdateAfterBindStorageImages_allocs = (C.uint32_t)(x.MaxDescriptorSetUpdateAfterBindStorageImages), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cmaxDescriptorSetUpdateAfterBindStorageImages_allocs)
+
+ var cmaxDescriptorSetUpdateAfterBindInputAttachments_allocs *cgoAllocMap
+ ref4b9010a4.maxDescriptorSetUpdateAfterBindInputAttachments, cmaxDescriptorSetUpdateAfterBindInputAttachments_allocs = (C.uint32_t)(x.MaxDescriptorSetUpdateAfterBindInputAttachments), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cmaxDescriptorSetUpdateAfterBindInputAttachments_allocs)
+
+ var csupportedDepthResolveModes_allocs *cgoAllocMap
+ ref4b9010a4.supportedDepthResolveModes, csupportedDepthResolveModes_allocs = (C.VkResolveModeFlags)(x.SupportedDepthResolveModes), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(csupportedDepthResolveModes_allocs)
+
+ var csupportedStencilResolveModes_allocs *cgoAllocMap
+ ref4b9010a4.supportedStencilResolveModes, csupportedStencilResolveModes_allocs = (C.VkResolveModeFlags)(x.SupportedStencilResolveModes), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(csupportedStencilResolveModes_allocs)
+
+ var cindependentResolveNone_allocs *cgoAllocMap
+ ref4b9010a4.independentResolveNone, cindependentResolveNone_allocs = (C.VkBool32)(x.IndependentResolveNone), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cindependentResolveNone_allocs)
+
+ var cindependentResolve_allocs *cgoAllocMap
+ ref4b9010a4.independentResolve, cindependentResolve_allocs = (C.VkBool32)(x.IndependentResolve), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cindependentResolve_allocs)
+
+ var cfilterMinmaxSingleComponentFormats_allocs *cgoAllocMap
+ ref4b9010a4.filterMinmaxSingleComponentFormats, cfilterMinmaxSingleComponentFormats_allocs = (C.VkBool32)(x.FilterMinmaxSingleComponentFormats), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cfilterMinmaxSingleComponentFormats_allocs)
+
+ var cfilterMinmaxImageComponentMapping_allocs *cgoAllocMap
+ ref4b9010a4.filterMinmaxImageComponentMapping, cfilterMinmaxImageComponentMapping_allocs = (C.VkBool32)(x.FilterMinmaxImageComponentMapping), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cfilterMinmaxImageComponentMapping_allocs)
+
+ var cmaxTimelineSemaphoreValueDifference_allocs *cgoAllocMap
+ ref4b9010a4.maxTimelineSemaphoreValueDifference, cmaxTimelineSemaphoreValueDifference_allocs = (C.uint64_t)(x.MaxTimelineSemaphoreValueDifference), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cmaxTimelineSemaphoreValueDifference_allocs)
+
+ var cframebufferIntegerColorSampleCounts_allocs *cgoAllocMap
+ ref4b9010a4.framebufferIntegerColorSampleCounts, cframebufferIntegerColorSampleCounts_allocs = (C.VkSampleCountFlags)(x.FramebufferIntegerColorSampleCounts), cgoAllocsUnknown
+ allocs4b9010a4.Borrow(cframebufferIntegerColorSampleCounts_allocs)
+
+ x.ref4b9010a4 = ref4b9010a4
+ x.allocs4b9010a4 = allocs4b9010a4
+ return ref4b9010a4, allocs4b9010a4
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceVulkan12Properties) PassValue() (C.VkPhysicalDeviceVulkan12Properties, *cgoAllocMap) {
+ if x.ref4b9010a4 != nil {
+ return *x.ref4b9010a4, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceVulkan12Properties) Deref() {
+ if x.ref4b9010a4 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref4b9010a4.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref4b9010a4.pNext))
+ x.DriverID = (DriverId)(x.ref4b9010a4.driverID)
+ x.DriverName = *(*[256]byte)(unsafe.Pointer(&x.ref4b9010a4.driverName))
+ x.DriverInfo = *(*[256]byte)(unsafe.Pointer(&x.ref4b9010a4.driverInfo))
+ x.ConformanceVersion = *NewConformanceVersionRef(unsafe.Pointer(&x.ref4b9010a4.conformanceVersion))
+ x.DenormBehaviorIndependence = (ShaderFloatControlsIndependence)(x.ref4b9010a4.denormBehaviorIndependence)
+ x.RoundingModeIndependence = (ShaderFloatControlsIndependence)(x.ref4b9010a4.roundingModeIndependence)
+ x.ShaderSignedZeroInfNanPreserveFloat16 = (Bool32)(x.ref4b9010a4.shaderSignedZeroInfNanPreserveFloat16)
+ x.ShaderSignedZeroInfNanPreserveFloat32 = (Bool32)(x.ref4b9010a4.shaderSignedZeroInfNanPreserveFloat32)
+ x.ShaderSignedZeroInfNanPreserveFloat64 = (Bool32)(x.ref4b9010a4.shaderSignedZeroInfNanPreserveFloat64)
+ x.ShaderDenormPreserveFloat16 = (Bool32)(x.ref4b9010a4.shaderDenormPreserveFloat16)
+ x.ShaderDenormPreserveFloat32 = (Bool32)(x.ref4b9010a4.shaderDenormPreserveFloat32)
+ x.ShaderDenormPreserveFloat64 = (Bool32)(x.ref4b9010a4.shaderDenormPreserveFloat64)
+ x.ShaderDenormFlushToZeroFloat16 = (Bool32)(x.ref4b9010a4.shaderDenormFlushToZeroFloat16)
+ x.ShaderDenormFlushToZeroFloat32 = (Bool32)(x.ref4b9010a4.shaderDenormFlushToZeroFloat32)
+ x.ShaderDenormFlushToZeroFloat64 = (Bool32)(x.ref4b9010a4.shaderDenormFlushToZeroFloat64)
+ x.ShaderRoundingModeRTEFloat16 = (Bool32)(x.ref4b9010a4.shaderRoundingModeRTEFloat16)
+ x.ShaderRoundingModeRTEFloat32 = (Bool32)(x.ref4b9010a4.shaderRoundingModeRTEFloat32)
+ x.ShaderRoundingModeRTEFloat64 = (Bool32)(x.ref4b9010a4.shaderRoundingModeRTEFloat64)
+ x.ShaderRoundingModeRTZFloat16 = (Bool32)(x.ref4b9010a4.shaderRoundingModeRTZFloat16)
+ x.ShaderRoundingModeRTZFloat32 = (Bool32)(x.ref4b9010a4.shaderRoundingModeRTZFloat32)
+ x.ShaderRoundingModeRTZFloat64 = (Bool32)(x.ref4b9010a4.shaderRoundingModeRTZFloat64)
+ x.MaxUpdateAfterBindDescriptorsInAllPools = (uint32)(x.ref4b9010a4.maxUpdateAfterBindDescriptorsInAllPools)
+ x.ShaderUniformBufferArrayNonUniformIndexingNative = (Bool32)(x.ref4b9010a4.shaderUniformBufferArrayNonUniformIndexingNative)
+ x.ShaderSampledImageArrayNonUniformIndexingNative = (Bool32)(x.ref4b9010a4.shaderSampledImageArrayNonUniformIndexingNative)
+ x.ShaderStorageBufferArrayNonUniformIndexingNative = (Bool32)(x.ref4b9010a4.shaderStorageBufferArrayNonUniformIndexingNative)
+ x.ShaderStorageImageArrayNonUniformIndexingNative = (Bool32)(x.ref4b9010a4.shaderStorageImageArrayNonUniformIndexingNative)
+ x.ShaderInputAttachmentArrayNonUniformIndexingNative = (Bool32)(x.ref4b9010a4.shaderInputAttachmentArrayNonUniformIndexingNative)
+ x.RobustBufferAccessUpdateAfterBind = (Bool32)(x.ref4b9010a4.robustBufferAccessUpdateAfterBind)
+ x.QuadDivergentImplicitLod = (Bool32)(x.ref4b9010a4.quadDivergentImplicitLod)
+ x.MaxPerStageDescriptorUpdateAfterBindSamplers = (uint32)(x.ref4b9010a4.maxPerStageDescriptorUpdateAfterBindSamplers)
+ x.MaxPerStageDescriptorUpdateAfterBindUniformBuffers = (uint32)(x.ref4b9010a4.maxPerStageDescriptorUpdateAfterBindUniformBuffers)
+ x.MaxPerStageDescriptorUpdateAfterBindStorageBuffers = (uint32)(x.ref4b9010a4.maxPerStageDescriptorUpdateAfterBindStorageBuffers)
+ x.MaxPerStageDescriptorUpdateAfterBindSampledImages = (uint32)(x.ref4b9010a4.maxPerStageDescriptorUpdateAfterBindSampledImages)
+ x.MaxPerStageDescriptorUpdateAfterBindStorageImages = (uint32)(x.ref4b9010a4.maxPerStageDescriptorUpdateAfterBindStorageImages)
+ x.MaxPerStageDescriptorUpdateAfterBindInputAttachments = (uint32)(x.ref4b9010a4.maxPerStageDescriptorUpdateAfterBindInputAttachments)
+ x.MaxPerStageUpdateAfterBindResources = (uint32)(x.ref4b9010a4.maxPerStageUpdateAfterBindResources)
+ x.MaxDescriptorSetUpdateAfterBindSamplers = (uint32)(x.ref4b9010a4.maxDescriptorSetUpdateAfterBindSamplers)
+ x.MaxDescriptorSetUpdateAfterBindUniformBuffers = (uint32)(x.ref4b9010a4.maxDescriptorSetUpdateAfterBindUniformBuffers)
+ x.MaxDescriptorSetUpdateAfterBindUniformBuffersDynamic = (uint32)(x.ref4b9010a4.maxDescriptorSetUpdateAfterBindUniformBuffersDynamic)
+ x.MaxDescriptorSetUpdateAfterBindStorageBuffers = (uint32)(x.ref4b9010a4.maxDescriptorSetUpdateAfterBindStorageBuffers)
+ x.MaxDescriptorSetUpdateAfterBindStorageBuffersDynamic = (uint32)(x.ref4b9010a4.maxDescriptorSetUpdateAfterBindStorageBuffersDynamic)
+ x.MaxDescriptorSetUpdateAfterBindSampledImages = (uint32)(x.ref4b9010a4.maxDescriptorSetUpdateAfterBindSampledImages)
+ x.MaxDescriptorSetUpdateAfterBindStorageImages = (uint32)(x.ref4b9010a4.maxDescriptorSetUpdateAfterBindStorageImages)
+ x.MaxDescriptorSetUpdateAfterBindInputAttachments = (uint32)(x.ref4b9010a4.maxDescriptorSetUpdateAfterBindInputAttachments)
+ x.SupportedDepthResolveModes = (ResolveModeFlags)(x.ref4b9010a4.supportedDepthResolveModes)
+ x.SupportedStencilResolveModes = (ResolveModeFlags)(x.ref4b9010a4.supportedStencilResolveModes)
+ x.IndependentResolveNone = (Bool32)(x.ref4b9010a4.independentResolveNone)
+ x.IndependentResolve = (Bool32)(x.ref4b9010a4.independentResolve)
+ x.FilterMinmaxSingleComponentFormats = (Bool32)(x.ref4b9010a4.filterMinmaxSingleComponentFormats)
+ x.FilterMinmaxImageComponentMapping = (Bool32)(x.ref4b9010a4.filterMinmaxImageComponentMapping)
+ x.MaxTimelineSemaphoreValueDifference = (uint64)(x.ref4b9010a4.maxTimelineSemaphoreValueDifference)
+ x.FramebufferIntegerColorSampleCounts = (SampleCountFlags)(x.ref4b9010a4.framebufferIntegerColorSampleCounts)
+}
+
+// allocImageFormatListCreateInfoMemory allocates memory for type C.VkImageFormatListCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocImageFormatListCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageFormatListCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfImageFormatListCreateInfoValue = unsafe.Sizeof([1]C.VkImageFormatListCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ImageFormatListCreateInfo) Ref() *C.VkImageFormatListCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref76fdc95e
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ImageFormatListCreateInfo) Free() {
+ if x != nil && x.allocs76fdc95e != nil {
+ x.allocs76fdc95e.(*cgoAllocMap).Free()
+ x.ref76fdc95e = nil
+ }
+}
+
+// NewImageFormatListCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewImageFormatListCreateInfoRef(ref unsafe.Pointer) *ImageFormatListCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ImageFormatListCreateInfo)
+ obj.ref76fdc95e = (*C.VkImageFormatListCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ImageFormatListCreateInfo) PassRef() (*C.VkImageFormatListCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref76fdc95e != nil {
+ return x.ref76fdc95e, nil
+ }
+ mem76fdc95e := allocImageFormatListCreateInfoMemory(1)
+ ref76fdc95e := (*C.VkImageFormatListCreateInfo)(mem76fdc95e)
+ allocs76fdc95e := new(cgoAllocMap)
+ allocs76fdc95e.Add(mem76fdc95e)
+
+ var csType_allocs *cgoAllocMap
+ ref76fdc95e.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs76fdc95e.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref76fdc95e.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs76fdc95e.Borrow(cpNext_allocs)
+
+ var cviewFormatCount_allocs *cgoAllocMap
+ ref76fdc95e.viewFormatCount, cviewFormatCount_allocs = (C.uint32_t)(x.ViewFormatCount), cgoAllocsUnknown
+ allocs76fdc95e.Borrow(cviewFormatCount_allocs)
+
+ var cpViewFormats_allocs *cgoAllocMap
+ ref76fdc95e.pViewFormats, cpViewFormats_allocs = (*C.VkFormat)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PViewFormats)).Data)), cgoAllocsUnknown
+ allocs76fdc95e.Borrow(cpViewFormats_allocs)
+
+ x.ref76fdc95e = ref76fdc95e
+ x.allocs76fdc95e = allocs76fdc95e
+ return ref76fdc95e, allocs76fdc95e
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ImageFormatListCreateInfo) PassValue() (C.VkImageFormatListCreateInfo, *cgoAllocMap) {
+ if x.ref76fdc95e != nil {
+ return *x.ref76fdc95e, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ImageFormatListCreateInfo) Deref() {
+ if x.ref76fdc95e == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref76fdc95e.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref76fdc95e.pNext))
+ x.ViewFormatCount = (uint32)(x.ref76fdc95e.viewFormatCount)
+ hxffe3496 := (*sliceHeader)(unsafe.Pointer(&x.PViewFormats))
+ hxffe3496.Data = unsafe.Pointer(x.ref76fdc95e.pViewFormats)
+ hxffe3496.Cap = 0x7fffffff
+ // hxffe3496.Len = ?
+
+}
+
+// allocAttachmentDescription2Memory allocates memory for type C.VkAttachmentDescription2 in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocAttachmentDescription2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfAttachmentDescription2Value))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfAttachmentDescription2Value = unsafe.Sizeof([1]C.VkAttachmentDescription2{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *AttachmentDescription2) Ref() *C.VkAttachmentDescription2 {
+ if x == nil {
+ return nil
+ }
+ return x.refae7bd6bf
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *AttachmentDescription2) Free() {
+ if x != nil && x.allocsae7bd6bf != nil {
+ x.allocsae7bd6bf.(*cgoAllocMap).Free()
+ x.refae7bd6bf = nil
+ }
+}
+
+// NewAttachmentDescription2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewAttachmentDescription2Ref(ref unsafe.Pointer) *AttachmentDescription2 {
+ if ref == nil {
+ return nil
+ }
+ obj := new(AttachmentDescription2)
+ obj.refae7bd6bf = (*C.VkAttachmentDescription2)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *AttachmentDescription2) PassRef() (*C.VkAttachmentDescription2, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refae7bd6bf != nil {
+ return x.refae7bd6bf, nil
+ }
+ memae7bd6bf := allocAttachmentDescription2Memory(1)
+ refae7bd6bf := (*C.VkAttachmentDescription2)(memae7bd6bf)
+ allocsae7bd6bf := new(cgoAllocMap)
+ allocsae7bd6bf.Add(memae7bd6bf)
+
+ var csType_allocs *cgoAllocMap
+ refae7bd6bf.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsae7bd6bf.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refae7bd6bf.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsae7bd6bf.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ refae7bd6bf.flags, cflags_allocs = (C.VkAttachmentDescriptionFlags)(x.Flags), cgoAllocsUnknown
+ allocsae7bd6bf.Borrow(cflags_allocs)
+
+ var cformat_allocs *cgoAllocMap
+ refae7bd6bf.format, cformat_allocs = (C.VkFormat)(x.Format), cgoAllocsUnknown
+ allocsae7bd6bf.Borrow(cformat_allocs)
+
+ var csamples_allocs *cgoAllocMap
+ refae7bd6bf.samples, csamples_allocs = (C.VkSampleCountFlagBits)(x.Samples), cgoAllocsUnknown
+ allocsae7bd6bf.Borrow(csamples_allocs)
+
+ var cloadOp_allocs *cgoAllocMap
+ refae7bd6bf.loadOp, cloadOp_allocs = (C.VkAttachmentLoadOp)(x.LoadOp), cgoAllocsUnknown
+ allocsae7bd6bf.Borrow(cloadOp_allocs)
+
+ var cstoreOp_allocs *cgoAllocMap
+ refae7bd6bf.storeOp, cstoreOp_allocs = (C.VkAttachmentStoreOp)(x.StoreOp), cgoAllocsUnknown
+ allocsae7bd6bf.Borrow(cstoreOp_allocs)
+
+ var cstencilLoadOp_allocs *cgoAllocMap
+ refae7bd6bf.stencilLoadOp, cstencilLoadOp_allocs = (C.VkAttachmentLoadOp)(x.StencilLoadOp), cgoAllocsUnknown
+ allocsae7bd6bf.Borrow(cstencilLoadOp_allocs)
+
+ var cstencilStoreOp_allocs *cgoAllocMap
+ refae7bd6bf.stencilStoreOp, cstencilStoreOp_allocs = (C.VkAttachmentStoreOp)(x.StencilStoreOp), cgoAllocsUnknown
+ allocsae7bd6bf.Borrow(cstencilStoreOp_allocs)
+
+ var cinitialLayout_allocs *cgoAllocMap
+ refae7bd6bf.initialLayout, cinitialLayout_allocs = (C.VkImageLayout)(x.InitialLayout), cgoAllocsUnknown
+ allocsae7bd6bf.Borrow(cinitialLayout_allocs)
+
+ var cfinalLayout_allocs *cgoAllocMap
+ refae7bd6bf.finalLayout, cfinalLayout_allocs = (C.VkImageLayout)(x.FinalLayout), cgoAllocsUnknown
+ allocsae7bd6bf.Borrow(cfinalLayout_allocs)
+
+ x.refae7bd6bf = refae7bd6bf
+ x.allocsae7bd6bf = allocsae7bd6bf
+ return refae7bd6bf, allocsae7bd6bf
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x AttachmentDescription2) PassValue() (C.VkAttachmentDescription2, *cgoAllocMap) {
+ if x.refae7bd6bf != nil {
+ return *x.refae7bd6bf, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *AttachmentDescription2) Deref() {
+ if x.refae7bd6bf == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refae7bd6bf.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refae7bd6bf.pNext))
+ x.Flags = (AttachmentDescriptionFlags)(x.refae7bd6bf.flags)
+ x.Format = (Format)(x.refae7bd6bf.format)
+ x.Samples = (SampleCountFlagBits)(x.refae7bd6bf.samples)
+ x.LoadOp = (AttachmentLoadOp)(x.refae7bd6bf.loadOp)
+ x.StoreOp = (AttachmentStoreOp)(x.refae7bd6bf.storeOp)
+ x.StencilLoadOp = (AttachmentLoadOp)(x.refae7bd6bf.stencilLoadOp)
+ x.StencilStoreOp = (AttachmentStoreOp)(x.refae7bd6bf.stencilStoreOp)
+ x.InitialLayout = (ImageLayout)(x.refae7bd6bf.initialLayout)
+ x.FinalLayout = (ImageLayout)(x.refae7bd6bf.finalLayout)
+}
+
+// allocAttachmentReference2Memory allocates memory for type C.VkAttachmentReference2 in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocAttachmentReference2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfAttachmentReference2Value))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfAttachmentReference2Value = unsafe.Sizeof([1]C.VkAttachmentReference2{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *AttachmentReference2) Ref() *C.VkAttachmentReference2 {
+ if x == nil {
+ return nil
+ }
+ return x.ref7b5106a8
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *AttachmentReference2) Free() {
+ if x != nil && x.allocs7b5106a8 != nil {
+ x.allocs7b5106a8.(*cgoAllocMap).Free()
+ x.ref7b5106a8 = nil
+ }
+}
+
+// NewAttachmentReference2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewAttachmentReference2Ref(ref unsafe.Pointer) *AttachmentReference2 {
+ if ref == nil {
+ return nil
+ }
+ obj := new(AttachmentReference2)
+ obj.ref7b5106a8 = (*C.VkAttachmentReference2)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *AttachmentReference2) PassRef() (*C.VkAttachmentReference2, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref7b5106a8 != nil {
+ return x.ref7b5106a8, nil
+ }
+ mem7b5106a8 := allocAttachmentReference2Memory(1)
+ ref7b5106a8 := (*C.VkAttachmentReference2)(mem7b5106a8)
+ allocs7b5106a8 := new(cgoAllocMap)
+ allocs7b5106a8.Add(mem7b5106a8)
+
+ var csType_allocs *cgoAllocMap
+ ref7b5106a8.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs7b5106a8.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref7b5106a8.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs7b5106a8.Borrow(cpNext_allocs)
+
+ var cattachment_allocs *cgoAllocMap
+ ref7b5106a8.attachment, cattachment_allocs = (C.uint32_t)(x.Attachment), cgoAllocsUnknown
+ allocs7b5106a8.Borrow(cattachment_allocs)
+
+ var clayout_allocs *cgoAllocMap
+ ref7b5106a8.layout, clayout_allocs = (C.VkImageLayout)(x.Layout), cgoAllocsUnknown
+ allocs7b5106a8.Borrow(clayout_allocs)
+
+ var caspectMask_allocs *cgoAllocMap
+ ref7b5106a8.aspectMask, caspectMask_allocs = (C.VkImageAspectFlags)(x.AspectMask), cgoAllocsUnknown
+ allocs7b5106a8.Borrow(caspectMask_allocs)
+
+ x.ref7b5106a8 = ref7b5106a8
+ x.allocs7b5106a8 = allocs7b5106a8
+ return ref7b5106a8, allocs7b5106a8
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x AttachmentReference2) PassValue() (C.VkAttachmentReference2, *cgoAllocMap) {
+ if x.ref7b5106a8 != nil {
+ return *x.ref7b5106a8, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *AttachmentReference2) Deref() {
+ if x.ref7b5106a8 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref7b5106a8.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref7b5106a8.pNext))
+ x.Attachment = (uint32)(x.ref7b5106a8.attachment)
+ x.Layout = (ImageLayout)(x.ref7b5106a8.layout)
+ x.AspectMask = (ImageAspectFlags)(x.ref7b5106a8.aspectMask)
+}
+
+// allocSubpassDescription2Memory allocates memory for type C.VkSubpassDescription2 in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSubpassDescription2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSubpassDescription2Value))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSubpassDescription2Value = unsafe.Sizeof([1]C.VkSubpassDescription2{})
+
+// unpackSAttachmentReference2 transforms a sliced Go data structure into plain C format.
+func unpackSAttachmentReference2(x []AttachmentReference2) (unpacked *C.VkAttachmentReference2, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkAttachmentReference2) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocAttachmentReference2Memory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkAttachmentReference2)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkAttachmentReference2)(h.Data)
+ return
+}
+
+// packSAttachmentReference2 reads sliced Go data structure out from plain C format.
+func packSAttachmentReference2(v []AttachmentReference2, ptr0 *C.VkAttachmentReference2) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfAttachmentReference2Value]C.VkAttachmentReference2)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewAttachmentReference2Ref(unsafe.Pointer(&ptr1))
+ }
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SubpassDescription2) Ref() *C.VkSubpassDescription2 {
+ if x == nil {
+ return nil
+ }
+ return x.ref7cdffe39
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SubpassDescription2) Free() {
+ if x != nil && x.allocs7cdffe39 != nil {
+ x.allocs7cdffe39.(*cgoAllocMap).Free()
+ x.ref7cdffe39 = nil
+ }
+}
+
+// NewSubpassDescription2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSubpassDescription2Ref(ref unsafe.Pointer) *SubpassDescription2 {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SubpassDescription2)
+ obj.ref7cdffe39 = (*C.VkSubpassDescription2)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SubpassDescription2) PassRef() (*C.VkSubpassDescription2, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref7cdffe39 != nil {
+ return x.ref7cdffe39, nil
+ }
+ mem7cdffe39 := allocSubpassDescription2Memory(1)
+ ref7cdffe39 := (*C.VkSubpassDescription2)(mem7cdffe39)
+ allocs7cdffe39 := new(cgoAllocMap)
+ allocs7cdffe39.Add(mem7cdffe39)
+
+ var csType_allocs *cgoAllocMap
+ ref7cdffe39.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs7cdffe39.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref7cdffe39.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs7cdffe39.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref7cdffe39.flags, cflags_allocs = (C.VkSubpassDescriptionFlags)(x.Flags), cgoAllocsUnknown
+ allocs7cdffe39.Borrow(cflags_allocs)
+
+ var cpipelineBindPoint_allocs *cgoAllocMap
+ ref7cdffe39.pipelineBindPoint, cpipelineBindPoint_allocs = (C.VkPipelineBindPoint)(x.PipelineBindPoint), cgoAllocsUnknown
+ allocs7cdffe39.Borrow(cpipelineBindPoint_allocs)
+
+ var cviewMask_allocs *cgoAllocMap
+ ref7cdffe39.viewMask, cviewMask_allocs = (C.uint32_t)(x.ViewMask), cgoAllocsUnknown
+ allocs7cdffe39.Borrow(cviewMask_allocs)
+
+ var cinputAttachmentCount_allocs *cgoAllocMap
+ ref7cdffe39.inputAttachmentCount, cinputAttachmentCount_allocs = (C.uint32_t)(x.InputAttachmentCount), cgoAllocsUnknown
+ allocs7cdffe39.Borrow(cinputAttachmentCount_allocs)
+
+ var cpInputAttachments_allocs *cgoAllocMap
+ ref7cdffe39.pInputAttachments, cpInputAttachments_allocs = unpackSAttachmentReference2(x.PInputAttachments)
+ allocs7cdffe39.Borrow(cpInputAttachments_allocs)
+
+ var ccolorAttachmentCount_allocs *cgoAllocMap
+ ref7cdffe39.colorAttachmentCount, ccolorAttachmentCount_allocs = (C.uint32_t)(x.ColorAttachmentCount), cgoAllocsUnknown
+ allocs7cdffe39.Borrow(ccolorAttachmentCount_allocs)
+
+ var cpColorAttachments_allocs *cgoAllocMap
+ ref7cdffe39.pColorAttachments, cpColorAttachments_allocs = unpackSAttachmentReference2(x.PColorAttachments)
+ allocs7cdffe39.Borrow(cpColorAttachments_allocs)
+
+ var cpResolveAttachments_allocs *cgoAllocMap
+ ref7cdffe39.pResolveAttachments, cpResolveAttachments_allocs = unpackSAttachmentReference2(x.PResolveAttachments)
+ allocs7cdffe39.Borrow(cpResolveAttachments_allocs)
+
+ var cpDepthStencilAttachment_allocs *cgoAllocMap
+ ref7cdffe39.pDepthStencilAttachment, cpDepthStencilAttachment_allocs = unpackSAttachmentReference2(x.PDepthStencilAttachment)
+ allocs7cdffe39.Borrow(cpDepthStencilAttachment_allocs)
+
+ var cpreserveAttachmentCount_allocs *cgoAllocMap
+ ref7cdffe39.preserveAttachmentCount, cpreserveAttachmentCount_allocs = (C.uint32_t)(x.PreserveAttachmentCount), cgoAllocsUnknown
+ allocs7cdffe39.Borrow(cpreserveAttachmentCount_allocs)
+
+ var cpPreserveAttachments_allocs *cgoAllocMap
+ ref7cdffe39.pPreserveAttachments, cpPreserveAttachments_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PPreserveAttachments)).Data)), cgoAllocsUnknown
+ allocs7cdffe39.Borrow(cpPreserveAttachments_allocs)
+
+ x.ref7cdffe39 = ref7cdffe39
+ x.allocs7cdffe39 = allocs7cdffe39
+ return ref7cdffe39, allocs7cdffe39
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SubpassDescription2) PassValue() (C.VkSubpassDescription2, *cgoAllocMap) {
+ if x.ref7cdffe39 != nil {
+ return *x.ref7cdffe39, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SubpassDescription2) Deref() {
+ if x.ref7cdffe39 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref7cdffe39.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref7cdffe39.pNext))
+ x.Flags = (SubpassDescriptionFlags)(x.ref7cdffe39.flags)
+ x.PipelineBindPoint = (PipelineBindPoint)(x.ref7cdffe39.pipelineBindPoint)
+ x.ViewMask = (uint32)(x.ref7cdffe39.viewMask)
+ x.InputAttachmentCount = (uint32)(x.ref7cdffe39.inputAttachmentCount)
+ packSAttachmentReference2(x.PInputAttachments, x.ref7cdffe39.pInputAttachments)
+ x.ColorAttachmentCount = (uint32)(x.ref7cdffe39.colorAttachmentCount)
+ packSAttachmentReference2(x.PColorAttachments, x.ref7cdffe39.pColorAttachments)
+ packSAttachmentReference2(x.PResolveAttachments, x.ref7cdffe39.pResolveAttachments)
+ packSAttachmentReference2(x.PDepthStencilAttachment, x.ref7cdffe39.pDepthStencilAttachment)
+ x.PreserveAttachmentCount = (uint32)(x.ref7cdffe39.preserveAttachmentCount)
+ hxf5d48a6 := (*sliceHeader)(unsafe.Pointer(&x.PPreserveAttachments))
+ hxf5d48a6.Data = unsafe.Pointer(x.ref7cdffe39.pPreserveAttachments)
+ hxf5d48a6.Cap = 0x7fffffff
+ // hxf5d48a6.Len = ?
+
+}
+
+// allocSubpassDependency2Memory allocates memory for type C.VkSubpassDependency2 in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSubpassDependency2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSubpassDependency2Value))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSubpassDependency2Value = unsafe.Sizeof([1]C.VkSubpassDependency2{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SubpassDependency2) Ref() *C.VkSubpassDependency2 {
+ if x == nil {
+ return nil
+ }
+ return x.refb0fac2b
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SubpassDependency2) Free() {
+ if x != nil && x.allocsb0fac2b != nil {
+ x.allocsb0fac2b.(*cgoAllocMap).Free()
+ x.refb0fac2b = nil
+ }
+}
+
+// NewSubpassDependency2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSubpassDependency2Ref(ref unsafe.Pointer) *SubpassDependency2 {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SubpassDependency2)
+ obj.refb0fac2b = (*C.VkSubpassDependency2)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SubpassDependency2) PassRef() (*C.VkSubpassDependency2, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refb0fac2b != nil {
+ return x.refb0fac2b, nil
+ }
+ memb0fac2b := allocSubpassDependency2Memory(1)
+ refb0fac2b := (*C.VkSubpassDependency2)(memb0fac2b)
+ allocsb0fac2b := new(cgoAllocMap)
+ allocsb0fac2b.Add(memb0fac2b)
+
+ var csType_allocs *cgoAllocMap
+ refb0fac2b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsb0fac2b.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refb0fac2b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsb0fac2b.Borrow(cpNext_allocs)
+
+ var csrcSubpass_allocs *cgoAllocMap
+ refb0fac2b.srcSubpass, csrcSubpass_allocs = (C.uint32_t)(x.SrcSubpass), cgoAllocsUnknown
+ allocsb0fac2b.Borrow(csrcSubpass_allocs)
+
+ var cdstSubpass_allocs *cgoAllocMap
+ refb0fac2b.dstSubpass, cdstSubpass_allocs = (C.uint32_t)(x.DstSubpass), cgoAllocsUnknown
+ allocsb0fac2b.Borrow(cdstSubpass_allocs)
+
+ var csrcStageMask_allocs *cgoAllocMap
+ refb0fac2b.srcStageMask, csrcStageMask_allocs = (C.VkPipelineStageFlags)(x.SrcStageMask), cgoAllocsUnknown
+ allocsb0fac2b.Borrow(csrcStageMask_allocs)
+
+ var cdstStageMask_allocs *cgoAllocMap
+ refb0fac2b.dstStageMask, cdstStageMask_allocs = (C.VkPipelineStageFlags)(x.DstStageMask), cgoAllocsUnknown
+ allocsb0fac2b.Borrow(cdstStageMask_allocs)
+
+ var csrcAccessMask_allocs *cgoAllocMap
+ refb0fac2b.srcAccessMask, csrcAccessMask_allocs = (C.VkAccessFlags)(x.SrcAccessMask), cgoAllocsUnknown
+ allocsb0fac2b.Borrow(csrcAccessMask_allocs)
+
+ var cdstAccessMask_allocs *cgoAllocMap
+ refb0fac2b.dstAccessMask, cdstAccessMask_allocs = (C.VkAccessFlags)(x.DstAccessMask), cgoAllocsUnknown
+ allocsb0fac2b.Borrow(cdstAccessMask_allocs)
+
+ var cdependencyFlags_allocs *cgoAllocMap
+ refb0fac2b.dependencyFlags, cdependencyFlags_allocs = (C.VkDependencyFlags)(x.DependencyFlags), cgoAllocsUnknown
+ allocsb0fac2b.Borrow(cdependencyFlags_allocs)
+
+ var cviewOffset_allocs *cgoAllocMap
+ refb0fac2b.viewOffset, cviewOffset_allocs = (C.int32_t)(x.ViewOffset), cgoAllocsUnknown
+ allocsb0fac2b.Borrow(cviewOffset_allocs)
+
+ x.refb0fac2b = refb0fac2b
+ x.allocsb0fac2b = allocsb0fac2b
+ return refb0fac2b, allocsb0fac2b
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SubpassDependency2) PassValue() (C.VkSubpassDependency2, *cgoAllocMap) {
+ if x.refb0fac2b != nil {
+ return *x.refb0fac2b, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SubpassDependency2) Deref() {
+ if x.refb0fac2b == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refb0fac2b.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb0fac2b.pNext))
+ x.SrcSubpass = (uint32)(x.refb0fac2b.srcSubpass)
+ x.DstSubpass = (uint32)(x.refb0fac2b.dstSubpass)
+ x.SrcStageMask = (PipelineStageFlags)(x.refb0fac2b.srcStageMask)
+ x.DstStageMask = (PipelineStageFlags)(x.refb0fac2b.dstStageMask)
+ x.SrcAccessMask = (AccessFlags)(x.refb0fac2b.srcAccessMask)
+ x.DstAccessMask = (AccessFlags)(x.refb0fac2b.dstAccessMask)
+ x.DependencyFlags = (DependencyFlags)(x.refb0fac2b.dependencyFlags)
+ x.ViewOffset = (int32)(x.refb0fac2b.viewOffset)
+}
+
+// allocRenderPassCreateInfo2Memory allocates memory for type C.VkRenderPassCreateInfo2 in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocRenderPassCreateInfo2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfRenderPassCreateInfo2Value))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfRenderPassCreateInfo2Value = unsafe.Sizeof([1]C.VkRenderPassCreateInfo2{})
+
+// unpackSAttachmentDescription2 transforms a sliced Go data structure into plain C format.
+func unpackSAttachmentDescription2(x []AttachmentDescription2) (unpacked *C.VkAttachmentDescription2, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkAttachmentDescription2) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocAttachmentDescription2Memory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkAttachmentDescription2)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkAttachmentDescription2)(h.Data)
+ return
+}
+
+// unpackSSubpassDescription2 transforms a sliced Go data structure into plain C format.
+func unpackSSubpassDescription2(x []SubpassDescription2) (unpacked *C.VkSubpassDescription2, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkSubpassDescription2) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocSubpassDescription2Memory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkSubpassDescription2)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkSubpassDescription2)(h.Data)
+ return
+}
+
+// unpackSSubpassDependency2 transforms a sliced Go data structure into plain C format.
+func unpackSSubpassDependency2(x []SubpassDependency2) (unpacked *C.VkSubpassDependency2, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkSubpassDependency2) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocSubpassDependency2Memory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkSubpassDependency2)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkSubpassDependency2)(h.Data)
+ return
+}
+
+// packSAttachmentDescription2 reads sliced Go data structure out from plain C format.
+func packSAttachmentDescription2(v []AttachmentDescription2, ptr0 *C.VkAttachmentDescription2) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfAttachmentDescription2Value]C.VkAttachmentDescription2)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewAttachmentDescription2Ref(unsafe.Pointer(&ptr1))
+ }
+}
+
+// packSSubpassDescription2 reads sliced Go data structure out from plain C format.
+func packSSubpassDescription2(v []SubpassDescription2, ptr0 *C.VkSubpassDescription2) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfSubpassDescription2Value]C.VkSubpassDescription2)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewSubpassDescription2Ref(unsafe.Pointer(&ptr1))
+ }
+}
+
+// packSSubpassDependency2 reads sliced Go data structure out from plain C format.
+func packSSubpassDependency2(v []SubpassDependency2, ptr0 *C.VkSubpassDependency2) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfSubpassDependency2Value]C.VkSubpassDependency2)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewSubpassDependency2Ref(unsafe.Pointer(&ptr1))
+ }
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *RenderPassCreateInfo2) Ref() *C.VkRenderPassCreateInfo2 {
+ if x == nil {
+ return nil
+ }
+ return x.ref1e86f565
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *RenderPassCreateInfo2) Free() {
+ if x != nil && x.allocs1e86f565 != nil {
+ x.allocs1e86f565.(*cgoAllocMap).Free()
+ x.ref1e86f565 = nil
+ }
+}
+
+// NewRenderPassCreateInfo2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewRenderPassCreateInfo2Ref(ref unsafe.Pointer) *RenderPassCreateInfo2 {
+ if ref == nil {
+ return nil
+ }
+ obj := new(RenderPassCreateInfo2)
+ obj.ref1e86f565 = (*C.VkRenderPassCreateInfo2)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *RenderPassCreateInfo2) PassRef() (*C.VkRenderPassCreateInfo2, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref1e86f565 != nil {
+ return x.ref1e86f565, nil
+ }
+ mem1e86f565 := allocRenderPassCreateInfo2Memory(1)
+ ref1e86f565 := (*C.VkRenderPassCreateInfo2)(mem1e86f565)
+ allocs1e86f565 := new(cgoAllocMap)
+ allocs1e86f565.Add(mem1e86f565)
+
+ var csType_allocs *cgoAllocMap
+ ref1e86f565.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs1e86f565.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref1e86f565.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs1e86f565.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref1e86f565.flags, cflags_allocs = (C.VkRenderPassCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocs1e86f565.Borrow(cflags_allocs)
+
+ var cattachmentCount_allocs *cgoAllocMap
+ ref1e86f565.attachmentCount, cattachmentCount_allocs = (C.uint32_t)(x.AttachmentCount), cgoAllocsUnknown
+ allocs1e86f565.Borrow(cattachmentCount_allocs)
+
+ var cpAttachments_allocs *cgoAllocMap
+ ref1e86f565.pAttachments, cpAttachments_allocs = unpackSAttachmentDescription2(x.PAttachments)
+ allocs1e86f565.Borrow(cpAttachments_allocs)
+
+ var csubpassCount_allocs *cgoAllocMap
+ ref1e86f565.subpassCount, csubpassCount_allocs = (C.uint32_t)(x.SubpassCount), cgoAllocsUnknown
+ allocs1e86f565.Borrow(csubpassCount_allocs)
+
+ var cpSubpasses_allocs *cgoAllocMap
+ ref1e86f565.pSubpasses, cpSubpasses_allocs = unpackSSubpassDescription2(x.PSubpasses)
+ allocs1e86f565.Borrow(cpSubpasses_allocs)
+
+ var cdependencyCount_allocs *cgoAllocMap
+ ref1e86f565.dependencyCount, cdependencyCount_allocs = (C.uint32_t)(x.DependencyCount), cgoAllocsUnknown
+ allocs1e86f565.Borrow(cdependencyCount_allocs)
+
+ var cpDependencies_allocs *cgoAllocMap
+ ref1e86f565.pDependencies, cpDependencies_allocs = unpackSSubpassDependency2(x.PDependencies)
+ allocs1e86f565.Borrow(cpDependencies_allocs)
+
+ var ccorrelatedViewMaskCount_allocs *cgoAllocMap
+ ref1e86f565.correlatedViewMaskCount, ccorrelatedViewMaskCount_allocs = (C.uint32_t)(x.CorrelatedViewMaskCount), cgoAllocsUnknown
+ allocs1e86f565.Borrow(ccorrelatedViewMaskCount_allocs)
+
+ var cpCorrelatedViewMasks_allocs *cgoAllocMap
+ ref1e86f565.pCorrelatedViewMasks, cpCorrelatedViewMasks_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PCorrelatedViewMasks)).Data)), cgoAllocsUnknown
+ allocs1e86f565.Borrow(cpCorrelatedViewMasks_allocs)
+
+ x.ref1e86f565 = ref1e86f565
+ x.allocs1e86f565 = allocs1e86f565
+ return ref1e86f565, allocs1e86f565
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x RenderPassCreateInfo2) PassValue() (C.VkRenderPassCreateInfo2, *cgoAllocMap) {
+ if x.ref1e86f565 != nil {
+ return *x.ref1e86f565, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *RenderPassCreateInfo2) Deref() {
+ if x.ref1e86f565 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref1e86f565.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref1e86f565.pNext))
+ x.Flags = (RenderPassCreateFlags)(x.ref1e86f565.flags)
+ x.AttachmentCount = (uint32)(x.ref1e86f565.attachmentCount)
+ packSAttachmentDescription2(x.PAttachments, x.ref1e86f565.pAttachments)
+ x.SubpassCount = (uint32)(x.ref1e86f565.subpassCount)
+ packSSubpassDescription2(x.PSubpasses, x.ref1e86f565.pSubpasses)
+ x.DependencyCount = (uint32)(x.ref1e86f565.dependencyCount)
+ packSSubpassDependency2(x.PDependencies, x.ref1e86f565.pDependencies)
+ x.CorrelatedViewMaskCount = (uint32)(x.ref1e86f565.correlatedViewMaskCount)
+ hxf685469 := (*sliceHeader)(unsafe.Pointer(&x.PCorrelatedViewMasks))
+ hxf685469.Data = unsafe.Pointer(x.ref1e86f565.pCorrelatedViewMasks)
+ hxf685469.Cap = 0x7fffffff
+ // hxf685469.Len = ?
+
+}
+
+// allocSubpassBeginInfoMemory allocates memory for type C.VkSubpassBeginInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSubpassBeginInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSubpassBeginInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSubpassBeginInfoValue = unsafe.Sizeof([1]C.VkSubpassBeginInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SubpassBeginInfo) Ref() *C.VkSubpassBeginInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref941a38e5
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SubpassBeginInfo) Free() {
+ if x != nil && x.allocs941a38e5 != nil {
+ x.allocs941a38e5.(*cgoAllocMap).Free()
+ x.ref941a38e5 = nil
+ }
+}
+
+// NewSubpassBeginInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSubpassBeginInfoRef(ref unsafe.Pointer) *SubpassBeginInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SubpassBeginInfo)
+ obj.ref941a38e5 = (*C.VkSubpassBeginInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SubpassBeginInfo) PassRef() (*C.VkSubpassBeginInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref941a38e5 != nil {
+ return x.ref941a38e5, nil
+ }
+ mem941a38e5 := allocSubpassBeginInfoMemory(1)
+ ref941a38e5 := (*C.VkSubpassBeginInfo)(mem941a38e5)
+ allocs941a38e5 := new(cgoAllocMap)
+ allocs941a38e5.Add(mem941a38e5)
+
+ var csType_allocs *cgoAllocMap
+ ref941a38e5.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs941a38e5.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref941a38e5.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs941a38e5.Borrow(cpNext_allocs)
+
+ var ccontents_allocs *cgoAllocMap
+ ref941a38e5.contents, ccontents_allocs = (C.VkSubpassContents)(x.Contents), cgoAllocsUnknown
+ allocs941a38e5.Borrow(ccontents_allocs)
+
+ x.ref941a38e5 = ref941a38e5
+ x.allocs941a38e5 = allocs941a38e5
+ return ref941a38e5, allocs941a38e5
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SubpassBeginInfo) PassValue() (C.VkSubpassBeginInfo, *cgoAllocMap) {
+ if x.ref941a38e5 != nil {
+ return *x.ref941a38e5, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SubpassBeginInfo) Deref() {
+ if x.ref941a38e5 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref941a38e5.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref941a38e5.pNext))
+ x.Contents = (SubpassContents)(x.ref941a38e5.contents)
+}
+
+// allocSubpassEndInfoMemory allocates memory for type C.VkSubpassEndInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSubpassEndInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSubpassEndInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSubpassEndInfoValue = unsafe.Sizeof([1]C.VkSubpassEndInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SubpassEndInfo) Ref() *C.VkSubpassEndInfo {
+ if x == nil {
+ return nil
+ }
+ return x.reffa172a5c
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SubpassEndInfo) Free() {
+ if x != nil && x.allocsfa172a5c != nil {
+ x.allocsfa172a5c.(*cgoAllocMap).Free()
+ x.reffa172a5c = nil
+ }
+}
+
+// NewSubpassEndInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSubpassEndInfoRef(ref unsafe.Pointer) *SubpassEndInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SubpassEndInfo)
+ obj.reffa172a5c = (*C.VkSubpassEndInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SubpassEndInfo) PassRef() (*C.VkSubpassEndInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.reffa172a5c != nil {
+ return x.reffa172a5c, nil
+ }
+ memfa172a5c := allocSubpassEndInfoMemory(1)
+ reffa172a5c := (*C.VkSubpassEndInfo)(memfa172a5c)
+ allocsfa172a5c := new(cgoAllocMap)
+ allocsfa172a5c.Add(memfa172a5c)
+
+ var csType_allocs *cgoAllocMap
+ reffa172a5c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsfa172a5c.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ reffa172a5c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsfa172a5c.Borrow(cpNext_allocs)
+
+ x.reffa172a5c = reffa172a5c
+ x.allocsfa172a5c = allocsfa172a5c
+ return reffa172a5c, allocsfa172a5c
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SubpassEndInfo) PassValue() (C.VkSubpassEndInfo, *cgoAllocMap) {
+ if x.reffa172a5c != nil {
+ return *x.reffa172a5c, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SubpassEndInfo) Deref() {
+ if x.reffa172a5c == nil {
+ return
+ }
+ x.SType = (StructureType)(x.reffa172a5c.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reffa172a5c.pNext))
+}
+
+// allocPhysicalDevice8BitStorageFeaturesMemory allocates memory for type C.VkPhysicalDevice8BitStorageFeatures in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDevice8BitStorageFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDevice8BitStorageFeaturesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDevice8BitStorageFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDevice8BitStorageFeatures{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDevice8BitStorageFeatures) Ref() *C.VkPhysicalDevice8BitStorageFeatures {
+ if x == nil {
+ return nil
+ }
+ return x.ref4c9f0386
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDevice8BitStorageFeatures) Free() {
+ if x != nil && x.allocs4c9f0386 != nil {
+ x.allocs4c9f0386.(*cgoAllocMap).Free()
+ x.ref4c9f0386 = nil
+ }
+}
+
+// NewPhysicalDevice8BitStorageFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDevice8BitStorageFeaturesRef(ref unsafe.Pointer) *PhysicalDevice8BitStorageFeatures {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDevice8BitStorageFeatures)
+ obj.ref4c9f0386 = (*C.VkPhysicalDevice8BitStorageFeatures)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDevice8BitStorageFeatures) PassRef() (*C.VkPhysicalDevice8BitStorageFeatures, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref4c9f0386 != nil {
+ return x.ref4c9f0386, nil
+ }
+ mem4c9f0386 := allocPhysicalDevice8BitStorageFeaturesMemory(1)
+ ref4c9f0386 := (*C.VkPhysicalDevice8BitStorageFeatures)(mem4c9f0386)
+ allocs4c9f0386 := new(cgoAllocMap)
+ allocs4c9f0386.Add(mem4c9f0386)
+
+ var csType_allocs *cgoAllocMap
+ ref4c9f0386.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs4c9f0386.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref4c9f0386.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs4c9f0386.Borrow(cpNext_allocs)
+
+ var cstorageBuffer8BitAccess_allocs *cgoAllocMap
+ ref4c9f0386.storageBuffer8BitAccess, cstorageBuffer8BitAccess_allocs = (C.VkBool32)(x.StorageBuffer8BitAccess), cgoAllocsUnknown
+ allocs4c9f0386.Borrow(cstorageBuffer8BitAccess_allocs)
+
+ var cuniformAndStorageBuffer8BitAccess_allocs *cgoAllocMap
+ ref4c9f0386.uniformAndStorageBuffer8BitAccess, cuniformAndStorageBuffer8BitAccess_allocs = (C.VkBool32)(x.UniformAndStorageBuffer8BitAccess), cgoAllocsUnknown
+ allocs4c9f0386.Borrow(cuniformAndStorageBuffer8BitAccess_allocs)
+
+ var cstoragePushConstant8_allocs *cgoAllocMap
+ ref4c9f0386.storagePushConstant8, cstoragePushConstant8_allocs = (C.VkBool32)(x.StoragePushConstant8), cgoAllocsUnknown
+ allocs4c9f0386.Borrow(cstoragePushConstant8_allocs)
+
+ x.ref4c9f0386 = ref4c9f0386
+ x.allocs4c9f0386 = allocs4c9f0386
+ return ref4c9f0386, allocs4c9f0386
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDevice8BitStorageFeatures) PassValue() (C.VkPhysicalDevice8BitStorageFeatures, *cgoAllocMap) {
+ if x.ref4c9f0386 != nil {
+ return *x.ref4c9f0386, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDevice8BitStorageFeatures) Deref() {
+ if x.ref4c9f0386 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref4c9f0386.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref4c9f0386.pNext))
+ x.StorageBuffer8BitAccess = (Bool32)(x.ref4c9f0386.storageBuffer8BitAccess)
+ x.UniformAndStorageBuffer8BitAccess = (Bool32)(x.ref4c9f0386.uniformAndStorageBuffer8BitAccess)
+ x.StoragePushConstant8 = (Bool32)(x.ref4c9f0386.storagePushConstant8)
+}
+
+// allocPhysicalDeviceDriverPropertiesMemory allocates memory for type C.VkPhysicalDeviceDriverProperties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceDriverPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceDriverPropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceDriverPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceDriverProperties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceDriverProperties) Ref() *C.VkPhysicalDeviceDriverProperties {
+ if x == nil {
+ return nil
+ }
+ return x.ref492c8b68
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceDriverProperties) Free() {
+ if x != nil && x.allocs492c8b68 != nil {
+ x.allocs492c8b68.(*cgoAllocMap).Free()
+ x.ref492c8b68 = nil
+ }
+}
+
+// NewPhysicalDeviceDriverPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceDriverPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceDriverProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceDriverProperties)
+ obj.ref492c8b68 = (*C.VkPhysicalDeviceDriverProperties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceDriverProperties) PassRef() (*C.VkPhysicalDeviceDriverProperties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref492c8b68 != nil {
+ return x.ref492c8b68, nil
+ }
+ mem492c8b68 := allocPhysicalDeviceDriverPropertiesMemory(1)
+ ref492c8b68 := (*C.VkPhysicalDeviceDriverProperties)(mem492c8b68)
+ allocs492c8b68 := new(cgoAllocMap)
+ allocs492c8b68.Add(mem492c8b68)
+
+ var csType_allocs *cgoAllocMap
+ ref492c8b68.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs492c8b68.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref492c8b68.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs492c8b68.Borrow(cpNext_allocs)
+
+ var cdriverID_allocs *cgoAllocMap
+ ref492c8b68.driverID, cdriverID_allocs = (C.VkDriverId)(x.DriverID), cgoAllocsUnknown
+ allocs492c8b68.Borrow(cdriverID_allocs)
+
+ var cdriverName_allocs *cgoAllocMap
+ ref492c8b68.driverName, cdriverName_allocs = *(*[256]C.char)(unsafe.Pointer(&x.DriverName)), cgoAllocsUnknown
+ allocs492c8b68.Borrow(cdriverName_allocs)
+
+ var cdriverInfo_allocs *cgoAllocMap
+ ref492c8b68.driverInfo, cdriverInfo_allocs = *(*[256]C.char)(unsafe.Pointer(&x.DriverInfo)), cgoAllocsUnknown
+ allocs492c8b68.Borrow(cdriverInfo_allocs)
+
+ var cconformanceVersion_allocs *cgoAllocMap
+ ref492c8b68.conformanceVersion, cconformanceVersion_allocs = x.ConformanceVersion.PassValue()
+ allocs492c8b68.Borrow(cconformanceVersion_allocs)
+
+ x.ref492c8b68 = ref492c8b68
+ x.allocs492c8b68 = allocs492c8b68
+ return ref492c8b68, allocs492c8b68
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceDriverProperties) PassValue() (C.VkPhysicalDeviceDriverProperties, *cgoAllocMap) {
+ if x.ref492c8b68 != nil {
+ return *x.ref492c8b68, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceDriverProperties) Deref() {
+ if x.ref492c8b68 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref492c8b68.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref492c8b68.pNext))
+ x.DriverID = (DriverId)(x.ref492c8b68.driverID)
+ x.DriverName = *(*[256]byte)(unsafe.Pointer(&x.ref492c8b68.driverName))
+ x.DriverInfo = *(*[256]byte)(unsafe.Pointer(&x.ref492c8b68.driverInfo))
+ x.ConformanceVersion = *NewConformanceVersionRef(unsafe.Pointer(&x.ref492c8b68.conformanceVersion))
+}
+
+// allocPhysicalDeviceShaderAtomicInt64FeaturesMemory allocates memory for type C.VkPhysicalDeviceShaderAtomicInt64Features in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceShaderAtomicInt64FeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceShaderAtomicInt64FeaturesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceShaderAtomicInt64FeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceShaderAtomicInt64Features{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceShaderAtomicInt64Features) Ref() *C.VkPhysicalDeviceShaderAtomicInt64Features {
+ if x == nil {
+ return nil
+ }
+ return x.refa23b7e52
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceShaderAtomicInt64Features) Free() {
+ if x != nil && x.allocsa23b7e52 != nil {
+ x.allocsa23b7e52.(*cgoAllocMap).Free()
+ x.refa23b7e52 = nil
+ }
+}
+
+// NewPhysicalDeviceShaderAtomicInt64FeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceShaderAtomicInt64FeaturesRef(ref unsafe.Pointer) *PhysicalDeviceShaderAtomicInt64Features {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceShaderAtomicInt64Features)
+ obj.refa23b7e52 = (*C.VkPhysicalDeviceShaderAtomicInt64Features)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceShaderAtomicInt64Features) PassRef() (*C.VkPhysicalDeviceShaderAtomicInt64Features, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refa23b7e52 != nil {
+ return x.refa23b7e52, nil
+ }
+ mema23b7e52 := allocPhysicalDeviceShaderAtomicInt64FeaturesMemory(1)
+ refa23b7e52 := (*C.VkPhysicalDeviceShaderAtomicInt64Features)(mema23b7e52)
+ allocsa23b7e52 := new(cgoAllocMap)
+ allocsa23b7e52.Add(mema23b7e52)
+
+ var csType_allocs *cgoAllocMap
+ refa23b7e52.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsa23b7e52.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refa23b7e52.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsa23b7e52.Borrow(cpNext_allocs)
+
+ var cshaderBufferInt64Atomics_allocs *cgoAllocMap
+ refa23b7e52.shaderBufferInt64Atomics, cshaderBufferInt64Atomics_allocs = (C.VkBool32)(x.ShaderBufferInt64Atomics), cgoAllocsUnknown
+ allocsa23b7e52.Borrow(cshaderBufferInt64Atomics_allocs)
+
+ var cshaderSharedInt64Atomics_allocs *cgoAllocMap
+ refa23b7e52.shaderSharedInt64Atomics, cshaderSharedInt64Atomics_allocs = (C.VkBool32)(x.ShaderSharedInt64Atomics), cgoAllocsUnknown
+ allocsa23b7e52.Borrow(cshaderSharedInt64Atomics_allocs)
+
+ x.refa23b7e52 = refa23b7e52
+ x.allocsa23b7e52 = allocsa23b7e52
+ return refa23b7e52, allocsa23b7e52
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceShaderAtomicInt64Features) PassValue() (C.VkPhysicalDeviceShaderAtomicInt64Features, *cgoAllocMap) {
+ if x.refa23b7e52 != nil {
+ return *x.refa23b7e52, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceShaderAtomicInt64Features) Deref() {
+ if x.refa23b7e52 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refa23b7e52.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa23b7e52.pNext))
+ x.ShaderBufferInt64Atomics = (Bool32)(x.refa23b7e52.shaderBufferInt64Atomics)
+ x.ShaderSharedInt64Atomics = (Bool32)(x.refa23b7e52.shaderSharedInt64Atomics)
+}
+
+// allocPhysicalDeviceShaderFloat16Int8FeaturesMemory allocates memory for type C.VkPhysicalDeviceShaderFloat16Int8Features in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceShaderFloat16Int8FeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceShaderFloat16Int8FeaturesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceShaderFloat16Int8FeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceShaderFloat16Int8Features{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceShaderFloat16Int8Features) Ref() *C.VkPhysicalDeviceShaderFloat16Int8Features {
+ if x == nil {
+ return nil
+ }
+ return x.refc9d315b6
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceShaderFloat16Int8Features) Free() {
+ if x != nil && x.allocsc9d315b6 != nil {
+ x.allocsc9d315b6.(*cgoAllocMap).Free()
+ x.refc9d315b6 = nil
+ }
+}
+
+// NewPhysicalDeviceShaderFloat16Int8FeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceShaderFloat16Int8FeaturesRef(ref unsafe.Pointer) *PhysicalDeviceShaderFloat16Int8Features {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceShaderFloat16Int8Features)
+ obj.refc9d315b6 = (*C.VkPhysicalDeviceShaderFloat16Int8Features)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceShaderFloat16Int8Features) PassRef() (*C.VkPhysicalDeviceShaderFloat16Int8Features, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refc9d315b6 != nil {
+ return x.refc9d315b6, nil
+ }
+ memc9d315b6 := allocPhysicalDeviceShaderFloat16Int8FeaturesMemory(1)
+ refc9d315b6 := (*C.VkPhysicalDeviceShaderFloat16Int8Features)(memc9d315b6)
+ allocsc9d315b6 := new(cgoAllocMap)
+ allocsc9d315b6.Add(memc9d315b6)
+
+ var csType_allocs *cgoAllocMap
+ refc9d315b6.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsc9d315b6.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refc9d315b6.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsc9d315b6.Borrow(cpNext_allocs)
+
+ var cshaderFloat16_allocs *cgoAllocMap
+ refc9d315b6.shaderFloat16, cshaderFloat16_allocs = (C.VkBool32)(x.ShaderFloat16), cgoAllocsUnknown
+ allocsc9d315b6.Borrow(cshaderFloat16_allocs)
+
+ var cshaderInt8_allocs *cgoAllocMap
+ refc9d315b6.shaderInt8, cshaderInt8_allocs = (C.VkBool32)(x.ShaderInt8), cgoAllocsUnknown
+ allocsc9d315b6.Borrow(cshaderInt8_allocs)
+
+ x.refc9d315b6 = refc9d315b6
+ x.allocsc9d315b6 = allocsc9d315b6
+ return refc9d315b6, allocsc9d315b6
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceShaderFloat16Int8Features) PassValue() (C.VkPhysicalDeviceShaderFloat16Int8Features, *cgoAllocMap) {
+ if x.refc9d315b6 != nil {
+ return *x.refc9d315b6, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceShaderFloat16Int8Features) Deref() {
+ if x.refc9d315b6 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refc9d315b6.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc9d315b6.pNext))
+ x.ShaderFloat16 = (Bool32)(x.refc9d315b6.shaderFloat16)
+ x.ShaderInt8 = (Bool32)(x.refc9d315b6.shaderInt8)
+}
+
+// allocPhysicalDeviceFloatControlsPropertiesMemory allocates memory for type C.VkPhysicalDeviceFloatControlsProperties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceFloatControlsPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceFloatControlsPropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceFloatControlsPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceFloatControlsProperties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceFloatControlsProperties) Ref() *C.VkPhysicalDeviceFloatControlsProperties {
+ if x == nil {
+ return nil
+ }
+ return x.ref92190a8a
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceFloatControlsProperties) Free() {
+ if x != nil && x.allocs92190a8a != nil {
+ x.allocs92190a8a.(*cgoAllocMap).Free()
+ x.ref92190a8a = nil
+ }
+}
+
+// NewPhysicalDeviceFloatControlsPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceFloatControlsPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceFloatControlsProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceFloatControlsProperties)
+ obj.ref92190a8a = (*C.VkPhysicalDeviceFloatControlsProperties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceFloatControlsProperties) PassRef() (*C.VkPhysicalDeviceFloatControlsProperties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref92190a8a != nil {
+ return x.ref92190a8a, nil
+ }
+ mem92190a8a := allocPhysicalDeviceFloatControlsPropertiesMemory(1)
+ ref92190a8a := (*C.VkPhysicalDeviceFloatControlsProperties)(mem92190a8a)
+ allocs92190a8a := new(cgoAllocMap)
+ allocs92190a8a.Add(mem92190a8a)
+
+ var csType_allocs *cgoAllocMap
+ ref92190a8a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs92190a8a.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref92190a8a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs92190a8a.Borrow(cpNext_allocs)
+
+ var cdenormBehaviorIndependence_allocs *cgoAllocMap
+ ref92190a8a.denormBehaviorIndependence, cdenormBehaviorIndependence_allocs = (C.VkShaderFloatControlsIndependence)(x.DenormBehaviorIndependence), cgoAllocsUnknown
+ allocs92190a8a.Borrow(cdenormBehaviorIndependence_allocs)
+
+ var croundingModeIndependence_allocs *cgoAllocMap
+ ref92190a8a.roundingModeIndependence, croundingModeIndependence_allocs = (C.VkShaderFloatControlsIndependence)(x.RoundingModeIndependence), cgoAllocsUnknown
+ allocs92190a8a.Borrow(croundingModeIndependence_allocs)
+
+ var cshaderSignedZeroInfNanPreserveFloat16_allocs *cgoAllocMap
+ ref92190a8a.shaderSignedZeroInfNanPreserveFloat16, cshaderSignedZeroInfNanPreserveFloat16_allocs = (C.VkBool32)(x.ShaderSignedZeroInfNanPreserveFloat16), cgoAllocsUnknown
+ allocs92190a8a.Borrow(cshaderSignedZeroInfNanPreserveFloat16_allocs)
+
+ var cshaderSignedZeroInfNanPreserveFloat32_allocs *cgoAllocMap
+ ref92190a8a.shaderSignedZeroInfNanPreserveFloat32, cshaderSignedZeroInfNanPreserveFloat32_allocs = (C.VkBool32)(x.ShaderSignedZeroInfNanPreserveFloat32), cgoAllocsUnknown
+ allocs92190a8a.Borrow(cshaderSignedZeroInfNanPreserveFloat32_allocs)
+
+ var cshaderSignedZeroInfNanPreserveFloat64_allocs *cgoAllocMap
+ ref92190a8a.shaderSignedZeroInfNanPreserveFloat64, cshaderSignedZeroInfNanPreserveFloat64_allocs = (C.VkBool32)(x.ShaderSignedZeroInfNanPreserveFloat64), cgoAllocsUnknown
+ allocs92190a8a.Borrow(cshaderSignedZeroInfNanPreserveFloat64_allocs)
+
+ var cshaderDenormPreserveFloat16_allocs *cgoAllocMap
+ ref92190a8a.shaderDenormPreserveFloat16, cshaderDenormPreserveFloat16_allocs = (C.VkBool32)(x.ShaderDenormPreserveFloat16), cgoAllocsUnknown
+ allocs92190a8a.Borrow(cshaderDenormPreserveFloat16_allocs)
+
+ var cshaderDenormPreserveFloat32_allocs *cgoAllocMap
+ ref92190a8a.shaderDenormPreserveFloat32, cshaderDenormPreserveFloat32_allocs = (C.VkBool32)(x.ShaderDenormPreserveFloat32), cgoAllocsUnknown
+ allocs92190a8a.Borrow(cshaderDenormPreserveFloat32_allocs)
+
+ var cshaderDenormPreserveFloat64_allocs *cgoAllocMap
+ ref92190a8a.shaderDenormPreserveFloat64, cshaderDenormPreserveFloat64_allocs = (C.VkBool32)(x.ShaderDenormPreserveFloat64), cgoAllocsUnknown
+ allocs92190a8a.Borrow(cshaderDenormPreserveFloat64_allocs)
+
+ var cshaderDenormFlushToZeroFloat16_allocs *cgoAllocMap
+ ref92190a8a.shaderDenormFlushToZeroFloat16, cshaderDenormFlushToZeroFloat16_allocs = (C.VkBool32)(x.ShaderDenormFlushToZeroFloat16), cgoAllocsUnknown
+ allocs92190a8a.Borrow(cshaderDenormFlushToZeroFloat16_allocs)
+
+ var cshaderDenormFlushToZeroFloat32_allocs *cgoAllocMap
+ ref92190a8a.shaderDenormFlushToZeroFloat32, cshaderDenormFlushToZeroFloat32_allocs = (C.VkBool32)(x.ShaderDenormFlushToZeroFloat32), cgoAllocsUnknown
+ allocs92190a8a.Borrow(cshaderDenormFlushToZeroFloat32_allocs)
+
+ var cshaderDenormFlushToZeroFloat64_allocs *cgoAllocMap
+ ref92190a8a.shaderDenormFlushToZeroFloat64, cshaderDenormFlushToZeroFloat64_allocs = (C.VkBool32)(x.ShaderDenormFlushToZeroFloat64), cgoAllocsUnknown
+ allocs92190a8a.Borrow(cshaderDenormFlushToZeroFloat64_allocs)
+
+ var cshaderRoundingModeRTEFloat16_allocs *cgoAllocMap
+ ref92190a8a.shaderRoundingModeRTEFloat16, cshaderRoundingModeRTEFloat16_allocs = (C.VkBool32)(x.ShaderRoundingModeRTEFloat16), cgoAllocsUnknown
+ allocs92190a8a.Borrow(cshaderRoundingModeRTEFloat16_allocs)
+
+ var cshaderRoundingModeRTEFloat32_allocs *cgoAllocMap
+ ref92190a8a.shaderRoundingModeRTEFloat32, cshaderRoundingModeRTEFloat32_allocs = (C.VkBool32)(x.ShaderRoundingModeRTEFloat32), cgoAllocsUnknown
+ allocs92190a8a.Borrow(cshaderRoundingModeRTEFloat32_allocs)
+
+ var cshaderRoundingModeRTEFloat64_allocs *cgoAllocMap
+ ref92190a8a.shaderRoundingModeRTEFloat64, cshaderRoundingModeRTEFloat64_allocs = (C.VkBool32)(x.ShaderRoundingModeRTEFloat64), cgoAllocsUnknown
+ allocs92190a8a.Borrow(cshaderRoundingModeRTEFloat64_allocs)
+
+ var cshaderRoundingModeRTZFloat16_allocs *cgoAllocMap
+ ref92190a8a.shaderRoundingModeRTZFloat16, cshaderRoundingModeRTZFloat16_allocs = (C.VkBool32)(x.ShaderRoundingModeRTZFloat16), cgoAllocsUnknown
+ allocs92190a8a.Borrow(cshaderRoundingModeRTZFloat16_allocs)
+
+ var cshaderRoundingModeRTZFloat32_allocs *cgoAllocMap
+ ref92190a8a.shaderRoundingModeRTZFloat32, cshaderRoundingModeRTZFloat32_allocs = (C.VkBool32)(x.ShaderRoundingModeRTZFloat32), cgoAllocsUnknown
+ allocs92190a8a.Borrow(cshaderRoundingModeRTZFloat32_allocs)
+
+ var cshaderRoundingModeRTZFloat64_allocs *cgoAllocMap
+ ref92190a8a.shaderRoundingModeRTZFloat64, cshaderRoundingModeRTZFloat64_allocs = (C.VkBool32)(x.ShaderRoundingModeRTZFloat64), cgoAllocsUnknown
+ allocs92190a8a.Borrow(cshaderRoundingModeRTZFloat64_allocs)
+
+ x.ref92190a8a = ref92190a8a
+ x.allocs92190a8a = allocs92190a8a
+ return ref92190a8a, allocs92190a8a
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceFloatControlsProperties) PassValue() (C.VkPhysicalDeviceFloatControlsProperties, *cgoAllocMap) {
+ if x.ref92190a8a != nil {
+ return *x.ref92190a8a, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceFloatControlsProperties) Deref() {
+ if x.ref92190a8a == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref92190a8a.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref92190a8a.pNext))
+ x.DenormBehaviorIndependence = (ShaderFloatControlsIndependence)(x.ref92190a8a.denormBehaviorIndependence)
+ x.RoundingModeIndependence = (ShaderFloatControlsIndependence)(x.ref92190a8a.roundingModeIndependence)
+ x.ShaderSignedZeroInfNanPreserveFloat16 = (Bool32)(x.ref92190a8a.shaderSignedZeroInfNanPreserveFloat16)
+ x.ShaderSignedZeroInfNanPreserveFloat32 = (Bool32)(x.ref92190a8a.shaderSignedZeroInfNanPreserveFloat32)
+ x.ShaderSignedZeroInfNanPreserveFloat64 = (Bool32)(x.ref92190a8a.shaderSignedZeroInfNanPreserveFloat64)
+ x.ShaderDenormPreserveFloat16 = (Bool32)(x.ref92190a8a.shaderDenormPreserveFloat16)
+ x.ShaderDenormPreserveFloat32 = (Bool32)(x.ref92190a8a.shaderDenormPreserveFloat32)
+ x.ShaderDenormPreserveFloat64 = (Bool32)(x.ref92190a8a.shaderDenormPreserveFloat64)
+ x.ShaderDenormFlushToZeroFloat16 = (Bool32)(x.ref92190a8a.shaderDenormFlushToZeroFloat16)
+ x.ShaderDenormFlushToZeroFloat32 = (Bool32)(x.ref92190a8a.shaderDenormFlushToZeroFloat32)
+ x.ShaderDenormFlushToZeroFloat64 = (Bool32)(x.ref92190a8a.shaderDenormFlushToZeroFloat64)
+ x.ShaderRoundingModeRTEFloat16 = (Bool32)(x.ref92190a8a.shaderRoundingModeRTEFloat16)
+ x.ShaderRoundingModeRTEFloat32 = (Bool32)(x.ref92190a8a.shaderRoundingModeRTEFloat32)
+ x.ShaderRoundingModeRTEFloat64 = (Bool32)(x.ref92190a8a.shaderRoundingModeRTEFloat64)
+ x.ShaderRoundingModeRTZFloat16 = (Bool32)(x.ref92190a8a.shaderRoundingModeRTZFloat16)
+ x.ShaderRoundingModeRTZFloat32 = (Bool32)(x.ref92190a8a.shaderRoundingModeRTZFloat32)
+ x.ShaderRoundingModeRTZFloat64 = (Bool32)(x.ref92190a8a.shaderRoundingModeRTZFloat64)
+}
+
+// allocDescriptorSetLayoutBindingFlagsCreateInfoMemory allocates memory for type C.VkDescriptorSetLayoutBindingFlagsCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocDescriptorSetLayoutBindingFlagsCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorSetLayoutBindingFlagsCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfDescriptorSetLayoutBindingFlagsCreateInfoValue = unsafe.Sizeof([1]C.VkDescriptorSetLayoutBindingFlagsCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *DescriptorSetLayoutBindingFlagsCreateInfo) Ref() *C.VkDescriptorSetLayoutBindingFlagsCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref84838c4d
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *DescriptorSetLayoutBindingFlagsCreateInfo) Free() {
+ if x != nil && x.allocs84838c4d != nil {
+ x.allocs84838c4d.(*cgoAllocMap).Free()
+ x.ref84838c4d = nil
+ }
+}
+
+// NewDescriptorSetLayoutBindingFlagsCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewDescriptorSetLayoutBindingFlagsCreateInfoRef(ref unsafe.Pointer) *DescriptorSetLayoutBindingFlagsCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(DescriptorSetLayoutBindingFlagsCreateInfo)
+ obj.ref84838c4d = (*C.VkDescriptorSetLayoutBindingFlagsCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DescriptorSetLayoutBindingFlagsCreateInfo) PassRef() (*C.VkDescriptorSetLayoutBindingFlagsCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref84838c4d != nil {
+ return x.ref84838c4d, nil
+ }
+ mem84838c4d := allocDescriptorSetLayoutBindingFlagsCreateInfoMemory(1)
+ ref84838c4d := (*C.VkDescriptorSetLayoutBindingFlagsCreateInfo)(mem84838c4d)
+ allocs84838c4d := new(cgoAllocMap)
+ allocs84838c4d.Add(mem84838c4d)
+
+ var csType_allocs *cgoAllocMap
+ ref84838c4d.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs84838c4d.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref84838c4d.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs84838c4d.Borrow(cpNext_allocs)
+
+ var cbindingCount_allocs *cgoAllocMap
+ ref84838c4d.bindingCount, cbindingCount_allocs = (C.uint32_t)(x.BindingCount), cgoAllocsUnknown
+ allocs84838c4d.Borrow(cbindingCount_allocs)
+
+ var cpBindingFlags_allocs *cgoAllocMap
+ ref84838c4d.pBindingFlags, cpBindingFlags_allocs = (*C.VkDescriptorBindingFlags)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PBindingFlags)).Data)), cgoAllocsUnknown
+ allocs84838c4d.Borrow(cpBindingFlags_allocs)
+
+ x.ref84838c4d = ref84838c4d
+ x.allocs84838c4d = allocs84838c4d
+ return ref84838c4d, allocs84838c4d
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DescriptorSetLayoutBindingFlagsCreateInfo) PassValue() (C.VkDescriptorSetLayoutBindingFlagsCreateInfo, *cgoAllocMap) {
+ if x.ref84838c4d != nil {
+ return *x.ref84838c4d, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *DescriptorSetLayoutBindingFlagsCreateInfo) Deref() {
+ if x.ref84838c4d == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref84838c4d.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref84838c4d.pNext))
+ x.BindingCount = (uint32)(x.ref84838c4d.bindingCount)
+ hxf03a9a7 := (*sliceHeader)(unsafe.Pointer(&x.PBindingFlags))
+ hxf03a9a7.Data = unsafe.Pointer(x.ref84838c4d.pBindingFlags)
+ hxf03a9a7.Cap = 0x7fffffff
+ // hxf03a9a7.Len = ?
+
+}
+
+// allocPhysicalDeviceDescriptorIndexingFeaturesMemory allocates memory for type C.VkPhysicalDeviceDescriptorIndexingFeatures in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceDescriptorIndexingFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceDescriptorIndexingFeaturesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceDescriptorIndexingFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceDescriptorIndexingFeatures{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceDescriptorIndexingFeatures) Ref() *C.VkPhysicalDeviceDescriptorIndexingFeatures {
+ if x == nil {
+ return nil
+ }
+ return x.reff599863
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceDescriptorIndexingFeatures) Free() {
+ if x != nil && x.allocsf599863 != nil {
+ x.allocsf599863.(*cgoAllocMap).Free()
+ x.reff599863 = nil
+ }
+}
+
+// NewPhysicalDeviceDescriptorIndexingFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceDescriptorIndexingFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceDescriptorIndexingFeatures {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceDescriptorIndexingFeatures)
+ obj.reff599863 = (*C.VkPhysicalDeviceDescriptorIndexingFeatures)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceDescriptorIndexingFeatures) PassRef() (*C.VkPhysicalDeviceDescriptorIndexingFeatures, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.reff599863 != nil {
+ return x.reff599863, nil
+ }
+ memf599863 := allocPhysicalDeviceDescriptorIndexingFeaturesMemory(1)
+ reff599863 := (*C.VkPhysicalDeviceDescriptorIndexingFeatures)(memf599863)
+ allocsf599863 := new(cgoAllocMap)
+ allocsf599863.Add(memf599863)
+
+ var csType_allocs *cgoAllocMap
+ reff599863.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsf599863.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ reff599863.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsf599863.Borrow(cpNext_allocs)
+
+ var cshaderInputAttachmentArrayDynamicIndexing_allocs *cgoAllocMap
+ reff599863.shaderInputAttachmentArrayDynamicIndexing, cshaderInputAttachmentArrayDynamicIndexing_allocs = (C.VkBool32)(x.ShaderInputAttachmentArrayDynamicIndexing), cgoAllocsUnknown
+ allocsf599863.Borrow(cshaderInputAttachmentArrayDynamicIndexing_allocs)
+
+ var cshaderUniformTexelBufferArrayDynamicIndexing_allocs *cgoAllocMap
+ reff599863.shaderUniformTexelBufferArrayDynamicIndexing, cshaderUniformTexelBufferArrayDynamicIndexing_allocs = (C.VkBool32)(x.ShaderUniformTexelBufferArrayDynamicIndexing), cgoAllocsUnknown
+ allocsf599863.Borrow(cshaderUniformTexelBufferArrayDynamicIndexing_allocs)
+
+ var cshaderStorageTexelBufferArrayDynamicIndexing_allocs *cgoAllocMap
+ reff599863.shaderStorageTexelBufferArrayDynamicIndexing, cshaderStorageTexelBufferArrayDynamicIndexing_allocs = (C.VkBool32)(x.ShaderStorageTexelBufferArrayDynamicIndexing), cgoAllocsUnknown
+ allocsf599863.Borrow(cshaderStorageTexelBufferArrayDynamicIndexing_allocs)
+
+ var cshaderUniformBufferArrayNonUniformIndexing_allocs *cgoAllocMap
+ reff599863.shaderUniformBufferArrayNonUniformIndexing, cshaderUniformBufferArrayNonUniformIndexing_allocs = (C.VkBool32)(x.ShaderUniformBufferArrayNonUniformIndexing), cgoAllocsUnknown
+ allocsf599863.Borrow(cshaderUniformBufferArrayNonUniformIndexing_allocs)
+
+ var cshaderSampledImageArrayNonUniformIndexing_allocs *cgoAllocMap
+ reff599863.shaderSampledImageArrayNonUniformIndexing, cshaderSampledImageArrayNonUniformIndexing_allocs = (C.VkBool32)(x.ShaderSampledImageArrayNonUniformIndexing), cgoAllocsUnknown
+ allocsf599863.Borrow(cshaderSampledImageArrayNonUniformIndexing_allocs)
+
+ var cshaderStorageBufferArrayNonUniformIndexing_allocs *cgoAllocMap
+ reff599863.shaderStorageBufferArrayNonUniformIndexing, cshaderStorageBufferArrayNonUniformIndexing_allocs = (C.VkBool32)(x.ShaderStorageBufferArrayNonUniformIndexing), cgoAllocsUnknown
+ allocsf599863.Borrow(cshaderStorageBufferArrayNonUniformIndexing_allocs)
+
+ var cshaderStorageImageArrayNonUniformIndexing_allocs *cgoAllocMap
+ reff599863.shaderStorageImageArrayNonUniformIndexing, cshaderStorageImageArrayNonUniformIndexing_allocs = (C.VkBool32)(x.ShaderStorageImageArrayNonUniformIndexing), cgoAllocsUnknown
+ allocsf599863.Borrow(cshaderStorageImageArrayNonUniformIndexing_allocs)
+
+ var cshaderInputAttachmentArrayNonUniformIndexing_allocs *cgoAllocMap
+ reff599863.shaderInputAttachmentArrayNonUniformIndexing, cshaderInputAttachmentArrayNonUniformIndexing_allocs = (C.VkBool32)(x.ShaderInputAttachmentArrayNonUniformIndexing), cgoAllocsUnknown
+ allocsf599863.Borrow(cshaderInputAttachmentArrayNonUniformIndexing_allocs)
+
+ var cshaderUniformTexelBufferArrayNonUniformIndexing_allocs *cgoAllocMap
+ reff599863.shaderUniformTexelBufferArrayNonUniformIndexing, cshaderUniformTexelBufferArrayNonUniformIndexing_allocs = (C.VkBool32)(x.ShaderUniformTexelBufferArrayNonUniformIndexing), cgoAllocsUnknown
+ allocsf599863.Borrow(cshaderUniformTexelBufferArrayNonUniformIndexing_allocs)
+
+ var cshaderStorageTexelBufferArrayNonUniformIndexing_allocs *cgoAllocMap
+ reff599863.shaderStorageTexelBufferArrayNonUniformIndexing, cshaderStorageTexelBufferArrayNonUniformIndexing_allocs = (C.VkBool32)(x.ShaderStorageTexelBufferArrayNonUniformIndexing), cgoAllocsUnknown
+ allocsf599863.Borrow(cshaderStorageTexelBufferArrayNonUniformIndexing_allocs)
+
+ var cdescriptorBindingUniformBufferUpdateAfterBind_allocs *cgoAllocMap
+ reff599863.descriptorBindingUniformBufferUpdateAfterBind, cdescriptorBindingUniformBufferUpdateAfterBind_allocs = (C.VkBool32)(x.DescriptorBindingUniformBufferUpdateAfterBind), cgoAllocsUnknown
+ allocsf599863.Borrow(cdescriptorBindingUniformBufferUpdateAfterBind_allocs)
+
+ var cdescriptorBindingSampledImageUpdateAfterBind_allocs *cgoAllocMap
+ reff599863.descriptorBindingSampledImageUpdateAfterBind, cdescriptorBindingSampledImageUpdateAfterBind_allocs = (C.VkBool32)(x.DescriptorBindingSampledImageUpdateAfterBind), cgoAllocsUnknown
+ allocsf599863.Borrow(cdescriptorBindingSampledImageUpdateAfterBind_allocs)
+
+ var cdescriptorBindingStorageImageUpdateAfterBind_allocs *cgoAllocMap
+ reff599863.descriptorBindingStorageImageUpdateAfterBind, cdescriptorBindingStorageImageUpdateAfterBind_allocs = (C.VkBool32)(x.DescriptorBindingStorageImageUpdateAfterBind), cgoAllocsUnknown
+ allocsf599863.Borrow(cdescriptorBindingStorageImageUpdateAfterBind_allocs)
+
+ var cdescriptorBindingStorageBufferUpdateAfterBind_allocs *cgoAllocMap
+ reff599863.descriptorBindingStorageBufferUpdateAfterBind, cdescriptorBindingStorageBufferUpdateAfterBind_allocs = (C.VkBool32)(x.DescriptorBindingStorageBufferUpdateAfterBind), cgoAllocsUnknown
+ allocsf599863.Borrow(cdescriptorBindingStorageBufferUpdateAfterBind_allocs)
+
+ var cdescriptorBindingUniformTexelBufferUpdateAfterBind_allocs *cgoAllocMap
+ reff599863.descriptorBindingUniformTexelBufferUpdateAfterBind, cdescriptorBindingUniformTexelBufferUpdateAfterBind_allocs = (C.VkBool32)(x.DescriptorBindingUniformTexelBufferUpdateAfterBind), cgoAllocsUnknown
+ allocsf599863.Borrow(cdescriptorBindingUniformTexelBufferUpdateAfterBind_allocs)
+
+ var cdescriptorBindingStorageTexelBufferUpdateAfterBind_allocs *cgoAllocMap
+ reff599863.descriptorBindingStorageTexelBufferUpdateAfterBind, cdescriptorBindingStorageTexelBufferUpdateAfterBind_allocs = (C.VkBool32)(x.DescriptorBindingStorageTexelBufferUpdateAfterBind), cgoAllocsUnknown
+ allocsf599863.Borrow(cdescriptorBindingStorageTexelBufferUpdateAfterBind_allocs)
+
+ var cdescriptorBindingUpdateUnusedWhilePending_allocs *cgoAllocMap
+ reff599863.descriptorBindingUpdateUnusedWhilePending, cdescriptorBindingUpdateUnusedWhilePending_allocs = (C.VkBool32)(x.DescriptorBindingUpdateUnusedWhilePending), cgoAllocsUnknown
+ allocsf599863.Borrow(cdescriptorBindingUpdateUnusedWhilePending_allocs)
+
+ var cdescriptorBindingPartiallyBound_allocs *cgoAllocMap
+ reff599863.descriptorBindingPartiallyBound, cdescriptorBindingPartiallyBound_allocs = (C.VkBool32)(x.DescriptorBindingPartiallyBound), cgoAllocsUnknown
+ allocsf599863.Borrow(cdescriptorBindingPartiallyBound_allocs)
+
+ var cdescriptorBindingVariableDescriptorCount_allocs *cgoAllocMap
+ reff599863.descriptorBindingVariableDescriptorCount, cdescriptorBindingVariableDescriptorCount_allocs = (C.VkBool32)(x.DescriptorBindingVariableDescriptorCount), cgoAllocsUnknown
+ allocsf599863.Borrow(cdescriptorBindingVariableDescriptorCount_allocs)
+
+ var cruntimeDescriptorArray_allocs *cgoAllocMap
+ reff599863.runtimeDescriptorArray, cruntimeDescriptorArray_allocs = (C.VkBool32)(x.RuntimeDescriptorArray), cgoAllocsUnknown
+ allocsf599863.Borrow(cruntimeDescriptorArray_allocs)
+
+ x.reff599863 = reff599863
+ x.allocsf599863 = allocsf599863
+ return reff599863, allocsf599863
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceDescriptorIndexingFeatures) PassValue() (C.VkPhysicalDeviceDescriptorIndexingFeatures, *cgoAllocMap) {
+ if x.reff599863 != nil {
+ return *x.reff599863, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceDescriptorIndexingFeatures) Deref() {
+ if x.reff599863 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.reff599863.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff599863.pNext))
+ x.ShaderInputAttachmentArrayDynamicIndexing = (Bool32)(x.reff599863.shaderInputAttachmentArrayDynamicIndexing)
+ x.ShaderUniformTexelBufferArrayDynamicIndexing = (Bool32)(x.reff599863.shaderUniformTexelBufferArrayDynamicIndexing)
+ x.ShaderStorageTexelBufferArrayDynamicIndexing = (Bool32)(x.reff599863.shaderStorageTexelBufferArrayDynamicIndexing)
+ x.ShaderUniformBufferArrayNonUniformIndexing = (Bool32)(x.reff599863.shaderUniformBufferArrayNonUniformIndexing)
+ x.ShaderSampledImageArrayNonUniformIndexing = (Bool32)(x.reff599863.shaderSampledImageArrayNonUniformIndexing)
+ x.ShaderStorageBufferArrayNonUniformIndexing = (Bool32)(x.reff599863.shaderStorageBufferArrayNonUniformIndexing)
+ x.ShaderStorageImageArrayNonUniformIndexing = (Bool32)(x.reff599863.shaderStorageImageArrayNonUniformIndexing)
+ x.ShaderInputAttachmentArrayNonUniformIndexing = (Bool32)(x.reff599863.shaderInputAttachmentArrayNonUniformIndexing)
+ x.ShaderUniformTexelBufferArrayNonUniformIndexing = (Bool32)(x.reff599863.shaderUniformTexelBufferArrayNonUniformIndexing)
+ x.ShaderStorageTexelBufferArrayNonUniformIndexing = (Bool32)(x.reff599863.shaderStorageTexelBufferArrayNonUniformIndexing)
+ x.DescriptorBindingUniformBufferUpdateAfterBind = (Bool32)(x.reff599863.descriptorBindingUniformBufferUpdateAfterBind)
+ x.DescriptorBindingSampledImageUpdateAfterBind = (Bool32)(x.reff599863.descriptorBindingSampledImageUpdateAfterBind)
+ x.DescriptorBindingStorageImageUpdateAfterBind = (Bool32)(x.reff599863.descriptorBindingStorageImageUpdateAfterBind)
+ x.DescriptorBindingStorageBufferUpdateAfterBind = (Bool32)(x.reff599863.descriptorBindingStorageBufferUpdateAfterBind)
+ x.DescriptorBindingUniformTexelBufferUpdateAfterBind = (Bool32)(x.reff599863.descriptorBindingUniformTexelBufferUpdateAfterBind)
+ x.DescriptorBindingStorageTexelBufferUpdateAfterBind = (Bool32)(x.reff599863.descriptorBindingStorageTexelBufferUpdateAfterBind)
+ x.DescriptorBindingUpdateUnusedWhilePending = (Bool32)(x.reff599863.descriptorBindingUpdateUnusedWhilePending)
+ x.DescriptorBindingPartiallyBound = (Bool32)(x.reff599863.descriptorBindingPartiallyBound)
+ x.DescriptorBindingVariableDescriptorCount = (Bool32)(x.reff599863.descriptorBindingVariableDescriptorCount)
+ x.RuntimeDescriptorArray = (Bool32)(x.reff599863.runtimeDescriptorArray)
+}
+
+// allocPhysicalDeviceDescriptorIndexingPropertiesMemory allocates memory for type C.VkPhysicalDeviceDescriptorIndexingProperties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceDescriptorIndexingPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceDescriptorIndexingPropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceDescriptorIndexingPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceDescriptorIndexingProperties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceDescriptorIndexingProperties) Ref() *C.VkPhysicalDeviceDescriptorIndexingProperties {
+ if x == nil {
+ return nil
+ }
+ return x.refd94d7d21
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceDescriptorIndexingProperties) Free() {
+ if x != nil && x.allocsd94d7d21 != nil {
+ x.allocsd94d7d21.(*cgoAllocMap).Free()
+ x.refd94d7d21 = nil
+ }
+}
+
+// NewPhysicalDeviceDescriptorIndexingPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceDescriptorIndexingPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceDescriptorIndexingProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceDescriptorIndexingProperties)
+ obj.refd94d7d21 = (*C.VkPhysicalDeviceDescriptorIndexingProperties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceDescriptorIndexingProperties) PassRef() (*C.VkPhysicalDeviceDescriptorIndexingProperties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refd94d7d21 != nil {
+ return x.refd94d7d21, nil
+ }
+ memd94d7d21 := allocPhysicalDeviceDescriptorIndexingPropertiesMemory(1)
+ refd94d7d21 := (*C.VkPhysicalDeviceDescriptorIndexingProperties)(memd94d7d21)
+ allocsd94d7d21 := new(cgoAllocMap)
+ allocsd94d7d21.Add(memd94d7d21)
+
+ var csType_allocs *cgoAllocMap
+ refd94d7d21.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd94d7d21.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refd94d7d21.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsd94d7d21.Borrow(cpNext_allocs)
+
+ var cmaxUpdateAfterBindDescriptorsInAllPools_allocs *cgoAllocMap
+ refd94d7d21.maxUpdateAfterBindDescriptorsInAllPools, cmaxUpdateAfterBindDescriptorsInAllPools_allocs = (C.uint32_t)(x.MaxUpdateAfterBindDescriptorsInAllPools), cgoAllocsUnknown
+ allocsd94d7d21.Borrow(cmaxUpdateAfterBindDescriptorsInAllPools_allocs)
+
+ var cshaderUniformBufferArrayNonUniformIndexingNative_allocs *cgoAllocMap
+ refd94d7d21.shaderUniformBufferArrayNonUniformIndexingNative, cshaderUniformBufferArrayNonUniformIndexingNative_allocs = (C.VkBool32)(x.ShaderUniformBufferArrayNonUniformIndexingNative), cgoAllocsUnknown
+ allocsd94d7d21.Borrow(cshaderUniformBufferArrayNonUniformIndexingNative_allocs)
+
+ var cshaderSampledImageArrayNonUniformIndexingNative_allocs *cgoAllocMap
+ refd94d7d21.shaderSampledImageArrayNonUniformIndexingNative, cshaderSampledImageArrayNonUniformIndexingNative_allocs = (C.VkBool32)(x.ShaderSampledImageArrayNonUniformIndexingNative), cgoAllocsUnknown
+ allocsd94d7d21.Borrow(cshaderSampledImageArrayNonUniformIndexingNative_allocs)
+
+ var cshaderStorageBufferArrayNonUniformIndexingNative_allocs *cgoAllocMap
+ refd94d7d21.shaderStorageBufferArrayNonUniformIndexingNative, cshaderStorageBufferArrayNonUniformIndexingNative_allocs = (C.VkBool32)(x.ShaderStorageBufferArrayNonUniformIndexingNative), cgoAllocsUnknown
+ allocsd94d7d21.Borrow(cshaderStorageBufferArrayNonUniformIndexingNative_allocs)
+
+ var cshaderStorageImageArrayNonUniformIndexingNative_allocs *cgoAllocMap
+ refd94d7d21.shaderStorageImageArrayNonUniformIndexingNative, cshaderStorageImageArrayNonUniformIndexingNative_allocs = (C.VkBool32)(x.ShaderStorageImageArrayNonUniformIndexingNative), cgoAllocsUnknown
+ allocsd94d7d21.Borrow(cshaderStorageImageArrayNonUniformIndexingNative_allocs)
+
+ var cshaderInputAttachmentArrayNonUniformIndexingNative_allocs *cgoAllocMap
+ refd94d7d21.shaderInputAttachmentArrayNonUniformIndexingNative, cshaderInputAttachmentArrayNonUniformIndexingNative_allocs = (C.VkBool32)(x.ShaderInputAttachmentArrayNonUniformIndexingNative), cgoAllocsUnknown
+ allocsd94d7d21.Borrow(cshaderInputAttachmentArrayNonUniformIndexingNative_allocs)
+
+ var crobustBufferAccessUpdateAfterBind_allocs *cgoAllocMap
+ refd94d7d21.robustBufferAccessUpdateAfterBind, crobustBufferAccessUpdateAfterBind_allocs = (C.VkBool32)(x.RobustBufferAccessUpdateAfterBind), cgoAllocsUnknown
+ allocsd94d7d21.Borrow(crobustBufferAccessUpdateAfterBind_allocs)
+
+ var cquadDivergentImplicitLod_allocs *cgoAllocMap
+ refd94d7d21.quadDivergentImplicitLod, cquadDivergentImplicitLod_allocs = (C.VkBool32)(x.QuadDivergentImplicitLod), cgoAllocsUnknown
+ allocsd94d7d21.Borrow(cquadDivergentImplicitLod_allocs)
+
+ var cmaxPerStageDescriptorUpdateAfterBindSamplers_allocs *cgoAllocMap
+ refd94d7d21.maxPerStageDescriptorUpdateAfterBindSamplers, cmaxPerStageDescriptorUpdateAfterBindSamplers_allocs = (C.uint32_t)(x.MaxPerStageDescriptorUpdateAfterBindSamplers), cgoAllocsUnknown
+ allocsd94d7d21.Borrow(cmaxPerStageDescriptorUpdateAfterBindSamplers_allocs)
+
+ var cmaxPerStageDescriptorUpdateAfterBindUniformBuffers_allocs *cgoAllocMap
+ refd94d7d21.maxPerStageDescriptorUpdateAfterBindUniformBuffers, cmaxPerStageDescriptorUpdateAfterBindUniformBuffers_allocs = (C.uint32_t)(x.MaxPerStageDescriptorUpdateAfterBindUniformBuffers), cgoAllocsUnknown
+ allocsd94d7d21.Borrow(cmaxPerStageDescriptorUpdateAfterBindUniformBuffers_allocs)
+
+ var cmaxPerStageDescriptorUpdateAfterBindStorageBuffers_allocs *cgoAllocMap
+ refd94d7d21.maxPerStageDescriptorUpdateAfterBindStorageBuffers, cmaxPerStageDescriptorUpdateAfterBindStorageBuffers_allocs = (C.uint32_t)(x.MaxPerStageDescriptorUpdateAfterBindStorageBuffers), cgoAllocsUnknown
+ allocsd94d7d21.Borrow(cmaxPerStageDescriptorUpdateAfterBindStorageBuffers_allocs)
+
+ var cmaxPerStageDescriptorUpdateAfterBindSampledImages_allocs *cgoAllocMap
+ refd94d7d21.maxPerStageDescriptorUpdateAfterBindSampledImages, cmaxPerStageDescriptorUpdateAfterBindSampledImages_allocs = (C.uint32_t)(x.MaxPerStageDescriptorUpdateAfterBindSampledImages), cgoAllocsUnknown
+ allocsd94d7d21.Borrow(cmaxPerStageDescriptorUpdateAfterBindSampledImages_allocs)
+
+ var cmaxPerStageDescriptorUpdateAfterBindStorageImages_allocs *cgoAllocMap
+ refd94d7d21.maxPerStageDescriptorUpdateAfterBindStorageImages, cmaxPerStageDescriptorUpdateAfterBindStorageImages_allocs = (C.uint32_t)(x.MaxPerStageDescriptorUpdateAfterBindStorageImages), cgoAllocsUnknown
+ allocsd94d7d21.Borrow(cmaxPerStageDescriptorUpdateAfterBindStorageImages_allocs)
+
+ var cmaxPerStageDescriptorUpdateAfterBindInputAttachments_allocs *cgoAllocMap
+ refd94d7d21.maxPerStageDescriptorUpdateAfterBindInputAttachments, cmaxPerStageDescriptorUpdateAfterBindInputAttachments_allocs = (C.uint32_t)(x.MaxPerStageDescriptorUpdateAfterBindInputAttachments), cgoAllocsUnknown
+ allocsd94d7d21.Borrow(cmaxPerStageDescriptorUpdateAfterBindInputAttachments_allocs)
+
+ var cmaxPerStageUpdateAfterBindResources_allocs *cgoAllocMap
+ refd94d7d21.maxPerStageUpdateAfterBindResources, cmaxPerStageUpdateAfterBindResources_allocs = (C.uint32_t)(x.MaxPerStageUpdateAfterBindResources), cgoAllocsUnknown
+ allocsd94d7d21.Borrow(cmaxPerStageUpdateAfterBindResources_allocs)
+
+ var cmaxDescriptorSetUpdateAfterBindSamplers_allocs *cgoAllocMap
+ refd94d7d21.maxDescriptorSetUpdateAfterBindSamplers, cmaxDescriptorSetUpdateAfterBindSamplers_allocs = (C.uint32_t)(x.MaxDescriptorSetUpdateAfterBindSamplers), cgoAllocsUnknown
+ allocsd94d7d21.Borrow(cmaxDescriptorSetUpdateAfterBindSamplers_allocs)
+
+ var cmaxDescriptorSetUpdateAfterBindUniformBuffers_allocs *cgoAllocMap
+ refd94d7d21.maxDescriptorSetUpdateAfterBindUniformBuffers, cmaxDescriptorSetUpdateAfterBindUniformBuffers_allocs = (C.uint32_t)(x.MaxDescriptorSetUpdateAfterBindUniformBuffers), cgoAllocsUnknown
+ allocsd94d7d21.Borrow(cmaxDescriptorSetUpdateAfterBindUniformBuffers_allocs)
+
+ var cmaxDescriptorSetUpdateAfterBindUniformBuffersDynamic_allocs *cgoAllocMap
+ refd94d7d21.maxDescriptorSetUpdateAfterBindUniformBuffersDynamic, cmaxDescriptorSetUpdateAfterBindUniformBuffersDynamic_allocs = (C.uint32_t)(x.MaxDescriptorSetUpdateAfterBindUniformBuffersDynamic), cgoAllocsUnknown
+ allocsd94d7d21.Borrow(cmaxDescriptorSetUpdateAfterBindUniformBuffersDynamic_allocs)
+
+ var cmaxDescriptorSetUpdateAfterBindStorageBuffers_allocs *cgoAllocMap
+ refd94d7d21.maxDescriptorSetUpdateAfterBindStorageBuffers, cmaxDescriptorSetUpdateAfterBindStorageBuffers_allocs = (C.uint32_t)(x.MaxDescriptorSetUpdateAfterBindStorageBuffers), cgoAllocsUnknown
+ allocsd94d7d21.Borrow(cmaxDescriptorSetUpdateAfterBindStorageBuffers_allocs)
+
+ var cmaxDescriptorSetUpdateAfterBindStorageBuffersDynamic_allocs *cgoAllocMap
+ refd94d7d21.maxDescriptorSetUpdateAfterBindStorageBuffersDynamic, cmaxDescriptorSetUpdateAfterBindStorageBuffersDynamic_allocs = (C.uint32_t)(x.MaxDescriptorSetUpdateAfterBindStorageBuffersDynamic), cgoAllocsUnknown
+ allocsd94d7d21.Borrow(cmaxDescriptorSetUpdateAfterBindStorageBuffersDynamic_allocs)
+
+ var cmaxDescriptorSetUpdateAfterBindSampledImages_allocs *cgoAllocMap
+ refd94d7d21.maxDescriptorSetUpdateAfterBindSampledImages, cmaxDescriptorSetUpdateAfterBindSampledImages_allocs = (C.uint32_t)(x.MaxDescriptorSetUpdateAfterBindSampledImages), cgoAllocsUnknown
+ allocsd94d7d21.Borrow(cmaxDescriptorSetUpdateAfterBindSampledImages_allocs)
+
+ var cmaxDescriptorSetUpdateAfterBindStorageImages_allocs *cgoAllocMap
+ refd94d7d21.maxDescriptorSetUpdateAfterBindStorageImages, cmaxDescriptorSetUpdateAfterBindStorageImages_allocs = (C.uint32_t)(x.MaxDescriptorSetUpdateAfterBindStorageImages), cgoAllocsUnknown
+ allocsd94d7d21.Borrow(cmaxDescriptorSetUpdateAfterBindStorageImages_allocs)
+
+ var cmaxDescriptorSetUpdateAfterBindInputAttachments_allocs *cgoAllocMap
+ refd94d7d21.maxDescriptorSetUpdateAfterBindInputAttachments, cmaxDescriptorSetUpdateAfterBindInputAttachments_allocs = (C.uint32_t)(x.MaxDescriptorSetUpdateAfterBindInputAttachments), cgoAllocsUnknown
+ allocsd94d7d21.Borrow(cmaxDescriptorSetUpdateAfterBindInputAttachments_allocs)
+
+ x.refd94d7d21 = refd94d7d21
+ x.allocsd94d7d21 = allocsd94d7d21
+ return refd94d7d21, allocsd94d7d21
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceDescriptorIndexingProperties) PassValue() (C.VkPhysicalDeviceDescriptorIndexingProperties, *cgoAllocMap) {
+ if x.refd94d7d21 != nil {
+ return *x.refd94d7d21, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceDescriptorIndexingProperties) Deref() {
+ if x.refd94d7d21 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refd94d7d21.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd94d7d21.pNext))
+ x.MaxUpdateAfterBindDescriptorsInAllPools = (uint32)(x.refd94d7d21.maxUpdateAfterBindDescriptorsInAllPools)
+ x.ShaderUniformBufferArrayNonUniformIndexingNative = (Bool32)(x.refd94d7d21.shaderUniformBufferArrayNonUniformIndexingNative)
+ x.ShaderSampledImageArrayNonUniformIndexingNative = (Bool32)(x.refd94d7d21.shaderSampledImageArrayNonUniformIndexingNative)
+ x.ShaderStorageBufferArrayNonUniformIndexingNative = (Bool32)(x.refd94d7d21.shaderStorageBufferArrayNonUniformIndexingNative)
+ x.ShaderStorageImageArrayNonUniformIndexingNative = (Bool32)(x.refd94d7d21.shaderStorageImageArrayNonUniformIndexingNative)
+ x.ShaderInputAttachmentArrayNonUniformIndexingNative = (Bool32)(x.refd94d7d21.shaderInputAttachmentArrayNonUniformIndexingNative)
+ x.RobustBufferAccessUpdateAfterBind = (Bool32)(x.refd94d7d21.robustBufferAccessUpdateAfterBind)
+ x.QuadDivergentImplicitLod = (Bool32)(x.refd94d7d21.quadDivergentImplicitLod)
+ x.MaxPerStageDescriptorUpdateAfterBindSamplers = (uint32)(x.refd94d7d21.maxPerStageDescriptorUpdateAfterBindSamplers)
+ x.MaxPerStageDescriptorUpdateAfterBindUniformBuffers = (uint32)(x.refd94d7d21.maxPerStageDescriptorUpdateAfterBindUniformBuffers)
+ x.MaxPerStageDescriptorUpdateAfterBindStorageBuffers = (uint32)(x.refd94d7d21.maxPerStageDescriptorUpdateAfterBindStorageBuffers)
+ x.MaxPerStageDescriptorUpdateAfterBindSampledImages = (uint32)(x.refd94d7d21.maxPerStageDescriptorUpdateAfterBindSampledImages)
+ x.MaxPerStageDescriptorUpdateAfterBindStorageImages = (uint32)(x.refd94d7d21.maxPerStageDescriptorUpdateAfterBindStorageImages)
+ x.MaxPerStageDescriptorUpdateAfterBindInputAttachments = (uint32)(x.refd94d7d21.maxPerStageDescriptorUpdateAfterBindInputAttachments)
+ x.MaxPerStageUpdateAfterBindResources = (uint32)(x.refd94d7d21.maxPerStageUpdateAfterBindResources)
+ x.MaxDescriptorSetUpdateAfterBindSamplers = (uint32)(x.refd94d7d21.maxDescriptorSetUpdateAfterBindSamplers)
+ x.MaxDescriptorSetUpdateAfterBindUniformBuffers = (uint32)(x.refd94d7d21.maxDescriptorSetUpdateAfterBindUniformBuffers)
+ x.MaxDescriptorSetUpdateAfterBindUniformBuffersDynamic = (uint32)(x.refd94d7d21.maxDescriptorSetUpdateAfterBindUniformBuffersDynamic)
+ x.MaxDescriptorSetUpdateAfterBindStorageBuffers = (uint32)(x.refd94d7d21.maxDescriptorSetUpdateAfterBindStorageBuffers)
+ x.MaxDescriptorSetUpdateAfterBindStorageBuffersDynamic = (uint32)(x.refd94d7d21.maxDescriptorSetUpdateAfterBindStorageBuffersDynamic)
+ x.MaxDescriptorSetUpdateAfterBindSampledImages = (uint32)(x.refd94d7d21.maxDescriptorSetUpdateAfterBindSampledImages)
+ x.MaxDescriptorSetUpdateAfterBindStorageImages = (uint32)(x.refd94d7d21.maxDescriptorSetUpdateAfterBindStorageImages)
+ x.MaxDescriptorSetUpdateAfterBindInputAttachments = (uint32)(x.refd94d7d21.maxDescriptorSetUpdateAfterBindInputAttachments)
+}
+
+// allocDescriptorSetVariableDescriptorCountAllocateInfoMemory allocates memory for type C.VkDescriptorSetVariableDescriptorCountAllocateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocDescriptorSetVariableDescriptorCountAllocateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorSetVariableDescriptorCountAllocateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfDescriptorSetVariableDescriptorCountAllocateInfoValue = unsafe.Sizeof([1]C.VkDescriptorSetVariableDescriptorCountAllocateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *DescriptorSetVariableDescriptorCountAllocateInfo) Ref() *C.VkDescriptorSetVariableDescriptorCountAllocateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref7969c9a7
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *DescriptorSetVariableDescriptorCountAllocateInfo) Free() {
+ if x != nil && x.allocs7969c9a7 != nil {
+ x.allocs7969c9a7.(*cgoAllocMap).Free()
+ x.ref7969c9a7 = nil
+ }
+}
+
+// NewDescriptorSetVariableDescriptorCountAllocateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewDescriptorSetVariableDescriptorCountAllocateInfoRef(ref unsafe.Pointer) *DescriptorSetVariableDescriptorCountAllocateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(DescriptorSetVariableDescriptorCountAllocateInfo)
+ obj.ref7969c9a7 = (*C.VkDescriptorSetVariableDescriptorCountAllocateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DescriptorSetVariableDescriptorCountAllocateInfo) PassRef() (*C.VkDescriptorSetVariableDescriptorCountAllocateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref7969c9a7 != nil {
+ return x.ref7969c9a7, nil
+ }
+ mem7969c9a7 := allocDescriptorSetVariableDescriptorCountAllocateInfoMemory(1)
+ ref7969c9a7 := (*C.VkDescriptorSetVariableDescriptorCountAllocateInfo)(mem7969c9a7)
+ allocs7969c9a7 := new(cgoAllocMap)
+ allocs7969c9a7.Add(mem7969c9a7)
+
+ var csType_allocs *cgoAllocMap
+ ref7969c9a7.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs7969c9a7.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref7969c9a7.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs7969c9a7.Borrow(cpNext_allocs)
+
+ var cdescriptorSetCount_allocs *cgoAllocMap
+ ref7969c9a7.descriptorSetCount, cdescriptorSetCount_allocs = (C.uint32_t)(x.DescriptorSetCount), cgoAllocsUnknown
+ allocs7969c9a7.Borrow(cdescriptorSetCount_allocs)
+
+ var cpDescriptorCounts_allocs *cgoAllocMap
+ ref7969c9a7.pDescriptorCounts, cpDescriptorCounts_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PDescriptorCounts)).Data)), cgoAllocsUnknown
+ allocs7969c9a7.Borrow(cpDescriptorCounts_allocs)
+
+ x.ref7969c9a7 = ref7969c9a7
+ x.allocs7969c9a7 = allocs7969c9a7
+ return ref7969c9a7, allocs7969c9a7
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DescriptorSetVariableDescriptorCountAllocateInfo) PassValue() (C.VkDescriptorSetVariableDescriptorCountAllocateInfo, *cgoAllocMap) {
+ if x.ref7969c9a7 != nil {
+ return *x.ref7969c9a7, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *DescriptorSetVariableDescriptorCountAllocateInfo) Deref() {
+ if x.ref7969c9a7 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref7969c9a7.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref7969c9a7.pNext))
+ x.DescriptorSetCount = (uint32)(x.ref7969c9a7.descriptorSetCount)
+ hxff24242 := (*sliceHeader)(unsafe.Pointer(&x.PDescriptorCounts))
+ hxff24242.Data = unsafe.Pointer(x.ref7969c9a7.pDescriptorCounts)
+ hxff24242.Cap = 0x7fffffff
+ // hxff24242.Len = ?
+
+}
+
+// allocDescriptorSetVariableDescriptorCountLayoutSupportMemory allocates memory for type C.VkDescriptorSetVariableDescriptorCountLayoutSupport in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocDescriptorSetVariableDescriptorCountLayoutSupportMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorSetVariableDescriptorCountLayoutSupportValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfDescriptorSetVariableDescriptorCountLayoutSupportValue = unsafe.Sizeof([1]C.VkDescriptorSetVariableDescriptorCountLayoutSupport{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *DescriptorSetVariableDescriptorCountLayoutSupport) Ref() *C.VkDescriptorSetVariableDescriptorCountLayoutSupport {
+ if x == nil {
+ return nil
+ }
+ return x.refc584a0c6
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *DescriptorSetVariableDescriptorCountLayoutSupport) Free() {
+ if x != nil && x.allocsc584a0c6 != nil {
+ x.allocsc584a0c6.(*cgoAllocMap).Free()
+ x.refc584a0c6 = nil
+ }
+}
+
+// NewDescriptorSetVariableDescriptorCountLayoutSupportRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewDescriptorSetVariableDescriptorCountLayoutSupportRef(ref unsafe.Pointer) *DescriptorSetVariableDescriptorCountLayoutSupport {
+ if ref == nil {
+ return nil
+ }
+ obj := new(DescriptorSetVariableDescriptorCountLayoutSupport)
+ obj.refc584a0c6 = (*C.VkDescriptorSetVariableDescriptorCountLayoutSupport)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DescriptorSetVariableDescriptorCountLayoutSupport) PassRef() (*C.VkDescriptorSetVariableDescriptorCountLayoutSupport, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refc584a0c6 != nil {
+ return x.refc584a0c6, nil
+ }
+ memc584a0c6 := allocDescriptorSetVariableDescriptorCountLayoutSupportMemory(1)
+ refc584a0c6 := (*C.VkDescriptorSetVariableDescriptorCountLayoutSupport)(memc584a0c6)
+ allocsc584a0c6 := new(cgoAllocMap)
+ allocsc584a0c6.Add(memc584a0c6)
+
+ var csType_allocs *cgoAllocMap
+ refc584a0c6.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsc584a0c6.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refc584a0c6.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsc584a0c6.Borrow(cpNext_allocs)
+
+ var cmaxVariableDescriptorCount_allocs *cgoAllocMap
+ refc584a0c6.maxVariableDescriptorCount, cmaxVariableDescriptorCount_allocs = (C.uint32_t)(x.MaxVariableDescriptorCount), cgoAllocsUnknown
+ allocsc584a0c6.Borrow(cmaxVariableDescriptorCount_allocs)
+
+ x.refc584a0c6 = refc584a0c6
+ x.allocsc584a0c6 = allocsc584a0c6
+ return refc584a0c6, allocsc584a0c6
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DescriptorSetVariableDescriptorCountLayoutSupport) PassValue() (C.VkDescriptorSetVariableDescriptorCountLayoutSupport, *cgoAllocMap) {
+ if x.refc584a0c6 != nil {
+ return *x.refc584a0c6, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *DescriptorSetVariableDescriptorCountLayoutSupport) Deref() {
+ if x.refc584a0c6 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refc584a0c6.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc584a0c6.pNext))
+ x.MaxVariableDescriptorCount = (uint32)(x.refc584a0c6.maxVariableDescriptorCount)
+}
+
+// allocSubpassDescriptionDepthStencilResolveMemory allocates memory for type C.VkSubpassDescriptionDepthStencilResolve in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSubpassDescriptionDepthStencilResolveMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSubpassDescriptionDepthStencilResolveValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSubpassDescriptionDepthStencilResolveValue = unsafe.Sizeof([1]C.VkSubpassDescriptionDepthStencilResolve{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SubpassDescriptionDepthStencilResolve) Ref() *C.VkSubpassDescriptionDepthStencilResolve {
+ if x == nil {
+ return nil
+ }
+ return x.refc46545a8
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SubpassDescriptionDepthStencilResolve) Free() {
+ if x != nil && x.allocsc46545a8 != nil {
+ x.allocsc46545a8.(*cgoAllocMap).Free()
+ x.refc46545a8 = nil
+ }
+}
+
+// NewSubpassDescriptionDepthStencilResolveRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSubpassDescriptionDepthStencilResolveRef(ref unsafe.Pointer) *SubpassDescriptionDepthStencilResolve {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SubpassDescriptionDepthStencilResolve)
+ obj.refc46545a8 = (*C.VkSubpassDescriptionDepthStencilResolve)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SubpassDescriptionDepthStencilResolve) PassRef() (*C.VkSubpassDescriptionDepthStencilResolve, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refc46545a8 != nil {
+ return x.refc46545a8, nil
+ }
+ memc46545a8 := allocSubpassDescriptionDepthStencilResolveMemory(1)
+ refc46545a8 := (*C.VkSubpassDescriptionDepthStencilResolve)(memc46545a8)
+ allocsc46545a8 := new(cgoAllocMap)
+ allocsc46545a8.Add(memc46545a8)
+
+ var csType_allocs *cgoAllocMap
+ refc46545a8.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsc46545a8.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refc46545a8.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsc46545a8.Borrow(cpNext_allocs)
+
+ var cdepthResolveMode_allocs *cgoAllocMap
+ refc46545a8.depthResolveMode, cdepthResolveMode_allocs = (C.VkResolveModeFlagBits)(x.DepthResolveMode), cgoAllocsUnknown
+ allocsc46545a8.Borrow(cdepthResolveMode_allocs)
+
+ var cstencilResolveMode_allocs *cgoAllocMap
+ refc46545a8.stencilResolveMode, cstencilResolveMode_allocs = (C.VkResolveModeFlagBits)(x.StencilResolveMode), cgoAllocsUnknown
+ allocsc46545a8.Borrow(cstencilResolveMode_allocs)
+
+ var cpDepthStencilResolveAttachment_allocs *cgoAllocMap
+ refc46545a8.pDepthStencilResolveAttachment, cpDepthStencilResolveAttachment_allocs = unpackSAttachmentReference2(x.PDepthStencilResolveAttachment)
+ allocsc46545a8.Borrow(cpDepthStencilResolveAttachment_allocs)
+
+ x.refc46545a8 = refc46545a8
+ x.allocsc46545a8 = allocsc46545a8
+ return refc46545a8, allocsc46545a8
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SubpassDescriptionDepthStencilResolve) PassValue() (C.VkSubpassDescriptionDepthStencilResolve, *cgoAllocMap) {
+ if x.refc46545a8 != nil {
+ return *x.refc46545a8, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SubpassDescriptionDepthStencilResolve) Deref() {
+ if x.refc46545a8 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refc46545a8.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc46545a8.pNext))
+ x.DepthResolveMode = (ResolveModeFlagBits)(x.refc46545a8.depthResolveMode)
+ x.StencilResolveMode = (ResolveModeFlagBits)(x.refc46545a8.stencilResolveMode)
+ packSAttachmentReference2(x.PDepthStencilResolveAttachment, x.refc46545a8.pDepthStencilResolveAttachment)
+}
+
+// allocPhysicalDeviceDepthStencilResolvePropertiesMemory allocates memory for type C.VkPhysicalDeviceDepthStencilResolveProperties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceDepthStencilResolvePropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceDepthStencilResolvePropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceDepthStencilResolvePropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceDepthStencilResolveProperties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceDepthStencilResolveProperties) Ref() *C.VkPhysicalDeviceDepthStencilResolveProperties {
+ if x == nil {
+ return nil
+ }
+ return x.refc9f61da9
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceDepthStencilResolveProperties) Free() {
+ if x != nil && x.allocsc9f61da9 != nil {
+ x.allocsc9f61da9.(*cgoAllocMap).Free()
+ x.refc9f61da9 = nil
+ }
+}
+
+// NewPhysicalDeviceDepthStencilResolvePropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceDepthStencilResolvePropertiesRef(ref unsafe.Pointer) *PhysicalDeviceDepthStencilResolveProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceDepthStencilResolveProperties)
+ obj.refc9f61da9 = (*C.VkPhysicalDeviceDepthStencilResolveProperties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceDepthStencilResolveProperties) PassRef() (*C.VkPhysicalDeviceDepthStencilResolveProperties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refc9f61da9 != nil {
+ return x.refc9f61da9, nil
+ }
+ memc9f61da9 := allocPhysicalDeviceDepthStencilResolvePropertiesMemory(1)
+ refc9f61da9 := (*C.VkPhysicalDeviceDepthStencilResolveProperties)(memc9f61da9)
+ allocsc9f61da9 := new(cgoAllocMap)
+ allocsc9f61da9.Add(memc9f61da9)
+
+ var csType_allocs *cgoAllocMap
+ refc9f61da9.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsc9f61da9.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refc9f61da9.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsc9f61da9.Borrow(cpNext_allocs)
+
+ var csupportedDepthResolveModes_allocs *cgoAllocMap
+ refc9f61da9.supportedDepthResolveModes, csupportedDepthResolveModes_allocs = (C.VkResolveModeFlags)(x.SupportedDepthResolveModes), cgoAllocsUnknown
+ allocsc9f61da9.Borrow(csupportedDepthResolveModes_allocs)
+
+ var csupportedStencilResolveModes_allocs *cgoAllocMap
+ refc9f61da9.supportedStencilResolveModes, csupportedStencilResolveModes_allocs = (C.VkResolveModeFlags)(x.SupportedStencilResolveModes), cgoAllocsUnknown
+ allocsc9f61da9.Borrow(csupportedStencilResolveModes_allocs)
+
+ var cindependentResolveNone_allocs *cgoAllocMap
+ refc9f61da9.independentResolveNone, cindependentResolveNone_allocs = (C.VkBool32)(x.IndependentResolveNone), cgoAllocsUnknown
+ allocsc9f61da9.Borrow(cindependentResolveNone_allocs)
+
+ var cindependentResolve_allocs *cgoAllocMap
+ refc9f61da9.independentResolve, cindependentResolve_allocs = (C.VkBool32)(x.IndependentResolve), cgoAllocsUnknown
+ allocsc9f61da9.Borrow(cindependentResolve_allocs)
+
+ x.refc9f61da9 = refc9f61da9
+ x.allocsc9f61da9 = allocsc9f61da9
+ return refc9f61da9, allocsc9f61da9
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceDepthStencilResolveProperties) PassValue() (C.VkPhysicalDeviceDepthStencilResolveProperties, *cgoAllocMap) {
+ if x.refc9f61da9 != nil {
+ return *x.refc9f61da9, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceDepthStencilResolveProperties) Deref() {
+ if x.refc9f61da9 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refc9f61da9.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc9f61da9.pNext))
+ x.SupportedDepthResolveModes = (ResolveModeFlags)(x.refc9f61da9.supportedDepthResolveModes)
+ x.SupportedStencilResolveModes = (ResolveModeFlags)(x.refc9f61da9.supportedStencilResolveModes)
+ x.IndependentResolveNone = (Bool32)(x.refc9f61da9.independentResolveNone)
+ x.IndependentResolve = (Bool32)(x.refc9f61da9.independentResolve)
+}
+
+// allocPhysicalDeviceScalarBlockLayoutFeaturesMemory allocates memory for type C.VkPhysicalDeviceScalarBlockLayoutFeatures in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceScalarBlockLayoutFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceScalarBlockLayoutFeaturesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceScalarBlockLayoutFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceScalarBlockLayoutFeatures{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceScalarBlockLayoutFeatures) Ref() *C.VkPhysicalDeviceScalarBlockLayoutFeatures {
+ if x == nil {
+ return nil
+ }
+ return x.refbdf75616
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceScalarBlockLayoutFeatures) Free() {
+ if x != nil && x.allocsbdf75616 != nil {
+ x.allocsbdf75616.(*cgoAllocMap).Free()
+ x.refbdf75616 = nil
+ }
+}
+
+// NewPhysicalDeviceScalarBlockLayoutFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceScalarBlockLayoutFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceScalarBlockLayoutFeatures {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceScalarBlockLayoutFeatures)
+ obj.refbdf75616 = (*C.VkPhysicalDeviceScalarBlockLayoutFeatures)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceScalarBlockLayoutFeatures) PassRef() (*C.VkPhysicalDeviceScalarBlockLayoutFeatures, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refbdf75616 != nil {
+ return x.refbdf75616, nil
+ }
+ membdf75616 := allocPhysicalDeviceScalarBlockLayoutFeaturesMemory(1)
+ refbdf75616 := (*C.VkPhysicalDeviceScalarBlockLayoutFeatures)(membdf75616)
+ allocsbdf75616 := new(cgoAllocMap)
+ allocsbdf75616.Add(membdf75616)
+
+ var csType_allocs *cgoAllocMap
+ refbdf75616.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsbdf75616.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refbdf75616.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsbdf75616.Borrow(cpNext_allocs)
+
+ var cscalarBlockLayout_allocs *cgoAllocMap
+ refbdf75616.scalarBlockLayout, cscalarBlockLayout_allocs = (C.VkBool32)(x.ScalarBlockLayout), cgoAllocsUnknown
+ allocsbdf75616.Borrow(cscalarBlockLayout_allocs)
+
+ x.refbdf75616 = refbdf75616
+ x.allocsbdf75616 = allocsbdf75616
+ return refbdf75616, allocsbdf75616
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceScalarBlockLayoutFeatures) PassValue() (C.VkPhysicalDeviceScalarBlockLayoutFeatures, *cgoAllocMap) {
+ if x.refbdf75616 != nil {
+ return *x.refbdf75616, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceScalarBlockLayoutFeatures) Deref() {
+ if x.refbdf75616 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refbdf75616.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refbdf75616.pNext))
+ x.ScalarBlockLayout = (Bool32)(x.refbdf75616.scalarBlockLayout)
+}
+
+// allocImageStencilUsageCreateInfoMemory allocates memory for type C.VkImageStencilUsageCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocImageStencilUsageCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageStencilUsageCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfImageStencilUsageCreateInfoValue = unsafe.Sizeof([1]C.VkImageStencilUsageCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ImageStencilUsageCreateInfo) Ref() *C.VkImageStencilUsageCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref32229fd9
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ImageStencilUsageCreateInfo) Free() {
+ if x != nil && x.allocs32229fd9 != nil {
+ x.allocs32229fd9.(*cgoAllocMap).Free()
+ x.ref32229fd9 = nil
+ }
+}
+
+// NewImageStencilUsageCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewImageStencilUsageCreateInfoRef(ref unsafe.Pointer) *ImageStencilUsageCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ImageStencilUsageCreateInfo)
+ obj.ref32229fd9 = (*C.VkImageStencilUsageCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ImageStencilUsageCreateInfo) PassRef() (*C.VkImageStencilUsageCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref32229fd9 != nil {
+ return x.ref32229fd9, nil
+ }
+ mem32229fd9 := allocImageStencilUsageCreateInfoMemory(1)
+ ref32229fd9 := (*C.VkImageStencilUsageCreateInfo)(mem32229fd9)
+ allocs32229fd9 := new(cgoAllocMap)
+ allocs32229fd9.Add(mem32229fd9)
+
+ var csType_allocs *cgoAllocMap
+ ref32229fd9.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs32229fd9.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref32229fd9.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs32229fd9.Borrow(cpNext_allocs)
+
+ var cstencilUsage_allocs *cgoAllocMap
+ ref32229fd9.stencilUsage, cstencilUsage_allocs = (C.VkImageUsageFlags)(x.StencilUsage), cgoAllocsUnknown
+ allocs32229fd9.Borrow(cstencilUsage_allocs)
+
+ x.ref32229fd9 = ref32229fd9
+ x.allocs32229fd9 = allocs32229fd9
+ return ref32229fd9, allocs32229fd9
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ImageStencilUsageCreateInfo) PassValue() (C.VkImageStencilUsageCreateInfo, *cgoAllocMap) {
+ if x.ref32229fd9 != nil {
+ return *x.ref32229fd9, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ImageStencilUsageCreateInfo) Deref() {
+ if x.ref32229fd9 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref32229fd9.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref32229fd9.pNext))
+ x.StencilUsage = (ImageUsageFlags)(x.ref32229fd9.stencilUsage)
+}
+
+// allocSamplerReductionModeCreateInfoMemory allocates memory for type C.VkSamplerReductionModeCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSamplerReductionModeCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSamplerReductionModeCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSamplerReductionModeCreateInfoValue = unsafe.Sizeof([1]C.VkSamplerReductionModeCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SamplerReductionModeCreateInfo) Ref() *C.VkSamplerReductionModeCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref801424d0
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SamplerReductionModeCreateInfo) Free() {
+ if x != nil && x.allocs801424d0 != nil {
+ x.allocs801424d0.(*cgoAllocMap).Free()
+ x.ref801424d0 = nil
+ }
+}
+
+// NewSamplerReductionModeCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSamplerReductionModeCreateInfoRef(ref unsafe.Pointer) *SamplerReductionModeCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SamplerReductionModeCreateInfo)
+ obj.ref801424d0 = (*C.VkSamplerReductionModeCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SamplerReductionModeCreateInfo) PassRef() (*C.VkSamplerReductionModeCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref801424d0 != nil {
+ return x.ref801424d0, nil
+ }
+ mem801424d0 := allocSamplerReductionModeCreateInfoMemory(1)
+ ref801424d0 := (*C.VkSamplerReductionModeCreateInfo)(mem801424d0)
+ allocs801424d0 := new(cgoAllocMap)
+ allocs801424d0.Add(mem801424d0)
+
+ var csType_allocs *cgoAllocMap
+ ref801424d0.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs801424d0.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref801424d0.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs801424d0.Borrow(cpNext_allocs)
+
+ var creductionMode_allocs *cgoAllocMap
+ ref801424d0.reductionMode, creductionMode_allocs = (C.VkSamplerReductionMode)(x.ReductionMode), cgoAllocsUnknown
+ allocs801424d0.Borrow(creductionMode_allocs)
+
+ x.ref801424d0 = ref801424d0
+ x.allocs801424d0 = allocs801424d0
+ return ref801424d0, allocs801424d0
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SamplerReductionModeCreateInfo) PassValue() (C.VkSamplerReductionModeCreateInfo, *cgoAllocMap) {
+ if x.ref801424d0 != nil {
+ return *x.ref801424d0, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SamplerReductionModeCreateInfo) Deref() {
+ if x.ref801424d0 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref801424d0.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref801424d0.pNext))
+ x.ReductionMode = (SamplerReductionMode)(x.ref801424d0.reductionMode)
+}
+
+// allocPhysicalDeviceSamplerFilterMinmaxPropertiesMemory allocates memory for type C.VkPhysicalDeviceSamplerFilterMinmaxProperties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceSamplerFilterMinmaxPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceSamplerFilterMinmaxPropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceSamplerFilterMinmaxPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceSamplerFilterMinmaxProperties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceSamplerFilterMinmaxProperties) Ref() *C.VkPhysicalDeviceSamplerFilterMinmaxProperties {
+ if x == nil {
+ return nil
+ }
+ return x.ref69bbe609
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceSamplerFilterMinmaxProperties) Free() {
+ if x != nil && x.allocs69bbe609 != nil {
+ x.allocs69bbe609.(*cgoAllocMap).Free()
+ x.ref69bbe609 = nil
+ }
+}
+
+// NewPhysicalDeviceSamplerFilterMinmaxPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceSamplerFilterMinmaxPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceSamplerFilterMinmaxProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceSamplerFilterMinmaxProperties)
+ obj.ref69bbe609 = (*C.VkPhysicalDeviceSamplerFilterMinmaxProperties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceSamplerFilterMinmaxProperties) PassRef() (*C.VkPhysicalDeviceSamplerFilterMinmaxProperties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref69bbe609 != nil {
+ return x.ref69bbe609, nil
+ }
+ mem69bbe609 := allocPhysicalDeviceSamplerFilterMinmaxPropertiesMemory(1)
+ ref69bbe609 := (*C.VkPhysicalDeviceSamplerFilterMinmaxProperties)(mem69bbe609)
+ allocs69bbe609 := new(cgoAllocMap)
+ allocs69bbe609.Add(mem69bbe609)
+
+ var csType_allocs *cgoAllocMap
+ ref69bbe609.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs69bbe609.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref69bbe609.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs69bbe609.Borrow(cpNext_allocs)
+
+ var cfilterMinmaxSingleComponentFormats_allocs *cgoAllocMap
+ ref69bbe609.filterMinmaxSingleComponentFormats, cfilterMinmaxSingleComponentFormats_allocs = (C.VkBool32)(x.FilterMinmaxSingleComponentFormats), cgoAllocsUnknown
+ allocs69bbe609.Borrow(cfilterMinmaxSingleComponentFormats_allocs)
+
+ var cfilterMinmaxImageComponentMapping_allocs *cgoAllocMap
+ ref69bbe609.filterMinmaxImageComponentMapping, cfilterMinmaxImageComponentMapping_allocs = (C.VkBool32)(x.FilterMinmaxImageComponentMapping), cgoAllocsUnknown
+ allocs69bbe609.Borrow(cfilterMinmaxImageComponentMapping_allocs)
+
+ x.ref69bbe609 = ref69bbe609
+ x.allocs69bbe609 = allocs69bbe609
+ return ref69bbe609, allocs69bbe609
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceSamplerFilterMinmaxProperties) PassValue() (C.VkPhysicalDeviceSamplerFilterMinmaxProperties, *cgoAllocMap) {
+ if x.ref69bbe609 != nil {
+ return *x.ref69bbe609, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceSamplerFilterMinmaxProperties) Deref() {
+ if x.ref69bbe609 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref69bbe609.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref69bbe609.pNext))
+ x.FilterMinmaxSingleComponentFormats = (Bool32)(x.ref69bbe609.filterMinmaxSingleComponentFormats)
+ x.FilterMinmaxImageComponentMapping = (Bool32)(x.ref69bbe609.filterMinmaxImageComponentMapping)
+}
+
+// allocPhysicalDeviceVulkanMemoryModelFeaturesMemory allocates memory for type C.VkPhysicalDeviceVulkanMemoryModelFeatures in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceVulkanMemoryModelFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceVulkanMemoryModelFeaturesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceVulkanMemoryModelFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceVulkanMemoryModelFeatures{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceVulkanMemoryModelFeatures) Ref() *C.VkPhysicalDeviceVulkanMemoryModelFeatures {
+ if x == nil {
+ return nil
+ }
+ return x.refedb93263
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceVulkanMemoryModelFeatures) Free() {
+ if x != nil && x.allocsedb93263 != nil {
+ x.allocsedb93263.(*cgoAllocMap).Free()
+ x.refedb93263 = nil
+ }
+}
+
+// NewPhysicalDeviceVulkanMemoryModelFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceVulkanMemoryModelFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceVulkanMemoryModelFeatures {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceVulkanMemoryModelFeatures)
+ obj.refedb93263 = (*C.VkPhysicalDeviceVulkanMemoryModelFeatures)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceVulkanMemoryModelFeatures) PassRef() (*C.VkPhysicalDeviceVulkanMemoryModelFeatures, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refedb93263 != nil {
+ return x.refedb93263, nil
+ }
+ memedb93263 := allocPhysicalDeviceVulkanMemoryModelFeaturesMemory(1)
+ refedb93263 := (*C.VkPhysicalDeviceVulkanMemoryModelFeatures)(memedb93263)
+ allocsedb93263 := new(cgoAllocMap)
+ allocsedb93263.Add(memedb93263)
+
+ var csType_allocs *cgoAllocMap
+ refedb93263.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsedb93263.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refedb93263.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsedb93263.Borrow(cpNext_allocs)
+
+ var cvulkanMemoryModel_allocs *cgoAllocMap
+ refedb93263.vulkanMemoryModel, cvulkanMemoryModel_allocs = (C.VkBool32)(x.VulkanMemoryModel), cgoAllocsUnknown
+ allocsedb93263.Borrow(cvulkanMemoryModel_allocs)
+
+ var cvulkanMemoryModelDeviceScope_allocs *cgoAllocMap
+ refedb93263.vulkanMemoryModelDeviceScope, cvulkanMemoryModelDeviceScope_allocs = (C.VkBool32)(x.VulkanMemoryModelDeviceScope), cgoAllocsUnknown
+ allocsedb93263.Borrow(cvulkanMemoryModelDeviceScope_allocs)
+
+ var cvulkanMemoryModelAvailabilityVisibilityChains_allocs *cgoAllocMap
+ refedb93263.vulkanMemoryModelAvailabilityVisibilityChains, cvulkanMemoryModelAvailabilityVisibilityChains_allocs = (C.VkBool32)(x.VulkanMemoryModelAvailabilityVisibilityChains), cgoAllocsUnknown
+ allocsedb93263.Borrow(cvulkanMemoryModelAvailabilityVisibilityChains_allocs)
+
+ x.refedb93263 = refedb93263
+ x.allocsedb93263 = allocsedb93263
+ return refedb93263, allocsedb93263
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceVulkanMemoryModelFeatures) PassValue() (C.VkPhysicalDeviceVulkanMemoryModelFeatures, *cgoAllocMap) {
+ if x.refedb93263 != nil {
+ return *x.refedb93263, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceVulkanMemoryModelFeatures) Deref() {
+ if x.refedb93263 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refedb93263.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refedb93263.pNext))
+ x.VulkanMemoryModel = (Bool32)(x.refedb93263.vulkanMemoryModel)
+ x.VulkanMemoryModelDeviceScope = (Bool32)(x.refedb93263.vulkanMemoryModelDeviceScope)
+ x.VulkanMemoryModelAvailabilityVisibilityChains = (Bool32)(x.refedb93263.vulkanMemoryModelAvailabilityVisibilityChains)
+}
+
+// allocPhysicalDeviceImagelessFramebufferFeaturesMemory allocates memory for type C.VkPhysicalDeviceImagelessFramebufferFeatures in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceImagelessFramebufferFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceImagelessFramebufferFeaturesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceImagelessFramebufferFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceImagelessFramebufferFeatures{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceImagelessFramebufferFeatures) Ref() *C.VkPhysicalDeviceImagelessFramebufferFeatures {
+ if x == nil {
+ return nil
+ }
+ return x.refcd561baf
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceImagelessFramebufferFeatures) Free() {
+ if x != nil && x.allocscd561baf != nil {
+ x.allocscd561baf.(*cgoAllocMap).Free()
+ x.refcd561baf = nil
+ }
+}
+
+// NewPhysicalDeviceImagelessFramebufferFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceImagelessFramebufferFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceImagelessFramebufferFeatures {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceImagelessFramebufferFeatures)
+ obj.refcd561baf = (*C.VkPhysicalDeviceImagelessFramebufferFeatures)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceImagelessFramebufferFeatures) PassRef() (*C.VkPhysicalDeviceImagelessFramebufferFeatures, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refcd561baf != nil {
+ return x.refcd561baf, nil
+ }
+ memcd561baf := allocPhysicalDeviceImagelessFramebufferFeaturesMemory(1)
+ refcd561baf := (*C.VkPhysicalDeviceImagelessFramebufferFeatures)(memcd561baf)
+ allocscd561baf := new(cgoAllocMap)
+ allocscd561baf.Add(memcd561baf)
+
+ var csType_allocs *cgoAllocMap
+ refcd561baf.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocscd561baf.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refcd561baf.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocscd561baf.Borrow(cpNext_allocs)
+
+ var cimagelessFramebuffer_allocs *cgoAllocMap
+ refcd561baf.imagelessFramebuffer, cimagelessFramebuffer_allocs = (C.VkBool32)(x.ImagelessFramebuffer), cgoAllocsUnknown
+ allocscd561baf.Borrow(cimagelessFramebuffer_allocs)
+
+ x.refcd561baf = refcd561baf
+ x.allocscd561baf = allocscd561baf
+ return refcd561baf, allocscd561baf
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceImagelessFramebufferFeatures) PassValue() (C.VkPhysicalDeviceImagelessFramebufferFeatures, *cgoAllocMap) {
+ if x.refcd561baf != nil {
+ return *x.refcd561baf, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceImagelessFramebufferFeatures) Deref() {
+ if x.refcd561baf == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refcd561baf.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refcd561baf.pNext))
+ x.ImagelessFramebuffer = (Bool32)(x.refcd561baf.imagelessFramebuffer)
+}
+
+// allocFramebufferAttachmentImageInfoMemory allocates memory for type C.VkFramebufferAttachmentImageInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocFramebufferAttachmentImageInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfFramebufferAttachmentImageInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfFramebufferAttachmentImageInfoValue = unsafe.Sizeof([1]C.VkFramebufferAttachmentImageInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *FramebufferAttachmentImageInfo) Ref() *C.VkFramebufferAttachmentImageInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refe569691c
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *FramebufferAttachmentImageInfo) Free() {
+ if x != nil && x.allocse569691c != nil {
+ x.allocse569691c.(*cgoAllocMap).Free()
+ x.refe569691c = nil
+ }
+}
+
+// NewFramebufferAttachmentImageInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewFramebufferAttachmentImageInfoRef(ref unsafe.Pointer) *FramebufferAttachmentImageInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(FramebufferAttachmentImageInfo)
+ obj.refe569691c = (*C.VkFramebufferAttachmentImageInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *FramebufferAttachmentImageInfo) PassRef() (*C.VkFramebufferAttachmentImageInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refe569691c != nil {
+ return x.refe569691c, nil
+ }
+ meme569691c := allocFramebufferAttachmentImageInfoMemory(1)
+ refe569691c := (*C.VkFramebufferAttachmentImageInfo)(meme569691c)
+ allocse569691c := new(cgoAllocMap)
+ allocse569691c.Add(meme569691c)
+
+ var csType_allocs *cgoAllocMap
+ refe569691c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocse569691c.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refe569691c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocse569691c.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ refe569691c.flags, cflags_allocs = (C.VkImageCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocse569691c.Borrow(cflags_allocs)
+
+ var cusage_allocs *cgoAllocMap
+ refe569691c.usage, cusage_allocs = (C.VkImageUsageFlags)(x.Usage), cgoAllocsUnknown
+ allocse569691c.Borrow(cusage_allocs)
+
+ var cwidth_allocs *cgoAllocMap
+ refe569691c.width, cwidth_allocs = (C.uint32_t)(x.Width), cgoAllocsUnknown
+ allocse569691c.Borrow(cwidth_allocs)
+
+ var cheight_allocs *cgoAllocMap
+ refe569691c.height, cheight_allocs = (C.uint32_t)(x.Height), cgoAllocsUnknown
+ allocse569691c.Borrow(cheight_allocs)
+
+ var clayerCount_allocs *cgoAllocMap
+ refe569691c.layerCount, clayerCount_allocs = (C.uint32_t)(x.LayerCount), cgoAllocsUnknown
+ allocse569691c.Borrow(clayerCount_allocs)
+
+ var cviewFormatCount_allocs *cgoAllocMap
+ refe569691c.viewFormatCount, cviewFormatCount_allocs = (C.uint32_t)(x.ViewFormatCount), cgoAllocsUnknown
+ allocse569691c.Borrow(cviewFormatCount_allocs)
+
+ var cpViewFormats_allocs *cgoAllocMap
+ refe569691c.pViewFormats, cpViewFormats_allocs = (*C.VkFormat)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PViewFormats)).Data)), cgoAllocsUnknown
+ allocse569691c.Borrow(cpViewFormats_allocs)
+
+ x.refe569691c = refe569691c
+ x.allocse569691c = allocse569691c
+ return refe569691c, allocse569691c
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x FramebufferAttachmentImageInfo) PassValue() (C.VkFramebufferAttachmentImageInfo, *cgoAllocMap) {
+ if x.refe569691c != nil {
+ return *x.refe569691c, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *FramebufferAttachmentImageInfo) Deref() {
+ if x.refe569691c == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refe569691c.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refe569691c.pNext))
+ x.Flags = (ImageCreateFlags)(x.refe569691c.flags)
+ x.Usage = (ImageUsageFlags)(x.refe569691c.usage)
+ x.Width = (uint32)(x.refe569691c.width)
+ x.Height = (uint32)(x.refe569691c.height)
+ x.LayerCount = (uint32)(x.refe569691c.layerCount)
+ x.ViewFormatCount = (uint32)(x.refe569691c.viewFormatCount)
+ hxfe93325 := (*sliceHeader)(unsafe.Pointer(&x.PViewFormats))
+ hxfe93325.Data = unsafe.Pointer(x.refe569691c.pViewFormats)
+ hxfe93325.Cap = 0x7fffffff
+ // hxfe93325.Len = ?
+
+}
+
+// allocFramebufferAttachmentsCreateInfoMemory allocates memory for type C.VkFramebufferAttachmentsCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocFramebufferAttachmentsCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfFramebufferAttachmentsCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfFramebufferAttachmentsCreateInfoValue = unsafe.Sizeof([1]C.VkFramebufferAttachmentsCreateInfo{})
+
+// unpackSFramebufferAttachmentImageInfo transforms a sliced Go data structure into plain C format.
+func unpackSFramebufferAttachmentImageInfo(x []FramebufferAttachmentImageInfo) (unpacked *C.VkFramebufferAttachmentImageInfo, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkFramebufferAttachmentImageInfo) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocFramebufferAttachmentImageInfoMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkFramebufferAttachmentImageInfo)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkFramebufferAttachmentImageInfo)(h.Data)
+ return
+}
+
+// packSFramebufferAttachmentImageInfo reads sliced Go data structure out from plain C format.
+func packSFramebufferAttachmentImageInfo(v []FramebufferAttachmentImageInfo, ptr0 *C.VkFramebufferAttachmentImageInfo) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfFramebufferAttachmentImageInfoValue]C.VkFramebufferAttachmentImageInfo)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewFramebufferAttachmentImageInfoRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *FramebufferAttachmentsCreateInfo) Ref() *C.VkFramebufferAttachmentsCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.reff3bb4ec3
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *FramebufferAttachmentsCreateInfo) Free() {
+ if x != nil && x.allocsf3bb4ec3 != nil {
+ x.allocsf3bb4ec3.(*cgoAllocMap).Free()
+ x.reff3bb4ec3 = nil
+ }
+}
+
+// NewFramebufferAttachmentsCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewFramebufferAttachmentsCreateInfoRef(ref unsafe.Pointer) *FramebufferAttachmentsCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(FramebufferAttachmentsCreateInfo)
+ obj.reff3bb4ec3 = (*C.VkFramebufferAttachmentsCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *FramebufferAttachmentsCreateInfo) PassRef() (*C.VkFramebufferAttachmentsCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.reff3bb4ec3 != nil {
+ return x.reff3bb4ec3, nil
+ }
+ memf3bb4ec3 := allocFramebufferAttachmentsCreateInfoMemory(1)
+ reff3bb4ec3 := (*C.VkFramebufferAttachmentsCreateInfo)(memf3bb4ec3)
+ allocsf3bb4ec3 := new(cgoAllocMap)
+ allocsf3bb4ec3.Add(memf3bb4ec3)
+
+ var csType_allocs *cgoAllocMap
+ reff3bb4ec3.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsf3bb4ec3.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ reff3bb4ec3.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsf3bb4ec3.Borrow(cpNext_allocs)
+
+ var cattachmentImageInfoCount_allocs *cgoAllocMap
+ reff3bb4ec3.attachmentImageInfoCount, cattachmentImageInfoCount_allocs = (C.uint32_t)(x.AttachmentImageInfoCount), cgoAllocsUnknown
+ allocsf3bb4ec3.Borrow(cattachmentImageInfoCount_allocs)
+
+ var cpAttachmentImageInfos_allocs *cgoAllocMap
+ reff3bb4ec3.pAttachmentImageInfos, cpAttachmentImageInfos_allocs = unpackSFramebufferAttachmentImageInfo(x.PAttachmentImageInfos)
+ allocsf3bb4ec3.Borrow(cpAttachmentImageInfos_allocs)
+
+ x.reff3bb4ec3 = reff3bb4ec3
+ x.allocsf3bb4ec3 = allocsf3bb4ec3
+ return reff3bb4ec3, allocsf3bb4ec3
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x FramebufferAttachmentsCreateInfo) PassValue() (C.VkFramebufferAttachmentsCreateInfo, *cgoAllocMap) {
+ if x.reff3bb4ec3 != nil {
+ return *x.reff3bb4ec3, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *FramebufferAttachmentsCreateInfo) Deref() {
+ if x.reff3bb4ec3 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.reff3bb4ec3.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff3bb4ec3.pNext))
+ x.AttachmentImageInfoCount = (uint32)(x.reff3bb4ec3.attachmentImageInfoCount)
+ packSFramebufferAttachmentImageInfo(x.PAttachmentImageInfos, x.reff3bb4ec3.pAttachmentImageInfos)
+}
+
+// allocRenderPassAttachmentBeginInfoMemory allocates memory for type C.VkRenderPassAttachmentBeginInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocRenderPassAttachmentBeginInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfRenderPassAttachmentBeginInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfRenderPassAttachmentBeginInfoValue = unsafe.Sizeof([1]C.VkRenderPassAttachmentBeginInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *RenderPassAttachmentBeginInfo) Ref() *C.VkRenderPassAttachmentBeginInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref5c976537
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *RenderPassAttachmentBeginInfo) Free() {
+ if x != nil && x.allocs5c976537 != nil {
+ x.allocs5c976537.(*cgoAllocMap).Free()
+ x.ref5c976537 = nil
+ }
+}
+
+// NewRenderPassAttachmentBeginInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewRenderPassAttachmentBeginInfoRef(ref unsafe.Pointer) *RenderPassAttachmentBeginInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(RenderPassAttachmentBeginInfo)
+ obj.ref5c976537 = (*C.VkRenderPassAttachmentBeginInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *RenderPassAttachmentBeginInfo) PassRef() (*C.VkRenderPassAttachmentBeginInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref5c976537 != nil {
+ return x.ref5c976537, nil
+ }
+ mem5c976537 := allocRenderPassAttachmentBeginInfoMemory(1)
+ ref5c976537 := (*C.VkRenderPassAttachmentBeginInfo)(mem5c976537)
+ allocs5c976537 := new(cgoAllocMap)
+ allocs5c976537.Add(mem5c976537)
+
+ var csType_allocs *cgoAllocMap
+ ref5c976537.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs5c976537.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref5c976537.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs5c976537.Borrow(cpNext_allocs)
+
+ var cattachmentCount_allocs *cgoAllocMap
+ ref5c976537.attachmentCount, cattachmentCount_allocs = (C.uint32_t)(x.AttachmentCount), cgoAllocsUnknown
+ allocs5c976537.Borrow(cattachmentCount_allocs)
+
+ var cpAttachments_allocs *cgoAllocMap
+ ref5c976537.pAttachments, cpAttachments_allocs = (*C.VkImageView)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PAttachments)).Data)), cgoAllocsUnknown
+ allocs5c976537.Borrow(cpAttachments_allocs)
+
+ x.ref5c976537 = ref5c976537
+ x.allocs5c976537 = allocs5c976537
+ return ref5c976537, allocs5c976537
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x RenderPassAttachmentBeginInfo) PassValue() (C.VkRenderPassAttachmentBeginInfo, *cgoAllocMap) {
+ if x.ref5c976537 != nil {
+ return *x.ref5c976537, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *RenderPassAttachmentBeginInfo) Deref() {
+ if x.ref5c976537 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref5c976537.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5c976537.pNext))
+ x.AttachmentCount = (uint32)(x.ref5c976537.attachmentCount)
+ hxf09ea94 := (*sliceHeader)(unsafe.Pointer(&x.PAttachments))
+ hxf09ea94.Data = unsafe.Pointer(x.ref5c976537.pAttachments)
+ hxf09ea94.Cap = 0x7fffffff
+ // hxf09ea94.Len = ?
+
+}
+
+// allocPhysicalDeviceUniformBufferStandardLayoutFeaturesMemory allocates memory for type C.VkPhysicalDeviceUniformBufferStandardLayoutFeatures in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceUniformBufferStandardLayoutFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceUniformBufferStandardLayoutFeaturesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceUniformBufferStandardLayoutFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceUniformBufferStandardLayoutFeatures{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceUniformBufferStandardLayoutFeatures) Ref() *C.VkPhysicalDeviceUniformBufferStandardLayoutFeatures {
+ if x == nil {
+ return nil
+ }
+ return x.refda381ec5
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceUniformBufferStandardLayoutFeatures) Free() {
+ if x != nil && x.allocsda381ec5 != nil {
+ x.allocsda381ec5.(*cgoAllocMap).Free()
+ x.refda381ec5 = nil
+ }
+}
+
+// NewPhysicalDeviceUniformBufferStandardLayoutFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceUniformBufferStandardLayoutFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceUniformBufferStandardLayoutFeatures {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceUniformBufferStandardLayoutFeatures)
+ obj.refda381ec5 = (*C.VkPhysicalDeviceUniformBufferStandardLayoutFeatures)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceUniformBufferStandardLayoutFeatures) PassRef() (*C.VkPhysicalDeviceUniformBufferStandardLayoutFeatures, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refda381ec5 != nil {
+ return x.refda381ec5, nil
+ }
+ memda381ec5 := allocPhysicalDeviceUniformBufferStandardLayoutFeaturesMemory(1)
+ refda381ec5 := (*C.VkPhysicalDeviceUniformBufferStandardLayoutFeatures)(memda381ec5)
+ allocsda381ec5 := new(cgoAllocMap)
+ allocsda381ec5.Add(memda381ec5)
+
+ var csType_allocs *cgoAllocMap
+ refda381ec5.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsda381ec5.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refda381ec5.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsda381ec5.Borrow(cpNext_allocs)
+
+ var cuniformBufferStandardLayout_allocs *cgoAllocMap
+ refda381ec5.uniformBufferStandardLayout, cuniformBufferStandardLayout_allocs = (C.VkBool32)(x.UniformBufferStandardLayout), cgoAllocsUnknown
+ allocsda381ec5.Borrow(cuniformBufferStandardLayout_allocs)
+
+ x.refda381ec5 = refda381ec5
+ x.allocsda381ec5 = allocsda381ec5
+ return refda381ec5, allocsda381ec5
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceUniformBufferStandardLayoutFeatures) PassValue() (C.VkPhysicalDeviceUniformBufferStandardLayoutFeatures, *cgoAllocMap) {
+ if x.refda381ec5 != nil {
+ return *x.refda381ec5, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceUniformBufferStandardLayoutFeatures) Deref() {
+ if x.refda381ec5 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refda381ec5.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refda381ec5.pNext))
+ x.UniformBufferStandardLayout = (Bool32)(x.refda381ec5.uniformBufferStandardLayout)
+}
+
+// allocPhysicalDeviceShaderSubgroupExtendedTypesFeaturesMemory allocates memory for type C.VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceShaderSubgroupExtendedTypesFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceShaderSubgroupExtendedTypesFeaturesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceShaderSubgroupExtendedTypesFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceShaderSubgroupExtendedTypesFeatures) Ref() *C.VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures {
+ if x == nil {
+ return nil
+ }
+ return x.ref3bdcd2a2
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceShaderSubgroupExtendedTypesFeatures) Free() {
+ if x != nil && x.allocs3bdcd2a2 != nil {
+ x.allocs3bdcd2a2.(*cgoAllocMap).Free()
+ x.ref3bdcd2a2 = nil
+ }
+}
+
+// NewPhysicalDeviceShaderSubgroupExtendedTypesFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceShaderSubgroupExtendedTypesFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceShaderSubgroupExtendedTypesFeatures {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceShaderSubgroupExtendedTypesFeatures)
+ obj.ref3bdcd2a2 = (*C.VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceShaderSubgroupExtendedTypesFeatures) PassRef() (*C.VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref3bdcd2a2 != nil {
+ return x.ref3bdcd2a2, nil
+ }
+ mem3bdcd2a2 := allocPhysicalDeviceShaderSubgroupExtendedTypesFeaturesMemory(1)
+ ref3bdcd2a2 := (*C.VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures)(mem3bdcd2a2)
+ allocs3bdcd2a2 := new(cgoAllocMap)
+ allocs3bdcd2a2.Add(mem3bdcd2a2)
+
+ var csType_allocs *cgoAllocMap
+ ref3bdcd2a2.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs3bdcd2a2.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref3bdcd2a2.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs3bdcd2a2.Borrow(cpNext_allocs)
+
+ var cshaderSubgroupExtendedTypes_allocs *cgoAllocMap
+ ref3bdcd2a2.shaderSubgroupExtendedTypes, cshaderSubgroupExtendedTypes_allocs = (C.VkBool32)(x.ShaderSubgroupExtendedTypes), cgoAllocsUnknown
+ allocs3bdcd2a2.Borrow(cshaderSubgroupExtendedTypes_allocs)
+
+ x.ref3bdcd2a2 = ref3bdcd2a2
+ x.allocs3bdcd2a2 = allocs3bdcd2a2
+ return ref3bdcd2a2, allocs3bdcd2a2
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceShaderSubgroupExtendedTypesFeatures) PassValue() (C.VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures, *cgoAllocMap) {
+ if x.ref3bdcd2a2 != nil {
+ return *x.ref3bdcd2a2, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceShaderSubgroupExtendedTypesFeatures) Deref() {
+ if x.ref3bdcd2a2 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref3bdcd2a2.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref3bdcd2a2.pNext))
+ x.ShaderSubgroupExtendedTypes = (Bool32)(x.ref3bdcd2a2.shaderSubgroupExtendedTypes)
+}
+
+// allocPhysicalDeviceSeparateDepthStencilLayoutsFeaturesMemory allocates memory for type C.VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceSeparateDepthStencilLayoutsFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceSeparateDepthStencilLayoutsFeaturesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceSeparateDepthStencilLayoutsFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceSeparateDepthStencilLayoutsFeatures) Ref() *C.VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures {
+ if x == nil {
+ return nil
+ }
+ return x.ref7974377f
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceSeparateDepthStencilLayoutsFeatures) Free() {
+ if x != nil && x.allocs7974377f != nil {
+ x.allocs7974377f.(*cgoAllocMap).Free()
+ x.ref7974377f = nil
+ }
+}
+
+// NewPhysicalDeviceSeparateDepthStencilLayoutsFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceSeparateDepthStencilLayoutsFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceSeparateDepthStencilLayoutsFeatures {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceSeparateDepthStencilLayoutsFeatures)
+ obj.ref7974377f = (*C.VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceSeparateDepthStencilLayoutsFeatures) PassRef() (*C.VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref7974377f != nil {
+ return x.ref7974377f, nil
+ }
+ mem7974377f := allocPhysicalDeviceSeparateDepthStencilLayoutsFeaturesMemory(1)
+ ref7974377f := (*C.VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures)(mem7974377f)
+ allocs7974377f := new(cgoAllocMap)
+ allocs7974377f.Add(mem7974377f)
+
+ var csType_allocs *cgoAllocMap
+ ref7974377f.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs7974377f.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref7974377f.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs7974377f.Borrow(cpNext_allocs)
+
+ var cseparateDepthStencilLayouts_allocs *cgoAllocMap
+ ref7974377f.separateDepthStencilLayouts, cseparateDepthStencilLayouts_allocs = (C.VkBool32)(x.SeparateDepthStencilLayouts), cgoAllocsUnknown
+ allocs7974377f.Borrow(cseparateDepthStencilLayouts_allocs)
+
+ x.ref7974377f = ref7974377f
+ x.allocs7974377f = allocs7974377f
+ return ref7974377f, allocs7974377f
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceSeparateDepthStencilLayoutsFeatures) PassValue() (C.VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures, *cgoAllocMap) {
+ if x.ref7974377f != nil {
+ return *x.ref7974377f, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceSeparateDepthStencilLayoutsFeatures) Deref() {
+ if x.ref7974377f == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref7974377f.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref7974377f.pNext))
+ x.SeparateDepthStencilLayouts = (Bool32)(x.ref7974377f.separateDepthStencilLayouts)
+}
+
+// allocAttachmentReferenceStencilLayoutMemory allocates memory for type C.VkAttachmentReferenceStencilLayout in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocAttachmentReferenceStencilLayoutMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfAttachmentReferenceStencilLayoutValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfAttachmentReferenceStencilLayoutValue = unsafe.Sizeof([1]C.VkAttachmentReferenceStencilLayout{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *AttachmentReferenceStencilLayout) Ref() *C.VkAttachmentReferenceStencilLayout {
+ if x == nil {
+ return nil
+ }
+ return x.refb936264a
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *AttachmentReferenceStencilLayout) Free() {
+ if x != nil && x.allocsb936264a != nil {
+ x.allocsb936264a.(*cgoAllocMap).Free()
+ x.refb936264a = nil
+ }
+}
+
+// NewAttachmentReferenceStencilLayoutRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewAttachmentReferenceStencilLayoutRef(ref unsafe.Pointer) *AttachmentReferenceStencilLayout {
+ if ref == nil {
+ return nil
+ }
+ obj := new(AttachmentReferenceStencilLayout)
+ obj.refb936264a = (*C.VkAttachmentReferenceStencilLayout)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *AttachmentReferenceStencilLayout) PassRef() (*C.VkAttachmentReferenceStencilLayout, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refb936264a != nil {
+ return x.refb936264a, nil
+ }
+ memb936264a := allocAttachmentReferenceStencilLayoutMemory(1)
+ refb936264a := (*C.VkAttachmentReferenceStencilLayout)(memb936264a)
+ allocsb936264a := new(cgoAllocMap)
+ allocsb936264a.Add(memb936264a)
+
+ var csType_allocs *cgoAllocMap
+ refb936264a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsb936264a.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refb936264a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsb936264a.Borrow(cpNext_allocs)
+
+ var cstencilLayout_allocs *cgoAllocMap
+ refb936264a.stencilLayout, cstencilLayout_allocs = (C.VkImageLayout)(x.StencilLayout), cgoAllocsUnknown
+ allocsb936264a.Borrow(cstencilLayout_allocs)
+
+ x.refb936264a = refb936264a
+ x.allocsb936264a = allocsb936264a
+ return refb936264a, allocsb936264a
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x AttachmentReferenceStencilLayout) PassValue() (C.VkAttachmentReferenceStencilLayout, *cgoAllocMap) {
+ if x.refb936264a != nil {
+ return *x.refb936264a, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *AttachmentReferenceStencilLayout) Deref() {
+ if x.refb936264a == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refb936264a.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb936264a.pNext))
+ x.StencilLayout = (ImageLayout)(x.refb936264a.stencilLayout)
+}
+
+// allocAttachmentDescriptionStencilLayoutMemory allocates memory for type C.VkAttachmentDescriptionStencilLayout in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocAttachmentDescriptionStencilLayoutMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfAttachmentDescriptionStencilLayoutValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfAttachmentDescriptionStencilLayoutValue = unsafe.Sizeof([1]C.VkAttachmentDescriptionStencilLayout{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *AttachmentDescriptionStencilLayout) Ref() *C.VkAttachmentDescriptionStencilLayout {
+ if x == nil {
+ return nil
+ }
+ return x.refc8065ded
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *AttachmentDescriptionStencilLayout) Free() {
+ if x != nil && x.allocsc8065ded != nil {
+ x.allocsc8065ded.(*cgoAllocMap).Free()
+ x.refc8065ded = nil
+ }
+}
+
+// NewAttachmentDescriptionStencilLayoutRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewAttachmentDescriptionStencilLayoutRef(ref unsafe.Pointer) *AttachmentDescriptionStencilLayout {
+ if ref == nil {
+ return nil
+ }
+ obj := new(AttachmentDescriptionStencilLayout)
+ obj.refc8065ded = (*C.VkAttachmentDescriptionStencilLayout)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *AttachmentDescriptionStencilLayout) PassRef() (*C.VkAttachmentDescriptionStencilLayout, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refc8065ded != nil {
+ return x.refc8065ded, nil
+ }
+ memc8065ded := allocAttachmentDescriptionStencilLayoutMemory(1)
+ refc8065ded := (*C.VkAttachmentDescriptionStencilLayout)(memc8065ded)
+ allocsc8065ded := new(cgoAllocMap)
+ allocsc8065ded.Add(memc8065ded)
+
+ var csType_allocs *cgoAllocMap
+ refc8065ded.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsc8065ded.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refc8065ded.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsc8065ded.Borrow(cpNext_allocs)
+
+ var cstencilInitialLayout_allocs *cgoAllocMap
+ refc8065ded.stencilInitialLayout, cstencilInitialLayout_allocs = (C.VkImageLayout)(x.StencilInitialLayout), cgoAllocsUnknown
+ allocsc8065ded.Borrow(cstencilInitialLayout_allocs)
+
+ var cstencilFinalLayout_allocs *cgoAllocMap
+ refc8065ded.stencilFinalLayout, cstencilFinalLayout_allocs = (C.VkImageLayout)(x.StencilFinalLayout), cgoAllocsUnknown
+ allocsc8065ded.Borrow(cstencilFinalLayout_allocs)
+
+ x.refc8065ded = refc8065ded
+ x.allocsc8065ded = allocsc8065ded
+ return refc8065ded, allocsc8065ded
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x AttachmentDescriptionStencilLayout) PassValue() (C.VkAttachmentDescriptionStencilLayout, *cgoAllocMap) {
+ if x.refc8065ded != nil {
+ return *x.refc8065ded, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *AttachmentDescriptionStencilLayout) Deref() {
+ if x.refc8065ded == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refc8065ded.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc8065ded.pNext))
+ x.StencilInitialLayout = (ImageLayout)(x.refc8065ded.stencilInitialLayout)
+ x.StencilFinalLayout = (ImageLayout)(x.refc8065ded.stencilFinalLayout)
+}
+
+// allocPhysicalDeviceHostQueryResetFeaturesMemory allocates memory for type C.VkPhysicalDeviceHostQueryResetFeatures in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceHostQueryResetFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceHostQueryResetFeaturesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceHostQueryResetFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceHostQueryResetFeatures{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceHostQueryResetFeatures) Ref() *C.VkPhysicalDeviceHostQueryResetFeatures {
+ if x == nil {
+ return nil
+ }
+ return x.ref6ff2e40a
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceHostQueryResetFeatures) Free() {
+ if x != nil && x.allocs6ff2e40a != nil {
+ x.allocs6ff2e40a.(*cgoAllocMap).Free()
+ x.ref6ff2e40a = nil
+ }
+}
+
+// NewPhysicalDeviceHostQueryResetFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceHostQueryResetFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceHostQueryResetFeatures {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceHostQueryResetFeatures)
+ obj.ref6ff2e40a = (*C.VkPhysicalDeviceHostQueryResetFeatures)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceHostQueryResetFeatures) PassRef() (*C.VkPhysicalDeviceHostQueryResetFeatures, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref6ff2e40a != nil {
+ return x.ref6ff2e40a, nil
+ }
+ mem6ff2e40a := allocPhysicalDeviceHostQueryResetFeaturesMemory(1)
+ ref6ff2e40a := (*C.VkPhysicalDeviceHostQueryResetFeatures)(mem6ff2e40a)
+ allocs6ff2e40a := new(cgoAllocMap)
+ allocs6ff2e40a.Add(mem6ff2e40a)
+
+ var csType_allocs *cgoAllocMap
+ ref6ff2e40a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs6ff2e40a.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref6ff2e40a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs6ff2e40a.Borrow(cpNext_allocs)
+
+ var chostQueryReset_allocs *cgoAllocMap
+ ref6ff2e40a.hostQueryReset, chostQueryReset_allocs = (C.VkBool32)(x.HostQueryReset), cgoAllocsUnknown
+ allocs6ff2e40a.Borrow(chostQueryReset_allocs)
+
+ x.ref6ff2e40a = ref6ff2e40a
+ x.allocs6ff2e40a = allocs6ff2e40a
+ return ref6ff2e40a, allocs6ff2e40a
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceHostQueryResetFeatures) PassValue() (C.VkPhysicalDeviceHostQueryResetFeatures, *cgoAllocMap) {
+ if x.ref6ff2e40a != nil {
+ return *x.ref6ff2e40a, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceHostQueryResetFeatures) Deref() {
+ if x.ref6ff2e40a == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref6ff2e40a.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref6ff2e40a.pNext))
+ x.HostQueryReset = (Bool32)(x.ref6ff2e40a.hostQueryReset)
+}
+
+// allocPhysicalDeviceTimelineSemaphoreFeaturesMemory allocates memory for type C.VkPhysicalDeviceTimelineSemaphoreFeatures in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceTimelineSemaphoreFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceTimelineSemaphoreFeaturesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceTimelineSemaphoreFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceTimelineSemaphoreFeatures{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceTimelineSemaphoreFeatures) Ref() *C.VkPhysicalDeviceTimelineSemaphoreFeatures {
+ if x == nil {
+ return nil
+ }
+ return x.ref9260df2e
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceTimelineSemaphoreFeatures) Free() {
+ if x != nil && x.allocs9260df2e != nil {
+ x.allocs9260df2e.(*cgoAllocMap).Free()
+ x.ref9260df2e = nil
+ }
+}
+
+// NewPhysicalDeviceTimelineSemaphoreFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceTimelineSemaphoreFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceTimelineSemaphoreFeatures {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceTimelineSemaphoreFeatures)
+ obj.ref9260df2e = (*C.VkPhysicalDeviceTimelineSemaphoreFeatures)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceTimelineSemaphoreFeatures) PassRef() (*C.VkPhysicalDeviceTimelineSemaphoreFeatures, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref9260df2e != nil {
+ return x.ref9260df2e, nil
+ }
+ mem9260df2e := allocPhysicalDeviceTimelineSemaphoreFeaturesMemory(1)
+ ref9260df2e := (*C.VkPhysicalDeviceTimelineSemaphoreFeatures)(mem9260df2e)
+ allocs9260df2e := new(cgoAllocMap)
+ allocs9260df2e.Add(mem9260df2e)
+
+ var csType_allocs *cgoAllocMap
+ ref9260df2e.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs9260df2e.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref9260df2e.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs9260df2e.Borrow(cpNext_allocs)
+
+ var ctimelineSemaphore_allocs *cgoAllocMap
+ ref9260df2e.timelineSemaphore, ctimelineSemaphore_allocs = (C.VkBool32)(x.TimelineSemaphore), cgoAllocsUnknown
+ allocs9260df2e.Borrow(ctimelineSemaphore_allocs)
+
+ x.ref9260df2e = ref9260df2e
+ x.allocs9260df2e = allocs9260df2e
+ return ref9260df2e, allocs9260df2e
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceTimelineSemaphoreFeatures) PassValue() (C.VkPhysicalDeviceTimelineSemaphoreFeatures, *cgoAllocMap) {
+ if x.ref9260df2e != nil {
+ return *x.ref9260df2e, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceTimelineSemaphoreFeatures) Deref() {
+ if x.ref9260df2e == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref9260df2e.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref9260df2e.pNext))
+ x.TimelineSemaphore = (Bool32)(x.ref9260df2e.timelineSemaphore)
+}
+
+// allocPhysicalDeviceTimelineSemaphorePropertiesMemory allocates memory for type C.VkPhysicalDeviceTimelineSemaphoreProperties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceTimelineSemaphorePropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceTimelineSemaphorePropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceTimelineSemaphorePropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceTimelineSemaphoreProperties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceTimelineSemaphoreProperties) Ref() *C.VkPhysicalDeviceTimelineSemaphoreProperties {
+ if x == nil {
+ return nil
+ }
+ return x.ref74220563
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceTimelineSemaphoreProperties) Free() {
+ if x != nil && x.allocs74220563 != nil {
+ x.allocs74220563.(*cgoAllocMap).Free()
+ x.ref74220563 = nil
+ }
+}
+
+// NewPhysicalDeviceTimelineSemaphorePropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceTimelineSemaphorePropertiesRef(ref unsafe.Pointer) *PhysicalDeviceTimelineSemaphoreProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceTimelineSemaphoreProperties)
+ obj.ref74220563 = (*C.VkPhysicalDeviceTimelineSemaphoreProperties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceTimelineSemaphoreProperties) PassRef() (*C.VkPhysicalDeviceTimelineSemaphoreProperties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref74220563 != nil {
+ return x.ref74220563, nil
+ }
+ mem74220563 := allocPhysicalDeviceTimelineSemaphorePropertiesMemory(1)
+ ref74220563 := (*C.VkPhysicalDeviceTimelineSemaphoreProperties)(mem74220563)
+ allocs74220563 := new(cgoAllocMap)
+ allocs74220563.Add(mem74220563)
+
+ var csType_allocs *cgoAllocMap
+ ref74220563.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs74220563.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref74220563.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs74220563.Borrow(cpNext_allocs)
+
+ var cmaxTimelineSemaphoreValueDifference_allocs *cgoAllocMap
+ ref74220563.maxTimelineSemaphoreValueDifference, cmaxTimelineSemaphoreValueDifference_allocs = (C.uint64_t)(x.MaxTimelineSemaphoreValueDifference), cgoAllocsUnknown
+ allocs74220563.Borrow(cmaxTimelineSemaphoreValueDifference_allocs)
+
+ x.ref74220563 = ref74220563
+ x.allocs74220563 = allocs74220563
+ return ref74220563, allocs74220563
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceTimelineSemaphoreProperties) PassValue() (C.VkPhysicalDeviceTimelineSemaphoreProperties, *cgoAllocMap) {
+ if x.ref74220563 != nil {
+ return *x.ref74220563, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceTimelineSemaphoreProperties) Deref() {
+ if x.ref74220563 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref74220563.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref74220563.pNext))
+ x.MaxTimelineSemaphoreValueDifference = (uint64)(x.ref74220563.maxTimelineSemaphoreValueDifference)
+}
+
+// allocSemaphoreTypeCreateInfoMemory allocates memory for type C.VkSemaphoreTypeCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSemaphoreTypeCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSemaphoreTypeCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSemaphoreTypeCreateInfoValue = unsafe.Sizeof([1]C.VkSemaphoreTypeCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SemaphoreTypeCreateInfo) Ref() *C.VkSemaphoreTypeCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref4e668d65
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SemaphoreTypeCreateInfo) Free() {
+ if x != nil && x.allocs4e668d65 != nil {
+ x.allocs4e668d65.(*cgoAllocMap).Free()
+ x.ref4e668d65 = nil
+ }
+}
+
+// NewSemaphoreTypeCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSemaphoreTypeCreateInfoRef(ref unsafe.Pointer) *SemaphoreTypeCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SemaphoreTypeCreateInfo)
+ obj.ref4e668d65 = (*C.VkSemaphoreTypeCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SemaphoreTypeCreateInfo) PassRef() (*C.VkSemaphoreTypeCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref4e668d65 != nil {
+ return x.ref4e668d65, nil
+ }
+ mem4e668d65 := allocSemaphoreTypeCreateInfoMemory(1)
+ ref4e668d65 := (*C.VkSemaphoreTypeCreateInfo)(mem4e668d65)
+ allocs4e668d65 := new(cgoAllocMap)
+ allocs4e668d65.Add(mem4e668d65)
+
+ var csType_allocs *cgoAllocMap
+ ref4e668d65.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs4e668d65.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref4e668d65.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs4e668d65.Borrow(cpNext_allocs)
+
+ var csemaphoreType_allocs *cgoAllocMap
+ ref4e668d65.semaphoreType, csemaphoreType_allocs = (C.VkSemaphoreType)(x.SemaphoreType), cgoAllocsUnknown
+ allocs4e668d65.Borrow(csemaphoreType_allocs)
+
+ var cinitialValue_allocs *cgoAllocMap
+ ref4e668d65.initialValue, cinitialValue_allocs = (C.uint64_t)(x.InitialValue), cgoAllocsUnknown
+ allocs4e668d65.Borrow(cinitialValue_allocs)
+
+ x.ref4e668d65 = ref4e668d65
+ x.allocs4e668d65 = allocs4e668d65
+ return ref4e668d65, allocs4e668d65
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SemaphoreTypeCreateInfo) PassValue() (C.VkSemaphoreTypeCreateInfo, *cgoAllocMap) {
+ if x.ref4e668d65 != nil {
+ return *x.ref4e668d65, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SemaphoreTypeCreateInfo) Deref() {
+ if x.ref4e668d65 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref4e668d65.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref4e668d65.pNext))
+ x.SemaphoreType = (SemaphoreType)(x.ref4e668d65.semaphoreType)
+ x.InitialValue = (uint64)(x.ref4e668d65.initialValue)
+}
+
+// allocTimelineSemaphoreSubmitInfoMemory allocates memory for type C.VkTimelineSemaphoreSubmitInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocTimelineSemaphoreSubmitInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfTimelineSemaphoreSubmitInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfTimelineSemaphoreSubmitInfoValue = unsafe.Sizeof([1]C.VkTimelineSemaphoreSubmitInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *TimelineSemaphoreSubmitInfo) Ref() *C.VkTimelineSemaphoreSubmitInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refc447a049
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *TimelineSemaphoreSubmitInfo) Free() {
+ if x != nil && x.allocsc447a049 != nil {
+ x.allocsc447a049.(*cgoAllocMap).Free()
+ x.refc447a049 = nil
+ }
+}
+
+// NewTimelineSemaphoreSubmitInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewTimelineSemaphoreSubmitInfoRef(ref unsafe.Pointer) *TimelineSemaphoreSubmitInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(TimelineSemaphoreSubmitInfo)
+ obj.refc447a049 = (*C.VkTimelineSemaphoreSubmitInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *TimelineSemaphoreSubmitInfo) PassRef() (*C.VkTimelineSemaphoreSubmitInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refc447a049 != nil {
+ return x.refc447a049, nil
+ }
+ memc447a049 := allocTimelineSemaphoreSubmitInfoMemory(1)
+ refc447a049 := (*C.VkTimelineSemaphoreSubmitInfo)(memc447a049)
+ allocsc447a049 := new(cgoAllocMap)
+ allocsc447a049.Add(memc447a049)
+
+ var csType_allocs *cgoAllocMap
+ refc447a049.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsc447a049.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refc447a049.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsc447a049.Borrow(cpNext_allocs)
+
+ var cwaitSemaphoreValueCount_allocs *cgoAllocMap
+ refc447a049.waitSemaphoreValueCount, cwaitSemaphoreValueCount_allocs = (C.uint32_t)(x.WaitSemaphoreValueCount), cgoAllocsUnknown
+ allocsc447a049.Borrow(cwaitSemaphoreValueCount_allocs)
+
+ var cpWaitSemaphoreValues_allocs *cgoAllocMap
+ refc447a049.pWaitSemaphoreValues, cpWaitSemaphoreValues_allocs = (*C.uint64_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PWaitSemaphoreValues)).Data)), cgoAllocsUnknown
+ allocsc447a049.Borrow(cpWaitSemaphoreValues_allocs)
+
+ var csignalSemaphoreValueCount_allocs *cgoAllocMap
+ refc447a049.signalSemaphoreValueCount, csignalSemaphoreValueCount_allocs = (C.uint32_t)(x.SignalSemaphoreValueCount), cgoAllocsUnknown
+ allocsc447a049.Borrow(csignalSemaphoreValueCount_allocs)
+
+ var cpSignalSemaphoreValues_allocs *cgoAllocMap
+ refc447a049.pSignalSemaphoreValues, cpSignalSemaphoreValues_allocs = (*C.uint64_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PSignalSemaphoreValues)).Data)), cgoAllocsUnknown
+ allocsc447a049.Borrow(cpSignalSemaphoreValues_allocs)
+
+ x.refc447a049 = refc447a049
+ x.allocsc447a049 = allocsc447a049
+ return refc447a049, allocsc447a049
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x TimelineSemaphoreSubmitInfo) PassValue() (C.VkTimelineSemaphoreSubmitInfo, *cgoAllocMap) {
+ if x.refc447a049 != nil {
+ return *x.refc447a049, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *TimelineSemaphoreSubmitInfo) Deref() {
+ if x.refc447a049 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refc447a049.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc447a049.pNext))
+ x.WaitSemaphoreValueCount = (uint32)(x.refc447a049.waitSemaphoreValueCount)
+ hxfd687ee := (*sliceHeader)(unsafe.Pointer(&x.PWaitSemaphoreValues))
+ hxfd687ee.Data = unsafe.Pointer(x.refc447a049.pWaitSemaphoreValues)
+ hxfd687ee.Cap = 0x7fffffff
+ // hxfd687ee.Len = ?
+
+ x.SignalSemaphoreValueCount = (uint32)(x.refc447a049.signalSemaphoreValueCount)
+ hxf15a567 := (*sliceHeader)(unsafe.Pointer(&x.PSignalSemaphoreValues))
+ hxf15a567.Data = unsafe.Pointer(x.refc447a049.pSignalSemaphoreValues)
+ hxf15a567.Cap = 0x7fffffff
+ // hxf15a567.Len = ?
+
+}
+
+// allocSemaphoreWaitInfoMemory allocates memory for type C.VkSemaphoreWaitInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSemaphoreWaitInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSemaphoreWaitInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSemaphoreWaitInfoValue = unsafe.Sizeof([1]C.VkSemaphoreWaitInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SemaphoreWaitInfo) Ref() *C.VkSemaphoreWaitInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref5e4f71e8
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SemaphoreWaitInfo) Free() {
+ if x != nil && x.allocs5e4f71e8 != nil {
+ x.allocs5e4f71e8.(*cgoAllocMap).Free()
+ x.ref5e4f71e8 = nil
+ }
+}
+
+// NewSemaphoreWaitInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSemaphoreWaitInfoRef(ref unsafe.Pointer) *SemaphoreWaitInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SemaphoreWaitInfo)
+ obj.ref5e4f71e8 = (*C.VkSemaphoreWaitInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SemaphoreWaitInfo) PassRef() (*C.VkSemaphoreWaitInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref5e4f71e8 != nil {
+ return x.ref5e4f71e8, nil
+ }
+ mem5e4f71e8 := allocSemaphoreWaitInfoMemory(1)
+ ref5e4f71e8 := (*C.VkSemaphoreWaitInfo)(mem5e4f71e8)
+ allocs5e4f71e8 := new(cgoAllocMap)
+ allocs5e4f71e8.Add(mem5e4f71e8)
+
+ var csType_allocs *cgoAllocMap
+ ref5e4f71e8.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs5e4f71e8.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref5e4f71e8.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs5e4f71e8.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref5e4f71e8.flags, cflags_allocs = (C.VkSemaphoreWaitFlags)(x.Flags), cgoAllocsUnknown
+ allocs5e4f71e8.Borrow(cflags_allocs)
+
+ var csemaphoreCount_allocs *cgoAllocMap
+ ref5e4f71e8.semaphoreCount, csemaphoreCount_allocs = (C.uint32_t)(x.SemaphoreCount), cgoAllocsUnknown
+ allocs5e4f71e8.Borrow(csemaphoreCount_allocs)
+
+ var cpSemaphores_allocs *cgoAllocMap
+ ref5e4f71e8.pSemaphores, cpSemaphores_allocs = (*C.VkSemaphore)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PSemaphores)).Data)), cgoAllocsUnknown
+ allocs5e4f71e8.Borrow(cpSemaphores_allocs)
+
+ var cpValues_allocs *cgoAllocMap
+ ref5e4f71e8.pValues, cpValues_allocs = (*C.uint64_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PValues)).Data)), cgoAllocsUnknown
+ allocs5e4f71e8.Borrow(cpValues_allocs)
+
+ x.ref5e4f71e8 = ref5e4f71e8
+ x.allocs5e4f71e8 = allocs5e4f71e8
+ return ref5e4f71e8, allocs5e4f71e8
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SemaphoreWaitInfo) PassValue() (C.VkSemaphoreWaitInfo, *cgoAllocMap) {
+ if x.ref5e4f71e8 != nil {
+ return *x.ref5e4f71e8, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SemaphoreWaitInfo) Deref() {
+ if x.ref5e4f71e8 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref5e4f71e8.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5e4f71e8.pNext))
+ x.Flags = (SemaphoreWaitFlags)(x.ref5e4f71e8.flags)
+ x.SemaphoreCount = (uint32)(x.ref5e4f71e8.semaphoreCount)
+ hxf8aebb5 := (*sliceHeader)(unsafe.Pointer(&x.PSemaphores))
+ hxf8aebb5.Data = unsafe.Pointer(x.ref5e4f71e8.pSemaphores)
+ hxf8aebb5.Cap = 0x7fffffff
+ // hxf8aebb5.Len = ?
+
+ hxf5d30cf := (*sliceHeader)(unsafe.Pointer(&x.PValues))
+ hxf5d30cf.Data = unsafe.Pointer(x.ref5e4f71e8.pValues)
+ hxf5d30cf.Cap = 0x7fffffff
+ // hxf5d30cf.Len = ?
+
+}
+
+// allocSemaphoreSignalInfoMemory allocates memory for type C.VkSemaphoreSignalInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSemaphoreSignalInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSemaphoreSignalInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSemaphoreSignalInfoValue = unsafe.Sizeof([1]C.VkSemaphoreSignalInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SemaphoreSignalInfo) Ref() *C.VkSemaphoreSignalInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref126d16a2
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SemaphoreSignalInfo) Free() {
+ if x != nil && x.allocs126d16a2 != nil {
+ x.allocs126d16a2.(*cgoAllocMap).Free()
+ x.ref126d16a2 = nil
+ }
+}
+
+// NewSemaphoreSignalInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSemaphoreSignalInfoRef(ref unsafe.Pointer) *SemaphoreSignalInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SemaphoreSignalInfo)
+ obj.ref126d16a2 = (*C.VkSemaphoreSignalInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SemaphoreSignalInfo) PassRef() (*C.VkSemaphoreSignalInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref126d16a2 != nil {
+ return x.ref126d16a2, nil
+ }
+ mem126d16a2 := allocSemaphoreSignalInfoMemory(1)
+ ref126d16a2 := (*C.VkSemaphoreSignalInfo)(mem126d16a2)
+ allocs126d16a2 := new(cgoAllocMap)
+ allocs126d16a2.Add(mem126d16a2)
+
+ var csType_allocs *cgoAllocMap
+ ref126d16a2.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs126d16a2.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref126d16a2.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs126d16a2.Borrow(cpNext_allocs)
+
+ var csemaphore_allocs *cgoAllocMap
+ ref126d16a2.semaphore, csemaphore_allocs = *(*C.VkSemaphore)(unsafe.Pointer(&x.Semaphore)), cgoAllocsUnknown
+ allocs126d16a2.Borrow(csemaphore_allocs)
+
+ var cvalue_allocs *cgoAllocMap
+ ref126d16a2.value, cvalue_allocs = (C.uint64_t)(x.Value), cgoAllocsUnknown
+ allocs126d16a2.Borrow(cvalue_allocs)
+
+ x.ref126d16a2 = ref126d16a2
+ x.allocs126d16a2 = allocs126d16a2
+ return ref126d16a2, allocs126d16a2
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SemaphoreSignalInfo) PassValue() (C.VkSemaphoreSignalInfo, *cgoAllocMap) {
+ if x.ref126d16a2 != nil {
+ return *x.ref126d16a2, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SemaphoreSignalInfo) Deref() {
+ if x.ref126d16a2 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref126d16a2.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref126d16a2.pNext))
+ x.Semaphore = *(*Semaphore)(unsafe.Pointer(&x.ref126d16a2.semaphore))
+ x.Value = (uint64)(x.ref126d16a2.value)
+}
+
+// allocPhysicalDeviceBufferDeviceAddressFeaturesMemory allocates memory for type C.VkPhysicalDeviceBufferDeviceAddressFeatures in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceBufferDeviceAddressFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceBufferDeviceAddressFeaturesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceBufferDeviceAddressFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceBufferDeviceAddressFeatures{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceBufferDeviceAddressFeatures) Ref() *C.VkPhysicalDeviceBufferDeviceAddressFeatures {
+ if x == nil {
+ return nil
+ }
+ return x.ref13b242c3
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceBufferDeviceAddressFeatures) Free() {
+ if x != nil && x.allocs13b242c3 != nil {
+ x.allocs13b242c3.(*cgoAllocMap).Free()
+ x.ref13b242c3 = nil
+ }
+}
+
+// NewPhysicalDeviceBufferDeviceAddressFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceBufferDeviceAddressFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceBufferDeviceAddressFeatures {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceBufferDeviceAddressFeatures)
+ obj.ref13b242c3 = (*C.VkPhysicalDeviceBufferDeviceAddressFeatures)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceBufferDeviceAddressFeatures) PassRef() (*C.VkPhysicalDeviceBufferDeviceAddressFeatures, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref13b242c3 != nil {
+ return x.ref13b242c3, nil
+ }
+ mem13b242c3 := allocPhysicalDeviceBufferDeviceAddressFeaturesMemory(1)
+ ref13b242c3 := (*C.VkPhysicalDeviceBufferDeviceAddressFeatures)(mem13b242c3)
+ allocs13b242c3 := new(cgoAllocMap)
+ allocs13b242c3.Add(mem13b242c3)
+
+ var csType_allocs *cgoAllocMap
+ ref13b242c3.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs13b242c3.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref13b242c3.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs13b242c3.Borrow(cpNext_allocs)
+
+ var cbufferDeviceAddress_allocs *cgoAllocMap
+ ref13b242c3.bufferDeviceAddress, cbufferDeviceAddress_allocs = (C.VkBool32)(x.BufferDeviceAddress), cgoAllocsUnknown
+ allocs13b242c3.Borrow(cbufferDeviceAddress_allocs)
+
+ var cbufferDeviceAddressCaptureReplay_allocs *cgoAllocMap
+ ref13b242c3.bufferDeviceAddressCaptureReplay, cbufferDeviceAddressCaptureReplay_allocs = (C.VkBool32)(x.BufferDeviceAddressCaptureReplay), cgoAllocsUnknown
+ allocs13b242c3.Borrow(cbufferDeviceAddressCaptureReplay_allocs)
+
+ var cbufferDeviceAddressMultiDevice_allocs *cgoAllocMap
+ ref13b242c3.bufferDeviceAddressMultiDevice, cbufferDeviceAddressMultiDevice_allocs = (C.VkBool32)(x.BufferDeviceAddressMultiDevice), cgoAllocsUnknown
+ allocs13b242c3.Borrow(cbufferDeviceAddressMultiDevice_allocs)
+
+ x.ref13b242c3 = ref13b242c3
+ x.allocs13b242c3 = allocs13b242c3
+ return ref13b242c3, allocs13b242c3
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceBufferDeviceAddressFeatures) PassValue() (C.VkPhysicalDeviceBufferDeviceAddressFeatures, *cgoAllocMap) {
+ if x.ref13b242c3 != nil {
+ return *x.ref13b242c3, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceBufferDeviceAddressFeatures) Deref() {
+ if x.ref13b242c3 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref13b242c3.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref13b242c3.pNext))
+ x.BufferDeviceAddress = (Bool32)(x.ref13b242c3.bufferDeviceAddress)
+ x.BufferDeviceAddressCaptureReplay = (Bool32)(x.ref13b242c3.bufferDeviceAddressCaptureReplay)
+ x.BufferDeviceAddressMultiDevice = (Bool32)(x.ref13b242c3.bufferDeviceAddressMultiDevice)
+}
+
+// allocBufferDeviceAddressInfoMemory allocates memory for type C.VkBufferDeviceAddressInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocBufferDeviceAddressInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBufferDeviceAddressInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfBufferDeviceAddressInfoValue = unsafe.Sizeof([1]C.VkBufferDeviceAddressInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *BufferDeviceAddressInfo) Ref() *C.VkBufferDeviceAddressInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref347b43e3
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *BufferDeviceAddressInfo) Free() {
+ if x != nil && x.allocs347b43e3 != nil {
+ x.allocs347b43e3.(*cgoAllocMap).Free()
+ x.ref347b43e3 = nil
+ }
+}
+
+// NewBufferDeviceAddressInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewBufferDeviceAddressInfoRef(ref unsafe.Pointer) *BufferDeviceAddressInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(BufferDeviceAddressInfo)
+ obj.ref347b43e3 = (*C.VkBufferDeviceAddressInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *BufferDeviceAddressInfo) PassRef() (*C.VkBufferDeviceAddressInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref347b43e3 != nil {
+ return x.ref347b43e3, nil
+ }
+ mem347b43e3 := allocBufferDeviceAddressInfoMemory(1)
+ ref347b43e3 := (*C.VkBufferDeviceAddressInfo)(mem347b43e3)
+ allocs347b43e3 := new(cgoAllocMap)
+ allocs347b43e3.Add(mem347b43e3)
+
+ var csType_allocs *cgoAllocMap
+ ref347b43e3.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs347b43e3.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref347b43e3.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs347b43e3.Borrow(cpNext_allocs)
+
+ var cbuffer_allocs *cgoAllocMap
+ ref347b43e3.buffer, cbuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.Buffer)), cgoAllocsUnknown
+ allocs347b43e3.Borrow(cbuffer_allocs)
+
+ x.ref347b43e3 = ref347b43e3
+ x.allocs347b43e3 = allocs347b43e3
+ return ref347b43e3, allocs347b43e3
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x BufferDeviceAddressInfo) PassValue() (C.VkBufferDeviceAddressInfo, *cgoAllocMap) {
+ if x.ref347b43e3 != nil {
+ return *x.ref347b43e3, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *BufferDeviceAddressInfo) Deref() {
+ if x.ref347b43e3 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref347b43e3.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref347b43e3.pNext))
+ x.Buffer = *(*Buffer)(unsafe.Pointer(&x.ref347b43e3.buffer))
+}
+
+// allocBufferOpaqueCaptureAddressCreateInfoMemory allocates memory for type C.VkBufferOpaqueCaptureAddressCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocBufferOpaqueCaptureAddressCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBufferOpaqueCaptureAddressCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfBufferOpaqueCaptureAddressCreateInfoValue = unsafe.Sizeof([1]C.VkBufferOpaqueCaptureAddressCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *BufferOpaqueCaptureAddressCreateInfo) Ref() *C.VkBufferOpaqueCaptureAddressCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refb0364ded
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *BufferOpaqueCaptureAddressCreateInfo) Free() {
+ if x != nil && x.allocsb0364ded != nil {
+ x.allocsb0364ded.(*cgoAllocMap).Free()
+ x.refb0364ded = nil
+ }
+}
+
+// NewBufferOpaqueCaptureAddressCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewBufferOpaqueCaptureAddressCreateInfoRef(ref unsafe.Pointer) *BufferOpaqueCaptureAddressCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(BufferOpaqueCaptureAddressCreateInfo)
+ obj.refb0364ded = (*C.VkBufferOpaqueCaptureAddressCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *BufferOpaqueCaptureAddressCreateInfo) PassRef() (*C.VkBufferOpaqueCaptureAddressCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refb0364ded != nil {
+ return x.refb0364ded, nil
+ }
+ memb0364ded := allocBufferOpaqueCaptureAddressCreateInfoMemory(1)
+ refb0364ded := (*C.VkBufferOpaqueCaptureAddressCreateInfo)(memb0364ded)
+ allocsb0364ded := new(cgoAllocMap)
+ allocsb0364ded.Add(memb0364ded)
+
+ var csType_allocs *cgoAllocMap
+ refb0364ded.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsb0364ded.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refb0364ded.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsb0364ded.Borrow(cpNext_allocs)
+
+ var copaqueCaptureAddress_allocs *cgoAllocMap
+ refb0364ded.opaqueCaptureAddress, copaqueCaptureAddress_allocs = (C.uint64_t)(x.OpaqueCaptureAddress), cgoAllocsUnknown
+ allocsb0364ded.Borrow(copaqueCaptureAddress_allocs)
+
+ x.refb0364ded = refb0364ded
+ x.allocsb0364ded = allocsb0364ded
+ return refb0364ded, allocsb0364ded
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x BufferOpaqueCaptureAddressCreateInfo) PassValue() (C.VkBufferOpaqueCaptureAddressCreateInfo, *cgoAllocMap) {
+ if x.refb0364ded != nil {
+ return *x.refb0364ded, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *BufferOpaqueCaptureAddressCreateInfo) Deref() {
+ if x.refb0364ded == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refb0364ded.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb0364ded.pNext))
+ x.OpaqueCaptureAddress = (uint64)(x.refb0364ded.opaqueCaptureAddress)
+}
+
+// allocMemoryOpaqueCaptureAddressAllocateInfoMemory allocates memory for type C.VkMemoryOpaqueCaptureAddressAllocateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocMemoryOpaqueCaptureAddressAllocateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMemoryOpaqueCaptureAddressAllocateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfMemoryOpaqueCaptureAddressAllocateInfoValue = unsafe.Sizeof([1]C.VkMemoryOpaqueCaptureAddressAllocateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *MemoryOpaqueCaptureAddressAllocateInfo) Ref() *C.VkMemoryOpaqueCaptureAddressAllocateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refe361764c
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *MemoryOpaqueCaptureAddressAllocateInfo) Free() {
+ if x != nil && x.allocse361764c != nil {
+ x.allocse361764c.(*cgoAllocMap).Free()
+ x.refe361764c = nil
+ }
+}
+
+// NewMemoryOpaqueCaptureAddressAllocateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewMemoryOpaqueCaptureAddressAllocateInfoRef(ref unsafe.Pointer) *MemoryOpaqueCaptureAddressAllocateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(MemoryOpaqueCaptureAddressAllocateInfo)
+ obj.refe361764c = (*C.VkMemoryOpaqueCaptureAddressAllocateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *MemoryOpaqueCaptureAddressAllocateInfo) PassRef() (*C.VkMemoryOpaqueCaptureAddressAllocateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refe361764c != nil {
+ return x.refe361764c, nil
+ }
+ meme361764c := allocMemoryOpaqueCaptureAddressAllocateInfoMemory(1)
+ refe361764c := (*C.VkMemoryOpaqueCaptureAddressAllocateInfo)(meme361764c)
+ allocse361764c := new(cgoAllocMap)
+ allocse361764c.Add(meme361764c)
+
+ var csType_allocs *cgoAllocMap
+ refe361764c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocse361764c.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refe361764c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocse361764c.Borrow(cpNext_allocs)
+
+ var copaqueCaptureAddress_allocs *cgoAllocMap
+ refe361764c.opaqueCaptureAddress, copaqueCaptureAddress_allocs = (C.uint64_t)(x.OpaqueCaptureAddress), cgoAllocsUnknown
+ allocse361764c.Borrow(copaqueCaptureAddress_allocs)
+
+ x.refe361764c = refe361764c
+ x.allocse361764c = allocse361764c
+ return refe361764c, allocse361764c
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x MemoryOpaqueCaptureAddressAllocateInfo) PassValue() (C.VkMemoryOpaqueCaptureAddressAllocateInfo, *cgoAllocMap) {
+ if x.refe361764c != nil {
+ return *x.refe361764c, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *MemoryOpaqueCaptureAddressAllocateInfo) Deref() {
+ if x.refe361764c == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refe361764c.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refe361764c.pNext))
+ x.OpaqueCaptureAddress = (uint64)(x.refe361764c.opaqueCaptureAddress)
+}
+
+// allocDeviceMemoryOpaqueCaptureAddressInfoMemory allocates memory for type C.VkDeviceMemoryOpaqueCaptureAddressInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocDeviceMemoryOpaqueCaptureAddressInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceMemoryOpaqueCaptureAddressInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfDeviceMemoryOpaqueCaptureAddressInfoValue = unsafe.Sizeof([1]C.VkDeviceMemoryOpaqueCaptureAddressInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *DeviceMemoryOpaqueCaptureAddressInfo) Ref() *C.VkDeviceMemoryOpaqueCaptureAddressInfo {
+ if x == nil {
+ return nil
+ }
+ return x.refbbe30c6e
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *DeviceMemoryOpaqueCaptureAddressInfo) Free() {
+ if x != nil && x.allocsbbe30c6e != nil {
+ x.allocsbbe30c6e.(*cgoAllocMap).Free()
+ x.refbbe30c6e = nil
+ }
+}
+
+// NewDeviceMemoryOpaqueCaptureAddressInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewDeviceMemoryOpaqueCaptureAddressInfoRef(ref unsafe.Pointer) *DeviceMemoryOpaqueCaptureAddressInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(DeviceMemoryOpaqueCaptureAddressInfo)
+ obj.refbbe30c6e = (*C.VkDeviceMemoryOpaqueCaptureAddressInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DeviceMemoryOpaqueCaptureAddressInfo) PassRef() (*C.VkDeviceMemoryOpaqueCaptureAddressInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refbbe30c6e != nil {
+ return x.refbbe30c6e, nil
+ }
+ membbe30c6e := allocDeviceMemoryOpaqueCaptureAddressInfoMemory(1)
+ refbbe30c6e := (*C.VkDeviceMemoryOpaqueCaptureAddressInfo)(membbe30c6e)
+ allocsbbe30c6e := new(cgoAllocMap)
+ allocsbbe30c6e.Add(membbe30c6e)
+
+ var csType_allocs *cgoAllocMap
+ refbbe30c6e.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsbbe30c6e.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refbbe30c6e.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsbbe30c6e.Borrow(cpNext_allocs)
+
+ var cmemory_allocs *cgoAllocMap
+ refbbe30c6e.memory, cmemory_allocs = *(*C.VkDeviceMemory)(unsafe.Pointer(&x.Memory)), cgoAllocsUnknown
+ allocsbbe30c6e.Borrow(cmemory_allocs)
+
+ x.refbbe30c6e = refbbe30c6e
+ x.allocsbbe30c6e = allocsbbe30c6e
+ return refbbe30c6e, allocsbbe30c6e
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DeviceMemoryOpaqueCaptureAddressInfo) PassValue() (C.VkDeviceMemoryOpaqueCaptureAddressInfo, *cgoAllocMap) {
+ if x.refbbe30c6e != nil {
+ return *x.refbbe30c6e, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *DeviceMemoryOpaqueCaptureAddressInfo) Deref() {
+ if x.refbbe30c6e == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refbbe30c6e.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refbbe30c6e.pNext))
+ x.Memory = *(*DeviceMemory)(unsafe.Pointer(&x.refbbe30c6e.memory))
+}
+
+// allocPhysicalDeviceVulkan13FeaturesMemory allocates memory for type C.VkPhysicalDeviceVulkan13Features in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceVulkan13FeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceVulkan13FeaturesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceVulkan13FeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceVulkan13Features{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceVulkan13Features) Ref() *C.VkPhysicalDeviceVulkan13Features {
+ if x == nil {
+ return nil
+ }
+ return x.reffbc57469
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceVulkan13Features) Free() {
+ if x != nil && x.allocsfbc57469 != nil {
+ x.allocsfbc57469.(*cgoAllocMap).Free()
+ x.reffbc57469 = nil
+ }
+}
+
+// NewPhysicalDeviceVulkan13FeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceVulkan13FeaturesRef(ref unsafe.Pointer) *PhysicalDeviceVulkan13Features {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceVulkan13Features)
+ obj.reffbc57469 = (*C.VkPhysicalDeviceVulkan13Features)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceVulkan13Features) PassRef() (*C.VkPhysicalDeviceVulkan13Features, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.reffbc57469 != nil {
+ return x.reffbc57469, nil
+ }
+ memfbc57469 := allocPhysicalDeviceVulkan13FeaturesMemory(1)
+ reffbc57469 := (*C.VkPhysicalDeviceVulkan13Features)(memfbc57469)
+ allocsfbc57469 := new(cgoAllocMap)
+ allocsfbc57469.Add(memfbc57469)
+
+ var csType_allocs *cgoAllocMap
+ reffbc57469.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsfbc57469.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ reffbc57469.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsfbc57469.Borrow(cpNext_allocs)
+
+ var crobustImageAccess_allocs *cgoAllocMap
+ reffbc57469.robustImageAccess, crobustImageAccess_allocs = (C.VkBool32)(x.RobustImageAccess), cgoAllocsUnknown
+ allocsfbc57469.Borrow(crobustImageAccess_allocs)
+
+ var cinlineUniformBlock_allocs *cgoAllocMap
+ reffbc57469.inlineUniformBlock, cinlineUniformBlock_allocs = (C.VkBool32)(x.InlineUniformBlock), cgoAllocsUnknown
+ allocsfbc57469.Borrow(cinlineUniformBlock_allocs)
+
+ var cdescriptorBindingInlineUniformBlockUpdateAfterBind_allocs *cgoAllocMap
+ reffbc57469.descriptorBindingInlineUniformBlockUpdateAfterBind, cdescriptorBindingInlineUniformBlockUpdateAfterBind_allocs = (C.VkBool32)(x.DescriptorBindingInlineUniformBlockUpdateAfterBind), cgoAllocsUnknown
+ allocsfbc57469.Borrow(cdescriptorBindingInlineUniformBlockUpdateAfterBind_allocs)
+
+ var cpipelineCreationCacheControl_allocs *cgoAllocMap
+ reffbc57469.pipelineCreationCacheControl, cpipelineCreationCacheControl_allocs = (C.VkBool32)(x.PipelineCreationCacheControl), cgoAllocsUnknown
+ allocsfbc57469.Borrow(cpipelineCreationCacheControl_allocs)
+
+ var cprivateData_allocs *cgoAllocMap
+ reffbc57469.privateData, cprivateData_allocs = (C.VkBool32)(x.PrivateData), cgoAllocsUnknown
+ allocsfbc57469.Borrow(cprivateData_allocs)
+
+ var cshaderDemoteToHelperInvocation_allocs *cgoAllocMap
+ reffbc57469.shaderDemoteToHelperInvocation, cshaderDemoteToHelperInvocation_allocs = (C.VkBool32)(x.ShaderDemoteToHelperInvocation), cgoAllocsUnknown
+ allocsfbc57469.Borrow(cshaderDemoteToHelperInvocation_allocs)
+
+ var cshaderTerminateInvocation_allocs *cgoAllocMap
+ reffbc57469.shaderTerminateInvocation, cshaderTerminateInvocation_allocs = (C.VkBool32)(x.ShaderTerminateInvocation), cgoAllocsUnknown
+ allocsfbc57469.Borrow(cshaderTerminateInvocation_allocs)
+
+ var csubgroupSizeControl_allocs *cgoAllocMap
+ reffbc57469.subgroupSizeControl, csubgroupSizeControl_allocs = (C.VkBool32)(x.SubgroupSizeControl), cgoAllocsUnknown
+ allocsfbc57469.Borrow(csubgroupSizeControl_allocs)
+
+ var ccomputeFullSubgroups_allocs *cgoAllocMap
+ reffbc57469.computeFullSubgroups, ccomputeFullSubgroups_allocs = (C.VkBool32)(x.ComputeFullSubgroups), cgoAllocsUnknown
+ allocsfbc57469.Borrow(ccomputeFullSubgroups_allocs)
+
+ var csynchronization2_allocs *cgoAllocMap
+ reffbc57469.synchronization2, csynchronization2_allocs = (C.VkBool32)(x.Synchronization2), cgoAllocsUnknown
+ allocsfbc57469.Borrow(csynchronization2_allocs)
+
+ var ctextureCompressionASTC_HDR_allocs *cgoAllocMap
+ reffbc57469.textureCompressionASTC_HDR, ctextureCompressionASTC_HDR_allocs = (C.VkBool32)(x.TextureCompressionASTC_HDR), cgoAllocsUnknown
+ allocsfbc57469.Borrow(ctextureCompressionASTC_HDR_allocs)
+
+ var cshaderZeroInitializeWorkgroupMemory_allocs *cgoAllocMap
+ reffbc57469.shaderZeroInitializeWorkgroupMemory, cshaderZeroInitializeWorkgroupMemory_allocs = (C.VkBool32)(x.ShaderZeroInitializeWorkgroupMemory), cgoAllocsUnknown
+ allocsfbc57469.Borrow(cshaderZeroInitializeWorkgroupMemory_allocs)
+
+ var cdynamicRendering_allocs *cgoAllocMap
+ reffbc57469.dynamicRendering, cdynamicRendering_allocs = (C.VkBool32)(x.DynamicRendering), cgoAllocsUnknown
+ allocsfbc57469.Borrow(cdynamicRendering_allocs)
+
+ var cshaderIntegerDotProduct_allocs *cgoAllocMap
+ reffbc57469.shaderIntegerDotProduct, cshaderIntegerDotProduct_allocs = (C.VkBool32)(x.ShaderIntegerDotProduct), cgoAllocsUnknown
+ allocsfbc57469.Borrow(cshaderIntegerDotProduct_allocs)
+
+ var cmaintenance4_allocs *cgoAllocMap
+ reffbc57469.maintenance4, cmaintenance4_allocs = (C.VkBool32)(x.Maintenance4), cgoAllocsUnknown
+ allocsfbc57469.Borrow(cmaintenance4_allocs)
+
+ x.reffbc57469 = reffbc57469
+ x.allocsfbc57469 = allocsfbc57469
+ return reffbc57469, allocsfbc57469
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceVulkan13Features) PassValue() (C.VkPhysicalDeviceVulkan13Features, *cgoAllocMap) {
+ if x.reffbc57469 != nil {
+ return *x.reffbc57469, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceVulkan13Features) Deref() {
+ if x.reffbc57469 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.reffbc57469.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reffbc57469.pNext))
+ x.RobustImageAccess = (Bool32)(x.reffbc57469.robustImageAccess)
+ x.InlineUniformBlock = (Bool32)(x.reffbc57469.inlineUniformBlock)
+ x.DescriptorBindingInlineUniformBlockUpdateAfterBind = (Bool32)(x.reffbc57469.descriptorBindingInlineUniformBlockUpdateAfterBind)
+ x.PipelineCreationCacheControl = (Bool32)(x.reffbc57469.pipelineCreationCacheControl)
+ x.PrivateData = (Bool32)(x.reffbc57469.privateData)
+ x.ShaderDemoteToHelperInvocation = (Bool32)(x.reffbc57469.shaderDemoteToHelperInvocation)
+ x.ShaderTerminateInvocation = (Bool32)(x.reffbc57469.shaderTerminateInvocation)
+ x.SubgroupSizeControl = (Bool32)(x.reffbc57469.subgroupSizeControl)
+ x.ComputeFullSubgroups = (Bool32)(x.reffbc57469.computeFullSubgroups)
+ x.Synchronization2 = (Bool32)(x.reffbc57469.synchronization2)
+ x.TextureCompressionASTC_HDR = (Bool32)(x.reffbc57469.textureCompressionASTC_HDR)
+ x.ShaderZeroInitializeWorkgroupMemory = (Bool32)(x.reffbc57469.shaderZeroInitializeWorkgroupMemory)
+ x.DynamicRendering = (Bool32)(x.reffbc57469.dynamicRendering)
+ x.ShaderIntegerDotProduct = (Bool32)(x.reffbc57469.shaderIntegerDotProduct)
+ x.Maintenance4 = (Bool32)(x.reffbc57469.maintenance4)
+}
+
+// allocPhysicalDeviceVulkan13PropertiesMemory allocates memory for type C.VkPhysicalDeviceVulkan13Properties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceVulkan13PropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceVulkan13PropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceVulkan13PropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceVulkan13Properties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceVulkan13Properties) Ref() *C.VkPhysicalDeviceVulkan13Properties {
+ if x == nil {
+ return nil
+ }
+ return x.ref8a1ecf64
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceVulkan13Properties) Free() {
+ if x != nil && x.allocs8a1ecf64 != nil {
+ x.allocs8a1ecf64.(*cgoAllocMap).Free()
+ x.ref8a1ecf64 = nil
+ }
+}
+
+// NewPhysicalDeviceVulkan13PropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceVulkan13PropertiesRef(ref unsafe.Pointer) *PhysicalDeviceVulkan13Properties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceVulkan13Properties)
+ obj.ref8a1ecf64 = (*C.VkPhysicalDeviceVulkan13Properties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceVulkan13Properties) PassRef() (*C.VkPhysicalDeviceVulkan13Properties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref8a1ecf64 != nil {
+ return x.ref8a1ecf64, nil
+ }
+ mem8a1ecf64 := allocPhysicalDeviceVulkan13PropertiesMemory(1)
+ ref8a1ecf64 := (*C.VkPhysicalDeviceVulkan13Properties)(mem8a1ecf64)
+ allocs8a1ecf64 := new(cgoAllocMap)
+ allocs8a1ecf64.Add(mem8a1ecf64)
+
+ var csType_allocs *cgoAllocMap
+ ref8a1ecf64.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref8a1ecf64.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cpNext_allocs)
+
+ var cminSubgroupSize_allocs *cgoAllocMap
+ ref8a1ecf64.minSubgroupSize, cminSubgroupSize_allocs = (C.uint32_t)(x.MinSubgroupSize), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cminSubgroupSize_allocs)
+
+ var cmaxSubgroupSize_allocs *cgoAllocMap
+ ref8a1ecf64.maxSubgroupSize, cmaxSubgroupSize_allocs = (C.uint32_t)(x.MaxSubgroupSize), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cmaxSubgroupSize_allocs)
+
+ var cmaxComputeWorkgroupSubgroups_allocs *cgoAllocMap
+ ref8a1ecf64.maxComputeWorkgroupSubgroups, cmaxComputeWorkgroupSubgroups_allocs = (C.uint32_t)(x.MaxComputeWorkgroupSubgroups), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cmaxComputeWorkgroupSubgroups_allocs)
+
+ var crequiredSubgroupSizeStages_allocs *cgoAllocMap
+ ref8a1ecf64.requiredSubgroupSizeStages, crequiredSubgroupSizeStages_allocs = (C.VkShaderStageFlags)(x.RequiredSubgroupSizeStages), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(crequiredSubgroupSizeStages_allocs)
+
+ var cmaxInlineUniformBlockSize_allocs *cgoAllocMap
+ ref8a1ecf64.maxInlineUniformBlockSize, cmaxInlineUniformBlockSize_allocs = (C.uint32_t)(x.MaxInlineUniformBlockSize), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cmaxInlineUniformBlockSize_allocs)
+
+ var cmaxPerStageDescriptorInlineUniformBlocks_allocs *cgoAllocMap
+ ref8a1ecf64.maxPerStageDescriptorInlineUniformBlocks, cmaxPerStageDescriptorInlineUniformBlocks_allocs = (C.uint32_t)(x.MaxPerStageDescriptorInlineUniformBlocks), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cmaxPerStageDescriptorInlineUniformBlocks_allocs)
+
+ var cmaxPerStageDescriptorUpdateAfterBindInlineUniformBlocks_allocs *cgoAllocMap
+ ref8a1ecf64.maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks, cmaxPerStageDescriptorUpdateAfterBindInlineUniformBlocks_allocs = (C.uint32_t)(x.MaxPerStageDescriptorUpdateAfterBindInlineUniformBlocks), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cmaxPerStageDescriptorUpdateAfterBindInlineUniformBlocks_allocs)
+
+ var cmaxDescriptorSetInlineUniformBlocks_allocs *cgoAllocMap
+ ref8a1ecf64.maxDescriptorSetInlineUniformBlocks, cmaxDescriptorSetInlineUniformBlocks_allocs = (C.uint32_t)(x.MaxDescriptorSetInlineUniformBlocks), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cmaxDescriptorSetInlineUniformBlocks_allocs)
+
+ var cmaxDescriptorSetUpdateAfterBindInlineUniformBlocks_allocs *cgoAllocMap
+ ref8a1ecf64.maxDescriptorSetUpdateAfterBindInlineUniformBlocks, cmaxDescriptorSetUpdateAfterBindInlineUniformBlocks_allocs = (C.uint32_t)(x.MaxDescriptorSetUpdateAfterBindInlineUniformBlocks), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cmaxDescriptorSetUpdateAfterBindInlineUniformBlocks_allocs)
+
+ var cmaxInlineUniformTotalSize_allocs *cgoAllocMap
+ ref8a1ecf64.maxInlineUniformTotalSize, cmaxInlineUniformTotalSize_allocs = (C.uint32_t)(x.MaxInlineUniformTotalSize), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cmaxInlineUniformTotalSize_allocs)
+
+ var cintegerDotProduct8BitUnsignedAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProduct8BitUnsignedAccelerated, cintegerDotProduct8BitUnsignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct8BitUnsignedAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProduct8BitUnsignedAccelerated_allocs)
+
+ var cintegerDotProduct8BitSignedAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProduct8BitSignedAccelerated, cintegerDotProduct8BitSignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct8BitSignedAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProduct8BitSignedAccelerated_allocs)
+
+ var cintegerDotProduct8BitMixedSignednessAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProduct8BitMixedSignednessAccelerated, cintegerDotProduct8BitMixedSignednessAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct8BitMixedSignednessAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProduct8BitMixedSignednessAccelerated_allocs)
+
+ var cintegerDotProduct4x8BitPackedUnsignedAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProduct4x8BitPackedUnsignedAccelerated, cintegerDotProduct4x8BitPackedUnsignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct4x8BitPackedUnsignedAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProduct4x8BitPackedUnsignedAccelerated_allocs)
+
+ var cintegerDotProduct4x8BitPackedSignedAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProduct4x8BitPackedSignedAccelerated, cintegerDotProduct4x8BitPackedSignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct4x8BitPackedSignedAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProduct4x8BitPackedSignedAccelerated_allocs)
+
+ var cintegerDotProduct4x8BitPackedMixedSignednessAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProduct4x8BitPackedMixedSignednessAccelerated, cintegerDotProduct4x8BitPackedMixedSignednessAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct4x8BitPackedMixedSignednessAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProduct4x8BitPackedMixedSignednessAccelerated_allocs)
+
+ var cintegerDotProduct16BitUnsignedAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProduct16BitUnsignedAccelerated, cintegerDotProduct16BitUnsignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct16BitUnsignedAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProduct16BitUnsignedAccelerated_allocs)
+
+ var cintegerDotProduct16BitSignedAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProduct16BitSignedAccelerated, cintegerDotProduct16BitSignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct16BitSignedAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProduct16BitSignedAccelerated_allocs)
+
+ var cintegerDotProduct16BitMixedSignednessAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProduct16BitMixedSignednessAccelerated, cintegerDotProduct16BitMixedSignednessAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct16BitMixedSignednessAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProduct16BitMixedSignednessAccelerated_allocs)
+
+ var cintegerDotProduct32BitUnsignedAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProduct32BitUnsignedAccelerated, cintegerDotProduct32BitUnsignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct32BitUnsignedAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProduct32BitUnsignedAccelerated_allocs)
+
+ var cintegerDotProduct32BitSignedAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProduct32BitSignedAccelerated, cintegerDotProduct32BitSignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct32BitSignedAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProduct32BitSignedAccelerated_allocs)
+
+ var cintegerDotProduct32BitMixedSignednessAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProduct32BitMixedSignednessAccelerated, cintegerDotProduct32BitMixedSignednessAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct32BitMixedSignednessAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProduct32BitMixedSignednessAccelerated_allocs)
+
+ var cintegerDotProduct64BitUnsignedAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProduct64BitUnsignedAccelerated, cintegerDotProduct64BitUnsignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct64BitUnsignedAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProduct64BitUnsignedAccelerated_allocs)
+
+ var cintegerDotProduct64BitSignedAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProduct64BitSignedAccelerated, cintegerDotProduct64BitSignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct64BitSignedAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProduct64BitSignedAccelerated_allocs)
+
+ var cintegerDotProduct64BitMixedSignednessAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProduct64BitMixedSignednessAccelerated, cintegerDotProduct64BitMixedSignednessAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct64BitMixedSignednessAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProduct64BitMixedSignednessAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating8BitUnsignedAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProductAccumulatingSaturating8BitUnsignedAccelerated, cintegerDotProductAccumulatingSaturating8BitUnsignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating8BitUnsignedAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProductAccumulatingSaturating8BitUnsignedAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating8BitSignedAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProductAccumulatingSaturating8BitSignedAccelerated, cintegerDotProductAccumulatingSaturating8BitSignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating8BitSignedAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProductAccumulatingSaturating8BitSignedAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated, cintegerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated, cintegerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated, cintegerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated, cintegerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating16BitUnsignedAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProductAccumulatingSaturating16BitUnsignedAccelerated, cintegerDotProductAccumulatingSaturating16BitUnsignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating16BitUnsignedAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProductAccumulatingSaturating16BitUnsignedAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating16BitSignedAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProductAccumulatingSaturating16BitSignedAccelerated, cintegerDotProductAccumulatingSaturating16BitSignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating16BitSignedAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProductAccumulatingSaturating16BitSignedAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated, cintegerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating32BitUnsignedAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProductAccumulatingSaturating32BitUnsignedAccelerated, cintegerDotProductAccumulatingSaturating32BitUnsignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating32BitUnsignedAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProductAccumulatingSaturating32BitUnsignedAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating32BitSignedAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProductAccumulatingSaturating32BitSignedAccelerated, cintegerDotProductAccumulatingSaturating32BitSignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating32BitSignedAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProductAccumulatingSaturating32BitSignedAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated, cintegerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating64BitUnsignedAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProductAccumulatingSaturating64BitUnsignedAccelerated, cintegerDotProductAccumulatingSaturating64BitUnsignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating64BitUnsignedAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProductAccumulatingSaturating64BitUnsignedAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating64BitSignedAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProductAccumulatingSaturating64BitSignedAccelerated, cintegerDotProductAccumulatingSaturating64BitSignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating64BitSignedAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProductAccumulatingSaturating64BitSignedAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated_allocs *cgoAllocMap
+ ref8a1ecf64.integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated, cintegerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cintegerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated_allocs)
+
+ var cstorageTexelBufferOffsetAlignmentBytes_allocs *cgoAllocMap
+ ref8a1ecf64.storageTexelBufferOffsetAlignmentBytes, cstorageTexelBufferOffsetAlignmentBytes_allocs = (C.VkDeviceSize)(x.StorageTexelBufferOffsetAlignmentBytes), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cstorageTexelBufferOffsetAlignmentBytes_allocs)
+
+ var cstorageTexelBufferOffsetSingleTexelAlignment_allocs *cgoAllocMap
+ ref8a1ecf64.storageTexelBufferOffsetSingleTexelAlignment, cstorageTexelBufferOffsetSingleTexelAlignment_allocs = (C.VkBool32)(x.StorageTexelBufferOffsetSingleTexelAlignment), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cstorageTexelBufferOffsetSingleTexelAlignment_allocs)
+
+ var cuniformTexelBufferOffsetAlignmentBytes_allocs *cgoAllocMap
+ ref8a1ecf64.uniformTexelBufferOffsetAlignmentBytes, cuniformTexelBufferOffsetAlignmentBytes_allocs = (C.VkDeviceSize)(x.UniformTexelBufferOffsetAlignmentBytes), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cuniformTexelBufferOffsetAlignmentBytes_allocs)
+
+ var cuniformTexelBufferOffsetSingleTexelAlignment_allocs *cgoAllocMap
+ ref8a1ecf64.uniformTexelBufferOffsetSingleTexelAlignment, cuniformTexelBufferOffsetSingleTexelAlignment_allocs = (C.VkBool32)(x.UniformTexelBufferOffsetSingleTexelAlignment), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cuniformTexelBufferOffsetSingleTexelAlignment_allocs)
+
+ var cmaxBufferSize_allocs *cgoAllocMap
+ ref8a1ecf64.maxBufferSize, cmaxBufferSize_allocs = (C.VkDeviceSize)(x.MaxBufferSize), cgoAllocsUnknown
+ allocs8a1ecf64.Borrow(cmaxBufferSize_allocs)
+
+ x.ref8a1ecf64 = ref8a1ecf64
+ x.allocs8a1ecf64 = allocs8a1ecf64
+ return ref8a1ecf64, allocs8a1ecf64
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceVulkan13Properties) PassValue() (C.VkPhysicalDeviceVulkan13Properties, *cgoAllocMap) {
+ if x.ref8a1ecf64 != nil {
+ return *x.ref8a1ecf64, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceVulkan13Properties) Deref() {
+ if x.ref8a1ecf64 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref8a1ecf64.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref8a1ecf64.pNext))
+ x.MinSubgroupSize = (uint32)(x.ref8a1ecf64.minSubgroupSize)
+ x.MaxSubgroupSize = (uint32)(x.ref8a1ecf64.maxSubgroupSize)
+ x.MaxComputeWorkgroupSubgroups = (uint32)(x.ref8a1ecf64.maxComputeWorkgroupSubgroups)
+ x.RequiredSubgroupSizeStages = (ShaderStageFlags)(x.ref8a1ecf64.requiredSubgroupSizeStages)
+ x.MaxInlineUniformBlockSize = (uint32)(x.ref8a1ecf64.maxInlineUniformBlockSize)
+ x.MaxPerStageDescriptorInlineUniformBlocks = (uint32)(x.ref8a1ecf64.maxPerStageDescriptorInlineUniformBlocks)
+ x.MaxPerStageDescriptorUpdateAfterBindInlineUniformBlocks = (uint32)(x.ref8a1ecf64.maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks)
+ x.MaxDescriptorSetInlineUniformBlocks = (uint32)(x.ref8a1ecf64.maxDescriptorSetInlineUniformBlocks)
+ x.MaxDescriptorSetUpdateAfterBindInlineUniformBlocks = (uint32)(x.ref8a1ecf64.maxDescriptorSetUpdateAfterBindInlineUniformBlocks)
+ x.MaxInlineUniformTotalSize = (uint32)(x.ref8a1ecf64.maxInlineUniformTotalSize)
+ x.IntegerDotProduct8BitUnsignedAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProduct8BitUnsignedAccelerated)
+ x.IntegerDotProduct8BitSignedAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProduct8BitSignedAccelerated)
+ x.IntegerDotProduct8BitMixedSignednessAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProduct8BitMixedSignednessAccelerated)
+ x.IntegerDotProduct4x8BitPackedUnsignedAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProduct4x8BitPackedUnsignedAccelerated)
+ x.IntegerDotProduct4x8BitPackedSignedAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProduct4x8BitPackedSignedAccelerated)
+ x.IntegerDotProduct4x8BitPackedMixedSignednessAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProduct4x8BitPackedMixedSignednessAccelerated)
+ x.IntegerDotProduct16BitUnsignedAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProduct16BitUnsignedAccelerated)
+ x.IntegerDotProduct16BitSignedAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProduct16BitSignedAccelerated)
+ x.IntegerDotProduct16BitMixedSignednessAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProduct16BitMixedSignednessAccelerated)
+ x.IntegerDotProduct32BitUnsignedAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProduct32BitUnsignedAccelerated)
+ x.IntegerDotProduct32BitSignedAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProduct32BitSignedAccelerated)
+ x.IntegerDotProduct32BitMixedSignednessAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProduct32BitMixedSignednessAccelerated)
+ x.IntegerDotProduct64BitUnsignedAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProduct64BitUnsignedAccelerated)
+ x.IntegerDotProduct64BitSignedAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProduct64BitSignedAccelerated)
+ x.IntegerDotProduct64BitMixedSignednessAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProduct64BitMixedSignednessAccelerated)
+ x.IntegerDotProductAccumulatingSaturating8BitUnsignedAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProductAccumulatingSaturating8BitUnsignedAccelerated)
+ x.IntegerDotProductAccumulatingSaturating8BitSignedAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProductAccumulatingSaturating8BitSignedAccelerated)
+ x.IntegerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated)
+ x.IntegerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated)
+ x.IntegerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated)
+ x.IntegerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated)
+ x.IntegerDotProductAccumulatingSaturating16BitUnsignedAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProductAccumulatingSaturating16BitUnsignedAccelerated)
+ x.IntegerDotProductAccumulatingSaturating16BitSignedAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProductAccumulatingSaturating16BitSignedAccelerated)
+ x.IntegerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated)
+ x.IntegerDotProductAccumulatingSaturating32BitUnsignedAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProductAccumulatingSaturating32BitUnsignedAccelerated)
+ x.IntegerDotProductAccumulatingSaturating32BitSignedAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProductAccumulatingSaturating32BitSignedAccelerated)
+ x.IntegerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated)
+ x.IntegerDotProductAccumulatingSaturating64BitUnsignedAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProductAccumulatingSaturating64BitUnsignedAccelerated)
+ x.IntegerDotProductAccumulatingSaturating64BitSignedAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProductAccumulatingSaturating64BitSignedAccelerated)
+ x.IntegerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated = (Bool32)(x.ref8a1ecf64.integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated)
+ x.StorageTexelBufferOffsetAlignmentBytes = (DeviceSize)(x.ref8a1ecf64.storageTexelBufferOffsetAlignmentBytes)
+ x.StorageTexelBufferOffsetSingleTexelAlignment = (Bool32)(x.ref8a1ecf64.storageTexelBufferOffsetSingleTexelAlignment)
+ x.UniformTexelBufferOffsetAlignmentBytes = (DeviceSize)(x.ref8a1ecf64.uniformTexelBufferOffsetAlignmentBytes)
+ x.UniformTexelBufferOffsetSingleTexelAlignment = (Bool32)(x.ref8a1ecf64.uniformTexelBufferOffsetSingleTexelAlignment)
+ x.MaxBufferSize = (DeviceSize)(x.ref8a1ecf64.maxBufferSize)
+}
+
+// allocPipelineCreationFeedbackMemory allocates memory for type C.VkPipelineCreationFeedback in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPipelineCreationFeedbackMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineCreationFeedbackValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPipelineCreationFeedbackValue = unsafe.Sizeof([1]C.VkPipelineCreationFeedback{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PipelineCreationFeedback) Ref() *C.VkPipelineCreationFeedback {
+ if x == nil {
+ return nil
+ }
+ return x.ref98e30cfe
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PipelineCreationFeedback) Free() {
+ if x != nil && x.allocs98e30cfe != nil {
+ x.allocs98e30cfe.(*cgoAllocMap).Free()
+ x.ref98e30cfe = nil
+ }
+}
+
+// NewPipelineCreationFeedbackRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPipelineCreationFeedbackRef(ref unsafe.Pointer) *PipelineCreationFeedback {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PipelineCreationFeedback)
+ obj.ref98e30cfe = (*C.VkPipelineCreationFeedback)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PipelineCreationFeedback) PassRef() (*C.VkPipelineCreationFeedback, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref98e30cfe != nil {
+ return x.ref98e30cfe, nil
+ }
+ mem98e30cfe := allocPipelineCreationFeedbackMemory(1)
+ ref98e30cfe := (*C.VkPipelineCreationFeedback)(mem98e30cfe)
+ allocs98e30cfe := new(cgoAllocMap)
+ allocs98e30cfe.Add(mem98e30cfe)
+
+ var cflags_allocs *cgoAllocMap
+ ref98e30cfe.flags, cflags_allocs = (C.VkPipelineCreationFeedbackFlags)(x.Flags), cgoAllocsUnknown
+ allocs98e30cfe.Borrow(cflags_allocs)
+
+ var cduration_allocs *cgoAllocMap
+ ref98e30cfe.duration, cduration_allocs = (C.uint64_t)(x.Duration), cgoAllocsUnknown
+ allocs98e30cfe.Borrow(cduration_allocs)
+
+ x.ref98e30cfe = ref98e30cfe
+ x.allocs98e30cfe = allocs98e30cfe
+ return ref98e30cfe, allocs98e30cfe
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PipelineCreationFeedback) PassValue() (C.VkPipelineCreationFeedback, *cgoAllocMap) {
+ if x.ref98e30cfe != nil {
+ return *x.ref98e30cfe, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PipelineCreationFeedback) Deref() {
+ if x.ref98e30cfe == nil {
+ return
+ }
+ x.Flags = (PipelineCreationFeedbackFlags)(x.ref98e30cfe.flags)
+ x.Duration = (uint64)(x.ref98e30cfe.duration)
+}
+
+// allocPipelineCreationFeedbackCreateInfoMemory allocates memory for type C.VkPipelineCreationFeedbackCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPipelineCreationFeedbackCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineCreationFeedbackCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPipelineCreationFeedbackCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineCreationFeedbackCreateInfo{})
+
+// unpackSPipelineCreationFeedback transforms a sliced Go data structure into plain C format.
+func unpackSPipelineCreationFeedback(x []PipelineCreationFeedback) (unpacked *C.VkPipelineCreationFeedback, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkPipelineCreationFeedback) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocPipelineCreationFeedbackMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkPipelineCreationFeedback)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkPipelineCreationFeedback)(h.Data)
+ return
+}
+
+// packSPipelineCreationFeedback reads sliced Go data structure out from plain C format.
+func packSPipelineCreationFeedback(v []PipelineCreationFeedback, ptr0 *C.VkPipelineCreationFeedback) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfPipelineCreationFeedbackValue]C.VkPipelineCreationFeedback)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewPipelineCreationFeedbackRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PipelineCreationFeedbackCreateInfo) Ref() *C.VkPipelineCreationFeedbackCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref4fcf7570
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PipelineCreationFeedbackCreateInfo) Free() {
+ if x != nil && x.allocs4fcf7570 != nil {
+ x.allocs4fcf7570.(*cgoAllocMap).Free()
+ x.ref4fcf7570 = nil
+ }
+}
+
+// NewPipelineCreationFeedbackCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPipelineCreationFeedbackCreateInfoRef(ref unsafe.Pointer) *PipelineCreationFeedbackCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PipelineCreationFeedbackCreateInfo)
+ obj.ref4fcf7570 = (*C.VkPipelineCreationFeedbackCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PipelineCreationFeedbackCreateInfo) PassRef() (*C.VkPipelineCreationFeedbackCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref4fcf7570 != nil {
+ return x.ref4fcf7570, nil
+ }
+ mem4fcf7570 := allocPipelineCreationFeedbackCreateInfoMemory(1)
+ ref4fcf7570 := (*C.VkPipelineCreationFeedbackCreateInfo)(mem4fcf7570)
+ allocs4fcf7570 := new(cgoAllocMap)
+ allocs4fcf7570.Add(mem4fcf7570)
+
+ var csType_allocs *cgoAllocMap
+ ref4fcf7570.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs4fcf7570.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref4fcf7570.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs4fcf7570.Borrow(cpNext_allocs)
+
+ var cpPipelineCreationFeedback_allocs *cgoAllocMap
+ ref4fcf7570.pPipelineCreationFeedback, cpPipelineCreationFeedback_allocs = unpackSPipelineCreationFeedback(x.PPipelineCreationFeedback)
+ allocs4fcf7570.Borrow(cpPipelineCreationFeedback_allocs)
+
+ var cpipelineStageCreationFeedbackCount_allocs *cgoAllocMap
+ ref4fcf7570.pipelineStageCreationFeedbackCount, cpipelineStageCreationFeedbackCount_allocs = (C.uint32_t)(x.PipelineStageCreationFeedbackCount), cgoAllocsUnknown
+ allocs4fcf7570.Borrow(cpipelineStageCreationFeedbackCount_allocs)
+
+ var cpPipelineStageCreationFeedbacks_allocs *cgoAllocMap
+ ref4fcf7570.pPipelineStageCreationFeedbacks, cpPipelineStageCreationFeedbacks_allocs = unpackSPipelineCreationFeedback(x.PPipelineStageCreationFeedbacks)
+ allocs4fcf7570.Borrow(cpPipelineStageCreationFeedbacks_allocs)
+
+ x.ref4fcf7570 = ref4fcf7570
+ x.allocs4fcf7570 = allocs4fcf7570
+ return ref4fcf7570, allocs4fcf7570
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PipelineCreationFeedbackCreateInfo) PassValue() (C.VkPipelineCreationFeedbackCreateInfo, *cgoAllocMap) {
+ if x.ref4fcf7570 != nil {
+ return *x.ref4fcf7570, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PipelineCreationFeedbackCreateInfo) Deref() {
+ if x.ref4fcf7570 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref4fcf7570.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref4fcf7570.pNext))
+ packSPipelineCreationFeedback(x.PPipelineCreationFeedback, x.ref4fcf7570.pPipelineCreationFeedback)
+ x.PipelineStageCreationFeedbackCount = (uint32)(x.ref4fcf7570.pipelineStageCreationFeedbackCount)
+ packSPipelineCreationFeedback(x.PPipelineStageCreationFeedbacks, x.ref4fcf7570.pPipelineStageCreationFeedbacks)
+}
+
+// allocPhysicalDeviceShaderTerminateInvocationFeaturesMemory allocates memory for type C.VkPhysicalDeviceShaderTerminateInvocationFeatures in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceShaderTerminateInvocationFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceShaderTerminateInvocationFeaturesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceShaderTerminateInvocationFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceShaderTerminateInvocationFeatures{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceShaderTerminateInvocationFeatures) Ref() *C.VkPhysicalDeviceShaderTerminateInvocationFeatures {
+ if x == nil {
+ return nil
+ }
+ return x.ref49451fcb
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceShaderTerminateInvocationFeatures) Free() {
+ if x != nil && x.allocs49451fcb != nil {
+ x.allocs49451fcb.(*cgoAllocMap).Free()
+ x.ref49451fcb = nil
+ }
+}
+
+// NewPhysicalDeviceShaderTerminateInvocationFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceShaderTerminateInvocationFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceShaderTerminateInvocationFeatures {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceShaderTerminateInvocationFeatures)
+ obj.ref49451fcb = (*C.VkPhysicalDeviceShaderTerminateInvocationFeatures)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceShaderTerminateInvocationFeatures) PassRef() (*C.VkPhysicalDeviceShaderTerminateInvocationFeatures, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref49451fcb != nil {
+ return x.ref49451fcb, nil
+ }
+ mem49451fcb := allocPhysicalDeviceShaderTerminateInvocationFeaturesMemory(1)
+ ref49451fcb := (*C.VkPhysicalDeviceShaderTerminateInvocationFeatures)(mem49451fcb)
+ allocs49451fcb := new(cgoAllocMap)
+ allocs49451fcb.Add(mem49451fcb)
+
+ var csType_allocs *cgoAllocMap
+ ref49451fcb.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs49451fcb.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref49451fcb.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs49451fcb.Borrow(cpNext_allocs)
+
+ var cshaderTerminateInvocation_allocs *cgoAllocMap
+ ref49451fcb.shaderTerminateInvocation, cshaderTerminateInvocation_allocs = (C.VkBool32)(x.ShaderTerminateInvocation), cgoAllocsUnknown
+ allocs49451fcb.Borrow(cshaderTerminateInvocation_allocs)
+
+ x.ref49451fcb = ref49451fcb
+ x.allocs49451fcb = allocs49451fcb
+ return ref49451fcb, allocs49451fcb
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceShaderTerminateInvocationFeatures) PassValue() (C.VkPhysicalDeviceShaderTerminateInvocationFeatures, *cgoAllocMap) {
+ if x.ref49451fcb != nil {
+ return *x.ref49451fcb, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceShaderTerminateInvocationFeatures) Deref() {
+ if x.ref49451fcb == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref49451fcb.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref49451fcb.pNext))
+ x.ShaderTerminateInvocation = (Bool32)(x.ref49451fcb.shaderTerminateInvocation)
+}
+
+// allocPhysicalDeviceToolPropertiesMemory allocates memory for type C.VkPhysicalDeviceToolProperties in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceToolPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceToolPropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceToolPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceToolProperties{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceToolProperties) Ref() *C.VkPhysicalDeviceToolProperties {
+ if x == nil {
+ return nil
+ }
+ return x.ref88f98ec3
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceToolProperties) Free() {
+ if x != nil && x.allocs88f98ec3 != nil {
+ x.allocs88f98ec3.(*cgoAllocMap).Free()
+ x.ref88f98ec3 = nil
+ }
+}
+
+// NewPhysicalDeviceToolPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceToolPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceToolProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceToolProperties)
+ obj.ref88f98ec3 = (*C.VkPhysicalDeviceToolProperties)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceToolProperties) PassRef() (*C.VkPhysicalDeviceToolProperties, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref88f98ec3 != nil {
+ return x.ref88f98ec3, nil
+ }
+ mem88f98ec3 := allocPhysicalDeviceToolPropertiesMemory(1)
+ ref88f98ec3 := (*C.VkPhysicalDeviceToolProperties)(mem88f98ec3)
+ allocs88f98ec3 := new(cgoAllocMap)
+ allocs88f98ec3.Add(mem88f98ec3)
+
+ var csType_allocs *cgoAllocMap
+ ref88f98ec3.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs88f98ec3.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref88f98ec3.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs88f98ec3.Borrow(cpNext_allocs)
+
+ var cname_allocs *cgoAllocMap
+ ref88f98ec3.name, cname_allocs = *(*[256]C.char)(unsafe.Pointer(&x.Name)), cgoAllocsUnknown
+ allocs88f98ec3.Borrow(cname_allocs)
+
+ var cversion_allocs *cgoAllocMap
+ ref88f98ec3.version, cversion_allocs = *(*[256]C.char)(unsafe.Pointer(&x.Version)), cgoAllocsUnknown
+ allocs88f98ec3.Borrow(cversion_allocs)
+
+ var cpurposes_allocs *cgoAllocMap
+ ref88f98ec3.purposes, cpurposes_allocs = (C.VkToolPurposeFlags)(x.Purposes), cgoAllocsUnknown
+ allocs88f98ec3.Borrow(cpurposes_allocs)
+
+ var cdescription_allocs *cgoAllocMap
+ ref88f98ec3.description, cdescription_allocs = *(*[256]C.char)(unsafe.Pointer(&x.Description)), cgoAllocsUnknown
+ allocs88f98ec3.Borrow(cdescription_allocs)
+
+ var clayer_allocs *cgoAllocMap
+ ref88f98ec3.layer, clayer_allocs = *(*[256]C.char)(unsafe.Pointer(&x.Layer)), cgoAllocsUnknown
+ allocs88f98ec3.Borrow(clayer_allocs)
+
+ x.ref88f98ec3 = ref88f98ec3
+ x.allocs88f98ec3 = allocs88f98ec3
+ return ref88f98ec3, allocs88f98ec3
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceToolProperties) PassValue() (C.VkPhysicalDeviceToolProperties, *cgoAllocMap) {
+ if x.ref88f98ec3 != nil {
+ return *x.ref88f98ec3, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceToolProperties) Deref() {
+ if x.ref88f98ec3 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref88f98ec3.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref88f98ec3.pNext))
+ x.Name = *(*[256]byte)(unsafe.Pointer(&x.ref88f98ec3.name))
+ x.Version = *(*[256]byte)(unsafe.Pointer(&x.ref88f98ec3.version))
+ x.Purposes = (ToolPurposeFlags)(x.ref88f98ec3.purposes)
+ x.Description = *(*[256]byte)(unsafe.Pointer(&x.ref88f98ec3.description))
+ x.Layer = *(*[256]byte)(unsafe.Pointer(&x.ref88f98ec3.layer))
+}
+
+// allocPhysicalDeviceShaderDemoteToHelperInvocationFeaturesMemory allocates memory for type C.VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceShaderDemoteToHelperInvocationFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceShaderDemoteToHelperInvocationFeaturesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceShaderDemoteToHelperInvocationFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceShaderDemoteToHelperInvocationFeatures) Ref() *C.VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures {
+ if x == nil {
+ return nil
+ }
+ return x.ref5eeeae89
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceShaderDemoteToHelperInvocationFeatures) Free() {
+ if x != nil && x.allocs5eeeae89 != nil {
+ x.allocs5eeeae89.(*cgoAllocMap).Free()
+ x.ref5eeeae89 = nil
+ }
+}
+
+// NewPhysicalDeviceShaderDemoteToHelperInvocationFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceShaderDemoteToHelperInvocationFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceShaderDemoteToHelperInvocationFeatures {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceShaderDemoteToHelperInvocationFeatures)
+ obj.ref5eeeae89 = (*C.VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceShaderDemoteToHelperInvocationFeatures) PassRef() (*C.VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref5eeeae89 != nil {
+ return x.ref5eeeae89, nil
+ }
+ mem5eeeae89 := allocPhysicalDeviceShaderDemoteToHelperInvocationFeaturesMemory(1)
+ ref5eeeae89 := (*C.VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures)(mem5eeeae89)
+ allocs5eeeae89 := new(cgoAllocMap)
+ allocs5eeeae89.Add(mem5eeeae89)
+
+ var csType_allocs *cgoAllocMap
+ ref5eeeae89.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs5eeeae89.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref5eeeae89.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs5eeeae89.Borrow(cpNext_allocs)
+
+ var cshaderDemoteToHelperInvocation_allocs *cgoAllocMap
+ ref5eeeae89.shaderDemoteToHelperInvocation, cshaderDemoteToHelperInvocation_allocs = (C.VkBool32)(x.ShaderDemoteToHelperInvocation), cgoAllocsUnknown
+ allocs5eeeae89.Borrow(cshaderDemoteToHelperInvocation_allocs)
+
+ x.ref5eeeae89 = ref5eeeae89
+ x.allocs5eeeae89 = allocs5eeeae89
+ return ref5eeeae89, allocs5eeeae89
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceShaderDemoteToHelperInvocationFeatures) PassValue() (C.VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures, *cgoAllocMap) {
+ if x.ref5eeeae89 != nil {
+ return *x.ref5eeeae89, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceShaderDemoteToHelperInvocationFeatures) Deref() {
+ if x.ref5eeeae89 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref5eeeae89.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5eeeae89.pNext))
+ x.ShaderDemoteToHelperInvocation = (Bool32)(x.ref5eeeae89.shaderDemoteToHelperInvocation)
+}
+
+// allocPhysicalDevicePrivateDataFeaturesMemory allocates memory for type C.VkPhysicalDevicePrivateDataFeatures in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDevicePrivateDataFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDevicePrivateDataFeaturesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDevicePrivateDataFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDevicePrivateDataFeatures{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDevicePrivateDataFeatures) Ref() *C.VkPhysicalDevicePrivateDataFeatures {
+ if x == nil {
+ return nil
+ }
+ return x.refeee8cb11
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDevicePrivateDataFeatures) Free() {
+ if x != nil && x.allocseee8cb11 != nil {
+ x.allocseee8cb11.(*cgoAllocMap).Free()
+ x.refeee8cb11 = nil
+ }
+}
+
+// NewPhysicalDevicePrivateDataFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDevicePrivateDataFeaturesRef(ref unsafe.Pointer) *PhysicalDevicePrivateDataFeatures {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDevicePrivateDataFeatures)
+ obj.refeee8cb11 = (*C.VkPhysicalDevicePrivateDataFeatures)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDevicePrivateDataFeatures) PassRef() (*C.VkPhysicalDevicePrivateDataFeatures, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refeee8cb11 != nil {
+ return x.refeee8cb11, nil
+ }
+ memeee8cb11 := allocPhysicalDevicePrivateDataFeaturesMemory(1)
+ refeee8cb11 := (*C.VkPhysicalDevicePrivateDataFeatures)(memeee8cb11)
+ allocseee8cb11 := new(cgoAllocMap)
+ allocseee8cb11.Add(memeee8cb11)
+
+ var csType_allocs *cgoAllocMap
+ refeee8cb11.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocseee8cb11.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refeee8cb11.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocseee8cb11.Borrow(cpNext_allocs)
+
+ var cprivateData_allocs *cgoAllocMap
+ refeee8cb11.privateData, cprivateData_allocs = (C.VkBool32)(x.PrivateData), cgoAllocsUnknown
+ allocseee8cb11.Borrow(cprivateData_allocs)
+
+ x.refeee8cb11 = refeee8cb11
+ x.allocseee8cb11 = allocseee8cb11
+ return refeee8cb11, allocseee8cb11
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDevicePrivateDataFeatures) PassValue() (C.VkPhysicalDevicePrivateDataFeatures, *cgoAllocMap) {
+ if x.refeee8cb11 != nil {
+ return *x.refeee8cb11, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDevicePrivateDataFeatures) Deref() {
+ if x.refeee8cb11 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refeee8cb11.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refeee8cb11.pNext))
+ x.PrivateData = (Bool32)(x.refeee8cb11.privateData)
+}
+
+// allocDevicePrivateDataCreateInfoMemory allocates memory for type C.VkDevicePrivateDataCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocDevicePrivateDataCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDevicePrivateDataCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfDevicePrivateDataCreateInfoValue = unsafe.Sizeof([1]C.VkDevicePrivateDataCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *DevicePrivateDataCreateInfo) Ref() *C.VkDevicePrivateDataCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref5e7326be
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *DevicePrivateDataCreateInfo) Free() {
+ if x != nil && x.allocs5e7326be != nil {
+ x.allocs5e7326be.(*cgoAllocMap).Free()
+ x.ref5e7326be = nil
+ }
+}
+
+// NewDevicePrivateDataCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewDevicePrivateDataCreateInfoRef(ref unsafe.Pointer) *DevicePrivateDataCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(DevicePrivateDataCreateInfo)
+ obj.ref5e7326be = (*C.VkDevicePrivateDataCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DevicePrivateDataCreateInfo) PassRef() (*C.VkDevicePrivateDataCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref5e7326be != nil {
+ return x.ref5e7326be, nil
+ }
+ mem5e7326be := allocDevicePrivateDataCreateInfoMemory(1)
+ ref5e7326be := (*C.VkDevicePrivateDataCreateInfo)(mem5e7326be)
+ allocs5e7326be := new(cgoAllocMap)
+ allocs5e7326be.Add(mem5e7326be)
+
+ var csType_allocs *cgoAllocMap
+ ref5e7326be.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs5e7326be.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref5e7326be.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs5e7326be.Borrow(cpNext_allocs)
+
+ var cprivateDataSlotRequestCount_allocs *cgoAllocMap
+ ref5e7326be.privateDataSlotRequestCount, cprivateDataSlotRequestCount_allocs = (C.uint32_t)(x.PrivateDataSlotRequestCount), cgoAllocsUnknown
+ allocs5e7326be.Borrow(cprivateDataSlotRequestCount_allocs)
+
+ x.ref5e7326be = ref5e7326be
+ x.allocs5e7326be = allocs5e7326be
+ return ref5e7326be, allocs5e7326be
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DevicePrivateDataCreateInfo) PassValue() (C.VkDevicePrivateDataCreateInfo, *cgoAllocMap) {
+ if x.ref5e7326be != nil {
+ return *x.ref5e7326be, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *DevicePrivateDataCreateInfo) Deref() {
+ if x.ref5e7326be == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref5e7326be.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5e7326be.pNext))
+ x.PrivateDataSlotRequestCount = (uint32)(x.ref5e7326be.privateDataSlotRequestCount)
+}
+
+// allocPrivateDataSlotCreateInfoMemory allocates memory for type C.VkPrivateDataSlotCreateInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPrivateDataSlotCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPrivateDataSlotCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPrivateDataSlotCreateInfoValue = unsafe.Sizeof([1]C.VkPrivateDataSlotCreateInfo{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PrivateDataSlotCreateInfo) Ref() *C.VkPrivateDataSlotCreateInfo {
+ if x == nil {
+ return nil
+ }
+ return x.reffd6b0ff3
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PrivateDataSlotCreateInfo) Free() {
+ if x != nil && x.allocsfd6b0ff3 != nil {
+ x.allocsfd6b0ff3.(*cgoAllocMap).Free()
+ x.reffd6b0ff3 = nil
+ }
+}
+
+// NewPrivateDataSlotCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPrivateDataSlotCreateInfoRef(ref unsafe.Pointer) *PrivateDataSlotCreateInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PrivateDataSlotCreateInfo)
+ obj.reffd6b0ff3 = (*C.VkPrivateDataSlotCreateInfo)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PrivateDataSlotCreateInfo) PassRef() (*C.VkPrivateDataSlotCreateInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.reffd6b0ff3 != nil {
+ return x.reffd6b0ff3, nil
+ }
+ memfd6b0ff3 := allocPrivateDataSlotCreateInfoMemory(1)
+ reffd6b0ff3 := (*C.VkPrivateDataSlotCreateInfo)(memfd6b0ff3)
+ allocsfd6b0ff3 := new(cgoAllocMap)
+ allocsfd6b0ff3.Add(memfd6b0ff3)
+
+ var csType_allocs *cgoAllocMap
+ reffd6b0ff3.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsfd6b0ff3.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ reffd6b0ff3.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsfd6b0ff3.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ reffd6b0ff3.flags, cflags_allocs = (C.VkPrivateDataSlotCreateFlags)(x.Flags), cgoAllocsUnknown
+ allocsfd6b0ff3.Borrow(cflags_allocs)
+
+ x.reffd6b0ff3 = reffd6b0ff3
+ x.allocsfd6b0ff3 = allocsfd6b0ff3
+ return reffd6b0ff3, allocsfd6b0ff3
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PrivateDataSlotCreateInfo) PassValue() (C.VkPrivateDataSlotCreateInfo, *cgoAllocMap) {
+ if x.reffd6b0ff3 != nil {
+ return *x.reffd6b0ff3, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PrivateDataSlotCreateInfo) Deref() {
+ if x.reffd6b0ff3 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.reffd6b0ff3.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reffd6b0ff3.pNext))
+ x.Flags = (PrivateDataSlotCreateFlags)(x.reffd6b0ff3.flags)
+}
+
+// allocPhysicalDevicePipelineCreationCacheControlFeaturesMemory allocates memory for type C.VkPhysicalDevicePipelineCreationCacheControlFeatures in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDevicePipelineCreationCacheControlFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDevicePipelineCreationCacheControlFeaturesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDevicePipelineCreationCacheControlFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDevicePipelineCreationCacheControlFeatures{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDevicePipelineCreationCacheControlFeatures) Ref() *C.VkPhysicalDevicePipelineCreationCacheControlFeatures {
+ if x == nil {
+ return nil
+ }
+ return x.ref5e373d52
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDevicePipelineCreationCacheControlFeatures) Free() {
+ if x != nil && x.allocs5e373d52 != nil {
+ x.allocs5e373d52.(*cgoAllocMap).Free()
+ x.ref5e373d52 = nil
+ }
+}
+
+// NewPhysicalDevicePipelineCreationCacheControlFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDevicePipelineCreationCacheControlFeaturesRef(ref unsafe.Pointer) *PhysicalDevicePipelineCreationCacheControlFeatures {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDevicePipelineCreationCacheControlFeatures)
+ obj.ref5e373d52 = (*C.VkPhysicalDevicePipelineCreationCacheControlFeatures)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDevicePipelineCreationCacheControlFeatures) PassRef() (*C.VkPhysicalDevicePipelineCreationCacheControlFeatures, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref5e373d52 != nil {
+ return x.ref5e373d52, nil
+ }
+ mem5e373d52 := allocPhysicalDevicePipelineCreationCacheControlFeaturesMemory(1)
+ ref5e373d52 := (*C.VkPhysicalDevicePipelineCreationCacheControlFeatures)(mem5e373d52)
+ allocs5e373d52 := new(cgoAllocMap)
+ allocs5e373d52.Add(mem5e373d52)
+
+ var csType_allocs *cgoAllocMap
+ ref5e373d52.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs5e373d52.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref5e373d52.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs5e373d52.Borrow(cpNext_allocs)
+
+ var cpipelineCreationCacheControl_allocs *cgoAllocMap
+ ref5e373d52.pipelineCreationCacheControl, cpipelineCreationCacheControl_allocs = (C.VkBool32)(x.PipelineCreationCacheControl), cgoAllocsUnknown
+ allocs5e373d52.Borrow(cpipelineCreationCacheControl_allocs)
+
+ x.ref5e373d52 = ref5e373d52
+ x.allocs5e373d52 = allocs5e373d52
+ return ref5e373d52, allocs5e373d52
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDevicePipelineCreationCacheControlFeatures) PassValue() (C.VkPhysicalDevicePipelineCreationCacheControlFeatures, *cgoAllocMap) {
+ if x.ref5e373d52 != nil {
+ return *x.ref5e373d52, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDevicePipelineCreationCacheControlFeatures) Deref() {
+ if x.ref5e373d52 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref5e373d52.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5e373d52.pNext))
+ x.PipelineCreationCacheControl = (Bool32)(x.ref5e373d52.pipelineCreationCacheControl)
+}
+
+// allocMemoryBarrier2Memory allocates memory for type C.VkMemoryBarrier2 in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocMemoryBarrier2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMemoryBarrier2Value))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfMemoryBarrier2Value = unsafe.Sizeof([1]C.VkMemoryBarrier2{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *MemoryBarrier2) Ref() *C.VkMemoryBarrier2 {
+ if x == nil {
+ return nil
+ }
+ return x.ref8b26ae0e
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *MemoryBarrier2) Free() {
+ if x != nil && x.allocs8b26ae0e != nil {
+ x.allocs8b26ae0e.(*cgoAllocMap).Free()
+ x.ref8b26ae0e = nil
+ }
+}
+
+// NewMemoryBarrier2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewMemoryBarrier2Ref(ref unsafe.Pointer) *MemoryBarrier2 {
+ if ref == nil {
+ return nil
+ }
+ obj := new(MemoryBarrier2)
+ obj.ref8b26ae0e = (*C.VkMemoryBarrier2)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *MemoryBarrier2) PassRef() (*C.VkMemoryBarrier2, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref8b26ae0e != nil {
+ return x.ref8b26ae0e, nil
+ }
+ mem8b26ae0e := allocMemoryBarrier2Memory(1)
+ ref8b26ae0e := (*C.VkMemoryBarrier2)(mem8b26ae0e)
+ allocs8b26ae0e := new(cgoAllocMap)
+ allocs8b26ae0e.Add(mem8b26ae0e)
+
+ var csType_allocs *cgoAllocMap
+ ref8b26ae0e.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs8b26ae0e.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref8b26ae0e.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs8b26ae0e.Borrow(cpNext_allocs)
+
+ var csrcStageMask_allocs *cgoAllocMap
+ ref8b26ae0e.srcStageMask, csrcStageMask_allocs = (C.VkPipelineStageFlags2)(x.SrcStageMask), cgoAllocsUnknown
+ allocs8b26ae0e.Borrow(csrcStageMask_allocs)
+
+ var csrcAccessMask_allocs *cgoAllocMap
+ ref8b26ae0e.srcAccessMask, csrcAccessMask_allocs = (C.VkAccessFlags2)(x.SrcAccessMask), cgoAllocsUnknown
+ allocs8b26ae0e.Borrow(csrcAccessMask_allocs)
+
+ var cdstStageMask_allocs *cgoAllocMap
+ ref8b26ae0e.dstStageMask, cdstStageMask_allocs = (C.VkPipelineStageFlags2)(x.DstStageMask), cgoAllocsUnknown
+ allocs8b26ae0e.Borrow(cdstStageMask_allocs)
+
+ var cdstAccessMask_allocs *cgoAllocMap
+ ref8b26ae0e.dstAccessMask, cdstAccessMask_allocs = (C.VkAccessFlags2)(x.DstAccessMask), cgoAllocsUnknown
+ allocs8b26ae0e.Borrow(cdstAccessMask_allocs)
+
+ x.ref8b26ae0e = ref8b26ae0e
+ x.allocs8b26ae0e = allocs8b26ae0e
+ return ref8b26ae0e, allocs8b26ae0e
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x MemoryBarrier2) PassValue() (C.VkMemoryBarrier2, *cgoAllocMap) {
+ if x.ref8b26ae0e != nil {
+ return *x.ref8b26ae0e, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *MemoryBarrier2) Deref() {
+ if x.ref8b26ae0e == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref8b26ae0e.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref8b26ae0e.pNext))
+ x.SrcStageMask = (PipelineStageFlags2)(x.ref8b26ae0e.srcStageMask)
+ x.SrcAccessMask = (AccessFlags2)(x.ref8b26ae0e.srcAccessMask)
+ x.DstStageMask = (PipelineStageFlags2)(x.ref8b26ae0e.dstStageMask)
+ x.DstAccessMask = (AccessFlags2)(x.ref8b26ae0e.dstAccessMask)
+}
+
+// allocBufferMemoryBarrier2Memory allocates memory for type C.VkBufferMemoryBarrier2 in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocBufferMemoryBarrier2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBufferMemoryBarrier2Value))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfBufferMemoryBarrier2Value = unsafe.Sizeof([1]C.VkBufferMemoryBarrier2{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *BufferMemoryBarrier2) Ref() *C.VkBufferMemoryBarrier2 {
+ if x == nil {
+ return nil
+ }
+ return x.ref8ded93f5
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *BufferMemoryBarrier2) Free() {
+ if x != nil && x.allocs8ded93f5 != nil {
+ x.allocs8ded93f5.(*cgoAllocMap).Free()
+ x.ref8ded93f5 = nil
+ }
+}
+
+// NewBufferMemoryBarrier2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewBufferMemoryBarrier2Ref(ref unsafe.Pointer) *BufferMemoryBarrier2 {
+ if ref == nil {
+ return nil
+ }
+ obj := new(BufferMemoryBarrier2)
+ obj.ref8ded93f5 = (*C.VkBufferMemoryBarrier2)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *BufferMemoryBarrier2) PassRef() (*C.VkBufferMemoryBarrier2, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref8ded93f5 != nil {
+ return x.ref8ded93f5, nil
+ }
+ mem8ded93f5 := allocBufferMemoryBarrier2Memory(1)
+ ref8ded93f5 := (*C.VkBufferMemoryBarrier2)(mem8ded93f5)
+ allocs8ded93f5 := new(cgoAllocMap)
+ allocs8ded93f5.Add(mem8ded93f5)
+
+ var csType_allocs *cgoAllocMap
+ ref8ded93f5.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs8ded93f5.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref8ded93f5.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs8ded93f5.Borrow(cpNext_allocs)
+
+ var csrcStageMask_allocs *cgoAllocMap
+ ref8ded93f5.srcStageMask, csrcStageMask_allocs = (C.VkPipelineStageFlags2)(x.SrcStageMask), cgoAllocsUnknown
+ allocs8ded93f5.Borrow(csrcStageMask_allocs)
+
+ var csrcAccessMask_allocs *cgoAllocMap
+ ref8ded93f5.srcAccessMask, csrcAccessMask_allocs = (C.VkAccessFlags2)(x.SrcAccessMask), cgoAllocsUnknown
+ allocs8ded93f5.Borrow(csrcAccessMask_allocs)
+
+ var cdstStageMask_allocs *cgoAllocMap
+ ref8ded93f5.dstStageMask, cdstStageMask_allocs = (C.VkPipelineStageFlags2)(x.DstStageMask), cgoAllocsUnknown
+ allocs8ded93f5.Borrow(cdstStageMask_allocs)
+
+ var cdstAccessMask_allocs *cgoAllocMap
+ ref8ded93f5.dstAccessMask, cdstAccessMask_allocs = (C.VkAccessFlags2)(x.DstAccessMask), cgoAllocsUnknown
+ allocs8ded93f5.Borrow(cdstAccessMask_allocs)
+
+ var csrcQueueFamilyIndex_allocs *cgoAllocMap
+ ref8ded93f5.srcQueueFamilyIndex, csrcQueueFamilyIndex_allocs = (C.uint32_t)(x.SrcQueueFamilyIndex), cgoAllocsUnknown
+ allocs8ded93f5.Borrow(csrcQueueFamilyIndex_allocs)
+
+ var cdstQueueFamilyIndex_allocs *cgoAllocMap
+ ref8ded93f5.dstQueueFamilyIndex, cdstQueueFamilyIndex_allocs = (C.uint32_t)(x.DstQueueFamilyIndex), cgoAllocsUnknown
+ allocs8ded93f5.Borrow(cdstQueueFamilyIndex_allocs)
+
+ var cbuffer_allocs *cgoAllocMap
+ ref8ded93f5.buffer, cbuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.Buffer)), cgoAllocsUnknown
+ allocs8ded93f5.Borrow(cbuffer_allocs)
+
+ var coffset_allocs *cgoAllocMap
+ ref8ded93f5.offset, coffset_allocs = (C.VkDeviceSize)(x.Offset), cgoAllocsUnknown
+ allocs8ded93f5.Borrow(coffset_allocs)
+
+ var csize_allocs *cgoAllocMap
+ ref8ded93f5.size, csize_allocs = (C.VkDeviceSize)(x.Size), cgoAllocsUnknown
+ allocs8ded93f5.Borrow(csize_allocs)
+
+ x.ref8ded93f5 = ref8ded93f5
+ x.allocs8ded93f5 = allocs8ded93f5
+ return ref8ded93f5, allocs8ded93f5
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x BufferMemoryBarrier2) PassValue() (C.VkBufferMemoryBarrier2, *cgoAllocMap) {
+ if x.ref8ded93f5 != nil {
+ return *x.ref8ded93f5, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *BufferMemoryBarrier2) Deref() {
+ if x.ref8ded93f5 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref8ded93f5.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref8ded93f5.pNext))
+ x.SrcStageMask = (PipelineStageFlags2)(x.ref8ded93f5.srcStageMask)
+ x.SrcAccessMask = (AccessFlags2)(x.ref8ded93f5.srcAccessMask)
+ x.DstStageMask = (PipelineStageFlags2)(x.ref8ded93f5.dstStageMask)
+ x.DstAccessMask = (AccessFlags2)(x.ref8ded93f5.dstAccessMask)
+ x.SrcQueueFamilyIndex = (uint32)(x.ref8ded93f5.srcQueueFamilyIndex)
+ x.DstQueueFamilyIndex = (uint32)(x.ref8ded93f5.dstQueueFamilyIndex)
+ x.Buffer = *(*Buffer)(unsafe.Pointer(&x.ref8ded93f5.buffer))
+ x.Offset = (DeviceSize)(x.ref8ded93f5.offset)
+ x.Size = (DeviceSize)(x.ref8ded93f5.size)
+}
+
+// allocImageMemoryBarrier2Memory allocates memory for type C.VkImageMemoryBarrier2 in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocImageMemoryBarrier2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageMemoryBarrier2Value))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfImageMemoryBarrier2Value = unsafe.Sizeof([1]C.VkImageMemoryBarrier2{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ImageMemoryBarrier2) Ref() *C.VkImageMemoryBarrier2 {
+ if x == nil {
+ return nil
+ }
+ return x.refb3bc376a
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ImageMemoryBarrier2) Free() {
+ if x != nil && x.allocsb3bc376a != nil {
+ x.allocsb3bc376a.(*cgoAllocMap).Free()
+ x.refb3bc376a = nil
+ }
+}
+
+// NewImageMemoryBarrier2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewImageMemoryBarrier2Ref(ref unsafe.Pointer) *ImageMemoryBarrier2 {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ImageMemoryBarrier2)
+ obj.refb3bc376a = (*C.VkImageMemoryBarrier2)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ImageMemoryBarrier2) PassRef() (*C.VkImageMemoryBarrier2, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refb3bc376a != nil {
+ return x.refb3bc376a, nil
+ }
+ memb3bc376a := allocImageMemoryBarrier2Memory(1)
+ refb3bc376a := (*C.VkImageMemoryBarrier2)(memb3bc376a)
+ allocsb3bc376a := new(cgoAllocMap)
+ allocsb3bc376a.Add(memb3bc376a)
+
+ var csType_allocs *cgoAllocMap
+ refb3bc376a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsb3bc376a.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refb3bc376a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsb3bc376a.Borrow(cpNext_allocs)
+
+ var csrcStageMask_allocs *cgoAllocMap
+ refb3bc376a.srcStageMask, csrcStageMask_allocs = (C.VkPipelineStageFlags2)(x.SrcStageMask), cgoAllocsUnknown
+ allocsb3bc376a.Borrow(csrcStageMask_allocs)
+
+ var csrcAccessMask_allocs *cgoAllocMap
+ refb3bc376a.srcAccessMask, csrcAccessMask_allocs = (C.VkAccessFlags2)(x.SrcAccessMask), cgoAllocsUnknown
+ allocsb3bc376a.Borrow(csrcAccessMask_allocs)
+
+ var cdstStageMask_allocs *cgoAllocMap
+ refb3bc376a.dstStageMask, cdstStageMask_allocs = (C.VkPipelineStageFlags2)(x.DstStageMask), cgoAllocsUnknown
+ allocsb3bc376a.Borrow(cdstStageMask_allocs)
- var cmaxTessellationControlTotalOutputComponents_allocs *cgoAllocMap
- ref7926795a.maxTessellationControlTotalOutputComponents, cmaxTessellationControlTotalOutputComponents_allocs = (C.uint32_t)(x.MaxTessellationControlTotalOutputComponents), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxTessellationControlTotalOutputComponents_allocs)
+ var cdstAccessMask_allocs *cgoAllocMap
+ refb3bc376a.dstAccessMask, cdstAccessMask_allocs = (C.VkAccessFlags2)(x.DstAccessMask), cgoAllocsUnknown
+ allocsb3bc376a.Borrow(cdstAccessMask_allocs)
- var cmaxTessellationEvaluationInputComponents_allocs *cgoAllocMap
- ref7926795a.maxTessellationEvaluationInputComponents, cmaxTessellationEvaluationInputComponents_allocs = (C.uint32_t)(x.MaxTessellationEvaluationInputComponents), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxTessellationEvaluationInputComponents_allocs)
+ var coldLayout_allocs *cgoAllocMap
+ refb3bc376a.oldLayout, coldLayout_allocs = (C.VkImageLayout)(x.OldLayout), cgoAllocsUnknown
+ allocsb3bc376a.Borrow(coldLayout_allocs)
- var cmaxTessellationEvaluationOutputComponents_allocs *cgoAllocMap
- ref7926795a.maxTessellationEvaluationOutputComponents, cmaxTessellationEvaluationOutputComponents_allocs = (C.uint32_t)(x.MaxTessellationEvaluationOutputComponents), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxTessellationEvaluationOutputComponents_allocs)
+ var cnewLayout_allocs *cgoAllocMap
+ refb3bc376a.newLayout, cnewLayout_allocs = (C.VkImageLayout)(x.NewLayout), cgoAllocsUnknown
+ allocsb3bc376a.Borrow(cnewLayout_allocs)
- var cmaxGeometryShaderInvocations_allocs *cgoAllocMap
- ref7926795a.maxGeometryShaderInvocations, cmaxGeometryShaderInvocations_allocs = (C.uint32_t)(x.MaxGeometryShaderInvocations), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxGeometryShaderInvocations_allocs)
+ var csrcQueueFamilyIndex_allocs *cgoAllocMap
+ refb3bc376a.srcQueueFamilyIndex, csrcQueueFamilyIndex_allocs = (C.uint32_t)(x.SrcQueueFamilyIndex), cgoAllocsUnknown
+ allocsb3bc376a.Borrow(csrcQueueFamilyIndex_allocs)
- var cmaxGeometryInputComponents_allocs *cgoAllocMap
- ref7926795a.maxGeometryInputComponents, cmaxGeometryInputComponents_allocs = (C.uint32_t)(x.MaxGeometryInputComponents), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxGeometryInputComponents_allocs)
+ var cdstQueueFamilyIndex_allocs *cgoAllocMap
+ refb3bc376a.dstQueueFamilyIndex, cdstQueueFamilyIndex_allocs = (C.uint32_t)(x.DstQueueFamilyIndex), cgoAllocsUnknown
+ allocsb3bc376a.Borrow(cdstQueueFamilyIndex_allocs)
- var cmaxGeometryOutputComponents_allocs *cgoAllocMap
- ref7926795a.maxGeometryOutputComponents, cmaxGeometryOutputComponents_allocs = (C.uint32_t)(x.MaxGeometryOutputComponents), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxGeometryOutputComponents_allocs)
+ var cimage_allocs *cgoAllocMap
+ refb3bc376a.image, cimage_allocs = *(*C.VkImage)(unsafe.Pointer(&x.Image)), cgoAllocsUnknown
+ allocsb3bc376a.Borrow(cimage_allocs)
- var cmaxGeometryOutputVertices_allocs *cgoAllocMap
- ref7926795a.maxGeometryOutputVertices, cmaxGeometryOutputVertices_allocs = (C.uint32_t)(x.MaxGeometryOutputVertices), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxGeometryOutputVertices_allocs)
+ var csubresourceRange_allocs *cgoAllocMap
+ refb3bc376a.subresourceRange, csubresourceRange_allocs = x.SubresourceRange.PassValue()
+ allocsb3bc376a.Borrow(csubresourceRange_allocs)
- var cmaxGeometryTotalOutputComponents_allocs *cgoAllocMap
- ref7926795a.maxGeometryTotalOutputComponents, cmaxGeometryTotalOutputComponents_allocs = (C.uint32_t)(x.MaxGeometryTotalOutputComponents), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxGeometryTotalOutputComponents_allocs)
+ x.refb3bc376a = refb3bc376a
+ x.allocsb3bc376a = allocsb3bc376a
+ return refb3bc376a, allocsb3bc376a
- var cmaxFragmentInputComponents_allocs *cgoAllocMap
- ref7926795a.maxFragmentInputComponents, cmaxFragmentInputComponents_allocs = (C.uint32_t)(x.MaxFragmentInputComponents), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxFragmentInputComponents_allocs)
+}
- var cmaxFragmentOutputAttachments_allocs *cgoAllocMap
- ref7926795a.maxFragmentOutputAttachments, cmaxFragmentOutputAttachments_allocs = (C.uint32_t)(x.MaxFragmentOutputAttachments), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxFragmentOutputAttachments_allocs)
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ImageMemoryBarrier2) PassValue() (C.VkImageMemoryBarrier2, *cgoAllocMap) {
+ if x.refb3bc376a != nil {
+ return *x.refb3bc376a, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
- var cmaxFragmentDualSrcAttachments_allocs *cgoAllocMap
- ref7926795a.maxFragmentDualSrcAttachments, cmaxFragmentDualSrcAttachments_allocs = (C.uint32_t)(x.MaxFragmentDualSrcAttachments), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxFragmentDualSrcAttachments_allocs)
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ImageMemoryBarrier2) Deref() {
+ if x.refb3bc376a == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refb3bc376a.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb3bc376a.pNext))
+ x.SrcStageMask = (PipelineStageFlags2)(x.refb3bc376a.srcStageMask)
+ x.SrcAccessMask = (AccessFlags2)(x.refb3bc376a.srcAccessMask)
+ x.DstStageMask = (PipelineStageFlags2)(x.refb3bc376a.dstStageMask)
+ x.DstAccessMask = (AccessFlags2)(x.refb3bc376a.dstAccessMask)
+ x.OldLayout = (ImageLayout)(x.refb3bc376a.oldLayout)
+ x.NewLayout = (ImageLayout)(x.refb3bc376a.newLayout)
+ x.SrcQueueFamilyIndex = (uint32)(x.refb3bc376a.srcQueueFamilyIndex)
+ x.DstQueueFamilyIndex = (uint32)(x.refb3bc376a.dstQueueFamilyIndex)
+ x.Image = *(*Image)(unsafe.Pointer(&x.refb3bc376a.image))
+ x.SubresourceRange = *NewImageSubresourceRangeRef(unsafe.Pointer(&x.refb3bc376a.subresourceRange))
+}
+
+// allocDependencyInfoMemory allocates memory for type C.VkDependencyInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocDependencyInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDependencyInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
- var cmaxFragmentCombinedOutputResources_allocs *cgoAllocMap
- ref7926795a.maxFragmentCombinedOutputResources, cmaxFragmentCombinedOutputResources_allocs = (C.uint32_t)(x.MaxFragmentCombinedOutputResources), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxFragmentCombinedOutputResources_allocs)
+const sizeOfDependencyInfoValue = unsafe.Sizeof([1]C.VkDependencyInfo{})
- var cmaxComputeSharedMemorySize_allocs *cgoAllocMap
- ref7926795a.maxComputeSharedMemorySize, cmaxComputeSharedMemorySize_allocs = (C.uint32_t)(x.MaxComputeSharedMemorySize), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxComputeSharedMemorySize_allocs)
+// unpackSMemoryBarrier2 transforms a sliced Go data structure into plain C format.
+func unpackSMemoryBarrier2(x []MemoryBarrier2) (unpacked *C.VkMemoryBarrier2, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkMemoryBarrier2) {
+ go allocs.Free()
+ })
- var cmaxComputeWorkGroupCount_allocs *cgoAllocMap
- ref7926795a.maxComputeWorkGroupCount, cmaxComputeWorkGroupCount_allocs = *(*[3]C.uint32_t)(unsafe.Pointer(&x.MaxComputeWorkGroupCount)), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxComputeWorkGroupCount_allocs)
+ len0 := len(x)
+ mem0 := allocMemoryBarrier2Memory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkMemoryBarrier2)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkMemoryBarrier2)(h.Data)
+ return
+}
- var cmaxComputeWorkGroupInvocations_allocs *cgoAllocMap
- ref7926795a.maxComputeWorkGroupInvocations, cmaxComputeWorkGroupInvocations_allocs = (C.uint32_t)(x.MaxComputeWorkGroupInvocations), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxComputeWorkGroupInvocations_allocs)
+// unpackSBufferMemoryBarrier2 transforms a sliced Go data structure into plain C format.
+func unpackSBufferMemoryBarrier2(x []BufferMemoryBarrier2) (unpacked *C.VkBufferMemoryBarrier2, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkBufferMemoryBarrier2) {
+ go allocs.Free()
+ })
- var cmaxComputeWorkGroupSize_allocs *cgoAllocMap
- ref7926795a.maxComputeWorkGroupSize, cmaxComputeWorkGroupSize_allocs = *(*[3]C.uint32_t)(unsafe.Pointer(&x.MaxComputeWorkGroupSize)), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxComputeWorkGroupSize_allocs)
+ len0 := len(x)
+ mem0 := allocBufferMemoryBarrier2Memory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkBufferMemoryBarrier2)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkBufferMemoryBarrier2)(h.Data)
+ return
+}
- var csubPixelPrecisionBits_allocs *cgoAllocMap
- ref7926795a.subPixelPrecisionBits, csubPixelPrecisionBits_allocs = (C.uint32_t)(x.SubPixelPrecisionBits), cgoAllocsUnknown
- allocs7926795a.Borrow(csubPixelPrecisionBits_allocs)
+// unpackSImageMemoryBarrier2 transforms a sliced Go data structure into plain C format.
+func unpackSImageMemoryBarrier2(x []ImageMemoryBarrier2) (unpacked *C.VkImageMemoryBarrier2, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkImageMemoryBarrier2) {
+ go allocs.Free()
+ })
- var csubTexelPrecisionBits_allocs *cgoAllocMap
- ref7926795a.subTexelPrecisionBits, csubTexelPrecisionBits_allocs = (C.uint32_t)(x.SubTexelPrecisionBits), cgoAllocsUnknown
- allocs7926795a.Borrow(csubTexelPrecisionBits_allocs)
+ len0 := len(x)
+ mem0 := allocImageMemoryBarrier2Memory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkImageMemoryBarrier2)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkImageMemoryBarrier2)(h.Data)
+ return
+}
- var cmipmapPrecisionBits_allocs *cgoAllocMap
- ref7926795a.mipmapPrecisionBits, cmipmapPrecisionBits_allocs = (C.uint32_t)(x.MipmapPrecisionBits), cgoAllocsUnknown
- allocs7926795a.Borrow(cmipmapPrecisionBits_allocs)
+// packSMemoryBarrier2 reads sliced Go data structure out from plain C format.
+func packSMemoryBarrier2(v []MemoryBarrier2, ptr0 *C.VkMemoryBarrier2) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfMemoryBarrier2Value]C.VkMemoryBarrier2)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewMemoryBarrier2Ref(unsafe.Pointer(&ptr1))
+ }
+}
- var cmaxDrawIndexedIndexValue_allocs *cgoAllocMap
- ref7926795a.maxDrawIndexedIndexValue, cmaxDrawIndexedIndexValue_allocs = (C.uint32_t)(x.MaxDrawIndexedIndexValue), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxDrawIndexedIndexValue_allocs)
+// packSBufferMemoryBarrier2 reads sliced Go data structure out from plain C format.
+func packSBufferMemoryBarrier2(v []BufferMemoryBarrier2, ptr0 *C.VkBufferMemoryBarrier2) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfBufferMemoryBarrier2Value]C.VkBufferMemoryBarrier2)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewBufferMemoryBarrier2Ref(unsafe.Pointer(&ptr1))
+ }
+}
- var cmaxDrawIndirectCount_allocs *cgoAllocMap
- ref7926795a.maxDrawIndirectCount, cmaxDrawIndirectCount_allocs = (C.uint32_t)(x.MaxDrawIndirectCount), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxDrawIndirectCount_allocs)
+// packSImageMemoryBarrier2 reads sliced Go data structure out from plain C format.
+func packSImageMemoryBarrier2(v []ImageMemoryBarrier2, ptr0 *C.VkImageMemoryBarrier2) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfImageMemoryBarrier2Value]C.VkImageMemoryBarrier2)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewImageMemoryBarrier2Ref(unsafe.Pointer(&ptr1))
+ }
+}
- var cmaxSamplerLodBias_allocs *cgoAllocMap
- ref7926795a.maxSamplerLodBias, cmaxSamplerLodBias_allocs = (C.float)(x.MaxSamplerLodBias), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxSamplerLodBias_allocs)
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *DependencyInfo) Ref() *C.VkDependencyInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref18c760d2
+}
- var cmaxSamplerAnisotropy_allocs *cgoAllocMap
- ref7926795a.maxSamplerAnisotropy, cmaxSamplerAnisotropy_allocs = (C.float)(x.MaxSamplerAnisotropy), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxSamplerAnisotropy_allocs)
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *DependencyInfo) Free() {
+ if x != nil && x.allocs18c760d2 != nil {
+ x.allocs18c760d2.(*cgoAllocMap).Free()
+ x.ref18c760d2 = nil
+ }
+}
- var cmaxViewports_allocs *cgoAllocMap
- ref7926795a.maxViewports, cmaxViewports_allocs = (C.uint32_t)(x.MaxViewports), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxViewports_allocs)
+// NewDependencyInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewDependencyInfoRef(ref unsafe.Pointer) *DependencyInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(DependencyInfo)
+ obj.ref18c760d2 = (*C.VkDependencyInfo)(unsafe.Pointer(ref))
+ return obj
+}
- var cmaxViewportDimensions_allocs *cgoAllocMap
- ref7926795a.maxViewportDimensions, cmaxViewportDimensions_allocs = *(*[2]C.uint32_t)(unsafe.Pointer(&x.MaxViewportDimensions)), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxViewportDimensions_allocs)
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DependencyInfo) PassRef() (*C.VkDependencyInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref18c760d2 != nil {
+ return x.ref18c760d2, nil
+ }
+ mem18c760d2 := allocDependencyInfoMemory(1)
+ ref18c760d2 := (*C.VkDependencyInfo)(mem18c760d2)
+ allocs18c760d2 := new(cgoAllocMap)
+ allocs18c760d2.Add(mem18c760d2)
- var cviewportBoundsRange_allocs *cgoAllocMap
- ref7926795a.viewportBoundsRange, cviewportBoundsRange_allocs = *(*[2]C.float)(unsafe.Pointer(&x.ViewportBoundsRange)), cgoAllocsUnknown
- allocs7926795a.Borrow(cviewportBoundsRange_allocs)
+ var csType_allocs *cgoAllocMap
+ ref18c760d2.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs18c760d2.Borrow(csType_allocs)
- var cviewportSubPixelBits_allocs *cgoAllocMap
- ref7926795a.viewportSubPixelBits, cviewportSubPixelBits_allocs = (C.uint32_t)(x.ViewportSubPixelBits), cgoAllocsUnknown
- allocs7926795a.Borrow(cviewportSubPixelBits_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref18c760d2.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs18c760d2.Borrow(cpNext_allocs)
- var cminMemoryMapAlignment_allocs *cgoAllocMap
- ref7926795a.minMemoryMapAlignment, cminMemoryMapAlignment_allocs = (C.size_t)(x.MinMemoryMapAlignment), cgoAllocsUnknown
- allocs7926795a.Borrow(cminMemoryMapAlignment_allocs)
+ var cdependencyFlags_allocs *cgoAllocMap
+ ref18c760d2.dependencyFlags, cdependencyFlags_allocs = (C.VkDependencyFlags)(x.DependencyFlags), cgoAllocsUnknown
+ allocs18c760d2.Borrow(cdependencyFlags_allocs)
- var cminTexelBufferOffsetAlignment_allocs *cgoAllocMap
- ref7926795a.minTexelBufferOffsetAlignment, cminTexelBufferOffsetAlignment_allocs = (C.VkDeviceSize)(x.MinTexelBufferOffsetAlignment), cgoAllocsUnknown
- allocs7926795a.Borrow(cminTexelBufferOffsetAlignment_allocs)
+ var cmemoryBarrierCount_allocs *cgoAllocMap
+ ref18c760d2.memoryBarrierCount, cmemoryBarrierCount_allocs = (C.uint32_t)(x.MemoryBarrierCount), cgoAllocsUnknown
+ allocs18c760d2.Borrow(cmemoryBarrierCount_allocs)
- var cminUniformBufferOffsetAlignment_allocs *cgoAllocMap
- ref7926795a.minUniformBufferOffsetAlignment, cminUniformBufferOffsetAlignment_allocs = (C.VkDeviceSize)(x.MinUniformBufferOffsetAlignment), cgoAllocsUnknown
- allocs7926795a.Borrow(cminUniformBufferOffsetAlignment_allocs)
+ var cpMemoryBarriers_allocs *cgoAllocMap
+ ref18c760d2.pMemoryBarriers, cpMemoryBarriers_allocs = unpackSMemoryBarrier2(x.PMemoryBarriers)
+ allocs18c760d2.Borrow(cpMemoryBarriers_allocs)
- var cminStorageBufferOffsetAlignment_allocs *cgoAllocMap
- ref7926795a.minStorageBufferOffsetAlignment, cminStorageBufferOffsetAlignment_allocs = (C.VkDeviceSize)(x.MinStorageBufferOffsetAlignment), cgoAllocsUnknown
- allocs7926795a.Borrow(cminStorageBufferOffsetAlignment_allocs)
+ var cbufferMemoryBarrierCount_allocs *cgoAllocMap
+ ref18c760d2.bufferMemoryBarrierCount, cbufferMemoryBarrierCount_allocs = (C.uint32_t)(x.BufferMemoryBarrierCount), cgoAllocsUnknown
+ allocs18c760d2.Borrow(cbufferMemoryBarrierCount_allocs)
- var cminTexelOffset_allocs *cgoAllocMap
- ref7926795a.minTexelOffset, cminTexelOffset_allocs = (C.int32_t)(x.MinTexelOffset), cgoAllocsUnknown
- allocs7926795a.Borrow(cminTexelOffset_allocs)
+ var cpBufferMemoryBarriers_allocs *cgoAllocMap
+ ref18c760d2.pBufferMemoryBarriers, cpBufferMemoryBarriers_allocs = unpackSBufferMemoryBarrier2(x.PBufferMemoryBarriers)
+ allocs18c760d2.Borrow(cpBufferMemoryBarriers_allocs)
- var cmaxTexelOffset_allocs *cgoAllocMap
- ref7926795a.maxTexelOffset, cmaxTexelOffset_allocs = (C.uint32_t)(x.MaxTexelOffset), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxTexelOffset_allocs)
+ var cimageMemoryBarrierCount_allocs *cgoAllocMap
+ ref18c760d2.imageMemoryBarrierCount, cimageMemoryBarrierCount_allocs = (C.uint32_t)(x.ImageMemoryBarrierCount), cgoAllocsUnknown
+ allocs18c760d2.Borrow(cimageMemoryBarrierCount_allocs)
- var cminTexelGatherOffset_allocs *cgoAllocMap
- ref7926795a.minTexelGatherOffset, cminTexelGatherOffset_allocs = (C.int32_t)(x.MinTexelGatherOffset), cgoAllocsUnknown
- allocs7926795a.Borrow(cminTexelGatherOffset_allocs)
+ var cpImageMemoryBarriers_allocs *cgoAllocMap
+ ref18c760d2.pImageMemoryBarriers, cpImageMemoryBarriers_allocs = unpackSImageMemoryBarrier2(x.PImageMemoryBarriers)
+ allocs18c760d2.Borrow(cpImageMemoryBarriers_allocs)
- var cmaxTexelGatherOffset_allocs *cgoAllocMap
- ref7926795a.maxTexelGatherOffset, cmaxTexelGatherOffset_allocs = (C.uint32_t)(x.MaxTexelGatherOffset), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxTexelGatherOffset_allocs)
+ x.ref18c760d2 = ref18c760d2
+ x.allocs18c760d2 = allocs18c760d2
+ return ref18c760d2, allocs18c760d2
- var cminInterpolationOffset_allocs *cgoAllocMap
- ref7926795a.minInterpolationOffset, cminInterpolationOffset_allocs = (C.float)(x.MinInterpolationOffset), cgoAllocsUnknown
- allocs7926795a.Borrow(cminInterpolationOffset_allocs)
+}
- var cmaxInterpolationOffset_allocs *cgoAllocMap
- ref7926795a.maxInterpolationOffset, cmaxInterpolationOffset_allocs = (C.float)(x.MaxInterpolationOffset), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxInterpolationOffset_allocs)
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DependencyInfo) PassValue() (C.VkDependencyInfo, *cgoAllocMap) {
+ if x.ref18c760d2 != nil {
+ return *x.ref18c760d2, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
- var csubPixelInterpolationOffsetBits_allocs *cgoAllocMap
- ref7926795a.subPixelInterpolationOffsetBits, csubPixelInterpolationOffsetBits_allocs = (C.uint32_t)(x.SubPixelInterpolationOffsetBits), cgoAllocsUnknown
- allocs7926795a.Borrow(csubPixelInterpolationOffsetBits_allocs)
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *DependencyInfo) Deref() {
+ if x.ref18c760d2 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref18c760d2.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref18c760d2.pNext))
+ x.DependencyFlags = (DependencyFlags)(x.ref18c760d2.dependencyFlags)
+ x.MemoryBarrierCount = (uint32)(x.ref18c760d2.memoryBarrierCount)
+ packSMemoryBarrier2(x.PMemoryBarriers, x.ref18c760d2.pMemoryBarriers)
+ x.BufferMemoryBarrierCount = (uint32)(x.ref18c760d2.bufferMemoryBarrierCount)
+ packSBufferMemoryBarrier2(x.PBufferMemoryBarriers, x.ref18c760d2.pBufferMemoryBarriers)
+ x.ImageMemoryBarrierCount = (uint32)(x.ref18c760d2.imageMemoryBarrierCount)
+ packSImageMemoryBarrier2(x.PImageMemoryBarriers, x.ref18c760d2.pImageMemoryBarriers)
+}
- var cmaxFramebufferWidth_allocs *cgoAllocMap
- ref7926795a.maxFramebufferWidth, cmaxFramebufferWidth_allocs = (C.uint32_t)(x.MaxFramebufferWidth), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxFramebufferWidth_allocs)
+// allocSemaphoreSubmitInfoMemory allocates memory for type C.VkSemaphoreSubmitInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSemaphoreSubmitInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSemaphoreSubmitInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
- var cmaxFramebufferHeight_allocs *cgoAllocMap
- ref7926795a.maxFramebufferHeight, cmaxFramebufferHeight_allocs = (C.uint32_t)(x.MaxFramebufferHeight), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxFramebufferHeight_allocs)
+const sizeOfSemaphoreSubmitInfoValue = unsafe.Sizeof([1]C.VkSemaphoreSubmitInfo{})
- var cmaxFramebufferLayers_allocs *cgoAllocMap
- ref7926795a.maxFramebufferLayers, cmaxFramebufferLayers_allocs = (C.uint32_t)(x.MaxFramebufferLayers), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxFramebufferLayers_allocs)
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SemaphoreSubmitInfo) Ref() *C.VkSemaphoreSubmitInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref9d52ed10
+}
- var cframebufferColorSampleCounts_allocs *cgoAllocMap
- ref7926795a.framebufferColorSampleCounts, cframebufferColorSampleCounts_allocs = (C.VkSampleCountFlags)(x.FramebufferColorSampleCounts), cgoAllocsUnknown
- allocs7926795a.Borrow(cframebufferColorSampleCounts_allocs)
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SemaphoreSubmitInfo) Free() {
+ if x != nil && x.allocs9d52ed10 != nil {
+ x.allocs9d52ed10.(*cgoAllocMap).Free()
+ x.ref9d52ed10 = nil
+ }
+}
- var cframebufferDepthSampleCounts_allocs *cgoAllocMap
- ref7926795a.framebufferDepthSampleCounts, cframebufferDepthSampleCounts_allocs = (C.VkSampleCountFlags)(x.FramebufferDepthSampleCounts), cgoAllocsUnknown
- allocs7926795a.Borrow(cframebufferDepthSampleCounts_allocs)
+// NewSemaphoreSubmitInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSemaphoreSubmitInfoRef(ref unsafe.Pointer) *SemaphoreSubmitInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SemaphoreSubmitInfo)
+ obj.ref9d52ed10 = (*C.VkSemaphoreSubmitInfo)(unsafe.Pointer(ref))
+ return obj
+}
- var cframebufferStencilSampleCounts_allocs *cgoAllocMap
- ref7926795a.framebufferStencilSampleCounts, cframebufferStencilSampleCounts_allocs = (C.VkSampleCountFlags)(x.FramebufferStencilSampleCounts), cgoAllocsUnknown
- allocs7926795a.Borrow(cframebufferStencilSampleCounts_allocs)
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SemaphoreSubmitInfo) PassRef() (*C.VkSemaphoreSubmitInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref9d52ed10 != nil {
+ return x.ref9d52ed10, nil
+ }
+ mem9d52ed10 := allocSemaphoreSubmitInfoMemory(1)
+ ref9d52ed10 := (*C.VkSemaphoreSubmitInfo)(mem9d52ed10)
+ allocs9d52ed10 := new(cgoAllocMap)
+ allocs9d52ed10.Add(mem9d52ed10)
- var cframebufferNoAttachmentsSampleCounts_allocs *cgoAllocMap
- ref7926795a.framebufferNoAttachmentsSampleCounts, cframebufferNoAttachmentsSampleCounts_allocs = (C.VkSampleCountFlags)(x.FramebufferNoAttachmentsSampleCounts), cgoAllocsUnknown
- allocs7926795a.Borrow(cframebufferNoAttachmentsSampleCounts_allocs)
+ var csType_allocs *cgoAllocMap
+ ref9d52ed10.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs9d52ed10.Borrow(csType_allocs)
- var cmaxColorAttachments_allocs *cgoAllocMap
- ref7926795a.maxColorAttachments, cmaxColorAttachments_allocs = (C.uint32_t)(x.MaxColorAttachments), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxColorAttachments_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref9d52ed10.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs9d52ed10.Borrow(cpNext_allocs)
- var csampledImageColorSampleCounts_allocs *cgoAllocMap
- ref7926795a.sampledImageColorSampleCounts, csampledImageColorSampleCounts_allocs = (C.VkSampleCountFlags)(x.SampledImageColorSampleCounts), cgoAllocsUnknown
- allocs7926795a.Borrow(csampledImageColorSampleCounts_allocs)
+ var csemaphore_allocs *cgoAllocMap
+ ref9d52ed10.semaphore, csemaphore_allocs = *(*C.VkSemaphore)(unsafe.Pointer(&x.Semaphore)), cgoAllocsUnknown
+ allocs9d52ed10.Borrow(csemaphore_allocs)
- var csampledImageIntegerSampleCounts_allocs *cgoAllocMap
- ref7926795a.sampledImageIntegerSampleCounts, csampledImageIntegerSampleCounts_allocs = (C.VkSampleCountFlags)(x.SampledImageIntegerSampleCounts), cgoAllocsUnknown
- allocs7926795a.Borrow(csampledImageIntegerSampleCounts_allocs)
+ var cvalue_allocs *cgoAllocMap
+ ref9d52ed10.value, cvalue_allocs = (C.uint64_t)(x.Value), cgoAllocsUnknown
+ allocs9d52ed10.Borrow(cvalue_allocs)
- var csampledImageDepthSampleCounts_allocs *cgoAllocMap
- ref7926795a.sampledImageDepthSampleCounts, csampledImageDepthSampleCounts_allocs = (C.VkSampleCountFlags)(x.SampledImageDepthSampleCounts), cgoAllocsUnknown
- allocs7926795a.Borrow(csampledImageDepthSampleCounts_allocs)
+ var cstageMask_allocs *cgoAllocMap
+ ref9d52ed10.stageMask, cstageMask_allocs = (C.VkPipelineStageFlags2)(x.StageMask), cgoAllocsUnknown
+ allocs9d52ed10.Borrow(cstageMask_allocs)
- var csampledImageStencilSampleCounts_allocs *cgoAllocMap
- ref7926795a.sampledImageStencilSampleCounts, csampledImageStencilSampleCounts_allocs = (C.VkSampleCountFlags)(x.SampledImageStencilSampleCounts), cgoAllocsUnknown
- allocs7926795a.Borrow(csampledImageStencilSampleCounts_allocs)
+ var cdeviceIndex_allocs *cgoAllocMap
+ ref9d52ed10.deviceIndex, cdeviceIndex_allocs = (C.uint32_t)(x.DeviceIndex), cgoAllocsUnknown
+ allocs9d52ed10.Borrow(cdeviceIndex_allocs)
- var cstorageImageSampleCounts_allocs *cgoAllocMap
- ref7926795a.storageImageSampleCounts, cstorageImageSampleCounts_allocs = (C.VkSampleCountFlags)(x.StorageImageSampleCounts), cgoAllocsUnknown
- allocs7926795a.Borrow(cstorageImageSampleCounts_allocs)
+ x.ref9d52ed10 = ref9d52ed10
+ x.allocs9d52ed10 = allocs9d52ed10
+ return ref9d52ed10, allocs9d52ed10
- var cmaxSampleMaskWords_allocs *cgoAllocMap
- ref7926795a.maxSampleMaskWords, cmaxSampleMaskWords_allocs = (C.uint32_t)(x.MaxSampleMaskWords), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxSampleMaskWords_allocs)
+}
- var ctimestampComputeAndGraphics_allocs *cgoAllocMap
- ref7926795a.timestampComputeAndGraphics, ctimestampComputeAndGraphics_allocs = (C.VkBool32)(x.TimestampComputeAndGraphics), cgoAllocsUnknown
- allocs7926795a.Borrow(ctimestampComputeAndGraphics_allocs)
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x SemaphoreSubmitInfo) PassValue() (C.VkSemaphoreSubmitInfo, *cgoAllocMap) {
+ if x.ref9d52ed10 != nil {
+ return *x.ref9d52ed10, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
- var ctimestampPeriod_allocs *cgoAllocMap
- ref7926795a.timestampPeriod, ctimestampPeriod_allocs = (C.float)(x.TimestampPeriod), cgoAllocsUnknown
- allocs7926795a.Borrow(ctimestampPeriod_allocs)
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *SemaphoreSubmitInfo) Deref() {
+ if x.ref9d52ed10 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref9d52ed10.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref9d52ed10.pNext))
+ x.Semaphore = *(*Semaphore)(unsafe.Pointer(&x.ref9d52ed10.semaphore))
+ x.Value = (uint64)(x.ref9d52ed10.value)
+ x.StageMask = (PipelineStageFlags2)(x.ref9d52ed10.stageMask)
+ x.DeviceIndex = (uint32)(x.ref9d52ed10.deviceIndex)
+}
- var cmaxClipDistances_allocs *cgoAllocMap
- ref7926795a.maxClipDistances, cmaxClipDistances_allocs = (C.uint32_t)(x.MaxClipDistances), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxClipDistances_allocs)
+// allocCommandBufferSubmitInfoMemory allocates memory for type C.VkCommandBufferSubmitInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocCommandBufferSubmitInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCommandBufferSubmitInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
- var cmaxCullDistances_allocs *cgoAllocMap
- ref7926795a.maxCullDistances, cmaxCullDistances_allocs = (C.uint32_t)(x.MaxCullDistances), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxCullDistances_allocs)
+const sizeOfCommandBufferSubmitInfoValue = unsafe.Sizeof([1]C.VkCommandBufferSubmitInfo{})
- var cmaxCombinedClipAndCullDistances_allocs *cgoAllocMap
- ref7926795a.maxCombinedClipAndCullDistances, cmaxCombinedClipAndCullDistances_allocs = (C.uint32_t)(x.MaxCombinedClipAndCullDistances), cgoAllocsUnknown
- allocs7926795a.Borrow(cmaxCombinedClipAndCullDistances_allocs)
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *CommandBufferSubmitInfo) Ref() *C.VkCommandBufferSubmitInfo {
+ if x == nil {
+ return nil
+ }
+ return x.ref67c6884a
+}
- var cdiscreteQueuePriorities_allocs *cgoAllocMap
- ref7926795a.discreteQueuePriorities, cdiscreteQueuePriorities_allocs = (C.uint32_t)(x.DiscreteQueuePriorities), cgoAllocsUnknown
- allocs7926795a.Borrow(cdiscreteQueuePriorities_allocs)
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *CommandBufferSubmitInfo) Free() {
+ if x != nil && x.allocs67c6884a != nil {
+ x.allocs67c6884a.(*cgoAllocMap).Free()
+ x.ref67c6884a = nil
+ }
+}
- var cpointSizeRange_allocs *cgoAllocMap
- ref7926795a.pointSizeRange, cpointSizeRange_allocs = *(*[2]C.float)(unsafe.Pointer(&x.PointSizeRange)), cgoAllocsUnknown
- allocs7926795a.Borrow(cpointSizeRange_allocs)
+// NewCommandBufferSubmitInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewCommandBufferSubmitInfoRef(ref unsafe.Pointer) *CommandBufferSubmitInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(CommandBufferSubmitInfo)
+ obj.ref67c6884a = (*C.VkCommandBufferSubmitInfo)(unsafe.Pointer(ref))
+ return obj
+}
- var clineWidthRange_allocs *cgoAllocMap
- ref7926795a.lineWidthRange, clineWidthRange_allocs = *(*[2]C.float)(unsafe.Pointer(&x.LineWidthRange)), cgoAllocsUnknown
- allocs7926795a.Borrow(clineWidthRange_allocs)
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *CommandBufferSubmitInfo) PassRef() (*C.VkCommandBufferSubmitInfo, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref67c6884a != nil {
+ return x.ref67c6884a, nil
+ }
+ mem67c6884a := allocCommandBufferSubmitInfoMemory(1)
+ ref67c6884a := (*C.VkCommandBufferSubmitInfo)(mem67c6884a)
+ allocs67c6884a := new(cgoAllocMap)
+ allocs67c6884a.Add(mem67c6884a)
- var cpointSizeGranularity_allocs *cgoAllocMap
- ref7926795a.pointSizeGranularity, cpointSizeGranularity_allocs = (C.float)(x.PointSizeGranularity), cgoAllocsUnknown
- allocs7926795a.Borrow(cpointSizeGranularity_allocs)
+ var csType_allocs *cgoAllocMap
+ ref67c6884a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs67c6884a.Borrow(csType_allocs)
- var clineWidthGranularity_allocs *cgoAllocMap
- ref7926795a.lineWidthGranularity, clineWidthGranularity_allocs = (C.float)(x.LineWidthGranularity), cgoAllocsUnknown
- allocs7926795a.Borrow(clineWidthGranularity_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref67c6884a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs67c6884a.Borrow(cpNext_allocs)
- var cstrictLines_allocs *cgoAllocMap
- ref7926795a.strictLines, cstrictLines_allocs = (C.VkBool32)(x.StrictLines), cgoAllocsUnknown
- allocs7926795a.Borrow(cstrictLines_allocs)
+ var ccommandBuffer_allocs *cgoAllocMap
+ ref67c6884a.commandBuffer, ccommandBuffer_allocs = *(*C.VkCommandBuffer)(unsafe.Pointer(&x.CommandBuffer)), cgoAllocsUnknown
+ allocs67c6884a.Borrow(ccommandBuffer_allocs)
- var cstandardSampleLocations_allocs *cgoAllocMap
- ref7926795a.standardSampleLocations, cstandardSampleLocations_allocs = (C.VkBool32)(x.StandardSampleLocations), cgoAllocsUnknown
- allocs7926795a.Borrow(cstandardSampleLocations_allocs)
+ var cdeviceMask_allocs *cgoAllocMap
+ ref67c6884a.deviceMask, cdeviceMask_allocs = (C.uint32_t)(x.DeviceMask), cgoAllocsUnknown
+ allocs67c6884a.Borrow(cdeviceMask_allocs)
- var coptimalBufferCopyOffsetAlignment_allocs *cgoAllocMap
- ref7926795a.optimalBufferCopyOffsetAlignment, coptimalBufferCopyOffsetAlignment_allocs = (C.VkDeviceSize)(x.OptimalBufferCopyOffsetAlignment), cgoAllocsUnknown
- allocs7926795a.Borrow(coptimalBufferCopyOffsetAlignment_allocs)
+ x.ref67c6884a = ref67c6884a
+ x.allocs67c6884a = allocs67c6884a
+ return ref67c6884a, allocs67c6884a
- var coptimalBufferCopyRowPitchAlignment_allocs *cgoAllocMap
- ref7926795a.optimalBufferCopyRowPitchAlignment, coptimalBufferCopyRowPitchAlignment_allocs = (C.VkDeviceSize)(x.OptimalBufferCopyRowPitchAlignment), cgoAllocsUnknown
- allocs7926795a.Borrow(coptimalBufferCopyRowPitchAlignment_allocs)
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x CommandBufferSubmitInfo) PassValue() (C.VkCommandBufferSubmitInfo, *cgoAllocMap) {
+ if x.ref67c6884a != nil {
+ return *x.ref67c6884a, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *CommandBufferSubmitInfo) Deref() {
+ if x.ref67c6884a == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref67c6884a.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref67c6884a.pNext))
+ x.CommandBuffer = *(*CommandBuffer)(unsafe.Pointer(&x.ref67c6884a.commandBuffer))
+ x.DeviceMask = (uint32)(x.ref67c6884a.deviceMask)
+}
+
+// allocSubmitInfo2Memory allocates memory for type C.VkSubmitInfo2 in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSubmitInfo2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSubmitInfo2Value))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfSubmitInfo2Value = unsafe.Sizeof([1]C.VkSubmitInfo2{})
+
+// unpackSSemaphoreSubmitInfo transforms a sliced Go data structure into plain C format.
+func unpackSSemaphoreSubmitInfo(x []SemaphoreSubmitInfo) (unpacked *C.VkSemaphoreSubmitInfo, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkSemaphoreSubmitInfo) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocSemaphoreSubmitInfoMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkSemaphoreSubmitInfo)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkSemaphoreSubmitInfo)(h.Data)
+ return
+}
+
+// unpackSCommandBufferSubmitInfo transforms a sliced Go data structure into plain C format.
+func unpackSCommandBufferSubmitInfo(x []CommandBufferSubmitInfo) (unpacked *C.VkCommandBufferSubmitInfo, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkCommandBufferSubmitInfo) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocCommandBufferSubmitInfoMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkCommandBufferSubmitInfo)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkCommandBufferSubmitInfo)(h.Data)
+ return
+}
+
+// packSSemaphoreSubmitInfo reads sliced Go data structure out from plain C format.
+func packSSemaphoreSubmitInfo(v []SemaphoreSubmitInfo, ptr0 *C.VkSemaphoreSubmitInfo) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfSemaphoreSubmitInfoValue]C.VkSemaphoreSubmitInfo)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewSemaphoreSubmitInfoRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// packSCommandBufferSubmitInfo reads sliced Go data structure out from plain C format.
+func packSCommandBufferSubmitInfo(v []CommandBufferSubmitInfo, ptr0 *C.VkCommandBufferSubmitInfo) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfCommandBufferSubmitInfoValue]C.VkCommandBufferSubmitInfo)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewCommandBufferSubmitInfoRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *SubmitInfo2) Ref() *C.VkSubmitInfo2 {
+ if x == nil {
+ return nil
+ }
+ return x.ref51f3e20a
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *SubmitInfo2) Free() {
+ if x != nil && x.allocs51f3e20a != nil {
+ x.allocs51f3e20a.(*cgoAllocMap).Free()
+ x.ref51f3e20a = nil
+ }
+}
+
+// NewSubmitInfo2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewSubmitInfo2Ref(ref unsafe.Pointer) *SubmitInfo2 {
+ if ref == nil {
+ return nil
+ }
+ obj := new(SubmitInfo2)
+ obj.ref51f3e20a = (*C.VkSubmitInfo2)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *SubmitInfo2) PassRef() (*C.VkSubmitInfo2, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref51f3e20a != nil {
+ return x.ref51f3e20a, nil
+ }
+ mem51f3e20a := allocSubmitInfo2Memory(1)
+ ref51f3e20a := (*C.VkSubmitInfo2)(mem51f3e20a)
+ allocs51f3e20a := new(cgoAllocMap)
+ allocs51f3e20a.Add(mem51f3e20a)
+
+ var csType_allocs *cgoAllocMap
+ ref51f3e20a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs51f3e20a.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref51f3e20a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs51f3e20a.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref51f3e20a.flags, cflags_allocs = (C.VkSubmitFlags)(x.Flags), cgoAllocsUnknown
+ allocs51f3e20a.Borrow(cflags_allocs)
+
+ var cwaitSemaphoreInfoCount_allocs *cgoAllocMap
+ ref51f3e20a.waitSemaphoreInfoCount, cwaitSemaphoreInfoCount_allocs = (C.uint32_t)(x.WaitSemaphoreInfoCount), cgoAllocsUnknown
+ allocs51f3e20a.Borrow(cwaitSemaphoreInfoCount_allocs)
+
+ var cpWaitSemaphoreInfos_allocs *cgoAllocMap
+ ref51f3e20a.pWaitSemaphoreInfos, cpWaitSemaphoreInfos_allocs = unpackSSemaphoreSubmitInfo(x.PWaitSemaphoreInfos)
+ allocs51f3e20a.Borrow(cpWaitSemaphoreInfos_allocs)
+
+ var ccommandBufferInfoCount_allocs *cgoAllocMap
+ ref51f3e20a.commandBufferInfoCount, ccommandBufferInfoCount_allocs = (C.uint32_t)(x.CommandBufferInfoCount), cgoAllocsUnknown
+ allocs51f3e20a.Borrow(ccommandBufferInfoCount_allocs)
+
+ var cpCommandBufferInfos_allocs *cgoAllocMap
+ ref51f3e20a.pCommandBufferInfos, cpCommandBufferInfos_allocs = unpackSCommandBufferSubmitInfo(x.PCommandBufferInfos)
+ allocs51f3e20a.Borrow(cpCommandBufferInfos_allocs)
+
+ var csignalSemaphoreInfoCount_allocs *cgoAllocMap
+ ref51f3e20a.signalSemaphoreInfoCount, csignalSemaphoreInfoCount_allocs = (C.uint32_t)(x.SignalSemaphoreInfoCount), cgoAllocsUnknown
+ allocs51f3e20a.Borrow(csignalSemaphoreInfoCount_allocs)
- var cnonCoherentAtomSize_allocs *cgoAllocMap
- ref7926795a.nonCoherentAtomSize, cnonCoherentAtomSize_allocs = (C.VkDeviceSize)(x.NonCoherentAtomSize), cgoAllocsUnknown
- allocs7926795a.Borrow(cnonCoherentAtomSize_allocs)
+ var cpSignalSemaphoreInfos_allocs *cgoAllocMap
+ ref51f3e20a.pSignalSemaphoreInfos, cpSignalSemaphoreInfos_allocs = unpackSSemaphoreSubmitInfo(x.PSignalSemaphoreInfos)
+ allocs51f3e20a.Borrow(cpSignalSemaphoreInfos_allocs)
- x.ref7926795a = ref7926795a
- x.allocs7926795a = allocs7926795a
- return ref7926795a, allocs7926795a
+ x.ref51f3e20a = ref51f3e20a
+ x.allocs51f3e20a = allocs51f3e20a
+ return ref51f3e20a, allocs51f3e20a
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceLimits) PassValue() (C.VkPhysicalDeviceLimits, *cgoAllocMap) {
- if x.ref7926795a != nil {
- return *x.ref7926795a, nil
+func (x SubmitInfo2) PassValue() (C.VkSubmitInfo2, *cgoAllocMap) {
+ if x.ref51f3e20a != nil {
+ return *x.ref51f3e20a, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -1563,201 +28663,96 @@ func (x PhysicalDeviceLimits) PassValue() (C.VkPhysicalDeviceLimits, *cgoAllocMa
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceLimits) Deref() {
- if x.ref7926795a == nil {
+func (x *SubmitInfo2) Deref() {
+ if x.ref51f3e20a == nil {
return
}
- x.MaxImageDimension1D = (uint32)(x.ref7926795a.maxImageDimension1D)
- x.MaxImageDimension2D = (uint32)(x.ref7926795a.maxImageDimension2D)
- x.MaxImageDimension3D = (uint32)(x.ref7926795a.maxImageDimension3D)
- x.MaxImageDimensionCube = (uint32)(x.ref7926795a.maxImageDimensionCube)
- x.MaxImageArrayLayers = (uint32)(x.ref7926795a.maxImageArrayLayers)
- x.MaxTexelBufferElements = (uint32)(x.ref7926795a.maxTexelBufferElements)
- x.MaxUniformBufferRange = (uint32)(x.ref7926795a.maxUniformBufferRange)
- x.MaxStorageBufferRange = (uint32)(x.ref7926795a.maxStorageBufferRange)
- x.MaxPushConstantsSize = (uint32)(x.ref7926795a.maxPushConstantsSize)
- x.MaxMemoryAllocationCount = (uint32)(x.ref7926795a.maxMemoryAllocationCount)
- x.MaxSamplerAllocationCount = (uint32)(x.ref7926795a.maxSamplerAllocationCount)
- x.BufferImageGranularity = (DeviceSize)(x.ref7926795a.bufferImageGranularity)
- x.SparseAddressSpaceSize = (DeviceSize)(x.ref7926795a.sparseAddressSpaceSize)
- x.MaxBoundDescriptorSets = (uint32)(x.ref7926795a.maxBoundDescriptorSets)
- x.MaxPerStageDescriptorSamplers = (uint32)(x.ref7926795a.maxPerStageDescriptorSamplers)
- x.MaxPerStageDescriptorUniformBuffers = (uint32)(x.ref7926795a.maxPerStageDescriptorUniformBuffers)
- x.MaxPerStageDescriptorStorageBuffers = (uint32)(x.ref7926795a.maxPerStageDescriptorStorageBuffers)
- x.MaxPerStageDescriptorSampledImages = (uint32)(x.ref7926795a.maxPerStageDescriptorSampledImages)
- x.MaxPerStageDescriptorStorageImages = (uint32)(x.ref7926795a.maxPerStageDescriptorStorageImages)
- x.MaxPerStageDescriptorInputAttachments = (uint32)(x.ref7926795a.maxPerStageDescriptorInputAttachments)
- x.MaxPerStageResources = (uint32)(x.ref7926795a.maxPerStageResources)
- x.MaxDescriptorSetSamplers = (uint32)(x.ref7926795a.maxDescriptorSetSamplers)
- x.MaxDescriptorSetUniformBuffers = (uint32)(x.ref7926795a.maxDescriptorSetUniformBuffers)
- x.MaxDescriptorSetUniformBuffersDynamic = (uint32)(x.ref7926795a.maxDescriptorSetUniformBuffersDynamic)
- x.MaxDescriptorSetStorageBuffers = (uint32)(x.ref7926795a.maxDescriptorSetStorageBuffers)
- x.MaxDescriptorSetStorageBuffersDynamic = (uint32)(x.ref7926795a.maxDescriptorSetStorageBuffersDynamic)
- x.MaxDescriptorSetSampledImages = (uint32)(x.ref7926795a.maxDescriptorSetSampledImages)
- x.MaxDescriptorSetStorageImages = (uint32)(x.ref7926795a.maxDescriptorSetStorageImages)
- x.MaxDescriptorSetInputAttachments = (uint32)(x.ref7926795a.maxDescriptorSetInputAttachments)
- x.MaxVertexInputAttributes = (uint32)(x.ref7926795a.maxVertexInputAttributes)
- x.MaxVertexInputBindings = (uint32)(x.ref7926795a.maxVertexInputBindings)
- x.MaxVertexInputAttributeOffset = (uint32)(x.ref7926795a.maxVertexInputAttributeOffset)
- x.MaxVertexInputBindingStride = (uint32)(x.ref7926795a.maxVertexInputBindingStride)
- x.MaxVertexOutputComponents = (uint32)(x.ref7926795a.maxVertexOutputComponents)
- x.MaxTessellationGenerationLevel = (uint32)(x.ref7926795a.maxTessellationGenerationLevel)
- x.MaxTessellationPatchSize = (uint32)(x.ref7926795a.maxTessellationPatchSize)
- x.MaxTessellationControlPerVertexInputComponents = (uint32)(x.ref7926795a.maxTessellationControlPerVertexInputComponents)
- x.MaxTessellationControlPerVertexOutputComponents = (uint32)(x.ref7926795a.maxTessellationControlPerVertexOutputComponents)
- x.MaxTessellationControlPerPatchOutputComponents = (uint32)(x.ref7926795a.maxTessellationControlPerPatchOutputComponents)
- x.MaxTessellationControlTotalOutputComponents = (uint32)(x.ref7926795a.maxTessellationControlTotalOutputComponents)
- x.MaxTessellationEvaluationInputComponents = (uint32)(x.ref7926795a.maxTessellationEvaluationInputComponents)
- x.MaxTessellationEvaluationOutputComponents = (uint32)(x.ref7926795a.maxTessellationEvaluationOutputComponents)
- x.MaxGeometryShaderInvocations = (uint32)(x.ref7926795a.maxGeometryShaderInvocations)
- x.MaxGeometryInputComponents = (uint32)(x.ref7926795a.maxGeometryInputComponents)
- x.MaxGeometryOutputComponents = (uint32)(x.ref7926795a.maxGeometryOutputComponents)
- x.MaxGeometryOutputVertices = (uint32)(x.ref7926795a.maxGeometryOutputVertices)
- x.MaxGeometryTotalOutputComponents = (uint32)(x.ref7926795a.maxGeometryTotalOutputComponents)
- x.MaxFragmentInputComponents = (uint32)(x.ref7926795a.maxFragmentInputComponents)
- x.MaxFragmentOutputAttachments = (uint32)(x.ref7926795a.maxFragmentOutputAttachments)
- x.MaxFragmentDualSrcAttachments = (uint32)(x.ref7926795a.maxFragmentDualSrcAttachments)
- x.MaxFragmentCombinedOutputResources = (uint32)(x.ref7926795a.maxFragmentCombinedOutputResources)
- x.MaxComputeSharedMemorySize = (uint32)(x.ref7926795a.maxComputeSharedMemorySize)
- x.MaxComputeWorkGroupCount = *(*[3]uint32)(unsafe.Pointer(&x.ref7926795a.maxComputeWorkGroupCount))
- x.MaxComputeWorkGroupInvocations = (uint32)(x.ref7926795a.maxComputeWorkGroupInvocations)
- x.MaxComputeWorkGroupSize = *(*[3]uint32)(unsafe.Pointer(&x.ref7926795a.maxComputeWorkGroupSize))
- x.SubPixelPrecisionBits = (uint32)(x.ref7926795a.subPixelPrecisionBits)
- x.SubTexelPrecisionBits = (uint32)(x.ref7926795a.subTexelPrecisionBits)
- x.MipmapPrecisionBits = (uint32)(x.ref7926795a.mipmapPrecisionBits)
- x.MaxDrawIndexedIndexValue = (uint32)(x.ref7926795a.maxDrawIndexedIndexValue)
- x.MaxDrawIndirectCount = (uint32)(x.ref7926795a.maxDrawIndirectCount)
- x.MaxSamplerLodBias = (float32)(x.ref7926795a.maxSamplerLodBias)
- x.MaxSamplerAnisotropy = (float32)(x.ref7926795a.maxSamplerAnisotropy)
- x.MaxViewports = (uint32)(x.ref7926795a.maxViewports)
- x.MaxViewportDimensions = *(*[2]uint32)(unsafe.Pointer(&x.ref7926795a.maxViewportDimensions))
- x.ViewportBoundsRange = *(*[2]float32)(unsafe.Pointer(&x.ref7926795a.viewportBoundsRange))
- x.ViewportSubPixelBits = (uint32)(x.ref7926795a.viewportSubPixelBits)
- x.MinMemoryMapAlignment = (uint)(x.ref7926795a.minMemoryMapAlignment)
- x.MinTexelBufferOffsetAlignment = (DeviceSize)(x.ref7926795a.minTexelBufferOffsetAlignment)
- x.MinUniformBufferOffsetAlignment = (DeviceSize)(x.ref7926795a.minUniformBufferOffsetAlignment)
- x.MinStorageBufferOffsetAlignment = (DeviceSize)(x.ref7926795a.minStorageBufferOffsetAlignment)
- x.MinTexelOffset = (int32)(x.ref7926795a.minTexelOffset)
- x.MaxTexelOffset = (uint32)(x.ref7926795a.maxTexelOffset)
- x.MinTexelGatherOffset = (int32)(x.ref7926795a.minTexelGatherOffset)
- x.MaxTexelGatherOffset = (uint32)(x.ref7926795a.maxTexelGatherOffset)
- x.MinInterpolationOffset = (float32)(x.ref7926795a.minInterpolationOffset)
- x.MaxInterpolationOffset = (float32)(x.ref7926795a.maxInterpolationOffset)
- x.SubPixelInterpolationOffsetBits = (uint32)(x.ref7926795a.subPixelInterpolationOffsetBits)
- x.MaxFramebufferWidth = (uint32)(x.ref7926795a.maxFramebufferWidth)
- x.MaxFramebufferHeight = (uint32)(x.ref7926795a.maxFramebufferHeight)
- x.MaxFramebufferLayers = (uint32)(x.ref7926795a.maxFramebufferLayers)
- x.FramebufferColorSampleCounts = (SampleCountFlags)(x.ref7926795a.framebufferColorSampleCounts)
- x.FramebufferDepthSampleCounts = (SampleCountFlags)(x.ref7926795a.framebufferDepthSampleCounts)
- x.FramebufferStencilSampleCounts = (SampleCountFlags)(x.ref7926795a.framebufferStencilSampleCounts)
- x.FramebufferNoAttachmentsSampleCounts = (SampleCountFlags)(x.ref7926795a.framebufferNoAttachmentsSampleCounts)
- x.MaxColorAttachments = (uint32)(x.ref7926795a.maxColorAttachments)
- x.SampledImageColorSampleCounts = (SampleCountFlags)(x.ref7926795a.sampledImageColorSampleCounts)
- x.SampledImageIntegerSampleCounts = (SampleCountFlags)(x.ref7926795a.sampledImageIntegerSampleCounts)
- x.SampledImageDepthSampleCounts = (SampleCountFlags)(x.ref7926795a.sampledImageDepthSampleCounts)
- x.SampledImageStencilSampleCounts = (SampleCountFlags)(x.ref7926795a.sampledImageStencilSampleCounts)
- x.StorageImageSampleCounts = (SampleCountFlags)(x.ref7926795a.storageImageSampleCounts)
- x.MaxSampleMaskWords = (uint32)(x.ref7926795a.maxSampleMaskWords)
- x.TimestampComputeAndGraphics = (Bool32)(x.ref7926795a.timestampComputeAndGraphics)
- x.TimestampPeriod = (float32)(x.ref7926795a.timestampPeriod)
- x.MaxClipDistances = (uint32)(x.ref7926795a.maxClipDistances)
- x.MaxCullDistances = (uint32)(x.ref7926795a.maxCullDistances)
- x.MaxCombinedClipAndCullDistances = (uint32)(x.ref7926795a.maxCombinedClipAndCullDistances)
- x.DiscreteQueuePriorities = (uint32)(x.ref7926795a.discreteQueuePriorities)
- x.PointSizeRange = *(*[2]float32)(unsafe.Pointer(&x.ref7926795a.pointSizeRange))
- x.LineWidthRange = *(*[2]float32)(unsafe.Pointer(&x.ref7926795a.lineWidthRange))
- x.PointSizeGranularity = (float32)(x.ref7926795a.pointSizeGranularity)
- x.LineWidthGranularity = (float32)(x.ref7926795a.lineWidthGranularity)
- x.StrictLines = (Bool32)(x.ref7926795a.strictLines)
- x.StandardSampleLocations = (Bool32)(x.ref7926795a.standardSampleLocations)
- x.OptimalBufferCopyOffsetAlignment = (DeviceSize)(x.ref7926795a.optimalBufferCopyOffsetAlignment)
- x.OptimalBufferCopyRowPitchAlignment = (DeviceSize)(x.ref7926795a.optimalBufferCopyRowPitchAlignment)
- x.NonCoherentAtomSize = (DeviceSize)(x.ref7926795a.nonCoherentAtomSize)
+ x.SType = (StructureType)(x.ref51f3e20a.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref51f3e20a.pNext))
+ x.Flags = (SubmitFlags)(x.ref51f3e20a.flags)
+ x.WaitSemaphoreInfoCount = (uint32)(x.ref51f3e20a.waitSemaphoreInfoCount)
+ packSSemaphoreSubmitInfo(x.PWaitSemaphoreInfos, x.ref51f3e20a.pWaitSemaphoreInfos)
+ x.CommandBufferInfoCount = (uint32)(x.ref51f3e20a.commandBufferInfoCount)
+ packSCommandBufferSubmitInfo(x.PCommandBufferInfos, x.ref51f3e20a.pCommandBufferInfos)
+ x.SignalSemaphoreInfoCount = (uint32)(x.ref51f3e20a.signalSemaphoreInfoCount)
+ packSSemaphoreSubmitInfo(x.PSignalSemaphoreInfos, x.ref51f3e20a.pSignalSemaphoreInfos)
}
-// allocPhysicalDeviceSparsePropertiesMemory allocates memory for type C.VkPhysicalDeviceSparseProperties in C.
+// allocPhysicalDeviceSynchronization2FeaturesMemory allocates memory for type C.VkPhysicalDeviceSynchronization2Features in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceSparsePropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceSparsePropertiesValue))
+func allocPhysicalDeviceSynchronization2FeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceSynchronization2FeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceSparsePropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceSparseProperties{})
+const sizeOfPhysicalDeviceSynchronization2FeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceSynchronization2Features{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceSparseProperties) Ref() *C.VkPhysicalDeviceSparseProperties {
+func (x *PhysicalDeviceSynchronization2Features) Ref() *C.VkPhysicalDeviceSynchronization2Features {
if x == nil {
return nil
}
- return x.ref6d7c11e6
+ return x.ref64be4f9
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceSparseProperties) Free() {
- if x != nil && x.allocs6d7c11e6 != nil {
- x.allocs6d7c11e6.(*cgoAllocMap).Free()
- x.ref6d7c11e6 = nil
+func (x *PhysicalDeviceSynchronization2Features) Free() {
+ if x != nil && x.allocs64be4f9 != nil {
+ x.allocs64be4f9.(*cgoAllocMap).Free()
+ x.ref64be4f9 = nil
}
}
-// NewPhysicalDeviceSparsePropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceSynchronization2FeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceSparsePropertiesRef(ref unsafe.Pointer) *PhysicalDeviceSparseProperties {
+func NewPhysicalDeviceSynchronization2FeaturesRef(ref unsafe.Pointer) *PhysicalDeviceSynchronization2Features {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceSparseProperties)
- obj.ref6d7c11e6 = (*C.VkPhysicalDeviceSparseProperties)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceSynchronization2Features)
+ obj.ref64be4f9 = (*C.VkPhysicalDeviceSynchronization2Features)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceSparseProperties) PassRef() (*C.VkPhysicalDeviceSparseProperties, *cgoAllocMap) {
+func (x *PhysicalDeviceSynchronization2Features) PassRef() (*C.VkPhysicalDeviceSynchronization2Features, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref6d7c11e6 != nil {
- return x.ref6d7c11e6, nil
+ } else if x.ref64be4f9 != nil {
+ return x.ref64be4f9, nil
}
- mem6d7c11e6 := allocPhysicalDeviceSparsePropertiesMemory(1)
- ref6d7c11e6 := (*C.VkPhysicalDeviceSparseProperties)(mem6d7c11e6)
- allocs6d7c11e6 := new(cgoAllocMap)
- allocs6d7c11e6.Add(mem6d7c11e6)
-
- var cresidencyStandard2DBlockShape_allocs *cgoAllocMap
- ref6d7c11e6.residencyStandard2DBlockShape, cresidencyStandard2DBlockShape_allocs = (C.VkBool32)(x.ResidencyStandard2DBlockShape), cgoAllocsUnknown
- allocs6d7c11e6.Borrow(cresidencyStandard2DBlockShape_allocs)
-
- var cresidencyStandard2DMultisampleBlockShape_allocs *cgoAllocMap
- ref6d7c11e6.residencyStandard2DMultisampleBlockShape, cresidencyStandard2DMultisampleBlockShape_allocs = (C.VkBool32)(x.ResidencyStandard2DMultisampleBlockShape), cgoAllocsUnknown
- allocs6d7c11e6.Borrow(cresidencyStandard2DMultisampleBlockShape_allocs)
+ mem64be4f9 := allocPhysicalDeviceSynchronization2FeaturesMemory(1)
+ ref64be4f9 := (*C.VkPhysicalDeviceSynchronization2Features)(mem64be4f9)
+ allocs64be4f9 := new(cgoAllocMap)
+ allocs64be4f9.Add(mem64be4f9)
- var cresidencyStandard3DBlockShape_allocs *cgoAllocMap
- ref6d7c11e6.residencyStandard3DBlockShape, cresidencyStandard3DBlockShape_allocs = (C.VkBool32)(x.ResidencyStandard3DBlockShape), cgoAllocsUnknown
- allocs6d7c11e6.Borrow(cresidencyStandard3DBlockShape_allocs)
+ var csType_allocs *cgoAllocMap
+ ref64be4f9.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs64be4f9.Borrow(csType_allocs)
- var cresidencyAlignedMipSize_allocs *cgoAllocMap
- ref6d7c11e6.residencyAlignedMipSize, cresidencyAlignedMipSize_allocs = (C.VkBool32)(x.ResidencyAlignedMipSize), cgoAllocsUnknown
- allocs6d7c11e6.Borrow(cresidencyAlignedMipSize_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref64be4f9.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs64be4f9.Borrow(cpNext_allocs)
- var cresidencyNonResidentStrict_allocs *cgoAllocMap
- ref6d7c11e6.residencyNonResidentStrict, cresidencyNonResidentStrict_allocs = (C.VkBool32)(x.ResidencyNonResidentStrict), cgoAllocsUnknown
- allocs6d7c11e6.Borrow(cresidencyNonResidentStrict_allocs)
+ var csynchronization2_allocs *cgoAllocMap
+ ref64be4f9.synchronization2, csynchronization2_allocs = (C.VkBool32)(x.Synchronization2), cgoAllocsUnknown
+ allocs64be4f9.Borrow(csynchronization2_allocs)
- x.ref6d7c11e6 = ref6d7c11e6
- x.allocs6d7c11e6 = allocs6d7c11e6
- return ref6d7c11e6, allocs6d7c11e6
+ x.ref64be4f9 = ref64be4f9
+ x.allocs64be4f9 = allocs64be4f9
+ return ref64be4f9, allocs64be4f9
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceSparseProperties) PassValue() (C.VkPhysicalDeviceSparseProperties, *cgoAllocMap) {
- if x.ref6d7c11e6 != nil {
- return *x.ref6d7c11e6, nil
+func (x PhysicalDeviceSynchronization2Features) PassValue() (C.VkPhysicalDeviceSynchronization2Features, *cgoAllocMap) {
+ if x.ref64be4f9 != nil {
+ return *x.ref64be4f9, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -1765,116 +28760,90 @@ func (x PhysicalDeviceSparseProperties) PassValue() (C.VkPhysicalDeviceSparsePro
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceSparseProperties) Deref() {
- if x.ref6d7c11e6 == nil {
+func (x *PhysicalDeviceSynchronization2Features) Deref() {
+ if x.ref64be4f9 == nil {
return
}
- x.ResidencyStandard2DBlockShape = (Bool32)(x.ref6d7c11e6.residencyStandard2DBlockShape)
- x.ResidencyStandard2DMultisampleBlockShape = (Bool32)(x.ref6d7c11e6.residencyStandard2DMultisampleBlockShape)
- x.ResidencyStandard3DBlockShape = (Bool32)(x.ref6d7c11e6.residencyStandard3DBlockShape)
- x.ResidencyAlignedMipSize = (Bool32)(x.ref6d7c11e6.residencyAlignedMipSize)
- x.ResidencyNonResidentStrict = (Bool32)(x.ref6d7c11e6.residencyNonResidentStrict)
+ x.SType = (StructureType)(x.ref64be4f9.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref64be4f9.pNext))
+ x.Synchronization2 = (Bool32)(x.ref64be4f9.synchronization2)
}
-// allocPhysicalDevicePropertiesMemory allocates memory for type C.VkPhysicalDeviceProperties in C.
+// allocPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesMemory allocates memory for type C.VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDevicePropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDevicePropertiesValue))
+func allocPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDevicePropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceProperties{})
+const sizeOfPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceProperties) Ref() *C.VkPhysicalDeviceProperties {
+func (x *PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures) Ref() *C.VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures {
if x == nil {
return nil
}
- return x.ref1080ca9d
+ return x.ref971f8a0a
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceProperties) Free() {
- if x != nil && x.allocs1080ca9d != nil {
- x.allocs1080ca9d.(*cgoAllocMap).Free()
- x.ref1080ca9d = nil
+func (x *PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures) Free() {
+ if x != nil && x.allocs971f8a0a != nil {
+ x.allocs971f8a0a.(*cgoAllocMap).Free()
+ x.ref971f8a0a = nil
}
}
-// NewPhysicalDevicePropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDevicePropertiesRef(ref unsafe.Pointer) *PhysicalDeviceProperties {
+func NewPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceProperties)
- obj.ref1080ca9d = (*C.VkPhysicalDeviceProperties)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures)
+ obj.ref971f8a0a = (*C.VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceProperties) PassRef() (*C.VkPhysicalDeviceProperties, *cgoAllocMap) {
+func (x *PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures) PassRef() (*C.VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref1080ca9d != nil {
- return x.ref1080ca9d, nil
+ } else if x.ref971f8a0a != nil {
+ return x.ref971f8a0a, nil
}
- mem1080ca9d := allocPhysicalDevicePropertiesMemory(1)
- ref1080ca9d := (*C.VkPhysicalDeviceProperties)(mem1080ca9d)
- allocs1080ca9d := new(cgoAllocMap)
- allocs1080ca9d.Add(mem1080ca9d)
-
- var capiVersion_allocs *cgoAllocMap
- ref1080ca9d.apiVersion, capiVersion_allocs = (C.uint32_t)(x.ApiVersion), cgoAllocsUnknown
- allocs1080ca9d.Borrow(capiVersion_allocs)
-
- var cdriverVersion_allocs *cgoAllocMap
- ref1080ca9d.driverVersion, cdriverVersion_allocs = (C.uint32_t)(x.DriverVersion), cgoAllocsUnknown
- allocs1080ca9d.Borrow(cdriverVersion_allocs)
-
- var cvendorID_allocs *cgoAllocMap
- ref1080ca9d.vendorID, cvendorID_allocs = (C.uint32_t)(x.VendorID), cgoAllocsUnknown
- allocs1080ca9d.Borrow(cvendorID_allocs)
-
- var cdeviceID_allocs *cgoAllocMap
- ref1080ca9d.deviceID, cdeviceID_allocs = (C.uint32_t)(x.DeviceID), cgoAllocsUnknown
- allocs1080ca9d.Borrow(cdeviceID_allocs)
-
- var cdeviceType_allocs *cgoAllocMap
- ref1080ca9d.deviceType, cdeviceType_allocs = (C.VkPhysicalDeviceType)(x.DeviceType), cgoAllocsUnknown
- allocs1080ca9d.Borrow(cdeviceType_allocs)
-
- var cdeviceName_allocs *cgoAllocMap
- ref1080ca9d.deviceName, cdeviceName_allocs = *(*[256]C.char)(unsafe.Pointer(&x.DeviceName)), cgoAllocsUnknown
- allocs1080ca9d.Borrow(cdeviceName_allocs)
+ mem971f8a0a := allocPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesMemory(1)
+ ref971f8a0a := (*C.VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures)(mem971f8a0a)
+ allocs971f8a0a := new(cgoAllocMap)
+ allocs971f8a0a.Add(mem971f8a0a)
- var cpipelineCacheUUID_allocs *cgoAllocMap
- ref1080ca9d.pipelineCacheUUID, cpipelineCacheUUID_allocs = *(*[16]C.uint8_t)(unsafe.Pointer(&x.PipelineCacheUUID)), cgoAllocsUnknown
- allocs1080ca9d.Borrow(cpipelineCacheUUID_allocs)
+ var csType_allocs *cgoAllocMap
+ ref971f8a0a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs971f8a0a.Borrow(csType_allocs)
- var climits_allocs *cgoAllocMap
- ref1080ca9d.limits, climits_allocs = x.Limits.PassValue()
- allocs1080ca9d.Borrow(climits_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref971f8a0a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs971f8a0a.Borrow(cpNext_allocs)
- var csparseProperties_allocs *cgoAllocMap
- ref1080ca9d.sparseProperties, csparseProperties_allocs = x.SparseProperties.PassValue()
- allocs1080ca9d.Borrow(csparseProperties_allocs)
+ var cshaderZeroInitializeWorkgroupMemory_allocs *cgoAllocMap
+ ref971f8a0a.shaderZeroInitializeWorkgroupMemory, cshaderZeroInitializeWorkgroupMemory_allocs = (C.VkBool32)(x.ShaderZeroInitializeWorkgroupMemory), cgoAllocsUnknown
+ allocs971f8a0a.Borrow(cshaderZeroInitializeWorkgroupMemory_allocs)
- x.ref1080ca9d = ref1080ca9d
- x.allocs1080ca9d = allocs1080ca9d
- return ref1080ca9d, allocs1080ca9d
+ x.ref971f8a0a = ref971f8a0a
+ x.allocs971f8a0a = allocs971f8a0a
+ return ref971f8a0a, allocs971f8a0a
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceProperties) PassValue() (C.VkPhysicalDeviceProperties, *cgoAllocMap) {
- if x.ref1080ca9d != nil {
- return *x.ref1080ca9d, nil
+func (x PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures) PassValue() (C.VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures, *cgoAllocMap) {
+ if x.ref971f8a0a != nil {
+ return *x.ref971f8a0a, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -1882,100 +28851,90 @@ func (x PhysicalDeviceProperties) PassValue() (C.VkPhysicalDeviceProperties, *cg
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceProperties) Deref() {
- if x.ref1080ca9d == nil {
+func (x *PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures) Deref() {
+ if x.ref971f8a0a == nil {
return
}
- x.ApiVersion = (uint32)(x.ref1080ca9d.apiVersion)
- x.DriverVersion = (uint32)(x.ref1080ca9d.driverVersion)
- x.VendorID = (uint32)(x.ref1080ca9d.vendorID)
- x.DeviceID = (uint32)(x.ref1080ca9d.deviceID)
- x.DeviceType = (PhysicalDeviceType)(x.ref1080ca9d.deviceType)
- x.DeviceName = *(*[256]byte)(unsafe.Pointer(&x.ref1080ca9d.deviceName))
- x.PipelineCacheUUID = *(*[16]byte)(unsafe.Pointer(&x.ref1080ca9d.pipelineCacheUUID))
- x.Limits = *NewPhysicalDeviceLimitsRef(unsafe.Pointer(&x.ref1080ca9d.limits))
- x.SparseProperties = *NewPhysicalDeviceSparsePropertiesRef(unsafe.Pointer(&x.ref1080ca9d.sparseProperties))
+ x.SType = (StructureType)(x.ref971f8a0a.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref971f8a0a.pNext))
+ x.ShaderZeroInitializeWorkgroupMemory = (Bool32)(x.ref971f8a0a.shaderZeroInitializeWorkgroupMemory)
}
-// allocQueueFamilyPropertiesMemory allocates memory for type C.VkQueueFamilyProperties in C.
+// allocPhysicalDeviceImageRobustnessFeaturesMemory allocates memory for type C.VkPhysicalDeviceImageRobustnessFeatures in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocQueueFamilyPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfQueueFamilyPropertiesValue))
+func allocPhysicalDeviceImageRobustnessFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceImageRobustnessFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfQueueFamilyPropertiesValue = unsafe.Sizeof([1]C.VkQueueFamilyProperties{})
+const sizeOfPhysicalDeviceImageRobustnessFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceImageRobustnessFeatures{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *QueueFamilyProperties) Ref() *C.VkQueueFamilyProperties {
+func (x *PhysicalDeviceImageRobustnessFeatures) Ref() *C.VkPhysicalDeviceImageRobustnessFeatures {
if x == nil {
return nil
}
- return x.refd538c446
+ return x.ref73ceff2
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *QueueFamilyProperties) Free() {
- if x != nil && x.allocsd538c446 != nil {
- x.allocsd538c446.(*cgoAllocMap).Free()
- x.refd538c446 = nil
+func (x *PhysicalDeviceImageRobustnessFeatures) Free() {
+ if x != nil && x.allocs73ceff2 != nil {
+ x.allocs73ceff2.(*cgoAllocMap).Free()
+ x.ref73ceff2 = nil
}
}
-// NewQueueFamilyPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceImageRobustnessFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewQueueFamilyPropertiesRef(ref unsafe.Pointer) *QueueFamilyProperties {
+func NewPhysicalDeviceImageRobustnessFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceImageRobustnessFeatures {
if ref == nil {
return nil
}
- obj := new(QueueFamilyProperties)
- obj.refd538c446 = (*C.VkQueueFamilyProperties)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceImageRobustnessFeatures)
+ obj.ref73ceff2 = (*C.VkPhysicalDeviceImageRobustnessFeatures)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *QueueFamilyProperties) PassRef() (*C.VkQueueFamilyProperties, *cgoAllocMap) {
+func (x *PhysicalDeviceImageRobustnessFeatures) PassRef() (*C.VkPhysicalDeviceImageRobustnessFeatures, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refd538c446 != nil {
- return x.refd538c446, nil
+ } else if x.ref73ceff2 != nil {
+ return x.ref73ceff2, nil
}
- memd538c446 := allocQueueFamilyPropertiesMemory(1)
- refd538c446 := (*C.VkQueueFamilyProperties)(memd538c446)
- allocsd538c446 := new(cgoAllocMap)
- allocsd538c446.Add(memd538c446)
-
- var cqueueFlags_allocs *cgoAllocMap
- refd538c446.queueFlags, cqueueFlags_allocs = (C.VkQueueFlags)(x.QueueFlags), cgoAllocsUnknown
- allocsd538c446.Borrow(cqueueFlags_allocs)
+ mem73ceff2 := allocPhysicalDeviceImageRobustnessFeaturesMemory(1)
+ ref73ceff2 := (*C.VkPhysicalDeviceImageRobustnessFeatures)(mem73ceff2)
+ allocs73ceff2 := new(cgoAllocMap)
+ allocs73ceff2.Add(mem73ceff2)
- var cqueueCount_allocs *cgoAllocMap
- refd538c446.queueCount, cqueueCount_allocs = (C.uint32_t)(x.QueueCount), cgoAllocsUnknown
- allocsd538c446.Borrow(cqueueCount_allocs)
+ var csType_allocs *cgoAllocMap
+ ref73ceff2.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs73ceff2.Borrow(csType_allocs)
- var ctimestampValidBits_allocs *cgoAllocMap
- refd538c446.timestampValidBits, ctimestampValidBits_allocs = (C.uint32_t)(x.TimestampValidBits), cgoAllocsUnknown
- allocsd538c446.Borrow(ctimestampValidBits_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref73ceff2.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs73ceff2.Borrow(cpNext_allocs)
- var cminImageTransferGranularity_allocs *cgoAllocMap
- refd538c446.minImageTransferGranularity, cminImageTransferGranularity_allocs = x.MinImageTransferGranularity.PassValue()
- allocsd538c446.Borrow(cminImageTransferGranularity_allocs)
+ var crobustImageAccess_allocs *cgoAllocMap
+ ref73ceff2.robustImageAccess, crobustImageAccess_allocs = (C.VkBool32)(x.RobustImageAccess), cgoAllocsUnknown
+ allocs73ceff2.Borrow(crobustImageAccess_allocs)
- x.refd538c446 = refd538c446
- x.allocsd538c446 = allocsd538c446
- return refd538c446, allocsd538c446
+ x.ref73ceff2 = ref73ceff2
+ x.allocs73ceff2 = allocs73ceff2
+ return ref73ceff2, allocs73ceff2
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x QueueFamilyProperties) PassValue() (C.VkQueueFamilyProperties, *cgoAllocMap) {
- if x.refd538c446 != nil {
- return *x.refd538c446, nil
+func (x PhysicalDeviceImageRobustnessFeatures) PassValue() (C.VkPhysicalDeviceImageRobustnessFeatures, *cgoAllocMap) {
+ if x.ref73ceff2 != nil {
+ return *x.ref73ceff2, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -1983,87 +28942,98 @@ func (x QueueFamilyProperties) PassValue() (C.VkQueueFamilyProperties, *cgoAlloc
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *QueueFamilyProperties) Deref() {
- if x.refd538c446 == nil {
+func (x *PhysicalDeviceImageRobustnessFeatures) Deref() {
+ if x.ref73ceff2 == nil {
return
}
- x.QueueFlags = (QueueFlags)(x.refd538c446.queueFlags)
- x.QueueCount = (uint32)(x.refd538c446.queueCount)
- x.TimestampValidBits = (uint32)(x.refd538c446.timestampValidBits)
- x.MinImageTransferGranularity = *NewExtent3DRef(unsafe.Pointer(&x.refd538c446.minImageTransferGranularity))
+ x.SType = (StructureType)(x.ref73ceff2.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref73ceff2.pNext))
+ x.RobustImageAccess = (Bool32)(x.ref73ceff2.robustImageAccess)
}
-// allocMemoryTypeMemory allocates memory for type C.VkMemoryType in C.
+// allocBufferCopy2Memory allocates memory for type C.VkBufferCopy2 in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocMemoryTypeMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMemoryTypeValue))
+func allocBufferCopy2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBufferCopy2Value))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfMemoryTypeValue = unsafe.Sizeof([1]C.VkMemoryType{})
+const sizeOfBufferCopy2Value = unsafe.Sizeof([1]C.VkBufferCopy2{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *MemoryType) Ref() *C.VkMemoryType {
+func (x *BufferCopy2) Ref() *C.VkBufferCopy2 {
if x == nil {
return nil
}
- return x.ref2f46e01d
+ return x.refd9cb28e3
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *MemoryType) Free() {
- if x != nil && x.allocs2f46e01d != nil {
- x.allocs2f46e01d.(*cgoAllocMap).Free()
- x.ref2f46e01d = nil
+func (x *BufferCopy2) Free() {
+ if x != nil && x.allocsd9cb28e3 != nil {
+ x.allocsd9cb28e3.(*cgoAllocMap).Free()
+ x.refd9cb28e3 = nil
}
}
-// NewMemoryTypeRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewBufferCopy2Ref creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewMemoryTypeRef(ref unsafe.Pointer) *MemoryType {
+func NewBufferCopy2Ref(ref unsafe.Pointer) *BufferCopy2 {
if ref == nil {
return nil
}
- obj := new(MemoryType)
- obj.ref2f46e01d = (*C.VkMemoryType)(unsafe.Pointer(ref))
+ obj := new(BufferCopy2)
+ obj.refd9cb28e3 = (*C.VkBufferCopy2)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *MemoryType) PassRef() (*C.VkMemoryType, *cgoAllocMap) {
+func (x *BufferCopy2) PassRef() (*C.VkBufferCopy2, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref2f46e01d != nil {
- return x.ref2f46e01d, nil
+ } else if x.refd9cb28e3 != nil {
+ return x.refd9cb28e3, nil
}
- mem2f46e01d := allocMemoryTypeMemory(1)
- ref2f46e01d := (*C.VkMemoryType)(mem2f46e01d)
- allocs2f46e01d := new(cgoAllocMap)
- allocs2f46e01d.Add(mem2f46e01d)
+ memd9cb28e3 := allocBufferCopy2Memory(1)
+ refd9cb28e3 := (*C.VkBufferCopy2)(memd9cb28e3)
+ allocsd9cb28e3 := new(cgoAllocMap)
+ allocsd9cb28e3.Add(memd9cb28e3)
- var cpropertyFlags_allocs *cgoAllocMap
- ref2f46e01d.propertyFlags, cpropertyFlags_allocs = (C.VkMemoryPropertyFlags)(x.PropertyFlags), cgoAllocsUnknown
- allocs2f46e01d.Borrow(cpropertyFlags_allocs)
+ var csType_allocs *cgoAllocMap
+ refd9cb28e3.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd9cb28e3.Borrow(csType_allocs)
- var cheapIndex_allocs *cgoAllocMap
- ref2f46e01d.heapIndex, cheapIndex_allocs = (C.uint32_t)(x.HeapIndex), cgoAllocsUnknown
- allocs2f46e01d.Borrow(cheapIndex_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refd9cb28e3.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsd9cb28e3.Borrow(cpNext_allocs)
- x.ref2f46e01d = ref2f46e01d
- x.allocs2f46e01d = allocs2f46e01d
- return ref2f46e01d, allocs2f46e01d
+ var csrcOffset_allocs *cgoAllocMap
+ refd9cb28e3.srcOffset, csrcOffset_allocs = (C.VkDeviceSize)(x.SrcOffset), cgoAllocsUnknown
+ allocsd9cb28e3.Borrow(csrcOffset_allocs)
+
+ var cdstOffset_allocs *cgoAllocMap
+ refd9cb28e3.dstOffset, cdstOffset_allocs = (C.VkDeviceSize)(x.DstOffset), cgoAllocsUnknown
+ allocsd9cb28e3.Borrow(cdstOffset_allocs)
+
+ var csize_allocs *cgoAllocMap
+ refd9cb28e3.size, csize_allocs = (C.VkDeviceSize)(x.Size), cgoAllocsUnknown
+ allocsd9cb28e3.Borrow(csize_allocs)
+
+ x.refd9cb28e3 = refd9cb28e3
+ x.allocsd9cb28e3 = allocsd9cb28e3
+ return refd9cb28e3, allocsd9cb28e3
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x MemoryType) PassValue() (C.VkMemoryType, *cgoAllocMap) {
- if x.ref2f46e01d != nil {
- return *x.ref2f46e01d, nil
+func (x BufferCopy2) PassValue() (C.VkBufferCopy2, *cgoAllocMap) {
+ if x.refd9cb28e3 != nil {
+ return *x.refd9cb28e3, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -2071,85 +29041,142 @@ func (x MemoryType) PassValue() (C.VkMemoryType, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *MemoryType) Deref() {
- if x.ref2f46e01d == nil {
+func (x *BufferCopy2) Deref() {
+ if x.refd9cb28e3 == nil {
return
}
- x.PropertyFlags = (MemoryPropertyFlags)(x.ref2f46e01d.propertyFlags)
- x.HeapIndex = (uint32)(x.ref2f46e01d.heapIndex)
+ x.SType = (StructureType)(x.refd9cb28e3.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd9cb28e3.pNext))
+ x.SrcOffset = (DeviceSize)(x.refd9cb28e3.srcOffset)
+ x.DstOffset = (DeviceSize)(x.refd9cb28e3.dstOffset)
+ x.Size = (DeviceSize)(x.refd9cb28e3.size)
}
-// allocMemoryHeapMemory allocates memory for type C.VkMemoryHeap in C.
+// allocCopyBufferInfo2Memory allocates memory for type C.VkCopyBufferInfo2 in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocMemoryHeapMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMemoryHeapValue))
+func allocCopyBufferInfo2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCopyBufferInfo2Value))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfMemoryHeapValue = unsafe.Sizeof([1]C.VkMemoryHeap{})
+const sizeOfCopyBufferInfo2Value = unsafe.Sizeof([1]C.VkCopyBufferInfo2{})
+
+// unpackSBufferCopy2 transforms a sliced Go data structure into plain C format.
+func unpackSBufferCopy2(x []BufferCopy2) (unpacked *C.VkBufferCopy2, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkBufferCopy2) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocBufferCopy2Memory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkBufferCopy2)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkBufferCopy2)(h.Data)
+ return
+}
+
+// packSBufferCopy2 reads sliced Go data structure out from plain C format.
+func packSBufferCopy2(v []BufferCopy2, ptr0 *C.VkBufferCopy2) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfBufferCopy2Value]C.VkBufferCopy2)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewBufferCopy2Ref(unsafe.Pointer(&ptr1))
+ }
+}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *MemoryHeap) Ref() *C.VkMemoryHeap {
+func (x *CopyBufferInfo2) Ref() *C.VkCopyBufferInfo2 {
if x == nil {
return nil
}
- return x.ref1eb195d5
+ return x.ref95a1aa26
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *MemoryHeap) Free() {
- if x != nil && x.allocs1eb195d5 != nil {
- x.allocs1eb195d5.(*cgoAllocMap).Free()
- x.ref1eb195d5 = nil
+func (x *CopyBufferInfo2) Free() {
+ if x != nil && x.allocs95a1aa26 != nil {
+ x.allocs95a1aa26.(*cgoAllocMap).Free()
+ x.ref95a1aa26 = nil
}
}
-// NewMemoryHeapRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewCopyBufferInfo2Ref creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewMemoryHeapRef(ref unsafe.Pointer) *MemoryHeap {
+func NewCopyBufferInfo2Ref(ref unsafe.Pointer) *CopyBufferInfo2 {
if ref == nil {
return nil
}
- obj := new(MemoryHeap)
- obj.ref1eb195d5 = (*C.VkMemoryHeap)(unsafe.Pointer(ref))
+ obj := new(CopyBufferInfo2)
+ obj.ref95a1aa26 = (*C.VkCopyBufferInfo2)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *MemoryHeap) PassRef() (*C.VkMemoryHeap, *cgoAllocMap) {
+func (x *CopyBufferInfo2) PassRef() (*C.VkCopyBufferInfo2, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref1eb195d5 != nil {
- return x.ref1eb195d5, nil
+ } else if x.ref95a1aa26 != nil {
+ return x.ref95a1aa26, nil
}
- mem1eb195d5 := allocMemoryHeapMemory(1)
- ref1eb195d5 := (*C.VkMemoryHeap)(mem1eb195d5)
- allocs1eb195d5 := new(cgoAllocMap)
- allocs1eb195d5.Add(mem1eb195d5)
+ mem95a1aa26 := allocCopyBufferInfo2Memory(1)
+ ref95a1aa26 := (*C.VkCopyBufferInfo2)(mem95a1aa26)
+ allocs95a1aa26 := new(cgoAllocMap)
+ allocs95a1aa26.Add(mem95a1aa26)
- var csize_allocs *cgoAllocMap
- ref1eb195d5.size, csize_allocs = (C.VkDeviceSize)(x.Size), cgoAllocsUnknown
- allocs1eb195d5.Borrow(csize_allocs)
+ var csType_allocs *cgoAllocMap
+ ref95a1aa26.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs95a1aa26.Borrow(csType_allocs)
- var cflags_allocs *cgoAllocMap
- ref1eb195d5.flags, cflags_allocs = (C.VkMemoryHeapFlags)(x.Flags), cgoAllocsUnknown
- allocs1eb195d5.Borrow(cflags_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref95a1aa26.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs95a1aa26.Borrow(cpNext_allocs)
- x.ref1eb195d5 = ref1eb195d5
- x.allocs1eb195d5 = allocs1eb195d5
- return ref1eb195d5, allocs1eb195d5
+ var csrcBuffer_allocs *cgoAllocMap
+ ref95a1aa26.srcBuffer, csrcBuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.SrcBuffer)), cgoAllocsUnknown
+ allocs95a1aa26.Borrow(csrcBuffer_allocs)
+
+ var cdstBuffer_allocs *cgoAllocMap
+ ref95a1aa26.dstBuffer, cdstBuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.DstBuffer)), cgoAllocsUnknown
+ allocs95a1aa26.Borrow(cdstBuffer_allocs)
+
+ var cregionCount_allocs *cgoAllocMap
+ ref95a1aa26.regionCount, cregionCount_allocs = (C.uint32_t)(x.RegionCount), cgoAllocsUnknown
+ allocs95a1aa26.Borrow(cregionCount_allocs)
+
+ var cpRegions_allocs *cgoAllocMap
+ ref95a1aa26.pRegions, cpRegions_allocs = unpackSBufferCopy2(x.PRegions)
+ allocs95a1aa26.Borrow(cpRegions_allocs)
+
+ x.ref95a1aa26 = ref95a1aa26
+ x.allocs95a1aa26 = allocs95a1aa26
+ return ref95a1aa26, allocs95a1aa26
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x MemoryHeap) PassValue() (C.VkMemoryHeap, *cgoAllocMap) {
- if x.ref1eb195d5 != nil {
- return *x.ref1eb195d5, nil
+func (x CopyBufferInfo2) PassValue() (C.VkCopyBufferInfo2, *cgoAllocMap) {
+ if x.ref95a1aa26 != nil {
+ return *x.ref95a1aa26, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -2157,171 +29184,262 @@ func (x MemoryHeap) PassValue() (C.VkMemoryHeap, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *MemoryHeap) Deref() {
- if x.ref1eb195d5 == nil {
+func (x *CopyBufferInfo2) Deref() {
+ if x.ref95a1aa26 == nil {
return
}
- x.Size = (DeviceSize)(x.ref1eb195d5.size)
- x.Flags = (MemoryHeapFlags)(x.ref1eb195d5.flags)
+ x.SType = (StructureType)(x.ref95a1aa26.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref95a1aa26.pNext))
+ x.SrcBuffer = *(*Buffer)(unsafe.Pointer(&x.ref95a1aa26.srcBuffer))
+ x.DstBuffer = *(*Buffer)(unsafe.Pointer(&x.ref95a1aa26.dstBuffer))
+ x.RegionCount = (uint32)(x.ref95a1aa26.regionCount)
+ packSBufferCopy2(x.PRegions, x.ref95a1aa26.pRegions)
}
-// allocPhysicalDeviceMemoryPropertiesMemory allocates memory for type C.VkPhysicalDeviceMemoryProperties in C.
+// allocImageCopy2Memory allocates memory for type C.VkImageCopy2 in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceMemoryPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceMemoryPropertiesValue))
+func allocImageCopy2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageCopy2Value))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceMemoryPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceMemoryProperties{})
+const sizeOfImageCopy2Value = unsafe.Sizeof([1]C.VkImageCopy2{})
-// allocA32MemoryTypeMemory allocates memory for type [32]C.VkMemoryType in C.
-// The caller is responsible for freeing the this memory via C.free.
-func allocA32MemoryTypeMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfA32MemoryTypeValue))
- if err != nil {
- panic("memory alloc error: " + err.Error())
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ImageCopy2) Ref() *C.VkImageCopy2 {
+ if x == nil {
+ return nil
}
- return mem
+ return x.ref411062
}
-const sizeOfA32MemoryTypeValue = unsafe.Sizeof([1][32]C.VkMemoryType{})
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ImageCopy2) Free() {
+ if x != nil && x.allocs411062 != nil {
+ x.allocs411062.(*cgoAllocMap).Free()
+ x.ref411062 = nil
+ }
+}
-// unpackA32MemoryType transforms a sliced Go data structure into plain C format.
-func unpackA32MemoryType(x [32]MemoryType) (unpacked [32]C.VkMemoryType, allocs *cgoAllocMap) {
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(*[32]C.VkMemoryType) {
- go allocs.Free()
- })
+// NewImageCopy2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewImageCopy2Ref(ref unsafe.Pointer) *ImageCopy2 {
+ if ref == nil {
+ return nil
+ }
+ obj := new(ImageCopy2)
+ obj.ref411062 = (*C.VkImageCopy2)(unsafe.Pointer(ref))
+ return obj
+}
- mem0 := allocA32MemoryTypeMemory(1)
- allocs.Add(mem0)
- v0 := (*[32]C.VkMemoryType)(mem0)
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ImageCopy2) PassRef() (*C.VkImageCopy2, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref411062 != nil {
+ return x.ref411062, nil
}
- unpacked = *(*[32]C.VkMemoryType)(mem0)
- return
+ mem411062 := allocImageCopy2Memory(1)
+ ref411062 := (*C.VkImageCopy2)(mem411062)
+ allocs411062 := new(cgoAllocMap)
+ allocs411062.Add(mem411062)
+
+ var csType_allocs *cgoAllocMap
+ ref411062.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs411062.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref411062.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs411062.Borrow(cpNext_allocs)
+
+ var csrcSubresource_allocs *cgoAllocMap
+ ref411062.srcSubresource, csrcSubresource_allocs = x.SrcSubresource.PassValue()
+ allocs411062.Borrow(csrcSubresource_allocs)
+
+ var csrcOffset_allocs *cgoAllocMap
+ ref411062.srcOffset, csrcOffset_allocs = x.SrcOffset.PassValue()
+ allocs411062.Borrow(csrcOffset_allocs)
+
+ var cdstSubresource_allocs *cgoAllocMap
+ ref411062.dstSubresource, cdstSubresource_allocs = x.DstSubresource.PassValue()
+ allocs411062.Borrow(cdstSubresource_allocs)
+
+ var cdstOffset_allocs *cgoAllocMap
+ ref411062.dstOffset, cdstOffset_allocs = x.DstOffset.PassValue()
+ allocs411062.Borrow(cdstOffset_allocs)
+
+ var cextent_allocs *cgoAllocMap
+ ref411062.extent, cextent_allocs = x.Extent.PassValue()
+ allocs411062.Borrow(cextent_allocs)
+
+ x.ref411062 = ref411062
+ x.allocs411062 = allocs411062
+ return ref411062, allocs411062
+
}
-// allocA16MemoryHeapMemory allocates memory for type [16]C.VkMemoryHeap in C.
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ImageCopy2) PassValue() (C.VkImageCopy2, *cgoAllocMap) {
+ if x.ref411062 != nil {
+ return *x.ref411062, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ImageCopy2) Deref() {
+ if x.ref411062 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref411062.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref411062.pNext))
+ x.SrcSubresource = *NewImageSubresourceLayersRef(unsafe.Pointer(&x.ref411062.srcSubresource))
+ x.SrcOffset = *NewOffset3DRef(unsafe.Pointer(&x.ref411062.srcOffset))
+ x.DstSubresource = *NewImageSubresourceLayersRef(unsafe.Pointer(&x.ref411062.dstSubresource))
+ x.DstOffset = *NewOffset3DRef(unsafe.Pointer(&x.ref411062.dstOffset))
+ x.Extent = *NewExtent3DRef(unsafe.Pointer(&x.ref411062.extent))
+}
+
+// allocCopyImageInfo2Memory allocates memory for type C.VkCopyImageInfo2 in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocA16MemoryHeapMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfA16MemoryHeapValue))
+func allocCopyImageInfo2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCopyImageInfo2Value))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfA16MemoryHeapValue = unsafe.Sizeof([1][16]C.VkMemoryHeap{})
+const sizeOfCopyImageInfo2Value = unsafe.Sizeof([1]C.VkCopyImageInfo2{})
-// unpackA16MemoryHeap transforms a sliced Go data structure into plain C format.
-func unpackA16MemoryHeap(x [16]MemoryHeap) (unpacked [16]C.VkMemoryHeap, allocs *cgoAllocMap) {
+// unpackSImageCopy2 transforms a sliced Go data structure into plain C format.
+func unpackSImageCopy2(x []ImageCopy2) (unpacked *C.VkImageCopy2, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(*[16]C.VkMemoryHeap) {
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkImageCopy2) {
go allocs.Free()
})
- mem0 := allocA16MemoryHeapMemory(1)
+ len0 := len(x)
+ mem0 := allocImageCopy2Memory(len0)
allocs.Add(mem0)
- v0 := (*[16]C.VkMemoryHeap)(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkImageCopy2)(unsafe.Pointer(h0))
for i0 := range x {
allocs0 := new(cgoAllocMap)
v0[i0], allocs0 = x[i0].PassValue()
allocs.Borrow(allocs0)
}
- unpacked = *(*[16]C.VkMemoryHeap)(mem0)
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkImageCopy2)(h.Data)
return
}
-// packA32MemoryType reads sliced Go data structure out from plain C format.
-func packA32MemoryType(v *[32]MemoryType, ptr0 *[32]C.VkMemoryType) {
- for i0 := range v {
- ptr1 := ptr0[i0]
- v[i0] = *NewMemoryTypeRef(unsafe.Pointer(&ptr1))
- }
-}
-
-// packA16MemoryHeap reads sliced Go data structure out from plain C format.
-func packA16MemoryHeap(v *[16]MemoryHeap, ptr0 *[16]C.VkMemoryHeap) {
+// packSImageCopy2 reads sliced Go data structure out from plain C format.
+func packSImageCopy2(v []ImageCopy2, ptr0 *C.VkImageCopy2) {
+ const m = 0x7fffffff
for i0 := range v {
- ptr1 := ptr0[i0]
- v[i0] = *NewMemoryHeapRef(unsafe.Pointer(&ptr1))
+ ptr1 := (*(*[m / sizeOfImageCopy2Value]C.VkImageCopy2)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewImageCopy2Ref(unsafe.Pointer(&ptr1))
}
}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceMemoryProperties) Ref() *C.VkPhysicalDeviceMemoryProperties {
+func (x *CopyImageInfo2) Ref() *C.VkCopyImageInfo2 {
if x == nil {
return nil
}
- return x.ref3aabb5fd
+ return x.ref73df1447
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceMemoryProperties) Free() {
- if x != nil && x.allocs3aabb5fd != nil {
- x.allocs3aabb5fd.(*cgoAllocMap).Free()
- x.ref3aabb5fd = nil
+func (x *CopyImageInfo2) Free() {
+ if x != nil && x.allocs73df1447 != nil {
+ x.allocs73df1447.(*cgoAllocMap).Free()
+ x.ref73df1447 = nil
}
}
-// NewPhysicalDeviceMemoryPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewCopyImageInfo2Ref creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceMemoryPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceMemoryProperties {
+func NewCopyImageInfo2Ref(ref unsafe.Pointer) *CopyImageInfo2 {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceMemoryProperties)
- obj.ref3aabb5fd = (*C.VkPhysicalDeviceMemoryProperties)(unsafe.Pointer(ref))
+ obj := new(CopyImageInfo2)
+ obj.ref73df1447 = (*C.VkCopyImageInfo2)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceMemoryProperties) PassRef() (*C.VkPhysicalDeviceMemoryProperties, *cgoAllocMap) {
+func (x *CopyImageInfo2) PassRef() (*C.VkCopyImageInfo2, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref3aabb5fd != nil {
- return x.ref3aabb5fd, nil
+ } else if x.ref73df1447 != nil {
+ return x.ref73df1447, nil
}
- mem3aabb5fd := allocPhysicalDeviceMemoryPropertiesMemory(1)
- ref3aabb5fd := (*C.VkPhysicalDeviceMemoryProperties)(mem3aabb5fd)
- allocs3aabb5fd := new(cgoAllocMap)
- allocs3aabb5fd.Add(mem3aabb5fd)
+ mem73df1447 := allocCopyImageInfo2Memory(1)
+ ref73df1447 := (*C.VkCopyImageInfo2)(mem73df1447)
+ allocs73df1447 := new(cgoAllocMap)
+ allocs73df1447.Add(mem73df1447)
- var cmemoryTypeCount_allocs *cgoAllocMap
- ref3aabb5fd.memoryTypeCount, cmemoryTypeCount_allocs = (C.uint32_t)(x.MemoryTypeCount), cgoAllocsUnknown
- allocs3aabb5fd.Borrow(cmemoryTypeCount_allocs)
+ var csType_allocs *cgoAllocMap
+ ref73df1447.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs73df1447.Borrow(csType_allocs)
- var cmemoryTypes_allocs *cgoAllocMap
- ref3aabb5fd.memoryTypes, cmemoryTypes_allocs = unpackA32MemoryType(x.MemoryTypes)
- allocs3aabb5fd.Borrow(cmemoryTypes_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref73df1447.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs73df1447.Borrow(cpNext_allocs)
- var cmemoryHeapCount_allocs *cgoAllocMap
- ref3aabb5fd.memoryHeapCount, cmemoryHeapCount_allocs = (C.uint32_t)(x.MemoryHeapCount), cgoAllocsUnknown
- allocs3aabb5fd.Borrow(cmemoryHeapCount_allocs)
+ var csrcImage_allocs *cgoAllocMap
+ ref73df1447.srcImage, csrcImage_allocs = *(*C.VkImage)(unsafe.Pointer(&x.SrcImage)), cgoAllocsUnknown
+ allocs73df1447.Borrow(csrcImage_allocs)
- var cmemoryHeaps_allocs *cgoAllocMap
- ref3aabb5fd.memoryHeaps, cmemoryHeaps_allocs = unpackA16MemoryHeap(x.MemoryHeaps)
- allocs3aabb5fd.Borrow(cmemoryHeaps_allocs)
+ var csrcImageLayout_allocs *cgoAllocMap
+ ref73df1447.srcImageLayout, csrcImageLayout_allocs = (C.VkImageLayout)(x.SrcImageLayout), cgoAllocsUnknown
+ allocs73df1447.Borrow(csrcImageLayout_allocs)
- x.ref3aabb5fd = ref3aabb5fd
- x.allocs3aabb5fd = allocs3aabb5fd
- return ref3aabb5fd, allocs3aabb5fd
+ var cdstImage_allocs *cgoAllocMap
+ ref73df1447.dstImage, cdstImage_allocs = *(*C.VkImage)(unsafe.Pointer(&x.DstImage)), cgoAllocsUnknown
+ allocs73df1447.Borrow(cdstImage_allocs)
+
+ var cdstImageLayout_allocs *cgoAllocMap
+ ref73df1447.dstImageLayout, cdstImageLayout_allocs = (C.VkImageLayout)(x.DstImageLayout), cgoAllocsUnknown
+ allocs73df1447.Borrow(cdstImageLayout_allocs)
+
+ var cregionCount_allocs *cgoAllocMap
+ ref73df1447.regionCount, cregionCount_allocs = (C.uint32_t)(x.RegionCount), cgoAllocsUnknown
+ allocs73df1447.Borrow(cregionCount_allocs)
+
+ var cpRegions_allocs *cgoAllocMap
+ ref73df1447.pRegions, cpRegions_allocs = unpackSImageCopy2(x.PRegions)
+ allocs73df1447.Borrow(cpRegions_allocs)
+
+ x.ref73df1447 = ref73df1447
+ x.allocs73df1447 = allocs73df1447
+ return ref73df1447, allocs73df1447
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceMemoryProperties) PassValue() (C.VkPhysicalDeviceMemoryProperties, *cgoAllocMap) {
- if x.ref3aabb5fd != nil {
- return *x.ref3aabb5fd, nil
+func (x CopyImageInfo2) PassValue() (C.VkCopyImageInfo2, *cgoAllocMap) {
+ if x.ref73df1447 != nil {
+ return *x.ref73df1447, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -2329,103 +29447,115 @@ func (x PhysicalDeviceMemoryProperties) PassValue() (C.VkPhysicalDeviceMemoryPro
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceMemoryProperties) Deref() {
- if x.ref3aabb5fd == nil {
+func (x *CopyImageInfo2) Deref() {
+ if x.ref73df1447 == nil {
return
}
- x.MemoryTypeCount = (uint32)(x.ref3aabb5fd.memoryTypeCount)
- packA32MemoryType(&x.MemoryTypes, (*[32]C.VkMemoryType)(unsafe.Pointer(&x.ref3aabb5fd.memoryTypes)))
- x.MemoryHeapCount = (uint32)(x.ref3aabb5fd.memoryHeapCount)
- packA16MemoryHeap(&x.MemoryHeaps, (*[16]C.VkMemoryHeap)(unsafe.Pointer(&x.ref3aabb5fd.memoryHeaps)))
+ x.SType = (StructureType)(x.ref73df1447.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref73df1447.pNext))
+ x.SrcImage = *(*Image)(unsafe.Pointer(&x.ref73df1447.srcImage))
+ x.SrcImageLayout = (ImageLayout)(x.ref73df1447.srcImageLayout)
+ x.DstImage = *(*Image)(unsafe.Pointer(&x.ref73df1447.dstImage))
+ x.DstImageLayout = (ImageLayout)(x.ref73df1447.dstImageLayout)
+ x.RegionCount = (uint32)(x.ref73df1447.regionCount)
+ packSImageCopy2(x.PRegions, x.ref73df1447.pRegions)
}
-// allocDeviceQueueCreateInfoMemory allocates memory for type C.VkDeviceQueueCreateInfo in C.
+// allocBufferImageCopy2Memory allocates memory for type C.VkBufferImageCopy2 in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDeviceQueueCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceQueueCreateInfoValue))
+func allocBufferImageCopy2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBufferImageCopy2Value))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDeviceQueueCreateInfoValue = unsafe.Sizeof([1]C.VkDeviceQueueCreateInfo{})
+const sizeOfBufferImageCopy2Value = unsafe.Sizeof([1]C.VkBufferImageCopy2{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DeviceQueueCreateInfo) Ref() *C.VkDeviceQueueCreateInfo {
+func (x *BufferImageCopy2) Ref() *C.VkBufferImageCopy2 {
if x == nil {
return nil
}
- return x.ref6087b30d
+ return x.refb0b2a2b1
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DeviceQueueCreateInfo) Free() {
- if x != nil && x.allocs6087b30d != nil {
- x.allocs6087b30d.(*cgoAllocMap).Free()
- x.ref6087b30d = nil
+func (x *BufferImageCopy2) Free() {
+ if x != nil && x.allocsb0b2a2b1 != nil {
+ x.allocsb0b2a2b1.(*cgoAllocMap).Free()
+ x.refb0b2a2b1 = nil
}
}
-// NewDeviceQueueCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewBufferImageCopy2Ref creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDeviceQueueCreateInfoRef(ref unsafe.Pointer) *DeviceQueueCreateInfo {
+func NewBufferImageCopy2Ref(ref unsafe.Pointer) *BufferImageCopy2 {
if ref == nil {
return nil
}
- obj := new(DeviceQueueCreateInfo)
- obj.ref6087b30d = (*C.VkDeviceQueueCreateInfo)(unsafe.Pointer(ref))
+ obj := new(BufferImageCopy2)
+ obj.refb0b2a2b1 = (*C.VkBufferImageCopy2)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DeviceQueueCreateInfo) PassRef() (*C.VkDeviceQueueCreateInfo, *cgoAllocMap) {
+func (x *BufferImageCopy2) PassRef() (*C.VkBufferImageCopy2, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref6087b30d != nil {
- return x.ref6087b30d, nil
+ } else if x.refb0b2a2b1 != nil {
+ return x.refb0b2a2b1, nil
}
- mem6087b30d := allocDeviceQueueCreateInfoMemory(1)
- ref6087b30d := (*C.VkDeviceQueueCreateInfo)(mem6087b30d)
- allocs6087b30d := new(cgoAllocMap)
- allocs6087b30d.Add(mem6087b30d)
+ memb0b2a2b1 := allocBufferImageCopy2Memory(1)
+ refb0b2a2b1 := (*C.VkBufferImageCopy2)(memb0b2a2b1)
+ allocsb0b2a2b1 := new(cgoAllocMap)
+ allocsb0b2a2b1.Add(memb0b2a2b1)
var csType_allocs *cgoAllocMap
- ref6087b30d.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs6087b30d.Borrow(csType_allocs)
+ refb0b2a2b1.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsb0b2a2b1.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref6087b30d.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs6087b30d.Borrow(cpNext_allocs)
+ refb0b2a2b1.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsb0b2a2b1.Borrow(cpNext_allocs)
- var cflags_allocs *cgoAllocMap
- ref6087b30d.flags, cflags_allocs = (C.VkDeviceQueueCreateFlags)(x.Flags), cgoAllocsUnknown
- allocs6087b30d.Borrow(cflags_allocs)
+ var cbufferOffset_allocs *cgoAllocMap
+ refb0b2a2b1.bufferOffset, cbufferOffset_allocs = (C.VkDeviceSize)(x.BufferOffset), cgoAllocsUnknown
+ allocsb0b2a2b1.Borrow(cbufferOffset_allocs)
- var cqueueFamilyIndex_allocs *cgoAllocMap
- ref6087b30d.queueFamilyIndex, cqueueFamilyIndex_allocs = (C.uint32_t)(x.QueueFamilyIndex), cgoAllocsUnknown
- allocs6087b30d.Borrow(cqueueFamilyIndex_allocs)
+ var cbufferRowLength_allocs *cgoAllocMap
+ refb0b2a2b1.bufferRowLength, cbufferRowLength_allocs = (C.uint32_t)(x.BufferRowLength), cgoAllocsUnknown
+ allocsb0b2a2b1.Borrow(cbufferRowLength_allocs)
- var cqueueCount_allocs *cgoAllocMap
- ref6087b30d.queueCount, cqueueCount_allocs = (C.uint32_t)(x.QueueCount), cgoAllocsUnknown
- allocs6087b30d.Borrow(cqueueCount_allocs)
+ var cbufferImageHeight_allocs *cgoAllocMap
+ refb0b2a2b1.bufferImageHeight, cbufferImageHeight_allocs = (C.uint32_t)(x.BufferImageHeight), cgoAllocsUnknown
+ allocsb0b2a2b1.Borrow(cbufferImageHeight_allocs)
- var cpQueuePriorities_allocs *cgoAllocMap
- ref6087b30d.pQueuePriorities, cpQueuePriorities_allocs = (*C.float)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PQueuePriorities)).Data)), cgoAllocsUnknown
- allocs6087b30d.Borrow(cpQueuePriorities_allocs)
+ var cimageSubresource_allocs *cgoAllocMap
+ refb0b2a2b1.imageSubresource, cimageSubresource_allocs = x.ImageSubresource.PassValue()
+ allocsb0b2a2b1.Borrow(cimageSubresource_allocs)
- x.ref6087b30d = ref6087b30d
- x.allocs6087b30d = allocs6087b30d
- return ref6087b30d, allocs6087b30d
+ var cimageOffset_allocs *cgoAllocMap
+ refb0b2a2b1.imageOffset, cimageOffset_allocs = x.ImageOffset.PassValue()
+ allocsb0b2a2b1.Borrow(cimageOffset_allocs)
+
+ var cimageExtent_allocs *cgoAllocMap
+ refb0b2a2b1.imageExtent, cimageExtent_allocs = x.ImageExtent.PassValue()
+ allocsb0b2a2b1.Borrow(cimageExtent_allocs)
+
+ x.refb0b2a2b1 = refb0b2a2b1
+ x.allocsb0b2a2b1 = allocsb0b2a2b1
+ return refb0b2a2b1, allocsb0b2a2b1
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DeviceQueueCreateInfo) PassValue() (C.VkDeviceQueueCreateInfo, *cgoAllocMap) {
- if x.ref6087b30d != nil {
- return *x.ref6087b30d, nil
+func (x BufferImageCopy2) PassValue() (C.VkBufferImageCopy2, *cgoAllocMap) {
+ if x.refb0b2a2b1 != nil {
+ return *x.refb0b2a2b1, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -2433,201 +29563,149 @@ func (x DeviceQueueCreateInfo) PassValue() (C.VkDeviceQueueCreateInfo, *cgoAlloc
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DeviceQueueCreateInfo) Deref() {
- if x.ref6087b30d == nil {
+func (x *BufferImageCopy2) Deref() {
+ if x.refb0b2a2b1 == nil {
return
}
- x.SType = (StructureType)(x.ref6087b30d.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref6087b30d.pNext))
- x.Flags = (DeviceQueueCreateFlags)(x.ref6087b30d.flags)
- x.QueueFamilyIndex = (uint32)(x.ref6087b30d.queueFamilyIndex)
- x.QueueCount = (uint32)(x.ref6087b30d.queueCount)
- hxfc4425b := (*sliceHeader)(unsafe.Pointer(&x.PQueuePriorities))
- hxfc4425b.Data = unsafe.Pointer(x.ref6087b30d.pQueuePriorities)
- hxfc4425b.Cap = 0x7fffffff
- // hxfc4425b.Len = ?
-
+ x.SType = (StructureType)(x.refb0b2a2b1.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb0b2a2b1.pNext))
+ x.BufferOffset = (DeviceSize)(x.refb0b2a2b1.bufferOffset)
+ x.BufferRowLength = (uint32)(x.refb0b2a2b1.bufferRowLength)
+ x.BufferImageHeight = (uint32)(x.refb0b2a2b1.bufferImageHeight)
+ x.ImageSubresource = *NewImageSubresourceLayersRef(unsafe.Pointer(&x.refb0b2a2b1.imageSubresource))
+ x.ImageOffset = *NewOffset3DRef(unsafe.Pointer(&x.refb0b2a2b1.imageOffset))
+ x.ImageExtent = *NewExtent3DRef(unsafe.Pointer(&x.refb0b2a2b1.imageExtent))
}
-// allocDeviceCreateInfoMemory allocates memory for type C.VkDeviceCreateInfo in C.
+// allocCopyBufferToImageInfo2Memory allocates memory for type C.VkCopyBufferToImageInfo2 in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDeviceCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceCreateInfoValue))
+func allocCopyBufferToImageInfo2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCopyBufferToImageInfo2Value))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDeviceCreateInfoValue = unsafe.Sizeof([1]C.VkDeviceCreateInfo{})
-
-// unpackSDeviceQueueCreateInfo transforms a sliced Go data structure into plain C format.
-func unpackSDeviceQueueCreateInfo(x []DeviceQueueCreateInfo) (unpacked *C.VkDeviceQueueCreateInfo, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkDeviceQueueCreateInfo) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocDeviceQueueCreateInfoMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkDeviceQueueCreateInfo)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkDeviceQueueCreateInfo)(h.Data)
- return
-}
+const sizeOfCopyBufferToImageInfo2Value = unsafe.Sizeof([1]C.VkCopyBufferToImageInfo2{})
-// unpackSPhysicalDeviceFeatures transforms a sliced Go data structure into plain C format.
-func unpackSPhysicalDeviceFeatures(x []PhysicalDeviceFeatures) (unpacked *C.VkPhysicalDeviceFeatures, allocs *cgoAllocMap) {
+// unpackSBufferImageCopy2 transforms a sliced Go data structure into plain C format.
+func unpackSBufferImageCopy2(x []BufferImageCopy2) (unpacked *C.VkBufferImageCopy2, allocs *cgoAllocMap) {
if x == nil {
return nil, nil
}
allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkPhysicalDeviceFeatures) {
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkBufferImageCopy2) {
go allocs.Free()
})
len0 := len(x)
- mem0 := allocPhysicalDeviceFeaturesMemory(len0)
+ mem0 := allocBufferImageCopy2Memory(len0)
allocs.Add(mem0)
h0 := &sliceHeader{
Data: mem0,
Cap: len0,
Len: len0,
}
- v0 := *(*[]C.VkPhysicalDeviceFeatures)(unsafe.Pointer(h0))
+ v0 := *(*[]C.VkBufferImageCopy2)(unsafe.Pointer(h0))
for i0 := range x {
allocs0 := new(cgoAllocMap)
v0[i0], allocs0 = x[i0].PassValue()
allocs.Borrow(allocs0)
}
h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkPhysicalDeviceFeatures)(h.Data)
+ unpacked = (*C.VkBufferImageCopy2)(h.Data)
return
}
-// packSDeviceQueueCreateInfo reads sliced Go data structure out from plain C format.
-func packSDeviceQueueCreateInfo(v []DeviceQueueCreateInfo, ptr0 *C.VkDeviceQueueCreateInfo) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfDeviceQueueCreateInfoValue]C.VkDeviceQueueCreateInfo)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewDeviceQueueCreateInfoRef(unsafe.Pointer(&ptr1))
- }
-}
-
-// packSPhysicalDeviceFeatures reads sliced Go data structure out from plain C format.
-func packSPhysicalDeviceFeatures(v []PhysicalDeviceFeatures, ptr0 *C.VkPhysicalDeviceFeatures) {
+// packSBufferImageCopy2 reads sliced Go data structure out from plain C format.
+func packSBufferImageCopy2(v []BufferImageCopy2, ptr0 *C.VkBufferImageCopy2) {
const m = 0x7fffffff
for i0 := range v {
- ptr1 := (*(*[m / sizeOfPhysicalDeviceFeaturesValue]C.VkPhysicalDeviceFeatures)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewPhysicalDeviceFeaturesRef(unsafe.Pointer(&ptr1))
+ ptr1 := (*(*[m / sizeOfBufferImageCopy2Value]C.VkBufferImageCopy2)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewBufferImageCopy2Ref(unsafe.Pointer(&ptr1))
}
}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DeviceCreateInfo) Ref() *C.VkDeviceCreateInfo {
+func (x *CopyBufferToImageInfo2) Ref() *C.VkCopyBufferToImageInfo2 {
if x == nil {
return nil
}
- return x.refc0d8b997
+ return x.refa8b5363c
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DeviceCreateInfo) Free() {
- if x != nil && x.allocsc0d8b997 != nil {
- x.allocsc0d8b997.(*cgoAllocMap).Free()
- x.refc0d8b997 = nil
+func (x *CopyBufferToImageInfo2) Free() {
+ if x != nil && x.allocsa8b5363c != nil {
+ x.allocsa8b5363c.(*cgoAllocMap).Free()
+ x.refa8b5363c = nil
}
}
-// NewDeviceCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewCopyBufferToImageInfo2Ref creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDeviceCreateInfoRef(ref unsafe.Pointer) *DeviceCreateInfo {
+func NewCopyBufferToImageInfo2Ref(ref unsafe.Pointer) *CopyBufferToImageInfo2 {
if ref == nil {
return nil
}
- obj := new(DeviceCreateInfo)
- obj.refc0d8b997 = (*C.VkDeviceCreateInfo)(unsafe.Pointer(ref))
+ obj := new(CopyBufferToImageInfo2)
+ obj.refa8b5363c = (*C.VkCopyBufferToImageInfo2)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DeviceCreateInfo) PassRef() (*C.VkDeviceCreateInfo, *cgoAllocMap) {
+func (x *CopyBufferToImageInfo2) PassRef() (*C.VkCopyBufferToImageInfo2, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refc0d8b997 != nil {
- return x.refc0d8b997, nil
+ } else if x.refa8b5363c != nil {
+ return x.refa8b5363c, nil
}
- memc0d8b997 := allocDeviceCreateInfoMemory(1)
- refc0d8b997 := (*C.VkDeviceCreateInfo)(memc0d8b997)
- allocsc0d8b997 := new(cgoAllocMap)
- allocsc0d8b997.Add(memc0d8b997)
+ mema8b5363c := allocCopyBufferToImageInfo2Memory(1)
+ refa8b5363c := (*C.VkCopyBufferToImageInfo2)(mema8b5363c)
+ allocsa8b5363c := new(cgoAllocMap)
+ allocsa8b5363c.Add(mema8b5363c)
var csType_allocs *cgoAllocMap
- refc0d8b997.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsc0d8b997.Borrow(csType_allocs)
+ refa8b5363c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsa8b5363c.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refc0d8b997.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsc0d8b997.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- refc0d8b997.flags, cflags_allocs = (C.VkDeviceCreateFlags)(x.Flags), cgoAllocsUnknown
- allocsc0d8b997.Borrow(cflags_allocs)
-
- var cqueueCreateInfoCount_allocs *cgoAllocMap
- refc0d8b997.queueCreateInfoCount, cqueueCreateInfoCount_allocs = (C.uint32_t)(x.QueueCreateInfoCount), cgoAllocsUnknown
- allocsc0d8b997.Borrow(cqueueCreateInfoCount_allocs)
+ refa8b5363c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsa8b5363c.Borrow(cpNext_allocs)
- var cpQueueCreateInfos_allocs *cgoAllocMap
- refc0d8b997.pQueueCreateInfos, cpQueueCreateInfos_allocs = unpackSDeviceQueueCreateInfo(x.PQueueCreateInfos)
- allocsc0d8b997.Borrow(cpQueueCreateInfos_allocs)
-
- var cenabledLayerCount_allocs *cgoAllocMap
- refc0d8b997.enabledLayerCount, cenabledLayerCount_allocs = (C.uint32_t)(x.EnabledLayerCount), cgoAllocsUnknown
- allocsc0d8b997.Borrow(cenabledLayerCount_allocs)
+ var csrcBuffer_allocs *cgoAllocMap
+ refa8b5363c.srcBuffer, csrcBuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.SrcBuffer)), cgoAllocsUnknown
+ allocsa8b5363c.Borrow(csrcBuffer_allocs)
- var cppEnabledLayerNames_allocs *cgoAllocMap
- refc0d8b997.ppEnabledLayerNames, cppEnabledLayerNames_allocs = unpackSString(x.PpEnabledLayerNames)
- allocsc0d8b997.Borrow(cppEnabledLayerNames_allocs)
+ var cdstImage_allocs *cgoAllocMap
+ refa8b5363c.dstImage, cdstImage_allocs = *(*C.VkImage)(unsafe.Pointer(&x.DstImage)), cgoAllocsUnknown
+ allocsa8b5363c.Borrow(cdstImage_allocs)
- var cenabledExtensionCount_allocs *cgoAllocMap
- refc0d8b997.enabledExtensionCount, cenabledExtensionCount_allocs = (C.uint32_t)(x.EnabledExtensionCount), cgoAllocsUnknown
- allocsc0d8b997.Borrow(cenabledExtensionCount_allocs)
+ var cdstImageLayout_allocs *cgoAllocMap
+ refa8b5363c.dstImageLayout, cdstImageLayout_allocs = (C.VkImageLayout)(x.DstImageLayout), cgoAllocsUnknown
+ allocsa8b5363c.Borrow(cdstImageLayout_allocs)
- var cppEnabledExtensionNames_allocs *cgoAllocMap
- refc0d8b997.ppEnabledExtensionNames, cppEnabledExtensionNames_allocs = unpackSString(x.PpEnabledExtensionNames)
- allocsc0d8b997.Borrow(cppEnabledExtensionNames_allocs)
+ var cregionCount_allocs *cgoAllocMap
+ refa8b5363c.regionCount, cregionCount_allocs = (C.uint32_t)(x.RegionCount), cgoAllocsUnknown
+ allocsa8b5363c.Borrow(cregionCount_allocs)
- var cpEnabledFeatures_allocs *cgoAllocMap
- refc0d8b997.pEnabledFeatures, cpEnabledFeatures_allocs = unpackSPhysicalDeviceFeatures(x.PEnabledFeatures)
- allocsc0d8b997.Borrow(cpEnabledFeatures_allocs)
+ var cpRegions_allocs *cgoAllocMap
+ refa8b5363c.pRegions, cpRegions_allocs = unpackSBufferImageCopy2(x.PRegions)
+ allocsa8b5363c.Borrow(cpRegions_allocs)
- x.refc0d8b997 = refc0d8b997
- x.allocsc0d8b997 = allocsc0d8b997
- return refc0d8b997, allocsc0d8b997
+ x.refa8b5363c = refa8b5363c
+ x.allocsa8b5363c = allocsa8b5363c
+ return refa8b5363c, allocsa8b5363c
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DeviceCreateInfo) PassValue() (C.VkDeviceCreateInfo, *cgoAllocMap) {
- if x.refc0d8b997 != nil {
- return *x.refc0d8b997, nil
+func (x CopyBufferToImageInfo2) PassValue() (C.VkCopyBufferToImageInfo2, *cgoAllocMap) {
+ if x.refa8b5363c != nil {
+ return *x.refa8b5363c, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -2635,93 +29713,110 @@ func (x DeviceCreateInfo) PassValue() (C.VkDeviceCreateInfo, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DeviceCreateInfo) Deref() {
- if x.refc0d8b997 == nil {
+func (x *CopyBufferToImageInfo2) Deref() {
+ if x.refa8b5363c == nil {
return
}
- x.SType = (StructureType)(x.refc0d8b997.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc0d8b997.pNext))
- x.Flags = (DeviceCreateFlags)(x.refc0d8b997.flags)
- x.QueueCreateInfoCount = (uint32)(x.refc0d8b997.queueCreateInfoCount)
- packSDeviceQueueCreateInfo(x.PQueueCreateInfos, x.refc0d8b997.pQueueCreateInfos)
- x.EnabledLayerCount = (uint32)(x.refc0d8b997.enabledLayerCount)
- packSString(x.PpEnabledLayerNames, x.refc0d8b997.ppEnabledLayerNames)
- x.EnabledExtensionCount = (uint32)(x.refc0d8b997.enabledExtensionCount)
- packSString(x.PpEnabledExtensionNames, x.refc0d8b997.ppEnabledExtensionNames)
- packSPhysicalDeviceFeatures(x.PEnabledFeatures, x.refc0d8b997.pEnabledFeatures)
+ x.SType = (StructureType)(x.refa8b5363c.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa8b5363c.pNext))
+ x.SrcBuffer = *(*Buffer)(unsafe.Pointer(&x.refa8b5363c.srcBuffer))
+ x.DstImage = *(*Image)(unsafe.Pointer(&x.refa8b5363c.dstImage))
+ x.DstImageLayout = (ImageLayout)(x.refa8b5363c.dstImageLayout)
+ x.RegionCount = (uint32)(x.refa8b5363c.regionCount)
+ packSBufferImageCopy2(x.PRegions, x.refa8b5363c.pRegions)
}
-// allocExtensionPropertiesMemory allocates memory for type C.VkExtensionProperties in C.
+// allocCopyImageToBufferInfo2Memory allocates memory for type C.VkCopyImageToBufferInfo2 in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocExtensionPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExtensionPropertiesValue))
+func allocCopyImageToBufferInfo2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCopyImageToBufferInfo2Value))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfExtensionPropertiesValue = unsafe.Sizeof([1]C.VkExtensionProperties{})
+const sizeOfCopyImageToBufferInfo2Value = unsafe.Sizeof([1]C.VkCopyImageToBufferInfo2{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ExtensionProperties) Ref() *C.VkExtensionProperties {
+func (x *CopyImageToBufferInfo2) Ref() *C.VkCopyImageToBufferInfo2 {
if x == nil {
return nil
}
- return x.ref2f001956
+ return x.refa81aa2a6
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ExtensionProperties) Free() {
- if x != nil && x.allocs2f001956 != nil {
- x.allocs2f001956.(*cgoAllocMap).Free()
- x.ref2f001956 = nil
+func (x *CopyImageToBufferInfo2) Free() {
+ if x != nil && x.allocsa81aa2a6 != nil {
+ x.allocsa81aa2a6.(*cgoAllocMap).Free()
+ x.refa81aa2a6 = nil
}
}
-// NewExtensionPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewCopyImageToBufferInfo2Ref creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewExtensionPropertiesRef(ref unsafe.Pointer) *ExtensionProperties {
+func NewCopyImageToBufferInfo2Ref(ref unsafe.Pointer) *CopyImageToBufferInfo2 {
if ref == nil {
return nil
}
- obj := new(ExtensionProperties)
- obj.ref2f001956 = (*C.VkExtensionProperties)(unsafe.Pointer(ref))
+ obj := new(CopyImageToBufferInfo2)
+ obj.refa81aa2a6 = (*C.VkCopyImageToBufferInfo2)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ExtensionProperties) PassRef() (*C.VkExtensionProperties, *cgoAllocMap) {
+func (x *CopyImageToBufferInfo2) PassRef() (*C.VkCopyImageToBufferInfo2, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref2f001956 != nil {
- return x.ref2f001956, nil
+ } else if x.refa81aa2a6 != nil {
+ return x.refa81aa2a6, nil
}
- mem2f001956 := allocExtensionPropertiesMemory(1)
- ref2f001956 := (*C.VkExtensionProperties)(mem2f001956)
- allocs2f001956 := new(cgoAllocMap)
- allocs2f001956.Add(mem2f001956)
+ mema81aa2a6 := allocCopyImageToBufferInfo2Memory(1)
+ refa81aa2a6 := (*C.VkCopyImageToBufferInfo2)(mema81aa2a6)
+ allocsa81aa2a6 := new(cgoAllocMap)
+ allocsa81aa2a6.Add(mema81aa2a6)
- var cextensionName_allocs *cgoAllocMap
- ref2f001956.extensionName, cextensionName_allocs = *(*[256]C.char)(unsafe.Pointer(&x.ExtensionName)), cgoAllocsUnknown
- allocs2f001956.Borrow(cextensionName_allocs)
+ var csType_allocs *cgoAllocMap
+ refa81aa2a6.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsa81aa2a6.Borrow(csType_allocs)
- var cspecVersion_allocs *cgoAllocMap
- ref2f001956.specVersion, cspecVersion_allocs = (C.uint32_t)(x.SpecVersion), cgoAllocsUnknown
- allocs2f001956.Borrow(cspecVersion_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refa81aa2a6.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsa81aa2a6.Borrow(cpNext_allocs)
- x.ref2f001956 = ref2f001956
- x.allocs2f001956 = allocs2f001956
- return ref2f001956, allocs2f001956
+ var csrcImage_allocs *cgoAllocMap
+ refa81aa2a6.srcImage, csrcImage_allocs = *(*C.VkImage)(unsafe.Pointer(&x.SrcImage)), cgoAllocsUnknown
+ allocsa81aa2a6.Borrow(csrcImage_allocs)
+
+ var csrcImageLayout_allocs *cgoAllocMap
+ refa81aa2a6.srcImageLayout, csrcImageLayout_allocs = (C.VkImageLayout)(x.SrcImageLayout), cgoAllocsUnknown
+ allocsa81aa2a6.Borrow(csrcImageLayout_allocs)
+
+ var cdstBuffer_allocs *cgoAllocMap
+ refa81aa2a6.dstBuffer, cdstBuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.DstBuffer)), cgoAllocsUnknown
+ allocsa81aa2a6.Borrow(cdstBuffer_allocs)
+
+ var cregionCount_allocs *cgoAllocMap
+ refa81aa2a6.regionCount, cregionCount_allocs = (C.uint32_t)(x.RegionCount), cgoAllocsUnknown
+ allocsa81aa2a6.Borrow(cregionCount_allocs)
+
+ var cpRegions_allocs *cgoAllocMap
+ refa81aa2a6.pRegions, cpRegions_allocs = unpackSBufferImageCopy2(x.PRegions)
+ allocsa81aa2a6.Borrow(cpRegions_allocs)
+
+ x.refa81aa2a6 = refa81aa2a6
+ x.allocsa81aa2a6 = allocsa81aa2a6
+ return refa81aa2a6, allocsa81aa2a6
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ExtensionProperties) PassValue() (C.VkExtensionProperties, *cgoAllocMap) {
- if x.ref2f001956 != nil {
- return *x.ref2f001956, nil
+func (x CopyImageToBufferInfo2) PassValue() (C.VkCopyImageToBufferInfo2, *cgoAllocMap) {
+ if x.refa81aa2a6 != nil {
+ return *x.refa81aa2a6, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -2729,93 +29824,106 @@ func (x ExtensionProperties) PassValue() (C.VkExtensionProperties, *cgoAllocMap)
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ExtensionProperties) Deref() {
- if x.ref2f001956 == nil {
+func (x *CopyImageToBufferInfo2) Deref() {
+ if x.refa81aa2a6 == nil {
return
}
- x.ExtensionName = *(*[256]byte)(unsafe.Pointer(&x.ref2f001956.extensionName))
- x.SpecVersion = (uint32)(x.ref2f001956.specVersion)
+ x.SType = (StructureType)(x.refa81aa2a6.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa81aa2a6.pNext))
+ x.SrcImage = *(*Image)(unsafe.Pointer(&x.refa81aa2a6.srcImage))
+ x.SrcImageLayout = (ImageLayout)(x.refa81aa2a6.srcImageLayout)
+ x.DstBuffer = *(*Buffer)(unsafe.Pointer(&x.refa81aa2a6.dstBuffer))
+ x.RegionCount = (uint32)(x.refa81aa2a6.regionCount)
+ packSBufferImageCopy2(x.PRegions, x.refa81aa2a6.pRegions)
}
-// allocLayerPropertiesMemory allocates memory for type C.VkLayerProperties in C.
+// allocImageBlit2Memory allocates memory for type C.VkImageBlit2 in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocLayerPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfLayerPropertiesValue))
+func allocImageBlit2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageBlit2Value))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfLayerPropertiesValue = unsafe.Sizeof([1]C.VkLayerProperties{})
+const sizeOfImageBlit2Value = unsafe.Sizeof([1]C.VkImageBlit2{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *LayerProperties) Ref() *C.VkLayerProperties {
+func (x *ImageBlit2) Ref() *C.VkImageBlit2 {
if x == nil {
return nil
}
- return x.refd9407ce7
+ return x.ref89cd708e
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *LayerProperties) Free() {
- if x != nil && x.allocsd9407ce7 != nil {
- x.allocsd9407ce7.(*cgoAllocMap).Free()
- x.refd9407ce7 = nil
+func (x *ImageBlit2) Free() {
+ if x != nil && x.allocs89cd708e != nil {
+ x.allocs89cd708e.(*cgoAllocMap).Free()
+ x.ref89cd708e = nil
}
}
-// NewLayerPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewImageBlit2Ref creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewLayerPropertiesRef(ref unsafe.Pointer) *LayerProperties {
+func NewImageBlit2Ref(ref unsafe.Pointer) *ImageBlit2 {
if ref == nil {
return nil
}
- obj := new(LayerProperties)
- obj.refd9407ce7 = (*C.VkLayerProperties)(unsafe.Pointer(ref))
+ obj := new(ImageBlit2)
+ obj.ref89cd708e = (*C.VkImageBlit2)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *LayerProperties) PassRef() (*C.VkLayerProperties, *cgoAllocMap) {
+func (x *ImageBlit2) PassRef() (*C.VkImageBlit2, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refd9407ce7 != nil {
- return x.refd9407ce7, nil
+ } else if x.ref89cd708e != nil {
+ return x.ref89cd708e, nil
}
- memd9407ce7 := allocLayerPropertiesMemory(1)
- refd9407ce7 := (*C.VkLayerProperties)(memd9407ce7)
- allocsd9407ce7 := new(cgoAllocMap)
- allocsd9407ce7.Add(memd9407ce7)
+ mem89cd708e := allocImageBlit2Memory(1)
+ ref89cd708e := (*C.VkImageBlit2)(mem89cd708e)
+ allocs89cd708e := new(cgoAllocMap)
+ allocs89cd708e.Add(mem89cd708e)
- var clayerName_allocs *cgoAllocMap
- refd9407ce7.layerName, clayerName_allocs = *(*[256]C.char)(unsafe.Pointer(&x.LayerName)), cgoAllocsUnknown
- allocsd9407ce7.Borrow(clayerName_allocs)
+ var csType_allocs *cgoAllocMap
+ ref89cd708e.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs89cd708e.Borrow(csType_allocs)
- var cspecVersion_allocs *cgoAllocMap
- refd9407ce7.specVersion, cspecVersion_allocs = (C.uint32_t)(x.SpecVersion), cgoAllocsUnknown
- allocsd9407ce7.Borrow(cspecVersion_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref89cd708e.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs89cd708e.Borrow(cpNext_allocs)
- var cimplementationVersion_allocs *cgoAllocMap
- refd9407ce7.implementationVersion, cimplementationVersion_allocs = (C.uint32_t)(x.ImplementationVersion), cgoAllocsUnknown
- allocsd9407ce7.Borrow(cimplementationVersion_allocs)
+ var csrcSubresource_allocs *cgoAllocMap
+ ref89cd708e.srcSubresource, csrcSubresource_allocs = x.SrcSubresource.PassValue()
+ allocs89cd708e.Borrow(csrcSubresource_allocs)
- var cdescription_allocs *cgoAllocMap
- refd9407ce7.description, cdescription_allocs = *(*[256]C.char)(unsafe.Pointer(&x.Description)), cgoAllocsUnknown
- allocsd9407ce7.Borrow(cdescription_allocs)
+ var csrcOffsets_allocs *cgoAllocMap
+ ref89cd708e.srcOffsets, csrcOffsets_allocs = unpackA2Offset3D(x.SrcOffsets)
+ allocs89cd708e.Borrow(csrcOffsets_allocs)
- x.refd9407ce7 = refd9407ce7
- x.allocsd9407ce7 = allocsd9407ce7
- return refd9407ce7, allocsd9407ce7
+ var cdstSubresource_allocs *cgoAllocMap
+ ref89cd708e.dstSubresource, cdstSubresource_allocs = x.DstSubresource.PassValue()
+ allocs89cd708e.Borrow(cdstSubresource_allocs)
+
+ var cdstOffsets_allocs *cgoAllocMap
+ ref89cd708e.dstOffsets, cdstOffsets_allocs = unpackA2Offset3D(x.DstOffsets)
+ allocs89cd708e.Borrow(cdstOffsets_allocs)
+
+ x.ref89cd708e = ref89cd708e
+ x.allocs89cd708e = allocs89cd708e
+ return ref89cd708e, allocs89cd708e
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x LayerProperties) PassValue() (C.VkLayerProperties, *cgoAllocMap) {
- if x.refd9407ce7 != nil {
- return *x.refd9407ce7, nil
+func (x ImageBlit2) PassValue() (C.VkImageBlit2, *cgoAllocMap) {
+ if x.ref89cd708e != nil {
+ return *x.ref89cd708e, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -2823,115 +29931,155 @@ func (x LayerProperties) PassValue() (C.VkLayerProperties, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *LayerProperties) Deref() {
- if x.refd9407ce7 == nil {
+func (x *ImageBlit2) Deref() {
+ if x.ref89cd708e == nil {
return
}
- x.LayerName = *(*[256]byte)(unsafe.Pointer(&x.refd9407ce7.layerName))
- x.SpecVersion = (uint32)(x.refd9407ce7.specVersion)
- x.ImplementationVersion = (uint32)(x.refd9407ce7.implementationVersion)
- x.Description = *(*[256]byte)(unsafe.Pointer(&x.refd9407ce7.description))
+ x.SType = (StructureType)(x.ref89cd708e.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref89cd708e.pNext))
+ x.SrcSubresource = *NewImageSubresourceLayersRef(unsafe.Pointer(&x.ref89cd708e.srcSubresource))
+ packA2Offset3D(&x.SrcOffsets, (*[2]C.VkOffset3D)(unsafe.Pointer(&x.ref89cd708e.srcOffsets)))
+ x.DstSubresource = *NewImageSubresourceLayersRef(unsafe.Pointer(&x.ref89cd708e.dstSubresource))
+ packA2Offset3D(&x.DstOffsets, (*[2]C.VkOffset3D)(unsafe.Pointer(&x.ref89cd708e.dstOffsets)))
}
-// allocSubmitInfoMemory allocates memory for type C.VkSubmitInfo in C.
+// allocBlitImageInfo2Memory allocates memory for type C.VkBlitImageInfo2 in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSubmitInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSubmitInfoValue))
+func allocBlitImageInfo2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBlitImageInfo2Value))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSubmitInfoValue = unsafe.Sizeof([1]C.VkSubmitInfo{})
+const sizeOfBlitImageInfo2Value = unsafe.Sizeof([1]C.VkBlitImageInfo2{})
+
+// unpackSImageBlit2 transforms a sliced Go data structure into plain C format.
+func unpackSImageBlit2(x []ImageBlit2) (unpacked *C.VkImageBlit2, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkImageBlit2) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocImageBlit2Memory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkImageBlit2)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkImageBlit2)(h.Data)
+ return
+}
+
+// packSImageBlit2 reads sliced Go data structure out from plain C format.
+func packSImageBlit2(v []ImageBlit2, ptr0 *C.VkImageBlit2) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfImageBlit2Value]C.VkImageBlit2)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewImageBlit2Ref(unsafe.Pointer(&ptr1))
+ }
+}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SubmitInfo) Ref() *C.VkSubmitInfo {
+func (x *BlitImageInfo2) Ref() *C.VkBlitImageInfo2 {
if x == nil {
return nil
}
- return x.ref22884025
+ return x.ref93f0395
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SubmitInfo) Free() {
- if x != nil && x.allocs22884025 != nil {
- x.allocs22884025.(*cgoAllocMap).Free()
- x.ref22884025 = nil
+func (x *BlitImageInfo2) Free() {
+ if x != nil && x.allocs93f0395 != nil {
+ x.allocs93f0395.(*cgoAllocMap).Free()
+ x.ref93f0395 = nil
}
}
-// NewSubmitInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewBlitImageInfo2Ref creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSubmitInfoRef(ref unsafe.Pointer) *SubmitInfo {
+func NewBlitImageInfo2Ref(ref unsafe.Pointer) *BlitImageInfo2 {
if ref == nil {
return nil
}
- obj := new(SubmitInfo)
- obj.ref22884025 = (*C.VkSubmitInfo)(unsafe.Pointer(ref))
+ obj := new(BlitImageInfo2)
+ obj.ref93f0395 = (*C.VkBlitImageInfo2)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SubmitInfo) PassRef() (*C.VkSubmitInfo, *cgoAllocMap) {
+func (x *BlitImageInfo2) PassRef() (*C.VkBlitImageInfo2, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref22884025 != nil {
- return x.ref22884025, nil
+ } else if x.ref93f0395 != nil {
+ return x.ref93f0395, nil
}
- mem22884025 := allocSubmitInfoMemory(1)
- ref22884025 := (*C.VkSubmitInfo)(mem22884025)
- allocs22884025 := new(cgoAllocMap)
- allocs22884025.Add(mem22884025)
+ mem93f0395 := allocBlitImageInfo2Memory(1)
+ ref93f0395 := (*C.VkBlitImageInfo2)(mem93f0395)
+ allocs93f0395 := new(cgoAllocMap)
+ allocs93f0395.Add(mem93f0395)
var csType_allocs *cgoAllocMap
- ref22884025.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs22884025.Borrow(csType_allocs)
+ ref93f0395.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs93f0395.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref22884025.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs22884025.Borrow(cpNext_allocs)
+ ref93f0395.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs93f0395.Borrow(cpNext_allocs)
- var cwaitSemaphoreCount_allocs *cgoAllocMap
- ref22884025.waitSemaphoreCount, cwaitSemaphoreCount_allocs = (C.uint32_t)(x.WaitSemaphoreCount), cgoAllocsUnknown
- allocs22884025.Borrow(cwaitSemaphoreCount_allocs)
+ var csrcImage_allocs *cgoAllocMap
+ ref93f0395.srcImage, csrcImage_allocs = *(*C.VkImage)(unsafe.Pointer(&x.SrcImage)), cgoAllocsUnknown
+ allocs93f0395.Borrow(csrcImage_allocs)
- var cpWaitSemaphores_allocs *cgoAllocMap
- ref22884025.pWaitSemaphores, cpWaitSemaphores_allocs = (*C.VkSemaphore)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PWaitSemaphores)).Data)), cgoAllocsUnknown
- allocs22884025.Borrow(cpWaitSemaphores_allocs)
+ var csrcImageLayout_allocs *cgoAllocMap
+ ref93f0395.srcImageLayout, csrcImageLayout_allocs = (C.VkImageLayout)(x.SrcImageLayout), cgoAllocsUnknown
+ allocs93f0395.Borrow(csrcImageLayout_allocs)
- var cpWaitDstStageMask_allocs *cgoAllocMap
- ref22884025.pWaitDstStageMask, cpWaitDstStageMask_allocs = (*C.VkPipelineStageFlags)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PWaitDstStageMask)).Data)), cgoAllocsUnknown
- allocs22884025.Borrow(cpWaitDstStageMask_allocs)
+ var cdstImage_allocs *cgoAllocMap
+ ref93f0395.dstImage, cdstImage_allocs = *(*C.VkImage)(unsafe.Pointer(&x.DstImage)), cgoAllocsUnknown
+ allocs93f0395.Borrow(cdstImage_allocs)
- var ccommandBufferCount_allocs *cgoAllocMap
- ref22884025.commandBufferCount, ccommandBufferCount_allocs = (C.uint32_t)(x.CommandBufferCount), cgoAllocsUnknown
- allocs22884025.Borrow(ccommandBufferCount_allocs)
+ var cdstImageLayout_allocs *cgoAllocMap
+ ref93f0395.dstImageLayout, cdstImageLayout_allocs = (C.VkImageLayout)(x.DstImageLayout), cgoAllocsUnknown
+ allocs93f0395.Borrow(cdstImageLayout_allocs)
- var cpCommandBuffers_allocs *cgoAllocMap
- ref22884025.pCommandBuffers, cpCommandBuffers_allocs = (*C.VkCommandBuffer)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PCommandBuffers)).Data)), cgoAllocsUnknown
- allocs22884025.Borrow(cpCommandBuffers_allocs)
+ var cregionCount_allocs *cgoAllocMap
+ ref93f0395.regionCount, cregionCount_allocs = (C.uint32_t)(x.RegionCount), cgoAllocsUnknown
+ allocs93f0395.Borrow(cregionCount_allocs)
- var csignalSemaphoreCount_allocs *cgoAllocMap
- ref22884025.signalSemaphoreCount, csignalSemaphoreCount_allocs = (C.uint32_t)(x.SignalSemaphoreCount), cgoAllocsUnknown
- allocs22884025.Borrow(csignalSemaphoreCount_allocs)
+ var cpRegions_allocs *cgoAllocMap
+ ref93f0395.pRegions, cpRegions_allocs = unpackSImageBlit2(x.PRegions)
+ allocs93f0395.Borrow(cpRegions_allocs)
- var cpSignalSemaphores_allocs *cgoAllocMap
- ref22884025.pSignalSemaphores, cpSignalSemaphores_allocs = (*C.VkSemaphore)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PSignalSemaphores)).Data)), cgoAllocsUnknown
- allocs22884025.Borrow(cpSignalSemaphores_allocs)
+ var cfilter_allocs *cgoAllocMap
+ ref93f0395.filter, cfilter_allocs = (C.VkFilter)(x.Filter), cgoAllocsUnknown
+ allocs93f0395.Borrow(cfilter_allocs)
- x.ref22884025 = ref22884025
- x.allocs22884025 = allocs22884025
- return ref22884025, allocs22884025
+ x.ref93f0395 = ref93f0395
+ x.allocs93f0395 = allocs93f0395
+ return ref93f0395, allocs93f0395
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SubmitInfo) PassValue() (C.VkSubmitInfo, *cgoAllocMap) {
- if x.ref22884025 != nil {
- return *x.ref22884025, nil
+func (x BlitImageInfo2) PassValue() (C.VkBlitImageInfo2, *cgoAllocMap) {
+ if x.ref93f0395 != nil {
+ return *x.ref93f0395, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -2939,116 +30087,112 @@ func (x SubmitInfo) PassValue() (C.VkSubmitInfo, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SubmitInfo) Deref() {
- if x.ref22884025 == nil {
+func (x *BlitImageInfo2) Deref() {
+ if x.ref93f0395 == nil {
return
}
- x.SType = (StructureType)(x.ref22884025.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref22884025.pNext))
- x.WaitSemaphoreCount = (uint32)(x.ref22884025.waitSemaphoreCount)
- hxf95e7c8 := (*sliceHeader)(unsafe.Pointer(&x.PWaitSemaphores))
- hxf95e7c8.Data = unsafe.Pointer(x.ref22884025.pWaitSemaphores)
- hxf95e7c8.Cap = 0x7fffffff
- // hxf95e7c8.Len = ?
-
- hxff2234b := (*sliceHeader)(unsafe.Pointer(&x.PWaitDstStageMask))
- hxff2234b.Data = unsafe.Pointer(x.ref22884025.pWaitDstStageMask)
- hxff2234b.Cap = 0x7fffffff
- // hxff2234b.Len = ?
-
- x.CommandBufferCount = (uint32)(x.ref22884025.commandBufferCount)
- hxff73280 := (*sliceHeader)(unsafe.Pointer(&x.PCommandBuffers))
- hxff73280.Data = unsafe.Pointer(x.ref22884025.pCommandBuffers)
- hxff73280.Cap = 0x7fffffff
- // hxff73280.Len = ?
-
- x.SignalSemaphoreCount = (uint32)(x.ref22884025.signalSemaphoreCount)
- hxfa9955c := (*sliceHeader)(unsafe.Pointer(&x.PSignalSemaphores))
- hxfa9955c.Data = unsafe.Pointer(x.ref22884025.pSignalSemaphores)
- hxfa9955c.Cap = 0x7fffffff
- // hxfa9955c.Len = ?
-
+ x.SType = (StructureType)(x.ref93f0395.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref93f0395.pNext))
+ x.SrcImage = *(*Image)(unsafe.Pointer(&x.ref93f0395.srcImage))
+ x.SrcImageLayout = (ImageLayout)(x.ref93f0395.srcImageLayout)
+ x.DstImage = *(*Image)(unsafe.Pointer(&x.ref93f0395.dstImage))
+ x.DstImageLayout = (ImageLayout)(x.ref93f0395.dstImageLayout)
+ x.RegionCount = (uint32)(x.ref93f0395.regionCount)
+ packSImageBlit2(x.PRegions, x.ref93f0395.pRegions)
+ x.Filter = (Filter)(x.ref93f0395.filter)
}
-// allocMemoryAllocateInfoMemory allocates memory for type C.VkMemoryAllocateInfo in C.
+// allocImageResolve2Memory allocates memory for type C.VkImageResolve2 in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocMemoryAllocateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMemoryAllocateInfoValue))
+func allocImageResolve2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageResolve2Value))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfMemoryAllocateInfoValue = unsafe.Sizeof([1]C.VkMemoryAllocateInfo{})
+const sizeOfImageResolve2Value = unsafe.Sizeof([1]C.VkImageResolve2{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *MemoryAllocateInfo) Ref() *C.VkMemoryAllocateInfo {
+func (x *ImageResolve2) Ref() *C.VkImageResolve2 {
if x == nil {
return nil
}
- return x.ref31032b
+ return x.ref29ad796d
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *MemoryAllocateInfo) Free() {
- if x != nil && x.allocs31032b != nil {
- x.allocs31032b.(*cgoAllocMap).Free()
- x.ref31032b = nil
+func (x *ImageResolve2) Free() {
+ if x != nil && x.allocs29ad796d != nil {
+ x.allocs29ad796d.(*cgoAllocMap).Free()
+ x.ref29ad796d = nil
}
}
-// NewMemoryAllocateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewImageResolve2Ref creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewMemoryAllocateInfoRef(ref unsafe.Pointer) *MemoryAllocateInfo {
+func NewImageResolve2Ref(ref unsafe.Pointer) *ImageResolve2 {
if ref == nil {
return nil
}
- obj := new(MemoryAllocateInfo)
- obj.ref31032b = (*C.VkMemoryAllocateInfo)(unsafe.Pointer(ref))
+ obj := new(ImageResolve2)
+ obj.ref29ad796d = (*C.VkImageResolve2)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *MemoryAllocateInfo) PassRef() (*C.VkMemoryAllocateInfo, *cgoAllocMap) {
+func (x *ImageResolve2) PassRef() (*C.VkImageResolve2, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref31032b != nil {
- return x.ref31032b, nil
+ } else if x.ref29ad796d != nil {
+ return x.ref29ad796d, nil
}
- mem31032b := allocMemoryAllocateInfoMemory(1)
- ref31032b := (*C.VkMemoryAllocateInfo)(mem31032b)
- allocs31032b := new(cgoAllocMap)
- allocs31032b.Add(mem31032b)
+ mem29ad796d := allocImageResolve2Memory(1)
+ ref29ad796d := (*C.VkImageResolve2)(mem29ad796d)
+ allocs29ad796d := new(cgoAllocMap)
+ allocs29ad796d.Add(mem29ad796d)
var csType_allocs *cgoAllocMap
- ref31032b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs31032b.Borrow(csType_allocs)
+ ref29ad796d.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs29ad796d.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref31032b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs31032b.Borrow(cpNext_allocs)
+ ref29ad796d.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs29ad796d.Borrow(cpNext_allocs)
- var callocationSize_allocs *cgoAllocMap
- ref31032b.allocationSize, callocationSize_allocs = (C.VkDeviceSize)(x.AllocationSize), cgoAllocsUnknown
- allocs31032b.Borrow(callocationSize_allocs)
+ var csrcSubresource_allocs *cgoAllocMap
+ ref29ad796d.srcSubresource, csrcSubresource_allocs = x.SrcSubresource.PassValue()
+ allocs29ad796d.Borrow(csrcSubresource_allocs)
- var cmemoryTypeIndex_allocs *cgoAllocMap
- ref31032b.memoryTypeIndex, cmemoryTypeIndex_allocs = (C.uint32_t)(x.MemoryTypeIndex), cgoAllocsUnknown
- allocs31032b.Borrow(cmemoryTypeIndex_allocs)
+ var csrcOffset_allocs *cgoAllocMap
+ ref29ad796d.srcOffset, csrcOffset_allocs = x.SrcOffset.PassValue()
+ allocs29ad796d.Borrow(csrcOffset_allocs)
- x.ref31032b = ref31032b
- x.allocs31032b = allocs31032b
- return ref31032b, allocs31032b
+ var cdstSubresource_allocs *cgoAllocMap
+ ref29ad796d.dstSubresource, cdstSubresource_allocs = x.DstSubresource.PassValue()
+ allocs29ad796d.Borrow(cdstSubresource_allocs)
+
+ var cdstOffset_allocs *cgoAllocMap
+ ref29ad796d.dstOffset, cdstOffset_allocs = x.DstOffset.PassValue()
+ allocs29ad796d.Borrow(cdstOffset_allocs)
+
+ var cextent_allocs *cgoAllocMap
+ ref29ad796d.extent, cextent_allocs = x.Extent.PassValue()
+ allocs29ad796d.Borrow(cextent_allocs)
+
+ x.ref29ad796d = ref29ad796d
+ x.allocs29ad796d = allocs29ad796d
+ return ref29ad796d, allocs29ad796d
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x MemoryAllocateInfo) PassValue() (C.VkMemoryAllocateInfo, *cgoAllocMap) {
- if x.ref31032b != nil {
- return *x.ref31032b, nil
+func (x ImageResolve2) PassValue() (C.VkImageResolve2, *cgoAllocMap) {
+ if x.ref29ad796d != nil {
+ return *x.ref29ad796d, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -3056,99 +30200,152 @@ func (x MemoryAllocateInfo) PassValue() (C.VkMemoryAllocateInfo, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *MemoryAllocateInfo) Deref() {
- if x.ref31032b == nil {
+func (x *ImageResolve2) Deref() {
+ if x.ref29ad796d == nil {
return
}
- x.SType = (StructureType)(x.ref31032b.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref31032b.pNext))
- x.AllocationSize = (DeviceSize)(x.ref31032b.allocationSize)
- x.MemoryTypeIndex = (uint32)(x.ref31032b.memoryTypeIndex)
+ x.SType = (StructureType)(x.ref29ad796d.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref29ad796d.pNext))
+ x.SrcSubresource = *NewImageSubresourceLayersRef(unsafe.Pointer(&x.ref29ad796d.srcSubresource))
+ x.SrcOffset = *NewOffset3DRef(unsafe.Pointer(&x.ref29ad796d.srcOffset))
+ x.DstSubresource = *NewImageSubresourceLayersRef(unsafe.Pointer(&x.ref29ad796d.dstSubresource))
+ x.DstOffset = *NewOffset3DRef(unsafe.Pointer(&x.ref29ad796d.dstOffset))
+ x.Extent = *NewExtent3DRef(unsafe.Pointer(&x.ref29ad796d.extent))
+}
+
+// allocResolveImageInfo2Memory allocates memory for type C.VkResolveImageInfo2 in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocResolveImageInfo2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfResolveImageInfo2Value))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfResolveImageInfo2Value = unsafe.Sizeof([1]C.VkResolveImageInfo2{})
+
+// unpackSImageResolve2 transforms a sliced Go data structure into plain C format.
+func unpackSImageResolve2(x []ImageResolve2) (unpacked *C.VkImageResolve2, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkImageResolve2) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocImageResolve2Memory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkImageResolve2)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkImageResolve2)(h.Data)
+ return
}
-// allocMappedMemoryRangeMemory allocates memory for type C.VkMappedMemoryRange in C.
-// The caller is responsible for freeing the this memory via C.free.
-func allocMappedMemoryRangeMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMappedMemoryRangeValue))
- if err != nil {
- panic("memory alloc error: " + err.Error())
+// packSImageResolve2 reads sliced Go data structure out from plain C format.
+func packSImageResolve2(v []ImageResolve2, ptr0 *C.VkImageResolve2) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfImageResolve2Value]C.VkImageResolve2)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewImageResolve2Ref(unsafe.Pointer(&ptr1))
}
- return mem
}
-const sizeOfMappedMemoryRangeValue = unsafe.Sizeof([1]C.VkMappedMemoryRange{})
-
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *MappedMemoryRange) Ref() *C.VkMappedMemoryRange {
+func (x *ResolveImageInfo2) Ref() *C.VkResolveImageInfo2 {
if x == nil {
return nil
}
- return x.ref42a37320
+ return x.ref407c4932
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *MappedMemoryRange) Free() {
- if x != nil && x.allocs42a37320 != nil {
- x.allocs42a37320.(*cgoAllocMap).Free()
- x.ref42a37320 = nil
+func (x *ResolveImageInfo2) Free() {
+ if x != nil && x.allocs407c4932 != nil {
+ x.allocs407c4932.(*cgoAllocMap).Free()
+ x.ref407c4932 = nil
}
}
-// NewMappedMemoryRangeRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewResolveImageInfo2Ref creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewMappedMemoryRangeRef(ref unsafe.Pointer) *MappedMemoryRange {
+func NewResolveImageInfo2Ref(ref unsafe.Pointer) *ResolveImageInfo2 {
if ref == nil {
return nil
}
- obj := new(MappedMemoryRange)
- obj.ref42a37320 = (*C.VkMappedMemoryRange)(unsafe.Pointer(ref))
+ obj := new(ResolveImageInfo2)
+ obj.ref407c4932 = (*C.VkResolveImageInfo2)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *MappedMemoryRange) PassRef() (*C.VkMappedMemoryRange, *cgoAllocMap) {
+func (x *ResolveImageInfo2) PassRef() (*C.VkResolveImageInfo2, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref42a37320 != nil {
- return x.ref42a37320, nil
+ } else if x.ref407c4932 != nil {
+ return x.ref407c4932, nil
}
- mem42a37320 := allocMappedMemoryRangeMemory(1)
- ref42a37320 := (*C.VkMappedMemoryRange)(mem42a37320)
- allocs42a37320 := new(cgoAllocMap)
- allocs42a37320.Add(mem42a37320)
+ mem407c4932 := allocResolveImageInfo2Memory(1)
+ ref407c4932 := (*C.VkResolveImageInfo2)(mem407c4932)
+ allocs407c4932 := new(cgoAllocMap)
+ allocs407c4932.Add(mem407c4932)
var csType_allocs *cgoAllocMap
- ref42a37320.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs42a37320.Borrow(csType_allocs)
+ ref407c4932.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs407c4932.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref42a37320.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs42a37320.Borrow(cpNext_allocs)
+ ref407c4932.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs407c4932.Borrow(cpNext_allocs)
- var cmemory_allocs *cgoAllocMap
- ref42a37320.memory, cmemory_allocs = *(*C.VkDeviceMemory)(unsafe.Pointer(&x.Memory)), cgoAllocsUnknown
- allocs42a37320.Borrow(cmemory_allocs)
+ var csrcImage_allocs *cgoAllocMap
+ ref407c4932.srcImage, csrcImage_allocs = *(*C.VkImage)(unsafe.Pointer(&x.SrcImage)), cgoAllocsUnknown
+ allocs407c4932.Borrow(csrcImage_allocs)
- var coffset_allocs *cgoAllocMap
- ref42a37320.offset, coffset_allocs = (C.VkDeviceSize)(x.Offset), cgoAllocsUnknown
- allocs42a37320.Borrow(coffset_allocs)
+ var csrcImageLayout_allocs *cgoAllocMap
+ ref407c4932.srcImageLayout, csrcImageLayout_allocs = (C.VkImageLayout)(x.SrcImageLayout), cgoAllocsUnknown
+ allocs407c4932.Borrow(csrcImageLayout_allocs)
- var csize_allocs *cgoAllocMap
- ref42a37320.size, csize_allocs = (C.VkDeviceSize)(x.Size), cgoAllocsUnknown
- allocs42a37320.Borrow(csize_allocs)
+ var cdstImage_allocs *cgoAllocMap
+ ref407c4932.dstImage, cdstImage_allocs = *(*C.VkImage)(unsafe.Pointer(&x.DstImage)), cgoAllocsUnknown
+ allocs407c4932.Borrow(cdstImage_allocs)
- x.ref42a37320 = ref42a37320
- x.allocs42a37320 = allocs42a37320
- return ref42a37320, allocs42a37320
+ var cdstImageLayout_allocs *cgoAllocMap
+ ref407c4932.dstImageLayout, cdstImageLayout_allocs = (C.VkImageLayout)(x.DstImageLayout), cgoAllocsUnknown
+ allocs407c4932.Borrow(cdstImageLayout_allocs)
+
+ var cregionCount_allocs *cgoAllocMap
+ ref407c4932.regionCount, cregionCount_allocs = (C.uint32_t)(x.RegionCount), cgoAllocsUnknown
+ allocs407c4932.Borrow(cregionCount_allocs)
+
+ var cpRegions_allocs *cgoAllocMap
+ ref407c4932.pRegions, cpRegions_allocs = unpackSImageResolve2(x.PRegions)
+ allocs407c4932.Borrow(cpRegions_allocs)
+
+ x.ref407c4932 = ref407c4932
+ x.allocs407c4932 = allocs407c4932
+ return ref407c4932, allocs407c4932
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x MappedMemoryRange) PassValue() (C.VkMappedMemoryRange, *cgoAllocMap) {
- if x.ref42a37320 != nil {
- return *x.ref42a37320, nil
+func (x ResolveImageInfo2) PassValue() (C.VkResolveImageInfo2, *cgoAllocMap) {
+ if x.ref407c4932 != nil {
+ return *x.ref407c4932, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -3156,92 +30353,99 @@ func (x MappedMemoryRange) PassValue() (C.VkMappedMemoryRange, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *MappedMemoryRange) Deref() {
- if x.ref42a37320 == nil {
+func (x *ResolveImageInfo2) Deref() {
+ if x.ref407c4932 == nil {
return
}
- x.SType = (StructureType)(x.ref42a37320.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref42a37320.pNext))
- x.Memory = *(*DeviceMemory)(unsafe.Pointer(&x.ref42a37320.memory))
- x.Offset = (DeviceSize)(x.ref42a37320.offset)
- x.Size = (DeviceSize)(x.ref42a37320.size)
+ x.SType = (StructureType)(x.ref407c4932.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref407c4932.pNext))
+ x.SrcImage = *(*Image)(unsafe.Pointer(&x.ref407c4932.srcImage))
+ x.SrcImageLayout = (ImageLayout)(x.ref407c4932.srcImageLayout)
+ x.DstImage = *(*Image)(unsafe.Pointer(&x.ref407c4932.dstImage))
+ x.DstImageLayout = (ImageLayout)(x.ref407c4932.dstImageLayout)
+ x.RegionCount = (uint32)(x.ref407c4932.regionCount)
+ packSImageResolve2(x.PRegions, x.ref407c4932.pRegions)
}
-// allocMemoryRequirementsMemory allocates memory for type C.VkMemoryRequirements in C.
+// allocPhysicalDeviceSubgroupSizeControlFeaturesMemory allocates memory for type C.VkPhysicalDeviceSubgroupSizeControlFeatures in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocMemoryRequirementsMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMemoryRequirementsValue))
+func allocPhysicalDeviceSubgroupSizeControlFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceSubgroupSizeControlFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfMemoryRequirementsValue = unsafe.Sizeof([1]C.VkMemoryRequirements{})
+const sizeOfPhysicalDeviceSubgroupSizeControlFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceSubgroupSizeControlFeatures{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *MemoryRequirements) Ref() *C.VkMemoryRequirements {
+func (x *PhysicalDeviceSubgroupSizeControlFeatures) Ref() *C.VkPhysicalDeviceSubgroupSizeControlFeatures {
if x == nil {
return nil
}
- return x.ref5259fc6b
+ return x.ref688d05c2
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *MemoryRequirements) Free() {
- if x != nil && x.allocs5259fc6b != nil {
- x.allocs5259fc6b.(*cgoAllocMap).Free()
- x.ref5259fc6b = nil
+func (x *PhysicalDeviceSubgroupSizeControlFeatures) Free() {
+ if x != nil && x.allocs688d05c2 != nil {
+ x.allocs688d05c2.(*cgoAllocMap).Free()
+ x.ref688d05c2 = nil
}
}
-// NewMemoryRequirementsRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceSubgroupSizeControlFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewMemoryRequirementsRef(ref unsafe.Pointer) *MemoryRequirements {
+func NewPhysicalDeviceSubgroupSizeControlFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceSubgroupSizeControlFeatures {
if ref == nil {
return nil
}
- obj := new(MemoryRequirements)
- obj.ref5259fc6b = (*C.VkMemoryRequirements)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceSubgroupSizeControlFeatures)
+ obj.ref688d05c2 = (*C.VkPhysicalDeviceSubgroupSizeControlFeatures)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *MemoryRequirements) PassRef() (*C.VkMemoryRequirements, *cgoAllocMap) {
+func (x *PhysicalDeviceSubgroupSizeControlFeatures) PassRef() (*C.VkPhysicalDeviceSubgroupSizeControlFeatures, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref5259fc6b != nil {
- return x.ref5259fc6b, nil
+ } else if x.ref688d05c2 != nil {
+ return x.ref688d05c2, nil
}
- mem5259fc6b := allocMemoryRequirementsMemory(1)
- ref5259fc6b := (*C.VkMemoryRequirements)(mem5259fc6b)
- allocs5259fc6b := new(cgoAllocMap)
- allocs5259fc6b.Add(mem5259fc6b)
+ mem688d05c2 := allocPhysicalDeviceSubgroupSizeControlFeaturesMemory(1)
+ ref688d05c2 := (*C.VkPhysicalDeviceSubgroupSizeControlFeatures)(mem688d05c2)
+ allocs688d05c2 := new(cgoAllocMap)
+ allocs688d05c2.Add(mem688d05c2)
- var csize_allocs *cgoAllocMap
- ref5259fc6b.size, csize_allocs = (C.VkDeviceSize)(x.Size), cgoAllocsUnknown
- allocs5259fc6b.Borrow(csize_allocs)
+ var csType_allocs *cgoAllocMap
+ ref688d05c2.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs688d05c2.Borrow(csType_allocs)
- var calignment_allocs *cgoAllocMap
- ref5259fc6b.alignment, calignment_allocs = (C.VkDeviceSize)(x.Alignment), cgoAllocsUnknown
- allocs5259fc6b.Borrow(calignment_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref688d05c2.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs688d05c2.Borrow(cpNext_allocs)
- var cmemoryTypeBits_allocs *cgoAllocMap
- ref5259fc6b.memoryTypeBits, cmemoryTypeBits_allocs = (C.uint32_t)(x.MemoryTypeBits), cgoAllocsUnknown
- allocs5259fc6b.Borrow(cmemoryTypeBits_allocs)
+ var csubgroupSizeControl_allocs *cgoAllocMap
+ ref688d05c2.subgroupSizeControl, csubgroupSizeControl_allocs = (C.VkBool32)(x.SubgroupSizeControl), cgoAllocsUnknown
+ allocs688d05c2.Borrow(csubgroupSizeControl_allocs)
- x.ref5259fc6b = ref5259fc6b
- x.allocs5259fc6b = allocs5259fc6b
- return ref5259fc6b, allocs5259fc6b
+ var ccomputeFullSubgroups_allocs *cgoAllocMap
+ ref688d05c2.computeFullSubgroups, ccomputeFullSubgroups_allocs = (C.VkBool32)(x.ComputeFullSubgroups), cgoAllocsUnknown
+ allocs688d05c2.Borrow(ccomputeFullSubgroups_allocs)
+
+ x.ref688d05c2 = ref688d05c2
+ x.allocs688d05c2 = allocs688d05c2
+ return ref688d05c2, allocs688d05c2
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x MemoryRequirements) PassValue() (C.VkMemoryRequirements, *cgoAllocMap) {
- if x.ref5259fc6b != nil {
- return *x.ref5259fc6b, nil
+func (x PhysicalDeviceSubgroupSizeControlFeatures) PassValue() (C.VkPhysicalDeviceSubgroupSizeControlFeatures, *cgoAllocMap) {
+ if x.ref688d05c2 != nil {
+ return *x.ref688d05c2, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -3249,90 +30453,103 @@ func (x MemoryRequirements) PassValue() (C.VkMemoryRequirements, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *MemoryRequirements) Deref() {
- if x.ref5259fc6b == nil {
+func (x *PhysicalDeviceSubgroupSizeControlFeatures) Deref() {
+ if x.ref688d05c2 == nil {
return
}
- x.Size = (DeviceSize)(x.ref5259fc6b.size)
- x.Alignment = (DeviceSize)(x.ref5259fc6b.alignment)
- x.MemoryTypeBits = (uint32)(x.ref5259fc6b.memoryTypeBits)
+ x.SType = (StructureType)(x.ref688d05c2.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref688d05c2.pNext))
+ x.SubgroupSizeControl = (Bool32)(x.ref688d05c2.subgroupSizeControl)
+ x.ComputeFullSubgroups = (Bool32)(x.ref688d05c2.computeFullSubgroups)
}
-// allocSparseImageFormatPropertiesMemory allocates memory for type C.VkSparseImageFormatProperties in C.
+// allocPhysicalDeviceSubgroupSizeControlPropertiesMemory allocates memory for type C.VkPhysicalDeviceSubgroupSizeControlProperties in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSparseImageFormatPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSparseImageFormatPropertiesValue))
+func allocPhysicalDeviceSubgroupSizeControlPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceSubgroupSizeControlPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSparseImageFormatPropertiesValue = unsafe.Sizeof([1]C.VkSparseImageFormatProperties{})
+const sizeOfPhysicalDeviceSubgroupSizeControlPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceSubgroupSizeControlProperties{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SparseImageFormatProperties) Ref() *C.VkSparseImageFormatProperties {
+func (x *PhysicalDeviceSubgroupSizeControlProperties) Ref() *C.VkPhysicalDeviceSubgroupSizeControlProperties {
if x == nil {
return nil
}
- return x.ref2c12cf44
+ return x.refe0ef78a4
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SparseImageFormatProperties) Free() {
- if x != nil && x.allocs2c12cf44 != nil {
- x.allocs2c12cf44.(*cgoAllocMap).Free()
- x.ref2c12cf44 = nil
+func (x *PhysicalDeviceSubgroupSizeControlProperties) Free() {
+ if x != nil && x.allocse0ef78a4 != nil {
+ x.allocse0ef78a4.(*cgoAllocMap).Free()
+ x.refe0ef78a4 = nil
}
}
-// NewSparseImageFormatPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceSubgroupSizeControlPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSparseImageFormatPropertiesRef(ref unsafe.Pointer) *SparseImageFormatProperties {
+func NewPhysicalDeviceSubgroupSizeControlPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceSubgroupSizeControlProperties {
if ref == nil {
return nil
}
- obj := new(SparseImageFormatProperties)
- obj.ref2c12cf44 = (*C.VkSparseImageFormatProperties)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceSubgroupSizeControlProperties)
+ obj.refe0ef78a4 = (*C.VkPhysicalDeviceSubgroupSizeControlProperties)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SparseImageFormatProperties) PassRef() (*C.VkSparseImageFormatProperties, *cgoAllocMap) {
+func (x *PhysicalDeviceSubgroupSizeControlProperties) PassRef() (*C.VkPhysicalDeviceSubgroupSizeControlProperties, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref2c12cf44 != nil {
- return x.ref2c12cf44, nil
+ } else if x.refe0ef78a4 != nil {
+ return x.refe0ef78a4, nil
}
- mem2c12cf44 := allocSparseImageFormatPropertiesMemory(1)
- ref2c12cf44 := (*C.VkSparseImageFormatProperties)(mem2c12cf44)
- allocs2c12cf44 := new(cgoAllocMap)
- allocs2c12cf44.Add(mem2c12cf44)
+ meme0ef78a4 := allocPhysicalDeviceSubgroupSizeControlPropertiesMemory(1)
+ refe0ef78a4 := (*C.VkPhysicalDeviceSubgroupSizeControlProperties)(meme0ef78a4)
+ allocse0ef78a4 := new(cgoAllocMap)
+ allocse0ef78a4.Add(meme0ef78a4)
- var caspectMask_allocs *cgoAllocMap
- ref2c12cf44.aspectMask, caspectMask_allocs = (C.VkImageAspectFlags)(x.AspectMask), cgoAllocsUnknown
- allocs2c12cf44.Borrow(caspectMask_allocs)
+ var csType_allocs *cgoAllocMap
+ refe0ef78a4.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocse0ef78a4.Borrow(csType_allocs)
- var cimageGranularity_allocs *cgoAllocMap
- ref2c12cf44.imageGranularity, cimageGranularity_allocs = x.ImageGranularity.PassValue()
- allocs2c12cf44.Borrow(cimageGranularity_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refe0ef78a4.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocse0ef78a4.Borrow(cpNext_allocs)
- var cflags_allocs *cgoAllocMap
- ref2c12cf44.flags, cflags_allocs = (C.VkSparseImageFormatFlags)(x.Flags), cgoAllocsUnknown
- allocs2c12cf44.Borrow(cflags_allocs)
+ var cminSubgroupSize_allocs *cgoAllocMap
+ refe0ef78a4.minSubgroupSize, cminSubgroupSize_allocs = (C.uint32_t)(x.MinSubgroupSize), cgoAllocsUnknown
+ allocse0ef78a4.Borrow(cminSubgroupSize_allocs)
- x.ref2c12cf44 = ref2c12cf44
- x.allocs2c12cf44 = allocs2c12cf44
- return ref2c12cf44, allocs2c12cf44
+ var cmaxSubgroupSize_allocs *cgoAllocMap
+ refe0ef78a4.maxSubgroupSize, cmaxSubgroupSize_allocs = (C.uint32_t)(x.MaxSubgroupSize), cgoAllocsUnknown
+ allocse0ef78a4.Borrow(cmaxSubgroupSize_allocs)
+
+ var cmaxComputeWorkgroupSubgroups_allocs *cgoAllocMap
+ refe0ef78a4.maxComputeWorkgroupSubgroups, cmaxComputeWorkgroupSubgroups_allocs = (C.uint32_t)(x.MaxComputeWorkgroupSubgroups), cgoAllocsUnknown
+ allocse0ef78a4.Borrow(cmaxComputeWorkgroupSubgroups_allocs)
+
+ var crequiredSubgroupSizeStages_allocs *cgoAllocMap
+ refe0ef78a4.requiredSubgroupSizeStages, crequiredSubgroupSizeStages_allocs = (C.VkShaderStageFlags)(x.RequiredSubgroupSizeStages), cgoAllocsUnknown
+ allocse0ef78a4.Borrow(crequiredSubgroupSizeStages_allocs)
+
+ x.refe0ef78a4 = refe0ef78a4
+ x.allocse0ef78a4 = allocse0ef78a4
+ return refe0ef78a4, allocse0ef78a4
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SparseImageFormatProperties) PassValue() (C.VkSparseImageFormatProperties, *cgoAllocMap) {
- if x.ref2c12cf44 != nil {
- return *x.ref2c12cf44, nil
+func (x PhysicalDeviceSubgroupSizeControlProperties) PassValue() (C.VkPhysicalDeviceSubgroupSizeControlProperties, *cgoAllocMap) {
+ if x.refe0ef78a4 != nil {
+ return *x.refe0ef78a4, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -3340,98 +30557,93 @@ func (x SparseImageFormatProperties) PassValue() (C.VkSparseImageFormatPropertie
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SparseImageFormatProperties) Deref() {
- if x.ref2c12cf44 == nil {
+func (x *PhysicalDeviceSubgroupSizeControlProperties) Deref() {
+ if x.refe0ef78a4 == nil {
return
}
- x.AspectMask = (ImageAspectFlags)(x.ref2c12cf44.aspectMask)
- x.ImageGranularity = *NewExtent3DRef(unsafe.Pointer(&x.ref2c12cf44.imageGranularity))
- x.Flags = (SparseImageFormatFlags)(x.ref2c12cf44.flags)
+ x.SType = (StructureType)(x.refe0ef78a4.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refe0ef78a4.pNext))
+ x.MinSubgroupSize = (uint32)(x.refe0ef78a4.minSubgroupSize)
+ x.MaxSubgroupSize = (uint32)(x.refe0ef78a4.maxSubgroupSize)
+ x.MaxComputeWorkgroupSubgroups = (uint32)(x.refe0ef78a4.maxComputeWorkgroupSubgroups)
+ x.RequiredSubgroupSizeStages = (ShaderStageFlags)(x.refe0ef78a4.requiredSubgroupSizeStages)
}
-// allocSparseImageMemoryRequirementsMemory allocates memory for type C.VkSparseImageMemoryRequirements in C.
+// allocPipelineShaderStageRequiredSubgroupSizeCreateInfoMemory allocates memory for type C.VkPipelineShaderStageRequiredSubgroupSizeCreateInfo in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSparseImageMemoryRequirementsMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSparseImageMemoryRequirementsValue))
+func allocPipelineShaderStageRequiredSubgroupSizeCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineShaderStageRequiredSubgroupSizeCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSparseImageMemoryRequirementsValue = unsafe.Sizeof([1]C.VkSparseImageMemoryRequirements{})
+const sizeOfPipelineShaderStageRequiredSubgroupSizeCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineShaderStageRequiredSubgroupSizeCreateInfo{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SparseImageMemoryRequirements) Ref() *C.VkSparseImageMemoryRequirements {
+func (x *PipelineShaderStageRequiredSubgroupSizeCreateInfo) Ref() *C.VkPipelineShaderStageRequiredSubgroupSizeCreateInfo {
if x == nil {
return nil
}
- return x.ref685a2323
+ return x.refd57e5454
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SparseImageMemoryRequirements) Free() {
- if x != nil && x.allocs685a2323 != nil {
- x.allocs685a2323.(*cgoAllocMap).Free()
- x.ref685a2323 = nil
+func (x *PipelineShaderStageRequiredSubgroupSizeCreateInfo) Free() {
+ if x != nil && x.allocsd57e5454 != nil {
+ x.allocsd57e5454.(*cgoAllocMap).Free()
+ x.refd57e5454 = nil
}
}
-// NewSparseImageMemoryRequirementsRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineShaderStageRequiredSubgroupSizeCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSparseImageMemoryRequirementsRef(ref unsafe.Pointer) *SparseImageMemoryRequirements {
+func NewPipelineShaderStageRequiredSubgroupSizeCreateInfoRef(ref unsafe.Pointer) *PipelineShaderStageRequiredSubgroupSizeCreateInfo {
if ref == nil {
return nil
}
- obj := new(SparseImageMemoryRequirements)
- obj.ref685a2323 = (*C.VkSparseImageMemoryRequirements)(unsafe.Pointer(ref))
+ obj := new(PipelineShaderStageRequiredSubgroupSizeCreateInfo)
+ obj.refd57e5454 = (*C.VkPipelineShaderStageRequiredSubgroupSizeCreateInfo)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SparseImageMemoryRequirements) PassRef() (*C.VkSparseImageMemoryRequirements, *cgoAllocMap) {
+func (x *PipelineShaderStageRequiredSubgroupSizeCreateInfo) PassRef() (*C.VkPipelineShaderStageRequiredSubgroupSizeCreateInfo, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref685a2323 != nil {
- return x.ref685a2323, nil
+ } else if x.refd57e5454 != nil {
+ return x.refd57e5454, nil
}
- mem685a2323 := allocSparseImageMemoryRequirementsMemory(1)
- ref685a2323 := (*C.VkSparseImageMemoryRequirements)(mem685a2323)
- allocs685a2323 := new(cgoAllocMap)
- allocs685a2323.Add(mem685a2323)
-
- var cformatProperties_allocs *cgoAllocMap
- ref685a2323.formatProperties, cformatProperties_allocs = x.FormatProperties.PassValue()
- allocs685a2323.Borrow(cformatProperties_allocs)
-
- var cimageMipTailFirstLod_allocs *cgoAllocMap
- ref685a2323.imageMipTailFirstLod, cimageMipTailFirstLod_allocs = (C.uint32_t)(x.ImageMipTailFirstLod), cgoAllocsUnknown
- allocs685a2323.Borrow(cimageMipTailFirstLod_allocs)
+ memd57e5454 := allocPipelineShaderStageRequiredSubgroupSizeCreateInfoMemory(1)
+ refd57e5454 := (*C.VkPipelineShaderStageRequiredSubgroupSizeCreateInfo)(memd57e5454)
+ allocsd57e5454 := new(cgoAllocMap)
+ allocsd57e5454.Add(memd57e5454)
- var cimageMipTailSize_allocs *cgoAllocMap
- ref685a2323.imageMipTailSize, cimageMipTailSize_allocs = (C.VkDeviceSize)(x.ImageMipTailSize), cgoAllocsUnknown
- allocs685a2323.Borrow(cimageMipTailSize_allocs)
+ var csType_allocs *cgoAllocMap
+ refd57e5454.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd57e5454.Borrow(csType_allocs)
- var cimageMipTailOffset_allocs *cgoAllocMap
- ref685a2323.imageMipTailOffset, cimageMipTailOffset_allocs = (C.VkDeviceSize)(x.ImageMipTailOffset), cgoAllocsUnknown
- allocs685a2323.Borrow(cimageMipTailOffset_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refd57e5454.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsd57e5454.Borrow(cpNext_allocs)
- var cimageMipTailStride_allocs *cgoAllocMap
- ref685a2323.imageMipTailStride, cimageMipTailStride_allocs = (C.VkDeviceSize)(x.ImageMipTailStride), cgoAllocsUnknown
- allocs685a2323.Borrow(cimageMipTailStride_allocs)
+ var crequiredSubgroupSize_allocs *cgoAllocMap
+ refd57e5454.requiredSubgroupSize, crequiredSubgroupSize_allocs = (C.uint32_t)(x.RequiredSubgroupSize), cgoAllocsUnknown
+ allocsd57e5454.Borrow(crequiredSubgroupSize_allocs)
- x.ref685a2323 = ref685a2323
- x.allocs685a2323 = allocs685a2323
- return ref685a2323, allocs685a2323
+ x.refd57e5454 = refd57e5454
+ x.allocsd57e5454 = allocsd57e5454
+ return refd57e5454, allocsd57e5454
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SparseImageMemoryRequirements) PassValue() (C.VkSparseImageMemoryRequirements, *cgoAllocMap) {
- if x.ref685a2323 != nil {
- return *x.ref685a2323, nil
+func (x PipelineShaderStageRequiredSubgroupSizeCreateInfo) PassValue() (C.VkPipelineShaderStageRequiredSubgroupSizeCreateInfo, *cgoAllocMap) {
+ if x.refd57e5454 != nil {
+ return *x.refd57e5454, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -3439,100 +30651,94 @@ func (x SparseImageMemoryRequirements) PassValue() (C.VkSparseImageMemoryRequire
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SparseImageMemoryRequirements) Deref() {
- if x.ref685a2323 == nil {
+func (x *PipelineShaderStageRequiredSubgroupSizeCreateInfo) Deref() {
+ if x.refd57e5454 == nil {
return
}
- x.FormatProperties = *NewSparseImageFormatPropertiesRef(unsafe.Pointer(&x.ref685a2323.formatProperties))
- x.ImageMipTailFirstLod = (uint32)(x.ref685a2323.imageMipTailFirstLod)
- x.ImageMipTailSize = (DeviceSize)(x.ref685a2323.imageMipTailSize)
- x.ImageMipTailOffset = (DeviceSize)(x.ref685a2323.imageMipTailOffset)
- x.ImageMipTailStride = (DeviceSize)(x.ref685a2323.imageMipTailStride)
+ x.SType = (StructureType)(x.refd57e5454.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd57e5454.pNext))
+ x.RequiredSubgroupSize = (uint32)(x.refd57e5454.requiredSubgroupSize)
}
-// allocSparseMemoryBindMemory allocates memory for type C.VkSparseMemoryBind in C.
+// allocPhysicalDeviceInlineUniformBlockFeaturesMemory allocates memory for type C.VkPhysicalDeviceInlineUniformBlockFeatures in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSparseMemoryBindMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSparseMemoryBindValue))
+func allocPhysicalDeviceInlineUniformBlockFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceInlineUniformBlockFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSparseMemoryBindValue = unsafe.Sizeof([1]C.VkSparseMemoryBind{})
+const sizeOfPhysicalDeviceInlineUniformBlockFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceInlineUniformBlockFeatures{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SparseMemoryBind) Ref() *C.VkSparseMemoryBind {
+func (x *PhysicalDeviceInlineUniformBlockFeatures) Ref() *C.VkPhysicalDeviceInlineUniformBlockFeatures {
if x == nil {
return nil
}
- return x.ref5bf418e8
+ return x.ref6057e623
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SparseMemoryBind) Free() {
- if x != nil && x.allocs5bf418e8 != nil {
- x.allocs5bf418e8.(*cgoAllocMap).Free()
- x.ref5bf418e8 = nil
+func (x *PhysicalDeviceInlineUniformBlockFeatures) Free() {
+ if x != nil && x.allocs6057e623 != nil {
+ x.allocs6057e623.(*cgoAllocMap).Free()
+ x.ref6057e623 = nil
}
}
-// NewSparseMemoryBindRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceInlineUniformBlockFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSparseMemoryBindRef(ref unsafe.Pointer) *SparseMemoryBind {
+func NewPhysicalDeviceInlineUniformBlockFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceInlineUniformBlockFeatures {
if ref == nil {
return nil
}
- obj := new(SparseMemoryBind)
- obj.ref5bf418e8 = (*C.VkSparseMemoryBind)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceInlineUniformBlockFeatures)
+ obj.ref6057e623 = (*C.VkPhysicalDeviceInlineUniformBlockFeatures)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SparseMemoryBind) PassRef() (*C.VkSparseMemoryBind, *cgoAllocMap) {
+func (x *PhysicalDeviceInlineUniformBlockFeatures) PassRef() (*C.VkPhysicalDeviceInlineUniformBlockFeatures, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref5bf418e8 != nil {
- return x.ref5bf418e8, nil
+ } else if x.ref6057e623 != nil {
+ return x.ref6057e623, nil
}
- mem5bf418e8 := allocSparseMemoryBindMemory(1)
- ref5bf418e8 := (*C.VkSparseMemoryBind)(mem5bf418e8)
- allocs5bf418e8 := new(cgoAllocMap)
- allocs5bf418e8.Add(mem5bf418e8)
-
- var cresourceOffset_allocs *cgoAllocMap
- ref5bf418e8.resourceOffset, cresourceOffset_allocs = (C.VkDeviceSize)(x.ResourceOffset), cgoAllocsUnknown
- allocs5bf418e8.Borrow(cresourceOffset_allocs)
+ mem6057e623 := allocPhysicalDeviceInlineUniformBlockFeaturesMemory(1)
+ ref6057e623 := (*C.VkPhysicalDeviceInlineUniformBlockFeatures)(mem6057e623)
+ allocs6057e623 := new(cgoAllocMap)
+ allocs6057e623.Add(mem6057e623)
- var csize_allocs *cgoAllocMap
- ref5bf418e8.size, csize_allocs = (C.VkDeviceSize)(x.Size), cgoAllocsUnknown
- allocs5bf418e8.Borrow(csize_allocs)
+ var csType_allocs *cgoAllocMap
+ ref6057e623.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs6057e623.Borrow(csType_allocs)
- var cmemory_allocs *cgoAllocMap
- ref5bf418e8.memory, cmemory_allocs = *(*C.VkDeviceMemory)(unsafe.Pointer(&x.Memory)), cgoAllocsUnknown
- allocs5bf418e8.Borrow(cmemory_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref6057e623.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs6057e623.Borrow(cpNext_allocs)
- var cmemoryOffset_allocs *cgoAllocMap
- ref5bf418e8.memoryOffset, cmemoryOffset_allocs = (C.VkDeviceSize)(x.MemoryOffset), cgoAllocsUnknown
- allocs5bf418e8.Borrow(cmemoryOffset_allocs)
+ var cinlineUniformBlock_allocs *cgoAllocMap
+ ref6057e623.inlineUniformBlock, cinlineUniformBlock_allocs = (C.VkBool32)(x.InlineUniformBlock), cgoAllocsUnknown
+ allocs6057e623.Borrow(cinlineUniformBlock_allocs)
- var cflags_allocs *cgoAllocMap
- ref5bf418e8.flags, cflags_allocs = (C.VkSparseMemoryBindFlags)(x.Flags), cgoAllocsUnknown
- allocs5bf418e8.Borrow(cflags_allocs)
+ var cdescriptorBindingInlineUniformBlockUpdateAfterBind_allocs *cgoAllocMap
+ ref6057e623.descriptorBindingInlineUniformBlockUpdateAfterBind, cdescriptorBindingInlineUniformBlockUpdateAfterBind_allocs = (C.VkBool32)(x.DescriptorBindingInlineUniformBlockUpdateAfterBind), cgoAllocsUnknown
+ allocs6057e623.Borrow(cdescriptorBindingInlineUniformBlockUpdateAfterBind_allocs)
- x.ref5bf418e8 = ref5bf418e8
- x.allocs5bf418e8 = allocs5bf418e8
- return ref5bf418e8, allocs5bf418e8
+ x.ref6057e623 = ref6057e623
+ x.allocs6057e623 = allocs6057e623
+ return ref6057e623, allocs6057e623
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SparseMemoryBind) PassValue() (C.VkSparseMemoryBind, *cgoAllocMap) {
- if x.ref5bf418e8 != nil {
- return *x.ref5bf418e8, nil
+func (x PhysicalDeviceInlineUniformBlockFeatures) PassValue() (C.VkPhysicalDeviceInlineUniformBlockFeatures, *cgoAllocMap) {
+ if x.ref6057e623 != nil {
+ return *x.ref6057e623, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -3540,130 +30746,107 @@ func (x SparseMemoryBind) PassValue() (C.VkSparseMemoryBind, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SparseMemoryBind) Deref() {
- if x.ref5bf418e8 == nil {
+func (x *PhysicalDeviceInlineUniformBlockFeatures) Deref() {
+ if x.ref6057e623 == nil {
return
}
- x.ResourceOffset = (DeviceSize)(x.ref5bf418e8.resourceOffset)
- x.Size = (DeviceSize)(x.ref5bf418e8.size)
- x.Memory = *(*DeviceMemory)(unsafe.Pointer(&x.ref5bf418e8.memory))
- x.MemoryOffset = (DeviceSize)(x.ref5bf418e8.memoryOffset)
- x.Flags = (SparseMemoryBindFlags)(x.ref5bf418e8.flags)
+ x.SType = (StructureType)(x.ref6057e623.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref6057e623.pNext))
+ x.InlineUniformBlock = (Bool32)(x.ref6057e623.inlineUniformBlock)
+ x.DescriptorBindingInlineUniformBlockUpdateAfterBind = (Bool32)(x.ref6057e623.descriptorBindingInlineUniformBlockUpdateAfterBind)
}
-// allocSparseBufferMemoryBindInfoMemory allocates memory for type C.VkSparseBufferMemoryBindInfo in C.
+// allocPhysicalDeviceInlineUniformBlockPropertiesMemory allocates memory for type C.VkPhysicalDeviceInlineUniformBlockProperties in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSparseBufferMemoryBindInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSparseBufferMemoryBindInfoValue))
+func allocPhysicalDeviceInlineUniformBlockPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceInlineUniformBlockPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSparseBufferMemoryBindInfoValue = unsafe.Sizeof([1]C.VkSparseBufferMemoryBindInfo{})
-
-// unpackSSparseMemoryBind transforms a sliced Go data structure into plain C format.
-func unpackSSparseMemoryBind(x []SparseMemoryBind) (unpacked *C.VkSparseMemoryBind, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkSparseMemoryBind) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocSparseMemoryBindMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkSparseMemoryBind)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkSparseMemoryBind)(h.Data)
- return
-}
-
-// packSSparseMemoryBind reads sliced Go data structure out from plain C format.
-func packSSparseMemoryBind(v []SparseMemoryBind, ptr0 *C.VkSparseMemoryBind) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfSparseMemoryBindValue]C.VkSparseMemoryBind)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewSparseMemoryBindRef(unsafe.Pointer(&ptr1))
- }
-}
+const sizeOfPhysicalDeviceInlineUniformBlockPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceInlineUniformBlockProperties{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SparseBufferMemoryBindInfo) Ref() *C.VkSparseBufferMemoryBindInfo {
+func (x *PhysicalDeviceInlineUniformBlockProperties) Ref() *C.VkPhysicalDeviceInlineUniformBlockProperties {
if x == nil {
return nil
}
- return x.refebcaf40c
+ return x.ref9e890111
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SparseBufferMemoryBindInfo) Free() {
- if x != nil && x.allocsebcaf40c != nil {
- x.allocsebcaf40c.(*cgoAllocMap).Free()
- x.refebcaf40c = nil
+func (x *PhysicalDeviceInlineUniformBlockProperties) Free() {
+ if x != nil && x.allocs9e890111 != nil {
+ x.allocs9e890111.(*cgoAllocMap).Free()
+ x.ref9e890111 = nil
}
}
-// NewSparseBufferMemoryBindInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceInlineUniformBlockPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSparseBufferMemoryBindInfoRef(ref unsafe.Pointer) *SparseBufferMemoryBindInfo {
+func NewPhysicalDeviceInlineUniformBlockPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceInlineUniformBlockProperties {
if ref == nil {
return nil
}
- obj := new(SparseBufferMemoryBindInfo)
- obj.refebcaf40c = (*C.VkSparseBufferMemoryBindInfo)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceInlineUniformBlockProperties)
+ obj.ref9e890111 = (*C.VkPhysicalDeviceInlineUniformBlockProperties)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SparseBufferMemoryBindInfo) PassRef() (*C.VkSparseBufferMemoryBindInfo, *cgoAllocMap) {
+func (x *PhysicalDeviceInlineUniformBlockProperties) PassRef() (*C.VkPhysicalDeviceInlineUniformBlockProperties, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refebcaf40c != nil {
- return x.refebcaf40c, nil
+ } else if x.ref9e890111 != nil {
+ return x.ref9e890111, nil
}
- memebcaf40c := allocSparseBufferMemoryBindInfoMemory(1)
- refebcaf40c := (*C.VkSparseBufferMemoryBindInfo)(memebcaf40c)
- allocsebcaf40c := new(cgoAllocMap)
- allocsebcaf40c.Add(memebcaf40c)
+ mem9e890111 := allocPhysicalDeviceInlineUniformBlockPropertiesMemory(1)
+ ref9e890111 := (*C.VkPhysicalDeviceInlineUniformBlockProperties)(mem9e890111)
+ allocs9e890111 := new(cgoAllocMap)
+ allocs9e890111.Add(mem9e890111)
- var cbuffer_allocs *cgoAllocMap
- refebcaf40c.buffer, cbuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.Buffer)), cgoAllocsUnknown
- allocsebcaf40c.Borrow(cbuffer_allocs)
+ var csType_allocs *cgoAllocMap
+ ref9e890111.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs9e890111.Borrow(csType_allocs)
- var cbindCount_allocs *cgoAllocMap
- refebcaf40c.bindCount, cbindCount_allocs = (C.uint32_t)(x.BindCount), cgoAllocsUnknown
- allocsebcaf40c.Borrow(cbindCount_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref9e890111.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs9e890111.Borrow(cpNext_allocs)
- var cpBinds_allocs *cgoAllocMap
- refebcaf40c.pBinds, cpBinds_allocs = unpackSSparseMemoryBind(x.PBinds)
- allocsebcaf40c.Borrow(cpBinds_allocs)
+ var cmaxInlineUniformBlockSize_allocs *cgoAllocMap
+ ref9e890111.maxInlineUniformBlockSize, cmaxInlineUniformBlockSize_allocs = (C.uint32_t)(x.MaxInlineUniformBlockSize), cgoAllocsUnknown
+ allocs9e890111.Borrow(cmaxInlineUniformBlockSize_allocs)
- x.refebcaf40c = refebcaf40c
- x.allocsebcaf40c = allocsebcaf40c
- return refebcaf40c, allocsebcaf40c
+ var cmaxPerStageDescriptorInlineUniformBlocks_allocs *cgoAllocMap
+ ref9e890111.maxPerStageDescriptorInlineUniformBlocks, cmaxPerStageDescriptorInlineUniformBlocks_allocs = (C.uint32_t)(x.MaxPerStageDescriptorInlineUniformBlocks), cgoAllocsUnknown
+ allocs9e890111.Borrow(cmaxPerStageDescriptorInlineUniformBlocks_allocs)
+
+ var cmaxPerStageDescriptorUpdateAfterBindInlineUniformBlocks_allocs *cgoAllocMap
+ ref9e890111.maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks, cmaxPerStageDescriptorUpdateAfterBindInlineUniformBlocks_allocs = (C.uint32_t)(x.MaxPerStageDescriptorUpdateAfterBindInlineUniformBlocks), cgoAllocsUnknown
+ allocs9e890111.Borrow(cmaxPerStageDescriptorUpdateAfterBindInlineUniformBlocks_allocs)
+
+ var cmaxDescriptorSetInlineUniformBlocks_allocs *cgoAllocMap
+ ref9e890111.maxDescriptorSetInlineUniformBlocks, cmaxDescriptorSetInlineUniformBlocks_allocs = (C.uint32_t)(x.MaxDescriptorSetInlineUniformBlocks), cgoAllocsUnknown
+ allocs9e890111.Borrow(cmaxDescriptorSetInlineUniformBlocks_allocs)
+
+ var cmaxDescriptorSetUpdateAfterBindInlineUniformBlocks_allocs *cgoAllocMap
+ ref9e890111.maxDescriptorSetUpdateAfterBindInlineUniformBlocks, cmaxDescriptorSetUpdateAfterBindInlineUniformBlocks_allocs = (C.uint32_t)(x.MaxDescriptorSetUpdateAfterBindInlineUniformBlocks), cgoAllocsUnknown
+ allocs9e890111.Borrow(cmaxDescriptorSetUpdateAfterBindInlineUniformBlocks_allocs)
+
+ x.ref9e890111 = ref9e890111
+ x.allocs9e890111 = allocs9e890111
+ return ref9e890111, allocs9e890111
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SparseBufferMemoryBindInfo) PassValue() (C.VkSparseBufferMemoryBindInfo, *cgoAllocMap) {
- if x.refebcaf40c != nil {
- return *x.refebcaf40c, nil
+func (x PhysicalDeviceInlineUniformBlockProperties) PassValue() (C.VkPhysicalDeviceInlineUniformBlockProperties, *cgoAllocMap) {
+ if x.ref9e890111 != nil {
+ return *x.ref9e890111, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -3671,90 +30854,98 @@ func (x SparseBufferMemoryBindInfo) PassValue() (C.VkSparseBufferMemoryBindInfo,
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SparseBufferMemoryBindInfo) Deref() {
- if x.refebcaf40c == nil {
+func (x *PhysicalDeviceInlineUniformBlockProperties) Deref() {
+ if x.ref9e890111 == nil {
return
}
- x.Buffer = *(*Buffer)(unsafe.Pointer(&x.refebcaf40c.buffer))
- x.BindCount = (uint32)(x.refebcaf40c.bindCount)
- packSSparseMemoryBind(x.PBinds, x.refebcaf40c.pBinds)
+ x.SType = (StructureType)(x.ref9e890111.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref9e890111.pNext))
+ x.MaxInlineUniformBlockSize = (uint32)(x.ref9e890111.maxInlineUniformBlockSize)
+ x.MaxPerStageDescriptorInlineUniformBlocks = (uint32)(x.ref9e890111.maxPerStageDescriptorInlineUniformBlocks)
+ x.MaxPerStageDescriptorUpdateAfterBindInlineUniformBlocks = (uint32)(x.ref9e890111.maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks)
+ x.MaxDescriptorSetInlineUniformBlocks = (uint32)(x.ref9e890111.maxDescriptorSetInlineUniformBlocks)
+ x.MaxDescriptorSetUpdateAfterBindInlineUniformBlocks = (uint32)(x.ref9e890111.maxDescriptorSetUpdateAfterBindInlineUniformBlocks)
}
-// allocSparseImageOpaqueMemoryBindInfoMemory allocates memory for type C.VkSparseImageOpaqueMemoryBindInfo in C.
+// allocWriteDescriptorSetInlineUniformBlockMemory allocates memory for type C.VkWriteDescriptorSetInlineUniformBlock in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSparseImageOpaqueMemoryBindInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSparseImageOpaqueMemoryBindInfoValue))
+func allocWriteDescriptorSetInlineUniformBlockMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfWriteDescriptorSetInlineUniformBlockValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSparseImageOpaqueMemoryBindInfoValue = unsafe.Sizeof([1]C.VkSparseImageOpaqueMemoryBindInfo{})
+const sizeOfWriteDescriptorSetInlineUniformBlockValue = unsafe.Sizeof([1]C.VkWriteDescriptorSetInlineUniformBlock{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SparseImageOpaqueMemoryBindInfo) Ref() *C.VkSparseImageOpaqueMemoryBindInfo {
+func (x *WriteDescriptorSetInlineUniformBlock) Ref() *C.VkWriteDescriptorSetInlineUniformBlock {
if x == nil {
return nil
}
- return x.reffb1b3d56
+ return x.ref3e98b3ff
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SparseImageOpaqueMemoryBindInfo) Free() {
- if x != nil && x.allocsfb1b3d56 != nil {
- x.allocsfb1b3d56.(*cgoAllocMap).Free()
- x.reffb1b3d56 = nil
+func (x *WriteDescriptorSetInlineUniformBlock) Free() {
+ if x != nil && x.allocs3e98b3ff != nil {
+ x.allocs3e98b3ff.(*cgoAllocMap).Free()
+ x.ref3e98b3ff = nil
}
}
-// NewSparseImageOpaqueMemoryBindInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewWriteDescriptorSetInlineUniformBlockRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSparseImageOpaqueMemoryBindInfoRef(ref unsafe.Pointer) *SparseImageOpaqueMemoryBindInfo {
+func NewWriteDescriptorSetInlineUniformBlockRef(ref unsafe.Pointer) *WriteDescriptorSetInlineUniformBlock {
if ref == nil {
return nil
}
- obj := new(SparseImageOpaqueMemoryBindInfo)
- obj.reffb1b3d56 = (*C.VkSparseImageOpaqueMemoryBindInfo)(unsafe.Pointer(ref))
+ obj := new(WriteDescriptorSetInlineUniformBlock)
+ obj.ref3e98b3ff = (*C.VkWriteDescriptorSetInlineUniformBlock)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SparseImageOpaqueMemoryBindInfo) PassRef() (*C.VkSparseImageOpaqueMemoryBindInfo, *cgoAllocMap) {
+func (x *WriteDescriptorSetInlineUniformBlock) PassRef() (*C.VkWriteDescriptorSetInlineUniformBlock, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.reffb1b3d56 != nil {
- return x.reffb1b3d56, nil
+ } else if x.ref3e98b3ff != nil {
+ return x.ref3e98b3ff, nil
}
- memfb1b3d56 := allocSparseImageOpaqueMemoryBindInfoMemory(1)
- reffb1b3d56 := (*C.VkSparseImageOpaqueMemoryBindInfo)(memfb1b3d56)
- allocsfb1b3d56 := new(cgoAllocMap)
- allocsfb1b3d56.Add(memfb1b3d56)
+ mem3e98b3ff := allocWriteDescriptorSetInlineUniformBlockMemory(1)
+ ref3e98b3ff := (*C.VkWriteDescriptorSetInlineUniformBlock)(mem3e98b3ff)
+ allocs3e98b3ff := new(cgoAllocMap)
+ allocs3e98b3ff.Add(mem3e98b3ff)
- var cimage_allocs *cgoAllocMap
- reffb1b3d56.image, cimage_allocs = *(*C.VkImage)(unsafe.Pointer(&x.Image)), cgoAllocsUnknown
- allocsfb1b3d56.Borrow(cimage_allocs)
+ var csType_allocs *cgoAllocMap
+ ref3e98b3ff.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs3e98b3ff.Borrow(csType_allocs)
- var cbindCount_allocs *cgoAllocMap
- reffb1b3d56.bindCount, cbindCount_allocs = (C.uint32_t)(x.BindCount), cgoAllocsUnknown
- allocsfb1b3d56.Borrow(cbindCount_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref3e98b3ff.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs3e98b3ff.Borrow(cpNext_allocs)
- var cpBinds_allocs *cgoAllocMap
- reffb1b3d56.pBinds, cpBinds_allocs = unpackSSparseMemoryBind(x.PBinds)
- allocsfb1b3d56.Borrow(cpBinds_allocs)
+ var cdataSize_allocs *cgoAllocMap
+ ref3e98b3ff.dataSize, cdataSize_allocs = (C.uint32_t)(x.DataSize), cgoAllocsUnknown
+ allocs3e98b3ff.Borrow(cdataSize_allocs)
- x.reffb1b3d56 = reffb1b3d56
- x.allocsfb1b3d56 = allocsfb1b3d56
- return reffb1b3d56, allocsfb1b3d56
+ var cpData_allocs *cgoAllocMap
+ ref3e98b3ff.pData, cpData_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PData)), cgoAllocsUnknown
+ allocs3e98b3ff.Borrow(cpData_allocs)
+
+ x.ref3e98b3ff = ref3e98b3ff
+ x.allocs3e98b3ff = allocs3e98b3ff
+ return ref3e98b3ff, allocs3e98b3ff
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SparseImageOpaqueMemoryBindInfo) PassValue() (C.VkSparseImageOpaqueMemoryBindInfo, *cgoAllocMap) {
- if x.reffb1b3d56 != nil {
- return *x.reffb1b3d56, nil
+func (x WriteDescriptorSetInlineUniformBlock) PassValue() (C.VkWriteDescriptorSetInlineUniformBlock, *cgoAllocMap) {
+ if x.ref3e98b3ff != nil {
+ return *x.ref3e98b3ff, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -3762,90 +30953,91 @@ func (x SparseImageOpaqueMemoryBindInfo) PassValue() (C.VkSparseImageOpaqueMemor
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SparseImageOpaqueMemoryBindInfo) Deref() {
- if x.reffb1b3d56 == nil {
+func (x *WriteDescriptorSetInlineUniformBlock) Deref() {
+ if x.ref3e98b3ff == nil {
return
}
- x.Image = *(*Image)(unsafe.Pointer(&x.reffb1b3d56.image))
- x.BindCount = (uint32)(x.reffb1b3d56.bindCount)
- packSSparseMemoryBind(x.PBinds, x.reffb1b3d56.pBinds)
+ x.SType = (StructureType)(x.ref3e98b3ff.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref3e98b3ff.pNext))
+ x.DataSize = (uint32)(x.ref3e98b3ff.dataSize)
+ x.PData = (unsafe.Pointer)(unsafe.Pointer(x.ref3e98b3ff.pData))
}
-// allocImageSubresourceMemory allocates memory for type C.VkImageSubresource in C.
+// allocDescriptorPoolInlineUniformBlockCreateInfoMemory allocates memory for type C.VkDescriptorPoolInlineUniformBlockCreateInfo in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocImageSubresourceMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageSubresourceValue))
+func allocDescriptorPoolInlineUniformBlockCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorPoolInlineUniformBlockCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfImageSubresourceValue = unsafe.Sizeof([1]C.VkImageSubresource{})
+const sizeOfDescriptorPoolInlineUniformBlockCreateInfoValue = unsafe.Sizeof([1]C.VkDescriptorPoolInlineUniformBlockCreateInfo{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ImageSubresource) Ref() *C.VkImageSubresource {
+func (x *DescriptorPoolInlineUniformBlockCreateInfo) Ref() *C.VkDescriptorPoolInlineUniformBlockCreateInfo {
if x == nil {
return nil
}
- return x.reffeaa0d8a
+ return x.refac227a39
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ImageSubresource) Free() {
- if x != nil && x.allocsfeaa0d8a != nil {
- x.allocsfeaa0d8a.(*cgoAllocMap).Free()
- x.reffeaa0d8a = nil
+func (x *DescriptorPoolInlineUniformBlockCreateInfo) Free() {
+ if x != nil && x.allocsac227a39 != nil {
+ x.allocsac227a39.(*cgoAllocMap).Free()
+ x.refac227a39 = nil
}
}
-// NewImageSubresourceRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDescriptorPoolInlineUniformBlockCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewImageSubresourceRef(ref unsafe.Pointer) *ImageSubresource {
+func NewDescriptorPoolInlineUniformBlockCreateInfoRef(ref unsafe.Pointer) *DescriptorPoolInlineUniformBlockCreateInfo {
if ref == nil {
return nil
}
- obj := new(ImageSubresource)
- obj.reffeaa0d8a = (*C.VkImageSubresource)(unsafe.Pointer(ref))
+ obj := new(DescriptorPoolInlineUniformBlockCreateInfo)
+ obj.refac227a39 = (*C.VkDescriptorPoolInlineUniformBlockCreateInfo)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ImageSubresource) PassRef() (*C.VkImageSubresource, *cgoAllocMap) {
+func (x *DescriptorPoolInlineUniformBlockCreateInfo) PassRef() (*C.VkDescriptorPoolInlineUniformBlockCreateInfo, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.reffeaa0d8a != nil {
- return x.reffeaa0d8a, nil
+ } else if x.refac227a39 != nil {
+ return x.refac227a39, nil
}
- memfeaa0d8a := allocImageSubresourceMemory(1)
- reffeaa0d8a := (*C.VkImageSubresource)(memfeaa0d8a)
- allocsfeaa0d8a := new(cgoAllocMap)
- allocsfeaa0d8a.Add(memfeaa0d8a)
+ memac227a39 := allocDescriptorPoolInlineUniformBlockCreateInfoMemory(1)
+ refac227a39 := (*C.VkDescriptorPoolInlineUniformBlockCreateInfo)(memac227a39)
+ allocsac227a39 := new(cgoAllocMap)
+ allocsac227a39.Add(memac227a39)
- var caspectMask_allocs *cgoAllocMap
- reffeaa0d8a.aspectMask, caspectMask_allocs = (C.VkImageAspectFlags)(x.AspectMask), cgoAllocsUnknown
- allocsfeaa0d8a.Borrow(caspectMask_allocs)
+ var csType_allocs *cgoAllocMap
+ refac227a39.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsac227a39.Borrow(csType_allocs)
- var cmipLevel_allocs *cgoAllocMap
- reffeaa0d8a.mipLevel, cmipLevel_allocs = (C.uint32_t)(x.MipLevel), cgoAllocsUnknown
- allocsfeaa0d8a.Borrow(cmipLevel_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refac227a39.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsac227a39.Borrow(cpNext_allocs)
- var carrayLayer_allocs *cgoAllocMap
- reffeaa0d8a.arrayLayer, carrayLayer_allocs = (C.uint32_t)(x.ArrayLayer), cgoAllocsUnknown
- allocsfeaa0d8a.Borrow(carrayLayer_allocs)
+ var cmaxInlineUniformBlockBindings_allocs *cgoAllocMap
+ refac227a39.maxInlineUniformBlockBindings, cmaxInlineUniformBlockBindings_allocs = (C.uint32_t)(x.MaxInlineUniformBlockBindings), cgoAllocsUnknown
+ allocsac227a39.Borrow(cmaxInlineUniformBlockBindings_allocs)
- x.reffeaa0d8a = reffeaa0d8a
- x.allocsfeaa0d8a = allocsfeaa0d8a
- return reffeaa0d8a, allocsfeaa0d8a
+ x.refac227a39 = refac227a39
+ x.allocsac227a39 = allocsac227a39
+ return refac227a39, allocsac227a39
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ImageSubresource) PassValue() (C.VkImageSubresource, *cgoAllocMap) {
- if x.reffeaa0d8a != nil {
- return *x.reffeaa0d8a, nil
+func (x DescriptorPoolInlineUniformBlockCreateInfo) PassValue() (C.VkDescriptorPoolInlineUniformBlockCreateInfo, *cgoAllocMap) {
+ if x.refac227a39 != nil {
+ return *x.refac227a39, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -3853,90 +31045,90 @@ func (x ImageSubresource) PassValue() (C.VkImageSubresource, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ImageSubresource) Deref() {
- if x.reffeaa0d8a == nil {
+func (x *DescriptorPoolInlineUniformBlockCreateInfo) Deref() {
+ if x.refac227a39 == nil {
return
}
- x.AspectMask = (ImageAspectFlags)(x.reffeaa0d8a.aspectMask)
- x.MipLevel = (uint32)(x.reffeaa0d8a.mipLevel)
- x.ArrayLayer = (uint32)(x.reffeaa0d8a.arrayLayer)
+ x.SType = (StructureType)(x.refac227a39.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refac227a39.pNext))
+ x.MaxInlineUniformBlockBindings = (uint32)(x.refac227a39.maxInlineUniformBlockBindings)
}
-// allocOffset3DMemory allocates memory for type C.VkOffset3D in C.
+// allocPhysicalDeviceTextureCompressionASTCHDRFeaturesMemory allocates memory for type C.VkPhysicalDeviceTextureCompressionASTCHDRFeatures in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocOffset3DMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfOffset3DValue))
+func allocPhysicalDeviceTextureCompressionASTCHDRFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceTextureCompressionASTCHDRFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfOffset3DValue = unsafe.Sizeof([1]C.VkOffset3D{})
+const sizeOfPhysicalDeviceTextureCompressionASTCHDRFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceTextureCompressionASTCHDRFeatures{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *Offset3D) Ref() *C.VkOffset3D {
+func (x *PhysicalDeviceTextureCompressionASTCHDRFeatures) Ref() *C.VkPhysicalDeviceTextureCompressionASTCHDRFeatures {
if x == nil {
return nil
}
- return x.ref2b6879c2
+ return x.refb5195968
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *Offset3D) Free() {
- if x != nil && x.allocs2b6879c2 != nil {
- x.allocs2b6879c2.(*cgoAllocMap).Free()
- x.ref2b6879c2 = nil
+func (x *PhysicalDeviceTextureCompressionASTCHDRFeatures) Free() {
+ if x != nil && x.allocsb5195968 != nil {
+ x.allocsb5195968.(*cgoAllocMap).Free()
+ x.refb5195968 = nil
}
}
-// NewOffset3DRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceTextureCompressionASTCHDRFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewOffset3DRef(ref unsafe.Pointer) *Offset3D {
+func NewPhysicalDeviceTextureCompressionASTCHDRFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceTextureCompressionASTCHDRFeatures {
if ref == nil {
return nil
}
- obj := new(Offset3D)
- obj.ref2b6879c2 = (*C.VkOffset3D)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceTextureCompressionASTCHDRFeatures)
+ obj.refb5195968 = (*C.VkPhysicalDeviceTextureCompressionASTCHDRFeatures)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *Offset3D) PassRef() (*C.VkOffset3D, *cgoAllocMap) {
+func (x *PhysicalDeviceTextureCompressionASTCHDRFeatures) PassRef() (*C.VkPhysicalDeviceTextureCompressionASTCHDRFeatures, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref2b6879c2 != nil {
- return x.ref2b6879c2, nil
+ } else if x.refb5195968 != nil {
+ return x.refb5195968, nil
}
- mem2b6879c2 := allocOffset3DMemory(1)
- ref2b6879c2 := (*C.VkOffset3D)(mem2b6879c2)
- allocs2b6879c2 := new(cgoAllocMap)
- allocs2b6879c2.Add(mem2b6879c2)
+ memb5195968 := allocPhysicalDeviceTextureCompressionASTCHDRFeaturesMemory(1)
+ refb5195968 := (*C.VkPhysicalDeviceTextureCompressionASTCHDRFeatures)(memb5195968)
+ allocsb5195968 := new(cgoAllocMap)
+ allocsb5195968.Add(memb5195968)
- var cx_allocs *cgoAllocMap
- ref2b6879c2.x, cx_allocs = (C.int32_t)(x.X), cgoAllocsUnknown
- allocs2b6879c2.Borrow(cx_allocs)
+ var csType_allocs *cgoAllocMap
+ refb5195968.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsb5195968.Borrow(csType_allocs)
- var cy_allocs *cgoAllocMap
- ref2b6879c2.y, cy_allocs = (C.int32_t)(x.Y), cgoAllocsUnknown
- allocs2b6879c2.Borrow(cy_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refb5195968.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsb5195968.Borrow(cpNext_allocs)
- var cz_allocs *cgoAllocMap
- ref2b6879c2.z, cz_allocs = (C.int32_t)(x.Z), cgoAllocsUnknown
- allocs2b6879c2.Borrow(cz_allocs)
+ var ctextureCompressionASTC_HDR_allocs *cgoAllocMap
+ refb5195968.textureCompressionASTC_HDR, ctextureCompressionASTC_HDR_allocs = (C.VkBool32)(x.TextureCompressionASTC_HDR), cgoAllocsUnknown
+ allocsb5195968.Borrow(ctextureCompressionASTC_HDR_allocs)
- x.ref2b6879c2 = ref2b6879c2
- x.allocs2b6879c2 = allocs2b6879c2
- return ref2b6879c2, allocs2b6879c2
+ x.refb5195968 = refb5195968
+ x.allocsb5195968 = allocsb5195968
+ return refb5195968, allocsb5195968
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x Offset3D) PassValue() (C.VkOffset3D, *cgoAllocMap) {
- if x.ref2b6879c2 != nil {
- return *x.ref2b6879c2, nil
+func (x PhysicalDeviceTextureCompressionASTCHDRFeatures) PassValue() (C.VkPhysicalDeviceTextureCompressionASTCHDRFeatures, *cgoAllocMap) {
+ if x.refb5195968 != nil {
+ return *x.refb5195968, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -3944,102 +31136,118 @@ func (x Offset3D) PassValue() (C.VkOffset3D, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *Offset3D) Deref() {
- if x.ref2b6879c2 == nil {
+func (x *PhysicalDeviceTextureCompressionASTCHDRFeatures) Deref() {
+ if x.refb5195968 == nil {
return
}
- x.X = (int32)(x.ref2b6879c2.x)
- x.Y = (int32)(x.ref2b6879c2.y)
- x.Z = (int32)(x.ref2b6879c2.z)
+ x.SType = (StructureType)(x.refb5195968.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb5195968.pNext))
+ x.TextureCompressionASTC_HDR = (Bool32)(x.refb5195968.textureCompressionASTC_HDR)
}
-// allocSparseImageMemoryBindMemory allocates memory for type C.VkSparseImageMemoryBind in C.
+// allocRenderingAttachmentInfoMemory allocates memory for type C.VkRenderingAttachmentInfo in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSparseImageMemoryBindMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSparseImageMemoryBindValue))
+func allocRenderingAttachmentInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfRenderingAttachmentInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSparseImageMemoryBindValue = unsafe.Sizeof([1]C.VkSparseImageMemoryBind{})
+const sizeOfRenderingAttachmentInfoValue = unsafe.Sizeof([1]C.VkRenderingAttachmentInfo{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SparseImageMemoryBind) Ref() *C.VkSparseImageMemoryBind {
+func (x *RenderingAttachmentInfo) Ref() *C.VkRenderingAttachmentInfo {
if x == nil {
return nil
}
- return x.ref41b516d7
+ return x.ref62eee071
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SparseImageMemoryBind) Free() {
- if x != nil && x.allocs41b516d7 != nil {
- x.allocs41b516d7.(*cgoAllocMap).Free()
- x.ref41b516d7 = nil
+func (x *RenderingAttachmentInfo) Free() {
+ if x != nil && x.allocs62eee071 != nil {
+ x.allocs62eee071.(*cgoAllocMap).Free()
+ x.ref62eee071 = nil
}
}
-// NewSparseImageMemoryBindRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewRenderingAttachmentInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSparseImageMemoryBindRef(ref unsafe.Pointer) *SparseImageMemoryBind {
+func NewRenderingAttachmentInfoRef(ref unsafe.Pointer) *RenderingAttachmentInfo {
if ref == nil {
return nil
}
- obj := new(SparseImageMemoryBind)
- obj.ref41b516d7 = (*C.VkSparseImageMemoryBind)(unsafe.Pointer(ref))
+ obj := new(RenderingAttachmentInfo)
+ obj.ref62eee071 = (*C.VkRenderingAttachmentInfo)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SparseImageMemoryBind) PassRef() (*C.VkSparseImageMemoryBind, *cgoAllocMap) {
+func (x *RenderingAttachmentInfo) PassRef() (*C.VkRenderingAttachmentInfo, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref41b516d7 != nil {
- return x.ref41b516d7, nil
+ } else if x.ref62eee071 != nil {
+ return x.ref62eee071, nil
}
- mem41b516d7 := allocSparseImageMemoryBindMemory(1)
- ref41b516d7 := (*C.VkSparseImageMemoryBind)(mem41b516d7)
- allocs41b516d7 := new(cgoAllocMap)
- allocs41b516d7.Add(mem41b516d7)
+ mem62eee071 := allocRenderingAttachmentInfoMemory(1)
+ ref62eee071 := (*C.VkRenderingAttachmentInfo)(mem62eee071)
+ allocs62eee071 := new(cgoAllocMap)
+ allocs62eee071.Add(mem62eee071)
- var csubresource_allocs *cgoAllocMap
- ref41b516d7.subresource, csubresource_allocs = x.Subresource.PassValue()
- allocs41b516d7.Borrow(csubresource_allocs)
+ var csType_allocs *cgoAllocMap
+ ref62eee071.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs62eee071.Borrow(csType_allocs)
- var coffset_allocs *cgoAllocMap
- ref41b516d7.offset, coffset_allocs = x.Offset.PassValue()
- allocs41b516d7.Borrow(coffset_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref62eee071.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs62eee071.Borrow(cpNext_allocs)
- var cextent_allocs *cgoAllocMap
- ref41b516d7.extent, cextent_allocs = x.Extent.PassValue()
- allocs41b516d7.Borrow(cextent_allocs)
+ var cimageView_allocs *cgoAllocMap
+ ref62eee071.imageView, cimageView_allocs = *(*C.VkImageView)(unsafe.Pointer(&x.ImageView)), cgoAllocsUnknown
+ allocs62eee071.Borrow(cimageView_allocs)
- var cmemory_allocs *cgoAllocMap
- ref41b516d7.memory, cmemory_allocs = *(*C.VkDeviceMemory)(unsafe.Pointer(&x.Memory)), cgoAllocsUnknown
- allocs41b516d7.Borrow(cmemory_allocs)
+ var cimageLayout_allocs *cgoAllocMap
+ ref62eee071.imageLayout, cimageLayout_allocs = (C.VkImageLayout)(x.ImageLayout), cgoAllocsUnknown
+ allocs62eee071.Borrow(cimageLayout_allocs)
- var cmemoryOffset_allocs *cgoAllocMap
- ref41b516d7.memoryOffset, cmemoryOffset_allocs = (C.VkDeviceSize)(x.MemoryOffset), cgoAllocsUnknown
- allocs41b516d7.Borrow(cmemoryOffset_allocs)
+ var cresolveMode_allocs *cgoAllocMap
+ ref62eee071.resolveMode, cresolveMode_allocs = (C.VkResolveModeFlagBits)(x.ResolveMode), cgoAllocsUnknown
+ allocs62eee071.Borrow(cresolveMode_allocs)
- var cflags_allocs *cgoAllocMap
- ref41b516d7.flags, cflags_allocs = (C.VkSparseMemoryBindFlags)(x.Flags), cgoAllocsUnknown
- allocs41b516d7.Borrow(cflags_allocs)
+ var cresolveImageView_allocs *cgoAllocMap
+ ref62eee071.resolveImageView, cresolveImageView_allocs = *(*C.VkImageView)(unsafe.Pointer(&x.ResolveImageView)), cgoAllocsUnknown
+ allocs62eee071.Borrow(cresolveImageView_allocs)
- x.ref41b516d7 = ref41b516d7
- x.allocs41b516d7 = allocs41b516d7
- return ref41b516d7, allocs41b516d7
+ var cresolveImageLayout_allocs *cgoAllocMap
+ ref62eee071.resolveImageLayout, cresolveImageLayout_allocs = (C.VkImageLayout)(x.ResolveImageLayout), cgoAllocsUnknown
+ allocs62eee071.Borrow(cresolveImageLayout_allocs)
+
+ var cloadOp_allocs *cgoAllocMap
+ ref62eee071.loadOp, cloadOp_allocs = (C.VkAttachmentLoadOp)(x.LoadOp), cgoAllocsUnknown
+ allocs62eee071.Borrow(cloadOp_allocs)
+
+ var cstoreOp_allocs *cgoAllocMap
+ ref62eee071.storeOp, cstoreOp_allocs = (C.VkAttachmentStoreOp)(x.StoreOp), cgoAllocsUnknown
+ allocs62eee071.Borrow(cstoreOp_allocs)
+
+ var cclearValue_allocs *cgoAllocMap
+ ref62eee071.clearValue, cclearValue_allocs = *(*C.VkClearValue)(unsafe.Pointer(&x.ClearValue)), cgoAllocsUnknown
+ allocs62eee071.Borrow(cclearValue_allocs)
+
+ x.ref62eee071 = ref62eee071
+ x.allocs62eee071 = allocs62eee071
+ return ref62eee071, allocs62eee071
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SparseImageMemoryBind) PassValue() (C.VkSparseImageMemoryBind, *cgoAllocMap) {
- if x.ref41b516d7 != nil {
- return *x.ref41b516d7, nil
+func (x RenderingAttachmentInfo) PassValue() (C.VkRenderingAttachmentInfo, *cgoAllocMap) {
+ if x.ref62eee071 != nil {
+ return *x.ref62eee071, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -4047,131 +31255,163 @@ func (x SparseImageMemoryBind) PassValue() (C.VkSparseImageMemoryBind, *cgoAlloc
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SparseImageMemoryBind) Deref() {
- if x.ref41b516d7 == nil {
+func (x *RenderingAttachmentInfo) Deref() {
+ if x.ref62eee071 == nil {
return
}
- x.Subresource = *NewImageSubresourceRef(unsafe.Pointer(&x.ref41b516d7.subresource))
- x.Offset = *NewOffset3DRef(unsafe.Pointer(&x.ref41b516d7.offset))
- x.Extent = *NewExtent3DRef(unsafe.Pointer(&x.ref41b516d7.extent))
- x.Memory = *(*DeviceMemory)(unsafe.Pointer(&x.ref41b516d7.memory))
- x.MemoryOffset = (DeviceSize)(x.ref41b516d7.memoryOffset)
- x.Flags = (SparseMemoryBindFlags)(x.ref41b516d7.flags)
+ x.SType = (StructureType)(x.ref62eee071.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref62eee071.pNext))
+ x.ImageView = *(*ImageView)(unsafe.Pointer(&x.ref62eee071.imageView))
+ x.ImageLayout = (ImageLayout)(x.ref62eee071.imageLayout)
+ x.ResolveMode = (ResolveModeFlagBits)(x.ref62eee071.resolveMode)
+ x.ResolveImageView = *(*ImageView)(unsafe.Pointer(&x.ref62eee071.resolveImageView))
+ x.ResolveImageLayout = (ImageLayout)(x.ref62eee071.resolveImageLayout)
+ x.LoadOp = (AttachmentLoadOp)(x.ref62eee071.loadOp)
+ x.StoreOp = (AttachmentStoreOp)(x.ref62eee071.storeOp)
+ x.ClearValue = *(*ClearValue)(unsafe.Pointer(&x.ref62eee071.clearValue))
}
-// allocSparseImageMemoryBindInfoMemory allocates memory for type C.VkSparseImageMemoryBindInfo in C.
+// allocRenderingInfoMemory allocates memory for type C.VkRenderingInfo in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSparseImageMemoryBindInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSparseImageMemoryBindInfoValue))
+func allocRenderingInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfRenderingInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSparseImageMemoryBindInfoValue = unsafe.Sizeof([1]C.VkSparseImageMemoryBindInfo{})
+const sizeOfRenderingInfoValue = unsafe.Sizeof([1]C.VkRenderingInfo{})
-// unpackSSparseImageMemoryBind transforms a sliced Go data structure into plain C format.
-func unpackSSparseImageMemoryBind(x []SparseImageMemoryBind) (unpacked *C.VkSparseImageMemoryBind, allocs *cgoAllocMap) {
+// unpackSRenderingAttachmentInfo transforms a sliced Go data structure into plain C format.
+func unpackSRenderingAttachmentInfo(x []RenderingAttachmentInfo) (unpacked *C.VkRenderingAttachmentInfo, allocs *cgoAllocMap) {
if x == nil {
return nil, nil
}
allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkSparseImageMemoryBind) {
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkRenderingAttachmentInfo) {
go allocs.Free()
})
len0 := len(x)
- mem0 := allocSparseImageMemoryBindMemory(len0)
+ mem0 := allocRenderingAttachmentInfoMemory(len0)
allocs.Add(mem0)
h0 := &sliceHeader{
Data: mem0,
Cap: len0,
Len: len0,
}
- v0 := *(*[]C.VkSparseImageMemoryBind)(unsafe.Pointer(h0))
+ v0 := *(*[]C.VkRenderingAttachmentInfo)(unsafe.Pointer(h0))
for i0 := range x {
allocs0 := new(cgoAllocMap)
v0[i0], allocs0 = x[i0].PassValue()
allocs.Borrow(allocs0)
}
h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkSparseImageMemoryBind)(h.Data)
+ unpacked = (*C.VkRenderingAttachmentInfo)(h.Data)
return
}
-// packSSparseImageMemoryBind reads sliced Go data structure out from plain C format.
-func packSSparseImageMemoryBind(v []SparseImageMemoryBind, ptr0 *C.VkSparseImageMemoryBind) {
+// packSRenderingAttachmentInfo reads sliced Go data structure out from plain C format.
+func packSRenderingAttachmentInfo(v []RenderingAttachmentInfo, ptr0 *C.VkRenderingAttachmentInfo) {
const m = 0x7fffffff
for i0 := range v {
- ptr1 := (*(*[m / sizeOfSparseImageMemoryBindValue]C.VkSparseImageMemoryBind)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewSparseImageMemoryBindRef(unsafe.Pointer(&ptr1))
+ ptr1 := (*(*[m / sizeOfRenderingAttachmentInfoValue]C.VkRenderingAttachmentInfo)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewRenderingAttachmentInfoRef(unsafe.Pointer(&ptr1))
}
}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SparseImageMemoryBindInfo) Ref() *C.VkSparseImageMemoryBindInfo {
+func (x *RenderingInfo) Ref() *C.VkRenderingInfo {
if x == nil {
return nil
}
- return x.ref50faeb70
+ return x.refe60d8c7
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SparseImageMemoryBindInfo) Free() {
- if x != nil && x.allocs50faeb70 != nil {
- x.allocs50faeb70.(*cgoAllocMap).Free()
- x.ref50faeb70 = nil
+func (x *RenderingInfo) Free() {
+ if x != nil && x.allocse60d8c7 != nil {
+ x.allocse60d8c7.(*cgoAllocMap).Free()
+ x.refe60d8c7 = nil
}
}
-// NewSparseImageMemoryBindInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewRenderingInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSparseImageMemoryBindInfoRef(ref unsafe.Pointer) *SparseImageMemoryBindInfo {
+func NewRenderingInfoRef(ref unsafe.Pointer) *RenderingInfo {
if ref == nil {
return nil
}
- obj := new(SparseImageMemoryBindInfo)
- obj.ref50faeb70 = (*C.VkSparseImageMemoryBindInfo)(unsafe.Pointer(ref))
+ obj := new(RenderingInfo)
+ obj.refe60d8c7 = (*C.VkRenderingInfo)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SparseImageMemoryBindInfo) PassRef() (*C.VkSparseImageMemoryBindInfo, *cgoAllocMap) {
+func (x *RenderingInfo) PassRef() (*C.VkRenderingInfo, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref50faeb70 != nil {
- return x.ref50faeb70, nil
+ } else if x.refe60d8c7 != nil {
+ return x.refe60d8c7, nil
}
- mem50faeb70 := allocSparseImageMemoryBindInfoMemory(1)
- ref50faeb70 := (*C.VkSparseImageMemoryBindInfo)(mem50faeb70)
- allocs50faeb70 := new(cgoAllocMap)
- allocs50faeb70.Add(mem50faeb70)
+ meme60d8c7 := allocRenderingInfoMemory(1)
+ refe60d8c7 := (*C.VkRenderingInfo)(meme60d8c7)
+ allocse60d8c7 := new(cgoAllocMap)
+ allocse60d8c7.Add(meme60d8c7)
- var cimage_allocs *cgoAllocMap
- ref50faeb70.image, cimage_allocs = *(*C.VkImage)(unsafe.Pointer(&x.Image)), cgoAllocsUnknown
- allocs50faeb70.Borrow(cimage_allocs)
+ var csType_allocs *cgoAllocMap
+ refe60d8c7.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocse60d8c7.Borrow(csType_allocs)
- var cbindCount_allocs *cgoAllocMap
- ref50faeb70.bindCount, cbindCount_allocs = (C.uint32_t)(x.BindCount), cgoAllocsUnknown
- allocs50faeb70.Borrow(cbindCount_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refe60d8c7.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocse60d8c7.Borrow(cpNext_allocs)
- var cpBinds_allocs *cgoAllocMap
- ref50faeb70.pBinds, cpBinds_allocs = unpackSSparseImageMemoryBind(x.PBinds)
- allocs50faeb70.Borrow(cpBinds_allocs)
+ var cflags_allocs *cgoAllocMap
+ refe60d8c7.flags, cflags_allocs = (C.VkRenderingFlags)(x.Flags), cgoAllocsUnknown
+ allocse60d8c7.Borrow(cflags_allocs)
- x.ref50faeb70 = ref50faeb70
- x.allocs50faeb70 = allocs50faeb70
- return ref50faeb70, allocs50faeb70
+ var crenderArea_allocs *cgoAllocMap
+ refe60d8c7.renderArea, crenderArea_allocs = x.RenderArea.PassValue()
+ allocse60d8c7.Borrow(crenderArea_allocs)
+
+ var clayerCount_allocs *cgoAllocMap
+ refe60d8c7.layerCount, clayerCount_allocs = (C.uint32_t)(x.LayerCount), cgoAllocsUnknown
+ allocse60d8c7.Borrow(clayerCount_allocs)
+
+ var cviewMask_allocs *cgoAllocMap
+ refe60d8c7.viewMask, cviewMask_allocs = (C.uint32_t)(x.ViewMask), cgoAllocsUnknown
+ allocse60d8c7.Borrow(cviewMask_allocs)
+
+ var ccolorAttachmentCount_allocs *cgoAllocMap
+ refe60d8c7.colorAttachmentCount, ccolorAttachmentCount_allocs = (C.uint32_t)(x.ColorAttachmentCount), cgoAllocsUnknown
+ allocse60d8c7.Borrow(ccolorAttachmentCount_allocs)
+
+ var cpColorAttachments_allocs *cgoAllocMap
+ refe60d8c7.pColorAttachments, cpColorAttachments_allocs = unpackSRenderingAttachmentInfo(x.PColorAttachments)
+ allocse60d8c7.Borrow(cpColorAttachments_allocs)
+
+ var cpDepthAttachment_allocs *cgoAllocMap
+ refe60d8c7.pDepthAttachment, cpDepthAttachment_allocs = unpackSRenderingAttachmentInfo(x.PDepthAttachment)
+ allocse60d8c7.Borrow(cpDepthAttachment_allocs)
+
+ var cpStencilAttachment_allocs *cgoAllocMap
+ refe60d8c7.pStencilAttachment, cpStencilAttachment_allocs = unpackSRenderingAttachmentInfo(x.PStencilAttachment)
+ allocse60d8c7.Borrow(cpStencilAttachment_allocs)
+
+ x.refe60d8c7 = refe60d8c7
+ x.allocse60d8c7 = allocse60d8c7
+ return refe60d8c7, allocse60d8c7
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SparseImageMemoryBindInfo) PassValue() (C.VkSparseImageMemoryBindInfo, *cgoAllocMap) {
- if x.ref50faeb70 != nil {
- return *x.ref50faeb70, nil
+func (x RenderingInfo) PassValue() (C.VkRenderingInfo, *cgoAllocMap) {
+ if x.refe60d8c7 != nil {
+ return *x.refe60d8c7, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -4179,240 +31419,327 @@ func (x SparseImageMemoryBindInfo) PassValue() (C.VkSparseImageMemoryBindInfo, *
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SparseImageMemoryBindInfo) Deref() {
- if x.ref50faeb70 == nil {
+func (x *RenderingInfo) Deref() {
+ if x.refe60d8c7 == nil {
return
}
- x.Image = *(*Image)(unsafe.Pointer(&x.ref50faeb70.image))
- x.BindCount = (uint32)(x.ref50faeb70.bindCount)
- packSSparseImageMemoryBind(x.PBinds, x.ref50faeb70.pBinds)
+ x.SType = (StructureType)(x.refe60d8c7.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refe60d8c7.pNext))
+ x.Flags = (RenderingFlags)(x.refe60d8c7.flags)
+ x.RenderArea = *NewRect2DRef(unsafe.Pointer(&x.refe60d8c7.renderArea))
+ x.LayerCount = (uint32)(x.refe60d8c7.layerCount)
+ x.ViewMask = (uint32)(x.refe60d8c7.viewMask)
+ x.ColorAttachmentCount = (uint32)(x.refe60d8c7.colorAttachmentCount)
+ packSRenderingAttachmentInfo(x.PColorAttachments, x.refe60d8c7.pColorAttachments)
+ packSRenderingAttachmentInfo(x.PDepthAttachment, x.refe60d8c7.pDepthAttachment)
+ packSRenderingAttachmentInfo(x.PStencilAttachment, x.refe60d8c7.pStencilAttachment)
}
-// allocBindSparseInfoMemory allocates memory for type C.VkBindSparseInfo in C.
+// allocPipelineRenderingCreateInfoMemory allocates memory for type C.VkPipelineRenderingCreateInfo in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocBindSparseInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBindSparseInfoValue))
+func allocPipelineRenderingCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineRenderingCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfBindSparseInfoValue = unsafe.Sizeof([1]C.VkBindSparseInfo{})
+const sizeOfPipelineRenderingCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineRenderingCreateInfo{})
-// unpackSSparseBufferMemoryBindInfo transforms a sliced Go data structure into plain C format.
-func unpackSSparseBufferMemoryBindInfo(x []SparseBufferMemoryBindInfo) (unpacked *C.VkSparseBufferMemoryBindInfo, allocs *cgoAllocMap) {
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PipelineRenderingCreateInfo) Ref() *C.VkPipelineRenderingCreateInfo {
if x == nil {
- return nil, nil
+ return nil
}
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkSparseBufferMemoryBindInfo) {
- go allocs.Free()
- })
+ return x.ref2f948283
+}
- len0 := len(x)
- mem0 := allocSparseBufferMemoryBindInfoMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PipelineRenderingCreateInfo) Free() {
+ if x != nil && x.allocs2f948283 != nil {
+ x.allocs2f948283.(*cgoAllocMap).Free()
+ x.ref2f948283 = nil
}
- v0 := *(*[]C.VkSparseBufferMemoryBindInfo)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
+}
+
+// NewPipelineRenderingCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPipelineRenderingCreateInfoRef(ref unsafe.Pointer) *PipelineRenderingCreateInfo {
+ if ref == nil {
+ return nil
}
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkSparseBufferMemoryBindInfo)(h.Data)
- return
+ obj := new(PipelineRenderingCreateInfo)
+ obj.ref2f948283 = (*C.VkPipelineRenderingCreateInfo)(unsafe.Pointer(ref))
+ return obj
}
-// unpackSSparseImageOpaqueMemoryBindInfo transforms a sliced Go data structure into plain C format.
-func unpackSSparseImageOpaqueMemoryBindInfo(x []SparseImageOpaqueMemoryBindInfo) (unpacked *C.VkSparseImageOpaqueMemoryBindInfo, allocs *cgoAllocMap) {
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PipelineRenderingCreateInfo) PassRef() (*C.VkPipelineRenderingCreateInfo, *cgoAllocMap) {
if x == nil {
return nil, nil
+ } else if x.ref2f948283 != nil {
+ return x.ref2f948283, nil
}
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkSparseImageOpaqueMemoryBindInfo) {
- go allocs.Free()
- })
+ mem2f948283 := allocPipelineRenderingCreateInfoMemory(1)
+ ref2f948283 := (*C.VkPipelineRenderingCreateInfo)(mem2f948283)
+ allocs2f948283 := new(cgoAllocMap)
+ allocs2f948283.Add(mem2f948283)
- len0 := len(x)
- mem0 := allocSparseImageOpaqueMemoryBindInfoMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
+ var csType_allocs *cgoAllocMap
+ ref2f948283.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs2f948283.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref2f948283.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs2f948283.Borrow(cpNext_allocs)
+
+ var cviewMask_allocs *cgoAllocMap
+ ref2f948283.viewMask, cviewMask_allocs = (C.uint32_t)(x.ViewMask), cgoAllocsUnknown
+ allocs2f948283.Borrow(cviewMask_allocs)
+
+ var ccolorAttachmentCount_allocs *cgoAllocMap
+ ref2f948283.colorAttachmentCount, ccolorAttachmentCount_allocs = (C.uint32_t)(x.ColorAttachmentCount), cgoAllocsUnknown
+ allocs2f948283.Borrow(ccolorAttachmentCount_allocs)
+
+ var cpColorAttachmentFormats_allocs *cgoAllocMap
+ ref2f948283.pColorAttachmentFormats, cpColorAttachmentFormats_allocs = (*C.VkFormat)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PColorAttachmentFormats)).Data)), cgoAllocsUnknown
+ allocs2f948283.Borrow(cpColorAttachmentFormats_allocs)
+
+ var cdepthAttachmentFormat_allocs *cgoAllocMap
+ ref2f948283.depthAttachmentFormat, cdepthAttachmentFormat_allocs = (C.VkFormat)(x.DepthAttachmentFormat), cgoAllocsUnknown
+ allocs2f948283.Borrow(cdepthAttachmentFormat_allocs)
+
+ var cstencilAttachmentFormat_allocs *cgoAllocMap
+ ref2f948283.stencilAttachmentFormat, cstencilAttachmentFormat_allocs = (C.VkFormat)(x.StencilAttachmentFormat), cgoAllocsUnknown
+ allocs2f948283.Borrow(cstencilAttachmentFormat_allocs)
+
+ x.ref2f948283 = ref2f948283
+ x.allocs2f948283 = allocs2f948283
+ return ref2f948283, allocs2f948283
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PipelineRenderingCreateInfo) PassValue() (C.VkPipelineRenderingCreateInfo, *cgoAllocMap) {
+ if x.ref2f948283 != nil {
+ return *x.ref2f948283, nil
}
- v0 := *(*[]C.VkSparseImageOpaqueMemoryBindInfo)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PipelineRenderingCreateInfo) Deref() {
+ if x.ref2f948283 == nil {
+ return
}
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkSparseImageOpaqueMemoryBindInfo)(h.Data)
- return
+ x.SType = (StructureType)(x.ref2f948283.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref2f948283.pNext))
+ x.ViewMask = (uint32)(x.ref2f948283.viewMask)
+ x.ColorAttachmentCount = (uint32)(x.ref2f948283.colorAttachmentCount)
+ hxf882e98 := (*sliceHeader)(unsafe.Pointer(&x.PColorAttachmentFormats))
+ hxf882e98.Data = unsafe.Pointer(x.ref2f948283.pColorAttachmentFormats)
+ hxf882e98.Cap = 0x7fffffff
+ // hxf882e98.Len = ?
+
+ x.DepthAttachmentFormat = (Format)(x.ref2f948283.depthAttachmentFormat)
+ x.StencilAttachmentFormat = (Format)(x.ref2f948283.stencilAttachmentFormat)
}
-// unpackSSparseImageMemoryBindInfo transforms a sliced Go data structure into plain C format.
-func unpackSSparseImageMemoryBindInfo(x []SparseImageMemoryBindInfo) (unpacked *C.VkSparseImageMemoryBindInfo, allocs *cgoAllocMap) {
+// allocPhysicalDeviceDynamicRenderingFeaturesMemory allocates memory for type C.VkPhysicalDeviceDynamicRenderingFeatures in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceDynamicRenderingFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceDynamicRenderingFeaturesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPhysicalDeviceDynamicRenderingFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceDynamicRenderingFeatures{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceDynamicRenderingFeatures) Ref() *C.VkPhysicalDeviceDynamicRenderingFeatures {
if x == nil {
- return nil, nil
+ return nil
}
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkSparseImageMemoryBindInfo) {
- go allocs.Free()
- })
+ return x.refa724d875
+}
- len0 := len(x)
- mem0 := allocSparseImageMemoryBindInfoMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceDynamicRenderingFeatures) Free() {
+ if x != nil && x.allocsa724d875 != nil {
+ x.allocsa724d875.(*cgoAllocMap).Free()
+ x.refa724d875 = nil
}
- v0 := *(*[]C.VkSparseImageMemoryBindInfo)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
+}
+
+// NewPhysicalDeviceDynamicRenderingFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceDynamicRenderingFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceDynamicRenderingFeatures {
+ if ref == nil {
+ return nil
}
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkSparseImageMemoryBindInfo)(h.Data)
- return
+ obj := new(PhysicalDeviceDynamicRenderingFeatures)
+ obj.refa724d875 = (*C.VkPhysicalDeviceDynamicRenderingFeatures)(unsafe.Pointer(ref))
+ return obj
}
-// packSSparseBufferMemoryBindInfo reads sliced Go data structure out from plain C format.
-func packSSparseBufferMemoryBindInfo(v []SparseBufferMemoryBindInfo, ptr0 *C.VkSparseBufferMemoryBindInfo) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfSparseBufferMemoryBindInfoValue]C.VkSparseBufferMemoryBindInfo)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewSparseBufferMemoryBindInfoRef(unsafe.Pointer(&ptr1))
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceDynamicRenderingFeatures) PassRef() (*C.VkPhysicalDeviceDynamicRenderingFeatures, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refa724d875 != nil {
+ return x.refa724d875, nil
}
+ mema724d875 := allocPhysicalDeviceDynamicRenderingFeaturesMemory(1)
+ refa724d875 := (*C.VkPhysicalDeviceDynamicRenderingFeatures)(mema724d875)
+ allocsa724d875 := new(cgoAllocMap)
+ allocsa724d875.Add(mema724d875)
+
+ var csType_allocs *cgoAllocMap
+ refa724d875.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsa724d875.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refa724d875.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsa724d875.Borrow(cpNext_allocs)
+
+ var cdynamicRendering_allocs *cgoAllocMap
+ refa724d875.dynamicRendering, cdynamicRendering_allocs = (C.VkBool32)(x.DynamicRendering), cgoAllocsUnknown
+ allocsa724d875.Borrow(cdynamicRendering_allocs)
+
+ x.refa724d875 = refa724d875
+ x.allocsa724d875 = allocsa724d875
+ return refa724d875, allocsa724d875
+
}
-// packSSparseImageOpaqueMemoryBindInfo reads sliced Go data structure out from plain C format.
-func packSSparseImageOpaqueMemoryBindInfo(v []SparseImageOpaqueMemoryBindInfo, ptr0 *C.VkSparseImageOpaqueMemoryBindInfo) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfSparseImageOpaqueMemoryBindInfoValue]C.VkSparseImageOpaqueMemoryBindInfo)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewSparseImageOpaqueMemoryBindInfoRef(unsafe.Pointer(&ptr1))
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceDynamicRenderingFeatures) PassValue() (C.VkPhysicalDeviceDynamicRenderingFeatures, *cgoAllocMap) {
+ if x.refa724d875 != nil {
+ return *x.refa724d875, nil
}
+ ref, allocs := x.PassRef()
+ return *ref, allocs
}
-// packSSparseImageMemoryBindInfo reads sliced Go data structure out from plain C format.
-func packSSparseImageMemoryBindInfo(v []SparseImageMemoryBindInfo, ptr0 *C.VkSparseImageMemoryBindInfo) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfSparseImageMemoryBindInfoValue]C.VkSparseImageMemoryBindInfo)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewSparseImageMemoryBindInfoRef(unsafe.Pointer(&ptr1))
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceDynamicRenderingFeatures) Deref() {
+ if x.refa724d875 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refa724d875.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa724d875.pNext))
+ x.DynamicRendering = (Bool32)(x.refa724d875.dynamicRendering)
+}
+
+// allocCommandBufferInheritanceRenderingInfoMemory allocates memory for type C.VkCommandBufferInheritanceRenderingInfo in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocCommandBufferInheritanceRenderingInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCommandBufferInheritanceRenderingInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
}
+ return mem
}
+const sizeOfCommandBufferInheritanceRenderingInfoValue = unsafe.Sizeof([1]C.VkCommandBufferInheritanceRenderingInfo{})
+
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *BindSparseInfo) Ref() *C.VkBindSparseInfo {
+func (x *CommandBufferInheritanceRenderingInfo) Ref() *C.VkCommandBufferInheritanceRenderingInfo {
if x == nil {
return nil
}
- return x.refb0cbe910
+ return x.reff704c204
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *BindSparseInfo) Free() {
- if x != nil && x.allocsb0cbe910 != nil {
- x.allocsb0cbe910.(*cgoAllocMap).Free()
- x.refb0cbe910 = nil
+func (x *CommandBufferInheritanceRenderingInfo) Free() {
+ if x != nil && x.allocsf704c204 != nil {
+ x.allocsf704c204.(*cgoAllocMap).Free()
+ x.reff704c204 = nil
}
}
-// NewBindSparseInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewCommandBufferInheritanceRenderingInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewBindSparseInfoRef(ref unsafe.Pointer) *BindSparseInfo {
+func NewCommandBufferInheritanceRenderingInfoRef(ref unsafe.Pointer) *CommandBufferInheritanceRenderingInfo {
if ref == nil {
return nil
}
- obj := new(BindSparseInfo)
- obj.refb0cbe910 = (*C.VkBindSparseInfo)(unsafe.Pointer(ref))
+ obj := new(CommandBufferInheritanceRenderingInfo)
+ obj.reff704c204 = (*C.VkCommandBufferInheritanceRenderingInfo)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *BindSparseInfo) PassRef() (*C.VkBindSparseInfo, *cgoAllocMap) {
+func (x *CommandBufferInheritanceRenderingInfo) PassRef() (*C.VkCommandBufferInheritanceRenderingInfo, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refb0cbe910 != nil {
- return x.refb0cbe910, nil
+ } else if x.reff704c204 != nil {
+ return x.reff704c204, nil
}
- memb0cbe910 := allocBindSparseInfoMemory(1)
- refb0cbe910 := (*C.VkBindSparseInfo)(memb0cbe910)
- allocsb0cbe910 := new(cgoAllocMap)
- allocsb0cbe910.Add(memb0cbe910)
+ memf704c204 := allocCommandBufferInheritanceRenderingInfoMemory(1)
+ reff704c204 := (*C.VkCommandBufferInheritanceRenderingInfo)(memf704c204)
+ allocsf704c204 := new(cgoAllocMap)
+ allocsf704c204.Add(memf704c204)
var csType_allocs *cgoAllocMap
- refb0cbe910.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsb0cbe910.Borrow(csType_allocs)
+ reff704c204.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsf704c204.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refb0cbe910.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsb0cbe910.Borrow(cpNext_allocs)
+ reff704c204.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsf704c204.Borrow(cpNext_allocs)
- var cwaitSemaphoreCount_allocs *cgoAllocMap
- refb0cbe910.waitSemaphoreCount, cwaitSemaphoreCount_allocs = (C.uint32_t)(x.WaitSemaphoreCount), cgoAllocsUnknown
- allocsb0cbe910.Borrow(cwaitSemaphoreCount_allocs)
-
- var cpWaitSemaphores_allocs *cgoAllocMap
- refb0cbe910.pWaitSemaphores, cpWaitSemaphores_allocs = (*C.VkSemaphore)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PWaitSemaphores)).Data)), cgoAllocsUnknown
- allocsb0cbe910.Borrow(cpWaitSemaphores_allocs)
-
- var cbufferBindCount_allocs *cgoAllocMap
- refb0cbe910.bufferBindCount, cbufferBindCount_allocs = (C.uint32_t)(x.BufferBindCount), cgoAllocsUnknown
- allocsb0cbe910.Borrow(cbufferBindCount_allocs)
-
- var cpBufferBinds_allocs *cgoAllocMap
- refb0cbe910.pBufferBinds, cpBufferBinds_allocs = unpackSSparseBufferMemoryBindInfo(x.PBufferBinds)
- allocsb0cbe910.Borrow(cpBufferBinds_allocs)
+ var cflags_allocs *cgoAllocMap
+ reff704c204.flags, cflags_allocs = (C.VkRenderingFlags)(x.Flags), cgoAllocsUnknown
+ allocsf704c204.Borrow(cflags_allocs)
- var cimageOpaqueBindCount_allocs *cgoAllocMap
- refb0cbe910.imageOpaqueBindCount, cimageOpaqueBindCount_allocs = (C.uint32_t)(x.ImageOpaqueBindCount), cgoAllocsUnknown
- allocsb0cbe910.Borrow(cimageOpaqueBindCount_allocs)
+ var cviewMask_allocs *cgoAllocMap
+ reff704c204.viewMask, cviewMask_allocs = (C.uint32_t)(x.ViewMask), cgoAllocsUnknown
+ allocsf704c204.Borrow(cviewMask_allocs)
- var cpImageOpaqueBinds_allocs *cgoAllocMap
- refb0cbe910.pImageOpaqueBinds, cpImageOpaqueBinds_allocs = unpackSSparseImageOpaqueMemoryBindInfo(x.PImageOpaqueBinds)
- allocsb0cbe910.Borrow(cpImageOpaqueBinds_allocs)
+ var ccolorAttachmentCount_allocs *cgoAllocMap
+ reff704c204.colorAttachmentCount, ccolorAttachmentCount_allocs = (C.uint32_t)(x.ColorAttachmentCount), cgoAllocsUnknown
+ allocsf704c204.Borrow(ccolorAttachmentCount_allocs)
- var cimageBindCount_allocs *cgoAllocMap
- refb0cbe910.imageBindCount, cimageBindCount_allocs = (C.uint32_t)(x.ImageBindCount), cgoAllocsUnknown
- allocsb0cbe910.Borrow(cimageBindCount_allocs)
+ var cpColorAttachmentFormats_allocs *cgoAllocMap
+ reff704c204.pColorAttachmentFormats, cpColorAttachmentFormats_allocs = (*C.VkFormat)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PColorAttachmentFormats)).Data)), cgoAllocsUnknown
+ allocsf704c204.Borrow(cpColorAttachmentFormats_allocs)
- var cpImageBinds_allocs *cgoAllocMap
- refb0cbe910.pImageBinds, cpImageBinds_allocs = unpackSSparseImageMemoryBindInfo(x.PImageBinds)
- allocsb0cbe910.Borrow(cpImageBinds_allocs)
+ var cdepthAttachmentFormat_allocs *cgoAllocMap
+ reff704c204.depthAttachmentFormat, cdepthAttachmentFormat_allocs = (C.VkFormat)(x.DepthAttachmentFormat), cgoAllocsUnknown
+ allocsf704c204.Borrow(cdepthAttachmentFormat_allocs)
- var csignalSemaphoreCount_allocs *cgoAllocMap
- refb0cbe910.signalSemaphoreCount, csignalSemaphoreCount_allocs = (C.uint32_t)(x.SignalSemaphoreCount), cgoAllocsUnknown
- allocsb0cbe910.Borrow(csignalSemaphoreCount_allocs)
+ var cstencilAttachmentFormat_allocs *cgoAllocMap
+ reff704c204.stencilAttachmentFormat, cstencilAttachmentFormat_allocs = (C.VkFormat)(x.StencilAttachmentFormat), cgoAllocsUnknown
+ allocsf704c204.Borrow(cstencilAttachmentFormat_allocs)
- var cpSignalSemaphores_allocs *cgoAllocMap
- refb0cbe910.pSignalSemaphores, cpSignalSemaphores_allocs = (*C.VkSemaphore)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PSignalSemaphores)).Data)), cgoAllocsUnknown
- allocsb0cbe910.Borrow(cpSignalSemaphores_allocs)
+ var crasterizationSamples_allocs *cgoAllocMap
+ reff704c204.rasterizationSamples, crasterizationSamples_allocs = (C.VkSampleCountFlagBits)(x.RasterizationSamples), cgoAllocsUnknown
+ allocsf704c204.Borrow(crasterizationSamples_allocs)
- x.refb0cbe910 = refb0cbe910
- x.allocsb0cbe910 = allocsb0cbe910
- return refb0cbe910, allocsb0cbe910
+ x.reff704c204 = reff704c204
+ x.allocsf704c204 = allocsf704c204
+ return reff704c204, allocsf704c204
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x BindSparseInfo) PassValue() (C.VkBindSparseInfo, *cgoAllocMap) {
- if x.refb0cbe910 != nil {
- return *x.refb0cbe910, nil
+func (x CommandBufferInheritanceRenderingInfo) PassValue() (C.VkCommandBufferInheritanceRenderingInfo, *cgoAllocMap) {
+ if x.reff704c204 != nil {
+ return *x.reff704c204, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -4420,107 +31747,100 @@ func (x BindSparseInfo) PassValue() (C.VkBindSparseInfo, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *BindSparseInfo) Deref() {
- if x.refb0cbe910 == nil {
+func (x *CommandBufferInheritanceRenderingInfo) Deref() {
+ if x.reff704c204 == nil {
return
}
- x.SType = (StructureType)(x.refb0cbe910.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb0cbe910.pNext))
- x.WaitSemaphoreCount = (uint32)(x.refb0cbe910.waitSemaphoreCount)
- hxfa3f05c := (*sliceHeader)(unsafe.Pointer(&x.PWaitSemaphores))
- hxfa3f05c.Data = unsafe.Pointer(x.refb0cbe910.pWaitSemaphores)
- hxfa3f05c.Cap = 0x7fffffff
- // hxfa3f05c.Len = ?
-
- x.BufferBindCount = (uint32)(x.refb0cbe910.bufferBindCount)
- packSSparseBufferMemoryBindInfo(x.PBufferBinds, x.refb0cbe910.pBufferBinds)
- x.ImageOpaqueBindCount = (uint32)(x.refb0cbe910.imageOpaqueBindCount)
- packSSparseImageOpaqueMemoryBindInfo(x.PImageOpaqueBinds, x.refb0cbe910.pImageOpaqueBinds)
- x.ImageBindCount = (uint32)(x.refb0cbe910.imageBindCount)
- packSSparseImageMemoryBindInfo(x.PImageBinds, x.refb0cbe910.pImageBinds)
- x.SignalSemaphoreCount = (uint32)(x.refb0cbe910.signalSemaphoreCount)
- hxf0d18b7 := (*sliceHeader)(unsafe.Pointer(&x.PSignalSemaphores))
- hxf0d18b7.Data = unsafe.Pointer(x.refb0cbe910.pSignalSemaphores)
- hxf0d18b7.Cap = 0x7fffffff
- // hxf0d18b7.Len = ?
+ x.SType = (StructureType)(x.reff704c204.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff704c204.pNext))
+ x.Flags = (RenderingFlags)(x.reff704c204.flags)
+ x.ViewMask = (uint32)(x.reff704c204.viewMask)
+ x.ColorAttachmentCount = (uint32)(x.reff704c204.colorAttachmentCount)
+ hxf992404 := (*sliceHeader)(unsafe.Pointer(&x.PColorAttachmentFormats))
+ hxf992404.Data = unsafe.Pointer(x.reff704c204.pColorAttachmentFormats)
+ hxf992404.Cap = 0x7fffffff
+ // hxf992404.Len = ?
+ x.DepthAttachmentFormat = (Format)(x.reff704c204.depthAttachmentFormat)
+ x.StencilAttachmentFormat = (Format)(x.reff704c204.stencilAttachmentFormat)
+ x.RasterizationSamples = (SampleCountFlagBits)(x.reff704c204.rasterizationSamples)
}
-// allocFenceCreateInfoMemory allocates memory for type C.VkFenceCreateInfo in C.
+// allocPhysicalDeviceShaderIntegerDotProductFeaturesMemory allocates memory for type C.VkPhysicalDeviceShaderIntegerDotProductFeatures in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocFenceCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfFenceCreateInfoValue))
+func allocPhysicalDeviceShaderIntegerDotProductFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceShaderIntegerDotProductFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfFenceCreateInfoValue = unsafe.Sizeof([1]C.VkFenceCreateInfo{})
+const sizeOfPhysicalDeviceShaderIntegerDotProductFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceShaderIntegerDotProductFeatures{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *FenceCreateInfo) Ref() *C.VkFenceCreateInfo {
+func (x *PhysicalDeviceShaderIntegerDotProductFeatures) Ref() *C.VkPhysicalDeviceShaderIntegerDotProductFeatures {
if x == nil {
return nil
}
- return x.refb8ff4840
+ return x.ref776faa9c
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *FenceCreateInfo) Free() {
- if x != nil && x.allocsb8ff4840 != nil {
- x.allocsb8ff4840.(*cgoAllocMap).Free()
- x.refb8ff4840 = nil
+func (x *PhysicalDeviceShaderIntegerDotProductFeatures) Free() {
+ if x != nil && x.allocs776faa9c != nil {
+ x.allocs776faa9c.(*cgoAllocMap).Free()
+ x.ref776faa9c = nil
}
}
-// NewFenceCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceShaderIntegerDotProductFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewFenceCreateInfoRef(ref unsafe.Pointer) *FenceCreateInfo {
+func NewPhysicalDeviceShaderIntegerDotProductFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceShaderIntegerDotProductFeatures {
if ref == nil {
return nil
}
- obj := new(FenceCreateInfo)
- obj.refb8ff4840 = (*C.VkFenceCreateInfo)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceShaderIntegerDotProductFeatures)
+ obj.ref776faa9c = (*C.VkPhysicalDeviceShaderIntegerDotProductFeatures)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *FenceCreateInfo) PassRef() (*C.VkFenceCreateInfo, *cgoAllocMap) {
+func (x *PhysicalDeviceShaderIntegerDotProductFeatures) PassRef() (*C.VkPhysicalDeviceShaderIntegerDotProductFeatures, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refb8ff4840 != nil {
- return x.refb8ff4840, nil
+ } else if x.ref776faa9c != nil {
+ return x.ref776faa9c, nil
}
- memb8ff4840 := allocFenceCreateInfoMemory(1)
- refb8ff4840 := (*C.VkFenceCreateInfo)(memb8ff4840)
- allocsb8ff4840 := new(cgoAllocMap)
- allocsb8ff4840.Add(memb8ff4840)
+ mem776faa9c := allocPhysicalDeviceShaderIntegerDotProductFeaturesMemory(1)
+ ref776faa9c := (*C.VkPhysicalDeviceShaderIntegerDotProductFeatures)(mem776faa9c)
+ allocs776faa9c := new(cgoAllocMap)
+ allocs776faa9c.Add(mem776faa9c)
var csType_allocs *cgoAllocMap
- refb8ff4840.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsb8ff4840.Borrow(csType_allocs)
+ ref776faa9c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs776faa9c.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refb8ff4840.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsb8ff4840.Borrow(cpNext_allocs)
+ ref776faa9c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs776faa9c.Borrow(cpNext_allocs)
- var cflags_allocs *cgoAllocMap
- refb8ff4840.flags, cflags_allocs = (C.VkFenceCreateFlags)(x.Flags), cgoAllocsUnknown
- allocsb8ff4840.Borrow(cflags_allocs)
+ var cshaderIntegerDotProduct_allocs *cgoAllocMap
+ ref776faa9c.shaderIntegerDotProduct, cshaderIntegerDotProduct_allocs = (C.VkBool32)(x.ShaderIntegerDotProduct), cgoAllocsUnknown
+ allocs776faa9c.Borrow(cshaderIntegerDotProduct_allocs)
- x.refb8ff4840 = refb8ff4840
- x.allocsb8ff4840 = allocsb8ff4840
- return refb8ff4840, allocsb8ff4840
+ x.ref776faa9c = ref776faa9c
+ x.allocs776faa9c = allocs776faa9c
+ return ref776faa9c, allocs776faa9c
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x FenceCreateInfo) PassValue() (C.VkFenceCreateInfo, *cgoAllocMap) {
- if x.refb8ff4840 != nil {
- return *x.refb8ff4840, nil
+func (x PhysicalDeviceShaderIntegerDotProductFeatures) PassValue() (C.VkPhysicalDeviceShaderIntegerDotProductFeatures, *cgoAllocMap) {
+ if x.ref776faa9c != nil {
+ return *x.ref776faa9c, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -4528,90 +31848,206 @@ func (x FenceCreateInfo) PassValue() (C.VkFenceCreateInfo, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *FenceCreateInfo) Deref() {
- if x.refb8ff4840 == nil {
+func (x *PhysicalDeviceShaderIntegerDotProductFeatures) Deref() {
+ if x.ref776faa9c == nil {
return
}
- x.SType = (StructureType)(x.refb8ff4840.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb8ff4840.pNext))
- x.Flags = (FenceCreateFlags)(x.refb8ff4840.flags)
+ x.SType = (StructureType)(x.ref776faa9c.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref776faa9c.pNext))
+ x.ShaderIntegerDotProduct = (Bool32)(x.ref776faa9c.shaderIntegerDotProduct)
}
-// allocSemaphoreCreateInfoMemory allocates memory for type C.VkSemaphoreCreateInfo in C.
+// allocPhysicalDeviceShaderIntegerDotProductPropertiesMemory allocates memory for type C.VkPhysicalDeviceShaderIntegerDotProductProperties in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSemaphoreCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSemaphoreCreateInfoValue))
+func allocPhysicalDeviceShaderIntegerDotProductPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceShaderIntegerDotProductPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSemaphoreCreateInfoValue = unsafe.Sizeof([1]C.VkSemaphoreCreateInfo{})
+const sizeOfPhysicalDeviceShaderIntegerDotProductPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceShaderIntegerDotProductProperties{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SemaphoreCreateInfo) Ref() *C.VkSemaphoreCreateInfo {
+func (x *PhysicalDeviceShaderIntegerDotProductProperties) Ref() *C.VkPhysicalDeviceShaderIntegerDotProductProperties {
if x == nil {
return nil
}
- return x.reff130cd2b
+ return x.ref82bea9e5
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SemaphoreCreateInfo) Free() {
- if x != nil && x.allocsf130cd2b != nil {
- x.allocsf130cd2b.(*cgoAllocMap).Free()
- x.reff130cd2b = nil
+func (x *PhysicalDeviceShaderIntegerDotProductProperties) Free() {
+ if x != nil && x.allocs82bea9e5 != nil {
+ x.allocs82bea9e5.(*cgoAllocMap).Free()
+ x.ref82bea9e5 = nil
}
}
-// NewSemaphoreCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceShaderIntegerDotProductPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSemaphoreCreateInfoRef(ref unsafe.Pointer) *SemaphoreCreateInfo {
+func NewPhysicalDeviceShaderIntegerDotProductPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceShaderIntegerDotProductProperties {
if ref == nil {
return nil
}
- obj := new(SemaphoreCreateInfo)
- obj.reff130cd2b = (*C.VkSemaphoreCreateInfo)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceShaderIntegerDotProductProperties)
+ obj.ref82bea9e5 = (*C.VkPhysicalDeviceShaderIntegerDotProductProperties)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SemaphoreCreateInfo) PassRef() (*C.VkSemaphoreCreateInfo, *cgoAllocMap) {
+func (x *PhysicalDeviceShaderIntegerDotProductProperties) PassRef() (*C.VkPhysicalDeviceShaderIntegerDotProductProperties, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.reff130cd2b != nil {
- return x.reff130cd2b, nil
+ } else if x.ref82bea9e5 != nil {
+ return x.ref82bea9e5, nil
}
- memf130cd2b := allocSemaphoreCreateInfoMemory(1)
- reff130cd2b := (*C.VkSemaphoreCreateInfo)(memf130cd2b)
- allocsf130cd2b := new(cgoAllocMap)
- allocsf130cd2b.Add(memf130cd2b)
+ mem82bea9e5 := allocPhysicalDeviceShaderIntegerDotProductPropertiesMemory(1)
+ ref82bea9e5 := (*C.VkPhysicalDeviceShaderIntegerDotProductProperties)(mem82bea9e5)
+ allocs82bea9e5 := new(cgoAllocMap)
+ allocs82bea9e5.Add(mem82bea9e5)
var csType_allocs *cgoAllocMap
- reff130cd2b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsf130cd2b.Borrow(csType_allocs)
+ ref82bea9e5.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- reff130cd2b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsf130cd2b.Borrow(cpNext_allocs)
+ ref82bea9e5.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cpNext_allocs)
- var cflags_allocs *cgoAllocMap
- reff130cd2b.flags, cflags_allocs = (C.VkSemaphoreCreateFlags)(x.Flags), cgoAllocsUnknown
- allocsf130cd2b.Borrow(cflags_allocs)
+ var cintegerDotProduct8BitUnsignedAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProduct8BitUnsignedAccelerated, cintegerDotProduct8BitUnsignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct8BitUnsignedAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProduct8BitUnsignedAccelerated_allocs)
- x.reff130cd2b = reff130cd2b
- x.allocsf130cd2b = allocsf130cd2b
- return reff130cd2b, allocsf130cd2b
+ var cintegerDotProduct8BitSignedAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProduct8BitSignedAccelerated, cintegerDotProduct8BitSignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct8BitSignedAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProduct8BitSignedAccelerated_allocs)
+
+ var cintegerDotProduct8BitMixedSignednessAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProduct8BitMixedSignednessAccelerated, cintegerDotProduct8BitMixedSignednessAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct8BitMixedSignednessAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProduct8BitMixedSignednessAccelerated_allocs)
+
+ var cintegerDotProduct4x8BitPackedUnsignedAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProduct4x8BitPackedUnsignedAccelerated, cintegerDotProduct4x8BitPackedUnsignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct4x8BitPackedUnsignedAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProduct4x8BitPackedUnsignedAccelerated_allocs)
+
+ var cintegerDotProduct4x8BitPackedSignedAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProduct4x8BitPackedSignedAccelerated, cintegerDotProduct4x8BitPackedSignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct4x8BitPackedSignedAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProduct4x8BitPackedSignedAccelerated_allocs)
+
+ var cintegerDotProduct4x8BitPackedMixedSignednessAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProduct4x8BitPackedMixedSignednessAccelerated, cintegerDotProduct4x8BitPackedMixedSignednessAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct4x8BitPackedMixedSignednessAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProduct4x8BitPackedMixedSignednessAccelerated_allocs)
+
+ var cintegerDotProduct16BitUnsignedAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProduct16BitUnsignedAccelerated, cintegerDotProduct16BitUnsignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct16BitUnsignedAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProduct16BitUnsignedAccelerated_allocs)
+
+ var cintegerDotProduct16BitSignedAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProduct16BitSignedAccelerated, cintegerDotProduct16BitSignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct16BitSignedAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProduct16BitSignedAccelerated_allocs)
+
+ var cintegerDotProduct16BitMixedSignednessAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProduct16BitMixedSignednessAccelerated, cintegerDotProduct16BitMixedSignednessAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct16BitMixedSignednessAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProduct16BitMixedSignednessAccelerated_allocs)
+
+ var cintegerDotProduct32BitUnsignedAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProduct32BitUnsignedAccelerated, cintegerDotProduct32BitUnsignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct32BitUnsignedAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProduct32BitUnsignedAccelerated_allocs)
+
+ var cintegerDotProduct32BitSignedAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProduct32BitSignedAccelerated, cintegerDotProduct32BitSignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct32BitSignedAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProduct32BitSignedAccelerated_allocs)
+
+ var cintegerDotProduct32BitMixedSignednessAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProduct32BitMixedSignednessAccelerated, cintegerDotProduct32BitMixedSignednessAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct32BitMixedSignednessAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProduct32BitMixedSignednessAccelerated_allocs)
+
+ var cintegerDotProduct64BitUnsignedAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProduct64BitUnsignedAccelerated, cintegerDotProduct64BitUnsignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct64BitUnsignedAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProduct64BitUnsignedAccelerated_allocs)
+
+ var cintegerDotProduct64BitSignedAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProduct64BitSignedAccelerated, cintegerDotProduct64BitSignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct64BitSignedAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProduct64BitSignedAccelerated_allocs)
+
+ var cintegerDotProduct64BitMixedSignednessAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProduct64BitMixedSignednessAccelerated, cintegerDotProduct64BitMixedSignednessAccelerated_allocs = (C.VkBool32)(x.IntegerDotProduct64BitMixedSignednessAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProduct64BitMixedSignednessAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating8BitUnsignedAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProductAccumulatingSaturating8BitUnsignedAccelerated, cintegerDotProductAccumulatingSaturating8BitUnsignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating8BitUnsignedAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProductAccumulatingSaturating8BitUnsignedAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating8BitSignedAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProductAccumulatingSaturating8BitSignedAccelerated, cintegerDotProductAccumulatingSaturating8BitSignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating8BitSignedAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProductAccumulatingSaturating8BitSignedAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated, cintegerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated, cintegerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated, cintegerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated, cintegerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating16BitUnsignedAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProductAccumulatingSaturating16BitUnsignedAccelerated, cintegerDotProductAccumulatingSaturating16BitUnsignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating16BitUnsignedAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProductAccumulatingSaturating16BitUnsignedAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating16BitSignedAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProductAccumulatingSaturating16BitSignedAccelerated, cintegerDotProductAccumulatingSaturating16BitSignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating16BitSignedAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProductAccumulatingSaturating16BitSignedAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated, cintegerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating32BitUnsignedAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProductAccumulatingSaturating32BitUnsignedAccelerated, cintegerDotProductAccumulatingSaturating32BitUnsignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating32BitUnsignedAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProductAccumulatingSaturating32BitUnsignedAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating32BitSignedAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProductAccumulatingSaturating32BitSignedAccelerated, cintegerDotProductAccumulatingSaturating32BitSignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating32BitSignedAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProductAccumulatingSaturating32BitSignedAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated, cintegerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating64BitUnsignedAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProductAccumulatingSaturating64BitUnsignedAccelerated, cintegerDotProductAccumulatingSaturating64BitUnsignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating64BitUnsignedAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProductAccumulatingSaturating64BitUnsignedAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating64BitSignedAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProductAccumulatingSaturating64BitSignedAccelerated, cintegerDotProductAccumulatingSaturating64BitSignedAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating64BitSignedAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProductAccumulatingSaturating64BitSignedAccelerated_allocs)
+
+ var cintegerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated_allocs *cgoAllocMap
+ ref82bea9e5.integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated, cintegerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated_allocs = (C.VkBool32)(x.IntegerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated), cgoAllocsUnknown
+ allocs82bea9e5.Borrow(cintegerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated_allocs)
+
+ x.ref82bea9e5 = ref82bea9e5
+ x.allocs82bea9e5 = allocs82bea9e5
+ return ref82bea9e5, allocs82bea9e5
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SemaphoreCreateInfo) PassValue() (C.VkSemaphoreCreateInfo, *cgoAllocMap) {
- if x.reff130cd2b != nil {
- return *x.reff130cd2b, nil
+func (x PhysicalDeviceShaderIntegerDotProductProperties) PassValue() (C.VkPhysicalDeviceShaderIntegerDotProductProperties, *cgoAllocMap) {
+ if x.ref82bea9e5 != nil {
+ return *x.ref82bea9e5, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -4619,90 +32055,131 @@ func (x SemaphoreCreateInfo) PassValue() (C.VkSemaphoreCreateInfo, *cgoAllocMap)
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SemaphoreCreateInfo) Deref() {
- if x.reff130cd2b == nil {
+func (x *PhysicalDeviceShaderIntegerDotProductProperties) Deref() {
+ if x.ref82bea9e5 == nil {
return
}
- x.SType = (StructureType)(x.reff130cd2b.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff130cd2b.pNext))
- x.Flags = (SemaphoreCreateFlags)(x.reff130cd2b.flags)
-}
-
-// allocEventCreateInfoMemory allocates memory for type C.VkEventCreateInfo in C.
+ x.SType = (StructureType)(x.ref82bea9e5.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref82bea9e5.pNext))
+ x.IntegerDotProduct8BitUnsignedAccelerated = (Bool32)(x.ref82bea9e5.integerDotProduct8BitUnsignedAccelerated)
+ x.IntegerDotProduct8BitSignedAccelerated = (Bool32)(x.ref82bea9e5.integerDotProduct8BitSignedAccelerated)
+ x.IntegerDotProduct8BitMixedSignednessAccelerated = (Bool32)(x.ref82bea9e5.integerDotProduct8BitMixedSignednessAccelerated)
+ x.IntegerDotProduct4x8BitPackedUnsignedAccelerated = (Bool32)(x.ref82bea9e5.integerDotProduct4x8BitPackedUnsignedAccelerated)
+ x.IntegerDotProduct4x8BitPackedSignedAccelerated = (Bool32)(x.ref82bea9e5.integerDotProduct4x8BitPackedSignedAccelerated)
+ x.IntegerDotProduct4x8BitPackedMixedSignednessAccelerated = (Bool32)(x.ref82bea9e5.integerDotProduct4x8BitPackedMixedSignednessAccelerated)
+ x.IntegerDotProduct16BitUnsignedAccelerated = (Bool32)(x.ref82bea9e5.integerDotProduct16BitUnsignedAccelerated)
+ x.IntegerDotProduct16BitSignedAccelerated = (Bool32)(x.ref82bea9e5.integerDotProduct16BitSignedAccelerated)
+ x.IntegerDotProduct16BitMixedSignednessAccelerated = (Bool32)(x.ref82bea9e5.integerDotProduct16BitMixedSignednessAccelerated)
+ x.IntegerDotProduct32BitUnsignedAccelerated = (Bool32)(x.ref82bea9e5.integerDotProduct32BitUnsignedAccelerated)
+ x.IntegerDotProduct32BitSignedAccelerated = (Bool32)(x.ref82bea9e5.integerDotProduct32BitSignedAccelerated)
+ x.IntegerDotProduct32BitMixedSignednessAccelerated = (Bool32)(x.ref82bea9e5.integerDotProduct32BitMixedSignednessAccelerated)
+ x.IntegerDotProduct64BitUnsignedAccelerated = (Bool32)(x.ref82bea9e5.integerDotProduct64BitUnsignedAccelerated)
+ x.IntegerDotProduct64BitSignedAccelerated = (Bool32)(x.ref82bea9e5.integerDotProduct64BitSignedAccelerated)
+ x.IntegerDotProduct64BitMixedSignednessAccelerated = (Bool32)(x.ref82bea9e5.integerDotProduct64BitMixedSignednessAccelerated)
+ x.IntegerDotProductAccumulatingSaturating8BitUnsignedAccelerated = (Bool32)(x.ref82bea9e5.integerDotProductAccumulatingSaturating8BitUnsignedAccelerated)
+ x.IntegerDotProductAccumulatingSaturating8BitSignedAccelerated = (Bool32)(x.ref82bea9e5.integerDotProductAccumulatingSaturating8BitSignedAccelerated)
+ x.IntegerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated = (Bool32)(x.ref82bea9e5.integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated)
+ x.IntegerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated = (Bool32)(x.ref82bea9e5.integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated)
+ x.IntegerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated = (Bool32)(x.ref82bea9e5.integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated)
+ x.IntegerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated = (Bool32)(x.ref82bea9e5.integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated)
+ x.IntegerDotProductAccumulatingSaturating16BitUnsignedAccelerated = (Bool32)(x.ref82bea9e5.integerDotProductAccumulatingSaturating16BitUnsignedAccelerated)
+ x.IntegerDotProductAccumulatingSaturating16BitSignedAccelerated = (Bool32)(x.ref82bea9e5.integerDotProductAccumulatingSaturating16BitSignedAccelerated)
+ x.IntegerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated = (Bool32)(x.ref82bea9e5.integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated)
+ x.IntegerDotProductAccumulatingSaturating32BitUnsignedAccelerated = (Bool32)(x.ref82bea9e5.integerDotProductAccumulatingSaturating32BitUnsignedAccelerated)
+ x.IntegerDotProductAccumulatingSaturating32BitSignedAccelerated = (Bool32)(x.ref82bea9e5.integerDotProductAccumulatingSaturating32BitSignedAccelerated)
+ x.IntegerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated = (Bool32)(x.ref82bea9e5.integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated)
+ x.IntegerDotProductAccumulatingSaturating64BitUnsignedAccelerated = (Bool32)(x.ref82bea9e5.integerDotProductAccumulatingSaturating64BitUnsignedAccelerated)
+ x.IntegerDotProductAccumulatingSaturating64BitSignedAccelerated = (Bool32)(x.ref82bea9e5.integerDotProductAccumulatingSaturating64BitSignedAccelerated)
+ x.IntegerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated = (Bool32)(x.ref82bea9e5.integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated)
+}
+
+// allocPhysicalDeviceTexelBufferAlignmentPropertiesMemory allocates memory for type C.VkPhysicalDeviceTexelBufferAlignmentProperties in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocEventCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfEventCreateInfoValue))
+func allocPhysicalDeviceTexelBufferAlignmentPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceTexelBufferAlignmentPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfEventCreateInfoValue = unsafe.Sizeof([1]C.VkEventCreateInfo{})
+const sizeOfPhysicalDeviceTexelBufferAlignmentPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceTexelBufferAlignmentProperties{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *EventCreateInfo) Ref() *C.VkEventCreateInfo {
+func (x *PhysicalDeviceTexelBufferAlignmentProperties) Ref() *C.VkPhysicalDeviceTexelBufferAlignmentProperties {
if x == nil {
return nil
}
- return x.refa54f9ec8
+ return x.ref52cb68df
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *EventCreateInfo) Free() {
- if x != nil && x.allocsa54f9ec8 != nil {
- x.allocsa54f9ec8.(*cgoAllocMap).Free()
- x.refa54f9ec8 = nil
+func (x *PhysicalDeviceTexelBufferAlignmentProperties) Free() {
+ if x != nil && x.allocs52cb68df != nil {
+ x.allocs52cb68df.(*cgoAllocMap).Free()
+ x.ref52cb68df = nil
}
}
-// NewEventCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceTexelBufferAlignmentPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewEventCreateInfoRef(ref unsafe.Pointer) *EventCreateInfo {
+func NewPhysicalDeviceTexelBufferAlignmentPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceTexelBufferAlignmentProperties {
if ref == nil {
return nil
}
- obj := new(EventCreateInfo)
- obj.refa54f9ec8 = (*C.VkEventCreateInfo)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceTexelBufferAlignmentProperties)
+ obj.ref52cb68df = (*C.VkPhysicalDeviceTexelBufferAlignmentProperties)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *EventCreateInfo) PassRef() (*C.VkEventCreateInfo, *cgoAllocMap) {
+func (x *PhysicalDeviceTexelBufferAlignmentProperties) PassRef() (*C.VkPhysicalDeviceTexelBufferAlignmentProperties, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refa54f9ec8 != nil {
- return x.refa54f9ec8, nil
+ } else if x.ref52cb68df != nil {
+ return x.ref52cb68df, nil
}
- mema54f9ec8 := allocEventCreateInfoMemory(1)
- refa54f9ec8 := (*C.VkEventCreateInfo)(mema54f9ec8)
- allocsa54f9ec8 := new(cgoAllocMap)
- allocsa54f9ec8.Add(mema54f9ec8)
+ mem52cb68df := allocPhysicalDeviceTexelBufferAlignmentPropertiesMemory(1)
+ ref52cb68df := (*C.VkPhysicalDeviceTexelBufferAlignmentProperties)(mem52cb68df)
+ allocs52cb68df := new(cgoAllocMap)
+ allocs52cb68df.Add(mem52cb68df)
var csType_allocs *cgoAllocMap
- refa54f9ec8.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsa54f9ec8.Borrow(csType_allocs)
+ ref52cb68df.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs52cb68df.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refa54f9ec8.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsa54f9ec8.Borrow(cpNext_allocs)
+ ref52cb68df.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs52cb68df.Borrow(cpNext_allocs)
- var cflags_allocs *cgoAllocMap
- refa54f9ec8.flags, cflags_allocs = (C.VkEventCreateFlags)(x.Flags), cgoAllocsUnknown
- allocsa54f9ec8.Borrow(cflags_allocs)
+ var cstorageTexelBufferOffsetAlignmentBytes_allocs *cgoAllocMap
+ ref52cb68df.storageTexelBufferOffsetAlignmentBytes, cstorageTexelBufferOffsetAlignmentBytes_allocs = (C.VkDeviceSize)(x.StorageTexelBufferOffsetAlignmentBytes), cgoAllocsUnknown
+ allocs52cb68df.Borrow(cstorageTexelBufferOffsetAlignmentBytes_allocs)
- x.refa54f9ec8 = refa54f9ec8
- x.allocsa54f9ec8 = allocsa54f9ec8
- return refa54f9ec8, allocsa54f9ec8
+ var cstorageTexelBufferOffsetSingleTexelAlignment_allocs *cgoAllocMap
+ ref52cb68df.storageTexelBufferOffsetSingleTexelAlignment, cstorageTexelBufferOffsetSingleTexelAlignment_allocs = (C.VkBool32)(x.StorageTexelBufferOffsetSingleTexelAlignment), cgoAllocsUnknown
+ allocs52cb68df.Borrow(cstorageTexelBufferOffsetSingleTexelAlignment_allocs)
+
+ var cuniformTexelBufferOffsetAlignmentBytes_allocs *cgoAllocMap
+ ref52cb68df.uniformTexelBufferOffsetAlignmentBytes, cuniformTexelBufferOffsetAlignmentBytes_allocs = (C.VkDeviceSize)(x.UniformTexelBufferOffsetAlignmentBytes), cgoAllocsUnknown
+ allocs52cb68df.Borrow(cuniformTexelBufferOffsetAlignmentBytes_allocs)
+
+ var cuniformTexelBufferOffsetSingleTexelAlignment_allocs *cgoAllocMap
+ ref52cb68df.uniformTexelBufferOffsetSingleTexelAlignment, cuniformTexelBufferOffsetSingleTexelAlignment_allocs = (C.VkBool32)(x.UniformTexelBufferOffsetSingleTexelAlignment), cgoAllocsUnknown
+ allocs52cb68df.Borrow(cuniformTexelBufferOffsetSingleTexelAlignment_allocs)
+
+ x.ref52cb68df = ref52cb68df
+ x.allocs52cb68df = allocs52cb68df
+ return ref52cb68df, allocs52cb68df
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x EventCreateInfo) PassValue() (C.VkEventCreateInfo, *cgoAllocMap) {
- if x.refa54f9ec8 != nil {
- return *x.refa54f9ec8, nil
+func (x PhysicalDeviceTexelBufferAlignmentProperties) PassValue() (C.VkPhysicalDeviceTexelBufferAlignmentProperties, *cgoAllocMap) {
+ if x.ref52cb68df != nil {
+ return *x.ref52cb68df, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -4710,102 +32187,101 @@ func (x EventCreateInfo) PassValue() (C.VkEventCreateInfo, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *EventCreateInfo) Deref() {
- if x.refa54f9ec8 == nil {
+func (x *PhysicalDeviceTexelBufferAlignmentProperties) Deref() {
+ if x.ref52cb68df == nil {
return
}
- x.SType = (StructureType)(x.refa54f9ec8.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa54f9ec8.pNext))
- x.Flags = (EventCreateFlags)(x.refa54f9ec8.flags)
+ x.SType = (StructureType)(x.ref52cb68df.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref52cb68df.pNext))
+ x.StorageTexelBufferOffsetAlignmentBytes = (DeviceSize)(x.ref52cb68df.storageTexelBufferOffsetAlignmentBytes)
+ x.StorageTexelBufferOffsetSingleTexelAlignment = (Bool32)(x.ref52cb68df.storageTexelBufferOffsetSingleTexelAlignment)
+ x.UniformTexelBufferOffsetAlignmentBytes = (DeviceSize)(x.ref52cb68df.uniformTexelBufferOffsetAlignmentBytes)
+ x.UniformTexelBufferOffsetSingleTexelAlignment = (Bool32)(x.ref52cb68df.uniformTexelBufferOffsetSingleTexelAlignment)
}
-// allocQueryPoolCreateInfoMemory allocates memory for type C.VkQueryPoolCreateInfo in C.
+// allocFormatProperties3Memory allocates memory for type C.VkFormatProperties3 in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocQueryPoolCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfQueryPoolCreateInfoValue))
+func allocFormatProperties3Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfFormatProperties3Value))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfQueryPoolCreateInfoValue = unsafe.Sizeof([1]C.VkQueryPoolCreateInfo{})
+const sizeOfFormatProperties3Value = unsafe.Sizeof([1]C.VkFormatProperties3{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *QueryPoolCreateInfo) Ref() *C.VkQueryPoolCreateInfo {
+func (x *FormatProperties3) Ref() *C.VkFormatProperties3 {
if x == nil {
return nil
}
- return x.ref85dfcd4a
+ return x.refaac19fbc
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *QueryPoolCreateInfo) Free() {
- if x != nil && x.allocs85dfcd4a != nil {
- x.allocs85dfcd4a.(*cgoAllocMap).Free()
- x.ref85dfcd4a = nil
+func (x *FormatProperties3) Free() {
+ if x != nil && x.allocsaac19fbc != nil {
+ x.allocsaac19fbc.(*cgoAllocMap).Free()
+ x.refaac19fbc = nil
}
}
-// NewQueryPoolCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewFormatProperties3Ref creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewQueryPoolCreateInfoRef(ref unsafe.Pointer) *QueryPoolCreateInfo {
+func NewFormatProperties3Ref(ref unsafe.Pointer) *FormatProperties3 {
if ref == nil {
return nil
}
- obj := new(QueryPoolCreateInfo)
- obj.ref85dfcd4a = (*C.VkQueryPoolCreateInfo)(unsafe.Pointer(ref))
+ obj := new(FormatProperties3)
+ obj.refaac19fbc = (*C.VkFormatProperties3)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *QueryPoolCreateInfo) PassRef() (*C.VkQueryPoolCreateInfo, *cgoAllocMap) {
+func (x *FormatProperties3) PassRef() (*C.VkFormatProperties3, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref85dfcd4a != nil {
- return x.ref85dfcd4a, nil
+ } else if x.refaac19fbc != nil {
+ return x.refaac19fbc, nil
}
- mem85dfcd4a := allocQueryPoolCreateInfoMemory(1)
- ref85dfcd4a := (*C.VkQueryPoolCreateInfo)(mem85dfcd4a)
- allocs85dfcd4a := new(cgoAllocMap)
- allocs85dfcd4a.Add(mem85dfcd4a)
+ memaac19fbc := allocFormatProperties3Memory(1)
+ refaac19fbc := (*C.VkFormatProperties3)(memaac19fbc)
+ allocsaac19fbc := new(cgoAllocMap)
+ allocsaac19fbc.Add(memaac19fbc)
var csType_allocs *cgoAllocMap
- ref85dfcd4a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs85dfcd4a.Borrow(csType_allocs)
+ refaac19fbc.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsaac19fbc.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref85dfcd4a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs85dfcd4a.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- ref85dfcd4a.flags, cflags_allocs = (C.VkQueryPoolCreateFlags)(x.Flags), cgoAllocsUnknown
- allocs85dfcd4a.Borrow(cflags_allocs)
+ refaac19fbc.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsaac19fbc.Borrow(cpNext_allocs)
- var cqueryType_allocs *cgoAllocMap
- ref85dfcd4a.queryType, cqueryType_allocs = (C.VkQueryType)(x.QueryType), cgoAllocsUnknown
- allocs85dfcd4a.Borrow(cqueryType_allocs)
+ var clinearTilingFeatures_allocs *cgoAllocMap
+ refaac19fbc.linearTilingFeatures, clinearTilingFeatures_allocs = (C.VkFormatFeatureFlags2)(x.LinearTilingFeatures), cgoAllocsUnknown
+ allocsaac19fbc.Borrow(clinearTilingFeatures_allocs)
- var cqueryCount_allocs *cgoAllocMap
- ref85dfcd4a.queryCount, cqueryCount_allocs = (C.uint32_t)(x.QueryCount), cgoAllocsUnknown
- allocs85dfcd4a.Borrow(cqueryCount_allocs)
+ var coptimalTilingFeatures_allocs *cgoAllocMap
+ refaac19fbc.optimalTilingFeatures, coptimalTilingFeatures_allocs = (C.VkFormatFeatureFlags2)(x.OptimalTilingFeatures), cgoAllocsUnknown
+ allocsaac19fbc.Borrow(coptimalTilingFeatures_allocs)
- var cpipelineStatistics_allocs *cgoAllocMap
- ref85dfcd4a.pipelineStatistics, cpipelineStatistics_allocs = (C.VkQueryPipelineStatisticFlags)(x.PipelineStatistics), cgoAllocsUnknown
- allocs85dfcd4a.Borrow(cpipelineStatistics_allocs)
+ var cbufferFeatures_allocs *cgoAllocMap
+ refaac19fbc.bufferFeatures, cbufferFeatures_allocs = (C.VkFormatFeatureFlags2)(x.BufferFeatures), cgoAllocsUnknown
+ allocsaac19fbc.Borrow(cbufferFeatures_allocs)
- x.ref85dfcd4a = ref85dfcd4a
- x.allocs85dfcd4a = allocs85dfcd4a
- return ref85dfcd4a, allocs85dfcd4a
+ x.refaac19fbc = refaac19fbc
+ x.allocsaac19fbc = allocsaac19fbc
+ return refaac19fbc, allocsaac19fbc
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x QueryPoolCreateInfo) PassValue() (C.VkQueryPoolCreateInfo, *cgoAllocMap) {
- if x.ref85dfcd4a != nil {
- return *x.ref85dfcd4a, nil
+func (x FormatProperties3) PassValue() (C.VkFormatProperties3, *cgoAllocMap) {
+ if x.refaac19fbc != nil {
+ return *x.refaac19fbc, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -4813,113 +32289,92 @@ func (x QueryPoolCreateInfo) PassValue() (C.VkQueryPoolCreateInfo, *cgoAllocMap)
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *QueryPoolCreateInfo) Deref() {
- if x.ref85dfcd4a == nil {
+func (x *FormatProperties3) Deref() {
+ if x.refaac19fbc == nil {
return
}
- x.SType = (StructureType)(x.ref85dfcd4a.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref85dfcd4a.pNext))
- x.Flags = (QueryPoolCreateFlags)(x.ref85dfcd4a.flags)
- x.QueryType = (QueryType)(x.ref85dfcd4a.queryType)
- x.QueryCount = (uint32)(x.ref85dfcd4a.queryCount)
- x.PipelineStatistics = (QueryPipelineStatisticFlags)(x.ref85dfcd4a.pipelineStatistics)
+ x.SType = (StructureType)(x.refaac19fbc.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refaac19fbc.pNext))
+ x.LinearTilingFeatures = (FormatFeatureFlags2)(x.refaac19fbc.linearTilingFeatures)
+ x.OptimalTilingFeatures = (FormatFeatureFlags2)(x.refaac19fbc.optimalTilingFeatures)
+ x.BufferFeatures = (FormatFeatureFlags2)(x.refaac19fbc.bufferFeatures)
}
-// allocBufferCreateInfoMemory allocates memory for type C.VkBufferCreateInfo in C.
+// allocPhysicalDeviceMaintenance4FeaturesMemory allocates memory for type C.VkPhysicalDeviceMaintenance4Features in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocBufferCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBufferCreateInfoValue))
+func allocPhysicalDeviceMaintenance4FeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceMaintenance4FeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfBufferCreateInfoValue = unsafe.Sizeof([1]C.VkBufferCreateInfo{})
+const sizeOfPhysicalDeviceMaintenance4FeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceMaintenance4Features{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *BufferCreateInfo) Ref() *C.VkBufferCreateInfo {
+func (x *PhysicalDeviceMaintenance4Features) Ref() *C.VkPhysicalDeviceMaintenance4Features {
if x == nil {
return nil
}
- return x.reffe19d2cd
+ return x.refb110636b
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *BufferCreateInfo) Free() {
- if x != nil && x.allocsfe19d2cd != nil {
- x.allocsfe19d2cd.(*cgoAllocMap).Free()
- x.reffe19d2cd = nil
+func (x *PhysicalDeviceMaintenance4Features) Free() {
+ if x != nil && x.allocsb110636b != nil {
+ x.allocsb110636b.(*cgoAllocMap).Free()
+ x.refb110636b = nil
}
}
-// NewBufferCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceMaintenance4FeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewBufferCreateInfoRef(ref unsafe.Pointer) *BufferCreateInfo {
+func NewPhysicalDeviceMaintenance4FeaturesRef(ref unsafe.Pointer) *PhysicalDeviceMaintenance4Features {
if ref == nil {
return nil
}
- obj := new(BufferCreateInfo)
- obj.reffe19d2cd = (*C.VkBufferCreateInfo)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceMaintenance4Features)
+ obj.refb110636b = (*C.VkPhysicalDeviceMaintenance4Features)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *BufferCreateInfo) PassRef() (*C.VkBufferCreateInfo, *cgoAllocMap) {
+func (x *PhysicalDeviceMaintenance4Features) PassRef() (*C.VkPhysicalDeviceMaintenance4Features, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.reffe19d2cd != nil {
- return x.reffe19d2cd, nil
+ } else if x.refb110636b != nil {
+ return x.refb110636b, nil
}
- memfe19d2cd := allocBufferCreateInfoMemory(1)
- reffe19d2cd := (*C.VkBufferCreateInfo)(memfe19d2cd)
- allocsfe19d2cd := new(cgoAllocMap)
- allocsfe19d2cd.Add(memfe19d2cd)
+ memb110636b := allocPhysicalDeviceMaintenance4FeaturesMemory(1)
+ refb110636b := (*C.VkPhysicalDeviceMaintenance4Features)(memb110636b)
+ allocsb110636b := new(cgoAllocMap)
+ allocsb110636b.Add(memb110636b)
var csType_allocs *cgoAllocMap
- reffe19d2cd.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsfe19d2cd.Borrow(csType_allocs)
+ refb110636b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsb110636b.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- reffe19d2cd.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsfe19d2cd.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- reffe19d2cd.flags, cflags_allocs = (C.VkBufferCreateFlags)(x.Flags), cgoAllocsUnknown
- allocsfe19d2cd.Borrow(cflags_allocs)
-
- var csize_allocs *cgoAllocMap
- reffe19d2cd.size, csize_allocs = (C.VkDeviceSize)(x.Size), cgoAllocsUnknown
- allocsfe19d2cd.Borrow(csize_allocs)
-
- var cusage_allocs *cgoAllocMap
- reffe19d2cd.usage, cusage_allocs = (C.VkBufferUsageFlags)(x.Usage), cgoAllocsUnknown
- allocsfe19d2cd.Borrow(cusage_allocs)
-
- var csharingMode_allocs *cgoAllocMap
- reffe19d2cd.sharingMode, csharingMode_allocs = (C.VkSharingMode)(x.SharingMode), cgoAllocsUnknown
- allocsfe19d2cd.Borrow(csharingMode_allocs)
-
- var cqueueFamilyIndexCount_allocs *cgoAllocMap
- reffe19d2cd.queueFamilyIndexCount, cqueueFamilyIndexCount_allocs = (C.uint32_t)(x.QueueFamilyIndexCount), cgoAllocsUnknown
- allocsfe19d2cd.Borrow(cqueueFamilyIndexCount_allocs)
+ refb110636b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsb110636b.Borrow(cpNext_allocs)
- var cpQueueFamilyIndices_allocs *cgoAllocMap
- reffe19d2cd.pQueueFamilyIndices, cpQueueFamilyIndices_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PQueueFamilyIndices)).Data)), cgoAllocsUnknown
- allocsfe19d2cd.Borrow(cpQueueFamilyIndices_allocs)
+ var cmaintenance4_allocs *cgoAllocMap
+ refb110636b.maintenance4, cmaintenance4_allocs = (C.VkBool32)(x.Maintenance4), cgoAllocsUnknown
+ allocsb110636b.Borrow(cmaintenance4_allocs)
- x.reffe19d2cd = reffe19d2cd
- x.allocsfe19d2cd = allocsfe19d2cd
- return reffe19d2cd, allocsfe19d2cd
+ x.refb110636b = refb110636b
+ x.allocsb110636b = allocsb110636b
+ return refb110636b, allocsb110636b
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x BufferCreateInfo) PassValue() (C.VkBufferCreateInfo, *cgoAllocMap) {
- if x.reffe19d2cd != nil {
- return *x.reffe19d2cd, nil
+func (x PhysicalDeviceMaintenance4Features) PassValue() (C.VkPhysicalDeviceMaintenance4Features, *cgoAllocMap) {
+ if x.refb110636b != nil {
+ return *x.refb110636b, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -4927,115 +32382,90 @@ func (x BufferCreateInfo) PassValue() (C.VkBufferCreateInfo, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *BufferCreateInfo) Deref() {
- if x.reffe19d2cd == nil {
+func (x *PhysicalDeviceMaintenance4Features) Deref() {
+ if x.refb110636b == nil {
return
}
- x.SType = (StructureType)(x.reffe19d2cd.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reffe19d2cd.pNext))
- x.Flags = (BufferCreateFlags)(x.reffe19d2cd.flags)
- x.Size = (DeviceSize)(x.reffe19d2cd.size)
- x.Usage = (BufferUsageFlags)(x.reffe19d2cd.usage)
- x.SharingMode = (SharingMode)(x.reffe19d2cd.sharingMode)
- x.QueueFamilyIndexCount = (uint32)(x.reffe19d2cd.queueFamilyIndexCount)
- hxf2fab0d := (*sliceHeader)(unsafe.Pointer(&x.PQueueFamilyIndices))
- hxf2fab0d.Data = unsafe.Pointer(x.reffe19d2cd.pQueueFamilyIndices)
- hxf2fab0d.Cap = 0x7fffffff
- // hxf2fab0d.Len = ?
-
+ x.SType = (StructureType)(x.refb110636b.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb110636b.pNext))
+ x.Maintenance4 = (Bool32)(x.refb110636b.maintenance4)
}
-// allocBufferViewCreateInfoMemory allocates memory for type C.VkBufferViewCreateInfo in C.
+// allocPhysicalDeviceMaintenance4PropertiesMemory allocates memory for type C.VkPhysicalDeviceMaintenance4Properties in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocBufferViewCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBufferViewCreateInfoValue))
+func allocPhysicalDeviceMaintenance4PropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceMaintenance4PropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfBufferViewCreateInfoValue = unsafe.Sizeof([1]C.VkBufferViewCreateInfo{})
+const sizeOfPhysicalDeviceMaintenance4PropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceMaintenance4Properties{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *BufferViewCreateInfo) Ref() *C.VkBufferViewCreateInfo {
+func (x *PhysicalDeviceMaintenance4Properties) Ref() *C.VkPhysicalDeviceMaintenance4Properties {
if x == nil {
return nil
}
- return x.ref49b97027
+ return x.ref3bfb62f4
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *BufferViewCreateInfo) Free() {
- if x != nil && x.allocs49b97027 != nil {
- x.allocs49b97027.(*cgoAllocMap).Free()
- x.ref49b97027 = nil
+func (x *PhysicalDeviceMaintenance4Properties) Free() {
+ if x != nil && x.allocs3bfb62f4 != nil {
+ x.allocs3bfb62f4.(*cgoAllocMap).Free()
+ x.ref3bfb62f4 = nil
}
}
-// NewBufferViewCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceMaintenance4PropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewBufferViewCreateInfoRef(ref unsafe.Pointer) *BufferViewCreateInfo {
+func NewPhysicalDeviceMaintenance4PropertiesRef(ref unsafe.Pointer) *PhysicalDeviceMaintenance4Properties {
if ref == nil {
return nil
}
- obj := new(BufferViewCreateInfo)
- obj.ref49b97027 = (*C.VkBufferViewCreateInfo)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceMaintenance4Properties)
+ obj.ref3bfb62f4 = (*C.VkPhysicalDeviceMaintenance4Properties)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *BufferViewCreateInfo) PassRef() (*C.VkBufferViewCreateInfo, *cgoAllocMap) {
+func (x *PhysicalDeviceMaintenance4Properties) PassRef() (*C.VkPhysicalDeviceMaintenance4Properties, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref49b97027 != nil {
- return x.ref49b97027, nil
+ } else if x.ref3bfb62f4 != nil {
+ return x.ref3bfb62f4, nil
}
- mem49b97027 := allocBufferViewCreateInfoMemory(1)
- ref49b97027 := (*C.VkBufferViewCreateInfo)(mem49b97027)
- allocs49b97027 := new(cgoAllocMap)
- allocs49b97027.Add(mem49b97027)
+ mem3bfb62f4 := allocPhysicalDeviceMaintenance4PropertiesMemory(1)
+ ref3bfb62f4 := (*C.VkPhysicalDeviceMaintenance4Properties)(mem3bfb62f4)
+ allocs3bfb62f4 := new(cgoAllocMap)
+ allocs3bfb62f4.Add(mem3bfb62f4)
var csType_allocs *cgoAllocMap
- ref49b97027.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs49b97027.Borrow(csType_allocs)
+ ref3bfb62f4.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs3bfb62f4.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref49b97027.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs49b97027.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- ref49b97027.flags, cflags_allocs = (C.VkBufferViewCreateFlags)(x.Flags), cgoAllocsUnknown
- allocs49b97027.Borrow(cflags_allocs)
-
- var cbuffer_allocs *cgoAllocMap
- ref49b97027.buffer, cbuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.Buffer)), cgoAllocsUnknown
- allocs49b97027.Borrow(cbuffer_allocs)
-
- var cformat_allocs *cgoAllocMap
- ref49b97027.format, cformat_allocs = (C.VkFormat)(x.Format), cgoAllocsUnknown
- allocs49b97027.Borrow(cformat_allocs)
-
- var coffset_allocs *cgoAllocMap
- ref49b97027.offset, coffset_allocs = (C.VkDeviceSize)(x.Offset), cgoAllocsUnknown
- allocs49b97027.Borrow(coffset_allocs)
+ ref3bfb62f4.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs3bfb62f4.Borrow(cpNext_allocs)
- var c_range_allocs *cgoAllocMap
- ref49b97027._range, c_range_allocs = (C.VkDeviceSize)(x.Range), cgoAllocsUnknown
- allocs49b97027.Borrow(c_range_allocs)
+ var cmaxBufferSize_allocs *cgoAllocMap
+ ref3bfb62f4.maxBufferSize, cmaxBufferSize_allocs = (C.VkDeviceSize)(x.MaxBufferSize), cgoAllocsUnknown
+ allocs3bfb62f4.Borrow(cmaxBufferSize_allocs)
- x.ref49b97027 = ref49b97027
- x.allocs49b97027 = allocs49b97027
- return ref49b97027, allocs49b97027
+ x.ref3bfb62f4 = ref3bfb62f4
+ x.allocs3bfb62f4 = allocs3bfb62f4
+ return ref3bfb62f4, allocs3bfb62f4
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x BufferViewCreateInfo) PassValue() (C.VkBufferViewCreateInfo, *cgoAllocMap) {
- if x.ref49b97027 != nil {
- return *x.ref49b97027, nil
+func (x PhysicalDeviceMaintenance4Properties) PassValue() (C.VkPhysicalDeviceMaintenance4Properties, *cgoAllocMap) {
+ if x.ref3bfb62f4 != nil {
+ return *x.ref3bfb62f4, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -5043,142 +32473,128 @@ func (x BufferViewCreateInfo) PassValue() (C.VkBufferViewCreateInfo, *cgoAllocMa
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *BufferViewCreateInfo) Deref() {
- if x.ref49b97027 == nil {
+func (x *PhysicalDeviceMaintenance4Properties) Deref() {
+ if x.ref3bfb62f4 == nil {
return
}
- x.SType = (StructureType)(x.ref49b97027.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref49b97027.pNext))
- x.Flags = (BufferViewCreateFlags)(x.ref49b97027.flags)
- x.Buffer = *(*Buffer)(unsafe.Pointer(&x.ref49b97027.buffer))
- x.Format = (Format)(x.ref49b97027.format)
- x.Offset = (DeviceSize)(x.ref49b97027.offset)
- x.Range = (DeviceSize)(x.ref49b97027._range)
+ x.SType = (StructureType)(x.ref3bfb62f4.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref3bfb62f4.pNext))
+ x.MaxBufferSize = (DeviceSize)(x.ref3bfb62f4.maxBufferSize)
}
-// allocImageCreateInfoMemory allocates memory for type C.VkImageCreateInfo in C.
+// allocDeviceBufferMemoryRequirementsMemory allocates memory for type C.VkDeviceBufferMemoryRequirements in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocImageCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageCreateInfoValue))
+func allocDeviceBufferMemoryRequirementsMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceBufferMemoryRequirementsValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfImageCreateInfoValue = unsafe.Sizeof([1]C.VkImageCreateInfo{})
+const sizeOfDeviceBufferMemoryRequirementsValue = unsafe.Sizeof([1]C.VkDeviceBufferMemoryRequirements{})
+
+// unpackSBufferCreateInfo transforms a sliced Go data structure into plain C format.
+func unpackSBufferCreateInfo(x []BufferCreateInfo) (unpacked *C.VkBufferCreateInfo, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkBufferCreateInfo) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocBufferCreateInfoMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkBufferCreateInfo)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkBufferCreateInfo)(h.Data)
+ return
+}
+
+// packSBufferCreateInfo reads sliced Go data structure out from plain C format.
+func packSBufferCreateInfo(v []BufferCreateInfo, ptr0 *C.VkBufferCreateInfo) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfBufferCreateInfoValue]C.VkBufferCreateInfo)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewBufferCreateInfoRef(unsafe.Pointer(&ptr1))
+ }
+}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ImageCreateInfo) Ref() *C.VkImageCreateInfo {
+func (x *DeviceBufferMemoryRequirements) Ref() *C.VkDeviceBufferMemoryRequirements {
if x == nil {
return nil
}
- return x.reffb587ba1
+ return x.ref30350e90
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ImageCreateInfo) Free() {
- if x != nil && x.allocsfb587ba1 != nil {
- x.allocsfb587ba1.(*cgoAllocMap).Free()
- x.reffb587ba1 = nil
+func (x *DeviceBufferMemoryRequirements) Free() {
+ if x != nil && x.allocs30350e90 != nil {
+ x.allocs30350e90.(*cgoAllocMap).Free()
+ x.ref30350e90 = nil
}
}
-// NewImageCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDeviceBufferMemoryRequirementsRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewImageCreateInfoRef(ref unsafe.Pointer) *ImageCreateInfo {
+func NewDeviceBufferMemoryRequirementsRef(ref unsafe.Pointer) *DeviceBufferMemoryRequirements {
if ref == nil {
return nil
}
- obj := new(ImageCreateInfo)
- obj.reffb587ba1 = (*C.VkImageCreateInfo)(unsafe.Pointer(ref))
+ obj := new(DeviceBufferMemoryRequirements)
+ obj.ref30350e90 = (*C.VkDeviceBufferMemoryRequirements)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ImageCreateInfo) PassRef() (*C.VkImageCreateInfo, *cgoAllocMap) {
+func (x *DeviceBufferMemoryRequirements) PassRef() (*C.VkDeviceBufferMemoryRequirements, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.reffb587ba1 != nil {
- return x.reffb587ba1, nil
+ } else if x.ref30350e90 != nil {
+ return x.ref30350e90, nil
}
- memfb587ba1 := allocImageCreateInfoMemory(1)
- reffb587ba1 := (*C.VkImageCreateInfo)(memfb587ba1)
- allocsfb587ba1 := new(cgoAllocMap)
- allocsfb587ba1.Add(memfb587ba1)
+ mem30350e90 := allocDeviceBufferMemoryRequirementsMemory(1)
+ ref30350e90 := (*C.VkDeviceBufferMemoryRequirements)(mem30350e90)
+ allocs30350e90 := new(cgoAllocMap)
+ allocs30350e90.Add(mem30350e90)
var csType_allocs *cgoAllocMap
- reffb587ba1.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsfb587ba1.Borrow(csType_allocs)
+ ref30350e90.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs30350e90.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- reffb587ba1.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsfb587ba1.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- reffb587ba1.flags, cflags_allocs = (C.VkImageCreateFlags)(x.Flags), cgoAllocsUnknown
- allocsfb587ba1.Borrow(cflags_allocs)
-
- var cimageType_allocs *cgoAllocMap
- reffb587ba1.imageType, cimageType_allocs = (C.VkImageType)(x.ImageType), cgoAllocsUnknown
- allocsfb587ba1.Borrow(cimageType_allocs)
-
- var cformat_allocs *cgoAllocMap
- reffb587ba1.format, cformat_allocs = (C.VkFormat)(x.Format), cgoAllocsUnknown
- allocsfb587ba1.Borrow(cformat_allocs)
-
- var cextent_allocs *cgoAllocMap
- reffb587ba1.extent, cextent_allocs = x.Extent.PassValue()
- allocsfb587ba1.Borrow(cextent_allocs)
-
- var cmipLevels_allocs *cgoAllocMap
- reffb587ba1.mipLevels, cmipLevels_allocs = (C.uint32_t)(x.MipLevels), cgoAllocsUnknown
- allocsfb587ba1.Borrow(cmipLevels_allocs)
-
- var carrayLayers_allocs *cgoAllocMap
- reffb587ba1.arrayLayers, carrayLayers_allocs = (C.uint32_t)(x.ArrayLayers), cgoAllocsUnknown
- allocsfb587ba1.Borrow(carrayLayers_allocs)
-
- var csamples_allocs *cgoAllocMap
- reffb587ba1.samples, csamples_allocs = (C.VkSampleCountFlagBits)(x.Samples), cgoAllocsUnknown
- allocsfb587ba1.Borrow(csamples_allocs)
+ ref30350e90.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs30350e90.Borrow(cpNext_allocs)
- var ctiling_allocs *cgoAllocMap
- reffb587ba1.tiling, ctiling_allocs = (C.VkImageTiling)(x.Tiling), cgoAllocsUnknown
- allocsfb587ba1.Borrow(ctiling_allocs)
-
- var cusage_allocs *cgoAllocMap
- reffb587ba1.usage, cusage_allocs = (C.VkImageUsageFlags)(x.Usage), cgoAllocsUnknown
- allocsfb587ba1.Borrow(cusage_allocs)
-
- var csharingMode_allocs *cgoAllocMap
- reffb587ba1.sharingMode, csharingMode_allocs = (C.VkSharingMode)(x.SharingMode), cgoAllocsUnknown
- allocsfb587ba1.Borrow(csharingMode_allocs)
-
- var cqueueFamilyIndexCount_allocs *cgoAllocMap
- reffb587ba1.queueFamilyIndexCount, cqueueFamilyIndexCount_allocs = (C.uint32_t)(x.QueueFamilyIndexCount), cgoAllocsUnknown
- allocsfb587ba1.Borrow(cqueueFamilyIndexCount_allocs)
-
- var cpQueueFamilyIndices_allocs *cgoAllocMap
- reffb587ba1.pQueueFamilyIndices, cpQueueFamilyIndices_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PQueueFamilyIndices)).Data)), cgoAllocsUnknown
- allocsfb587ba1.Borrow(cpQueueFamilyIndices_allocs)
-
- var cinitialLayout_allocs *cgoAllocMap
- reffb587ba1.initialLayout, cinitialLayout_allocs = (C.VkImageLayout)(x.InitialLayout), cgoAllocsUnknown
- allocsfb587ba1.Borrow(cinitialLayout_allocs)
+ var cpCreateInfo_allocs *cgoAllocMap
+ ref30350e90.pCreateInfo, cpCreateInfo_allocs = unpackSBufferCreateInfo(x.PCreateInfo)
+ allocs30350e90.Borrow(cpCreateInfo_allocs)
- x.reffb587ba1 = reffb587ba1
- x.allocsfb587ba1 = allocsfb587ba1
- return reffb587ba1, allocsfb587ba1
+ x.ref30350e90 = ref30350e90
+ x.allocs30350e90 = allocs30350e90
+ return ref30350e90, allocs30350e90
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ImageCreateInfo) PassValue() (C.VkImageCreateInfo, *cgoAllocMap) {
- if x.reffb587ba1 != nil {
- return *x.reffb587ba1, nil
+func (x DeviceBufferMemoryRequirements) PassValue() (C.VkDeviceBufferMemoryRequirements, *cgoAllocMap) {
+ if x.ref30350e90 != nil {
+ return *x.ref30350e90, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -5186,114 +32602,132 @@ func (x ImageCreateInfo) PassValue() (C.VkImageCreateInfo, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ImageCreateInfo) Deref() {
- if x.reffb587ba1 == nil {
+func (x *DeviceBufferMemoryRequirements) Deref() {
+ if x.ref30350e90 == nil {
return
}
- x.SType = (StructureType)(x.reffb587ba1.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reffb587ba1.pNext))
- x.Flags = (ImageCreateFlags)(x.reffb587ba1.flags)
- x.ImageType = (ImageType)(x.reffb587ba1.imageType)
- x.Format = (Format)(x.reffb587ba1.format)
- x.Extent = *NewExtent3DRef(unsafe.Pointer(&x.reffb587ba1.extent))
- x.MipLevels = (uint32)(x.reffb587ba1.mipLevels)
- x.ArrayLayers = (uint32)(x.reffb587ba1.arrayLayers)
- x.Samples = (SampleCountFlagBits)(x.reffb587ba1.samples)
- x.Tiling = (ImageTiling)(x.reffb587ba1.tiling)
- x.Usage = (ImageUsageFlags)(x.reffb587ba1.usage)
- x.SharingMode = (SharingMode)(x.reffb587ba1.sharingMode)
- x.QueueFamilyIndexCount = (uint32)(x.reffb587ba1.queueFamilyIndexCount)
- hxf69fe70 := (*sliceHeader)(unsafe.Pointer(&x.PQueueFamilyIndices))
- hxf69fe70.Data = unsafe.Pointer(x.reffb587ba1.pQueueFamilyIndices)
- hxf69fe70.Cap = 0x7fffffff
- // hxf69fe70.Len = ?
-
- x.InitialLayout = (ImageLayout)(x.reffb587ba1.initialLayout)
+ x.SType = (StructureType)(x.ref30350e90.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref30350e90.pNext))
+ packSBufferCreateInfo(x.PCreateInfo, x.ref30350e90.pCreateInfo)
}
-// allocSubresourceLayoutMemory allocates memory for type C.VkSubresourceLayout in C.
+// allocDeviceImageMemoryRequirementsMemory allocates memory for type C.VkDeviceImageMemoryRequirements in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSubresourceLayoutMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSubresourceLayoutValue))
+func allocDeviceImageMemoryRequirementsMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceImageMemoryRequirementsValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSubresourceLayoutValue = unsafe.Sizeof([1]C.VkSubresourceLayout{})
+const sizeOfDeviceImageMemoryRequirementsValue = unsafe.Sizeof([1]C.VkDeviceImageMemoryRequirements{})
+
+// unpackSImageCreateInfo transforms a sliced Go data structure into plain C format.
+func unpackSImageCreateInfo(x []ImageCreateInfo) (unpacked *C.VkImageCreateInfo, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkImageCreateInfo) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocImageCreateInfoMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkImageCreateInfo)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkImageCreateInfo)(h.Data)
+ return
+}
+
+// packSImageCreateInfo reads sliced Go data structure out from plain C format.
+func packSImageCreateInfo(v []ImageCreateInfo, ptr0 *C.VkImageCreateInfo) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfImageCreateInfoValue]C.VkImageCreateInfo)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewImageCreateInfoRef(unsafe.Pointer(&ptr1))
+ }
+}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SubresourceLayout) Ref() *C.VkSubresourceLayout {
+func (x *DeviceImageMemoryRequirements) Ref() *C.VkDeviceImageMemoryRequirements {
if x == nil {
return nil
}
- return x.ref182612ad
+ return x.refd9532ea3
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SubresourceLayout) Free() {
- if x != nil && x.allocs182612ad != nil {
- x.allocs182612ad.(*cgoAllocMap).Free()
- x.ref182612ad = nil
+func (x *DeviceImageMemoryRequirements) Free() {
+ if x != nil && x.allocsd9532ea3 != nil {
+ x.allocsd9532ea3.(*cgoAllocMap).Free()
+ x.refd9532ea3 = nil
}
}
-// NewSubresourceLayoutRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDeviceImageMemoryRequirementsRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSubresourceLayoutRef(ref unsafe.Pointer) *SubresourceLayout {
+func NewDeviceImageMemoryRequirementsRef(ref unsafe.Pointer) *DeviceImageMemoryRequirements {
if ref == nil {
return nil
}
- obj := new(SubresourceLayout)
- obj.ref182612ad = (*C.VkSubresourceLayout)(unsafe.Pointer(ref))
+ obj := new(DeviceImageMemoryRequirements)
+ obj.refd9532ea3 = (*C.VkDeviceImageMemoryRequirements)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SubresourceLayout) PassRef() (*C.VkSubresourceLayout, *cgoAllocMap) {
+func (x *DeviceImageMemoryRequirements) PassRef() (*C.VkDeviceImageMemoryRequirements, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref182612ad != nil {
- return x.ref182612ad, nil
+ } else if x.refd9532ea3 != nil {
+ return x.refd9532ea3, nil
}
- mem182612ad := allocSubresourceLayoutMemory(1)
- ref182612ad := (*C.VkSubresourceLayout)(mem182612ad)
- allocs182612ad := new(cgoAllocMap)
- allocs182612ad.Add(mem182612ad)
-
- var coffset_allocs *cgoAllocMap
- ref182612ad.offset, coffset_allocs = (C.VkDeviceSize)(x.Offset), cgoAllocsUnknown
- allocs182612ad.Borrow(coffset_allocs)
+ memd9532ea3 := allocDeviceImageMemoryRequirementsMemory(1)
+ refd9532ea3 := (*C.VkDeviceImageMemoryRequirements)(memd9532ea3)
+ allocsd9532ea3 := new(cgoAllocMap)
+ allocsd9532ea3.Add(memd9532ea3)
- var csize_allocs *cgoAllocMap
- ref182612ad.size, csize_allocs = (C.VkDeviceSize)(x.Size), cgoAllocsUnknown
- allocs182612ad.Borrow(csize_allocs)
+ var csType_allocs *cgoAllocMap
+ refd9532ea3.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd9532ea3.Borrow(csType_allocs)
- var crowPitch_allocs *cgoAllocMap
- ref182612ad.rowPitch, crowPitch_allocs = (C.VkDeviceSize)(x.RowPitch), cgoAllocsUnknown
- allocs182612ad.Borrow(crowPitch_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refd9532ea3.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsd9532ea3.Borrow(cpNext_allocs)
- var carrayPitch_allocs *cgoAllocMap
- ref182612ad.arrayPitch, carrayPitch_allocs = (C.VkDeviceSize)(x.ArrayPitch), cgoAllocsUnknown
- allocs182612ad.Borrow(carrayPitch_allocs)
+ var cpCreateInfo_allocs *cgoAllocMap
+ refd9532ea3.pCreateInfo, cpCreateInfo_allocs = unpackSImageCreateInfo(x.PCreateInfo)
+ allocsd9532ea3.Borrow(cpCreateInfo_allocs)
- var cdepthPitch_allocs *cgoAllocMap
- ref182612ad.depthPitch, cdepthPitch_allocs = (C.VkDeviceSize)(x.DepthPitch), cgoAllocsUnknown
- allocs182612ad.Borrow(cdepthPitch_allocs)
+ var cplaneAspect_allocs *cgoAllocMap
+ refd9532ea3.planeAspect, cplaneAspect_allocs = (C.VkImageAspectFlagBits)(x.PlaneAspect), cgoAllocsUnknown
+ allocsd9532ea3.Borrow(cplaneAspect_allocs)
- x.ref182612ad = ref182612ad
- x.allocs182612ad = allocs182612ad
- return ref182612ad, allocs182612ad
+ x.refd9532ea3 = refd9532ea3
+ x.allocsd9532ea3 = allocsd9532ea3
+ return refd9532ea3, allocsd9532ea3
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SubresourceLayout) PassValue() (C.VkSubresourceLayout, *cgoAllocMap) {
- if x.ref182612ad != nil {
- return *x.ref182612ad, nil
+func (x DeviceImageMemoryRequirements) PassValue() (C.VkDeviceImageMemoryRequirements, *cgoAllocMap) {
+ if x.refd9532ea3 != nil {
+ return *x.refd9532ea3, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -5301,96 +32735,119 @@ func (x SubresourceLayout) PassValue() (C.VkSubresourceLayout, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SubresourceLayout) Deref() {
- if x.ref182612ad == nil {
+func (x *DeviceImageMemoryRequirements) Deref() {
+ if x.refd9532ea3 == nil {
return
}
- x.Offset = (DeviceSize)(x.ref182612ad.offset)
- x.Size = (DeviceSize)(x.ref182612ad.size)
- x.RowPitch = (DeviceSize)(x.ref182612ad.rowPitch)
- x.ArrayPitch = (DeviceSize)(x.ref182612ad.arrayPitch)
- x.DepthPitch = (DeviceSize)(x.ref182612ad.depthPitch)
+ x.SType = (StructureType)(x.refd9532ea3.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd9532ea3.pNext))
+ packSImageCreateInfo(x.PCreateInfo, x.refd9532ea3.pCreateInfo)
+ x.PlaneAspect = (ImageAspectFlagBits)(x.refd9532ea3.planeAspect)
}
-// allocComponentMappingMemory allocates memory for type C.VkComponentMapping in C.
+// allocSurfaceCapabilitiesMemory allocates memory for type C.VkSurfaceCapabilitiesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocComponentMappingMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfComponentMappingValue))
+func allocSurfaceCapabilitiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSurfaceCapabilitiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfComponentMappingValue = unsafe.Sizeof([1]C.VkComponentMapping{})
+const sizeOfSurfaceCapabilitiesValue = unsafe.Sizeof([1]C.VkSurfaceCapabilitiesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ComponentMapping) Ref() *C.VkComponentMapping {
+func (x *SurfaceCapabilities) Ref() *C.VkSurfaceCapabilitiesKHR {
if x == nil {
return nil
}
- return x.ref63d3d563
+ return x.ref11d5f596
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ComponentMapping) Free() {
- if x != nil && x.allocs63d3d563 != nil {
- x.allocs63d3d563.(*cgoAllocMap).Free()
- x.ref63d3d563 = nil
+func (x *SurfaceCapabilities) Free() {
+ if x != nil && x.allocs11d5f596 != nil {
+ x.allocs11d5f596.(*cgoAllocMap).Free()
+ x.ref11d5f596 = nil
}
}
-// NewComponentMappingRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewSurfaceCapabilitiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewComponentMappingRef(ref unsafe.Pointer) *ComponentMapping {
+func NewSurfaceCapabilitiesRef(ref unsafe.Pointer) *SurfaceCapabilities {
if ref == nil {
return nil
}
- obj := new(ComponentMapping)
- obj.ref63d3d563 = (*C.VkComponentMapping)(unsafe.Pointer(ref))
+ obj := new(SurfaceCapabilities)
+ obj.ref11d5f596 = (*C.VkSurfaceCapabilitiesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ComponentMapping) PassRef() (*C.VkComponentMapping, *cgoAllocMap) {
+func (x *SurfaceCapabilities) PassRef() (*C.VkSurfaceCapabilitiesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref63d3d563 != nil {
- return x.ref63d3d563, nil
+ } else if x.ref11d5f596 != nil {
+ return x.ref11d5f596, nil
}
- mem63d3d563 := allocComponentMappingMemory(1)
- ref63d3d563 := (*C.VkComponentMapping)(mem63d3d563)
- allocs63d3d563 := new(cgoAllocMap)
- allocs63d3d563.Add(mem63d3d563)
+ mem11d5f596 := allocSurfaceCapabilitiesMemory(1)
+ ref11d5f596 := (*C.VkSurfaceCapabilitiesKHR)(mem11d5f596)
+ allocs11d5f596 := new(cgoAllocMap)
+ allocs11d5f596.Add(mem11d5f596)
- var cr_allocs *cgoAllocMap
- ref63d3d563.r, cr_allocs = (C.VkComponentSwizzle)(x.R), cgoAllocsUnknown
- allocs63d3d563.Borrow(cr_allocs)
+ var cminImageCount_allocs *cgoAllocMap
+ ref11d5f596.minImageCount, cminImageCount_allocs = (C.uint32_t)(x.MinImageCount), cgoAllocsUnknown
+ allocs11d5f596.Borrow(cminImageCount_allocs)
- var cg_allocs *cgoAllocMap
- ref63d3d563.g, cg_allocs = (C.VkComponentSwizzle)(x.G), cgoAllocsUnknown
- allocs63d3d563.Borrow(cg_allocs)
+ var cmaxImageCount_allocs *cgoAllocMap
+ ref11d5f596.maxImageCount, cmaxImageCount_allocs = (C.uint32_t)(x.MaxImageCount), cgoAllocsUnknown
+ allocs11d5f596.Borrow(cmaxImageCount_allocs)
- var cb_allocs *cgoAllocMap
- ref63d3d563.b, cb_allocs = (C.VkComponentSwizzle)(x.B), cgoAllocsUnknown
- allocs63d3d563.Borrow(cb_allocs)
+ var ccurrentExtent_allocs *cgoAllocMap
+ ref11d5f596.currentExtent, ccurrentExtent_allocs = x.CurrentExtent.PassValue()
+ allocs11d5f596.Borrow(ccurrentExtent_allocs)
- var ca_allocs *cgoAllocMap
- ref63d3d563.a, ca_allocs = (C.VkComponentSwizzle)(x.A), cgoAllocsUnknown
- allocs63d3d563.Borrow(ca_allocs)
+ var cminImageExtent_allocs *cgoAllocMap
+ ref11d5f596.minImageExtent, cminImageExtent_allocs = x.MinImageExtent.PassValue()
+ allocs11d5f596.Borrow(cminImageExtent_allocs)
- x.ref63d3d563 = ref63d3d563
- x.allocs63d3d563 = allocs63d3d563
- return ref63d3d563, allocs63d3d563
+ var cmaxImageExtent_allocs *cgoAllocMap
+ ref11d5f596.maxImageExtent, cmaxImageExtent_allocs = x.MaxImageExtent.PassValue()
+ allocs11d5f596.Borrow(cmaxImageExtent_allocs)
+
+ var cmaxImageArrayLayers_allocs *cgoAllocMap
+ ref11d5f596.maxImageArrayLayers, cmaxImageArrayLayers_allocs = (C.uint32_t)(x.MaxImageArrayLayers), cgoAllocsUnknown
+ allocs11d5f596.Borrow(cmaxImageArrayLayers_allocs)
+
+ var csupportedTransforms_allocs *cgoAllocMap
+ ref11d5f596.supportedTransforms, csupportedTransforms_allocs = (C.VkSurfaceTransformFlagsKHR)(x.SupportedTransforms), cgoAllocsUnknown
+ allocs11d5f596.Borrow(csupportedTransforms_allocs)
+
+ var ccurrentTransform_allocs *cgoAllocMap
+ ref11d5f596.currentTransform, ccurrentTransform_allocs = (C.VkSurfaceTransformFlagBitsKHR)(x.CurrentTransform), cgoAllocsUnknown
+ allocs11d5f596.Borrow(ccurrentTransform_allocs)
+
+ var csupportedCompositeAlpha_allocs *cgoAllocMap
+ ref11d5f596.supportedCompositeAlpha, csupportedCompositeAlpha_allocs = (C.VkCompositeAlphaFlagsKHR)(x.SupportedCompositeAlpha), cgoAllocsUnknown
+ allocs11d5f596.Borrow(csupportedCompositeAlpha_allocs)
+
+ var csupportedUsageFlags_allocs *cgoAllocMap
+ ref11d5f596.supportedUsageFlags, csupportedUsageFlags_allocs = (C.VkImageUsageFlags)(x.SupportedUsageFlags), cgoAllocsUnknown
+ allocs11d5f596.Borrow(csupportedUsageFlags_allocs)
+
+ x.ref11d5f596 = ref11d5f596
+ x.allocs11d5f596 = allocs11d5f596
+ return ref11d5f596, allocs11d5f596
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ComponentMapping) PassValue() (C.VkComponentMapping, *cgoAllocMap) {
- if x.ref63d3d563 != nil {
- return *x.ref63d3d563, nil
+func (x SurfaceCapabilities) PassValue() (C.VkSurfaceCapabilitiesKHR, *cgoAllocMap) {
+ if x.ref11d5f596 != nil {
+ return *x.ref11d5f596, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -5398,99 +32855,93 @@ func (x ComponentMapping) PassValue() (C.VkComponentMapping, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ComponentMapping) Deref() {
- if x.ref63d3d563 == nil {
+func (x *SurfaceCapabilities) Deref() {
+ if x.ref11d5f596 == nil {
return
}
- x.R = (ComponentSwizzle)(x.ref63d3d563.r)
- x.G = (ComponentSwizzle)(x.ref63d3d563.g)
- x.B = (ComponentSwizzle)(x.ref63d3d563.b)
- x.A = (ComponentSwizzle)(x.ref63d3d563.a)
+ x.MinImageCount = (uint32)(x.ref11d5f596.minImageCount)
+ x.MaxImageCount = (uint32)(x.ref11d5f596.maxImageCount)
+ x.CurrentExtent = *NewExtent2DRef(unsafe.Pointer(&x.ref11d5f596.currentExtent))
+ x.MinImageExtent = *NewExtent2DRef(unsafe.Pointer(&x.ref11d5f596.minImageExtent))
+ x.MaxImageExtent = *NewExtent2DRef(unsafe.Pointer(&x.ref11d5f596.maxImageExtent))
+ x.MaxImageArrayLayers = (uint32)(x.ref11d5f596.maxImageArrayLayers)
+ x.SupportedTransforms = (SurfaceTransformFlags)(x.ref11d5f596.supportedTransforms)
+ x.CurrentTransform = (SurfaceTransformFlagBits)(x.ref11d5f596.currentTransform)
+ x.SupportedCompositeAlpha = (CompositeAlphaFlags)(x.ref11d5f596.supportedCompositeAlpha)
+ x.SupportedUsageFlags = (ImageUsageFlags)(x.ref11d5f596.supportedUsageFlags)
}
-// allocImageSubresourceRangeMemory allocates memory for type C.VkImageSubresourceRange in C.
+// allocSurfaceFormatMemory allocates memory for type C.VkSurfaceFormatKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocImageSubresourceRangeMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageSubresourceRangeValue))
+func allocSurfaceFormatMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSurfaceFormatValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfImageSubresourceRangeValue = unsafe.Sizeof([1]C.VkImageSubresourceRange{})
+const sizeOfSurfaceFormatValue = unsafe.Sizeof([1]C.VkSurfaceFormatKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ImageSubresourceRange) Ref() *C.VkImageSubresourceRange {
+func (x *SurfaceFormat) Ref() *C.VkSurfaceFormatKHR {
if x == nil {
return nil
}
- return x.ref5aa1126
+ return x.refedaf82ca
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ImageSubresourceRange) Free() {
- if x != nil && x.allocs5aa1126 != nil {
- x.allocs5aa1126.(*cgoAllocMap).Free()
- x.ref5aa1126 = nil
+func (x *SurfaceFormat) Free() {
+ if x != nil && x.allocsedaf82ca != nil {
+ x.allocsedaf82ca.(*cgoAllocMap).Free()
+ x.refedaf82ca = nil
}
}
-// NewImageSubresourceRangeRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewSurfaceFormatRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewImageSubresourceRangeRef(ref unsafe.Pointer) *ImageSubresourceRange {
+func NewSurfaceFormatRef(ref unsafe.Pointer) *SurfaceFormat {
if ref == nil {
return nil
}
- obj := new(ImageSubresourceRange)
- obj.ref5aa1126 = (*C.VkImageSubresourceRange)(unsafe.Pointer(ref))
+ obj := new(SurfaceFormat)
+ obj.refedaf82ca = (*C.VkSurfaceFormatKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ImageSubresourceRange) PassRef() (*C.VkImageSubresourceRange, *cgoAllocMap) {
+func (x *SurfaceFormat) PassRef() (*C.VkSurfaceFormatKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref5aa1126 != nil {
- return x.ref5aa1126, nil
+ } else if x.refedaf82ca != nil {
+ return x.refedaf82ca, nil
}
- mem5aa1126 := allocImageSubresourceRangeMemory(1)
- ref5aa1126 := (*C.VkImageSubresourceRange)(mem5aa1126)
- allocs5aa1126 := new(cgoAllocMap)
- allocs5aa1126.Add(mem5aa1126)
-
- var caspectMask_allocs *cgoAllocMap
- ref5aa1126.aspectMask, caspectMask_allocs = (C.VkImageAspectFlags)(x.AspectMask), cgoAllocsUnknown
- allocs5aa1126.Borrow(caspectMask_allocs)
-
- var cbaseMipLevel_allocs *cgoAllocMap
- ref5aa1126.baseMipLevel, cbaseMipLevel_allocs = (C.uint32_t)(x.BaseMipLevel), cgoAllocsUnknown
- allocs5aa1126.Borrow(cbaseMipLevel_allocs)
-
- var clevelCount_allocs *cgoAllocMap
- ref5aa1126.levelCount, clevelCount_allocs = (C.uint32_t)(x.LevelCount), cgoAllocsUnknown
- allocs5aa1126.Borrow(clevelCount_allocs)
+ memedaf82ca := allocSurfaceFormatMemory(1)
+ refedaf82ca := (*C.VkSurfaceFormatKHR)(memedaf82ca)
+ allocsedaf82ca := new(cgoAllocMap)
+ allocsedaf82ca.Add(memedaf82ca)
- var cbaseArrayLayer_allocs *cgoAllocMap
- ref5aa1126.baseArrayLayer, cbaseArrayLayer_allocs = (C.uint32_t)(x.BaseArrayLayer), cgoAllocsUnknown
- allocs5aa1126.Borrow(cbaseArrayLayer_allocs)
+ var cformat_allocs *cgoAllocMap
+ refedaf82ca.format, cformat_allocs = (C.VkFormat)(x.Format), cgoAllocsUnknown
+ allocsedaf82ca.Borrow(cformat_allocs)
- var clayerCount_allocs *cgoAllocMap
- ref5aa1126.layerCount, clayerCount_allocs = (C.uint32_t)(x.LayerCount), cgoAllocsUnknown
- allocs5aa1126.Borrow(clayerCount_allocs)
+ var ccolorSpace_allocs *cgoAllocMap
+ refedaf82ca.colorSpace, ccolorSpace_allocs = (C.VkColorSpaceKHR)(x.ColorSpace), cgoAllocsUnknown
+ allocsedaf82ca.Borrow(ccolorSpace_allocs)
- x.ref5aa1126 = ref5aa1126
- x.allocs5aa1126 = allocs5aa1126
- return ref5aa1126, allocs5aa1126
+ x.refedaf82ca = refedaf82ca
+ x.allocsedaf82ca = allocsedaf82ca
+ return refedaf82ca, allocsedaf82ca
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ImageSubresourceRange) PassValue() (C.VkImageSubresourceRange, *cgoAllocMap) {
- if x.ref5aa1126 != nil {
- return *x.ref5aa1126, nil
+func (x SurfaceFormat) PassValue() (C.VkSurfaceFormatKHR, *cgoAllocMap) {
+ if x.refedaf82ca != nil {
+ return *x.refedaf82ca, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -5498,112 +32949,149 @@ func (x ImageSubresourceRange) PassValue() (C.VkImageSubresourceRange, *cgoAlloc
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ImageSubresourceRange) Deref() {
- if x.ref5aa1126 == nil {
+func (x *SurfaceFormat) Deref() {
+ if x.refedaf82ca == nil {
return
}
- x.AspectMask = (ImageAspectFlags)(x.ref5aa1126.aspectMask)
- x.BaseMipLevel = (uint32)(x.ref5aa1126.baseMipLevel)
- x.LevelCount = (uint32)(x.ref5aa1126.levelCount)
- x.BaseArrayLayer = (uint32)(x.ref5aa1126.baseArrayLayer)
- x.LayerCount = (uint32)(x.ref5aa1126.layerCount)
+ x.Format = (Format)(x.refedaf82ca.format)
+ x.ColorSpace = (ColorSpace)(x.refedaf82ca.colorSpace)
}
-// allocImageViewCreateInfoMemory allocates memory for type C.VkImageViewCreateInfo in C.
+// allocSwapchainCreateInfoMemory allocates memory for type C.VkSwapchainCreateInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocImageViewCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageViewCreateInfoValue))
+func allocSwapchainCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSwapchainCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfImageViewCreateInfoValue = unsafe.Sizeof([1]C.VkImageViewCreateInfo{})
+const sizeOfSwapchainCreateInfoValue = unsafe.Sizeof([1]C.VkSwapchainCreateInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ImageViewCreateInfo) Ref() *C.VkImageViewCreateInfo {
+func (x *SwapchainCreateInfo) Ref() *C.VkSwapchainCreateInfoKHR {
if x == nil {
return nil
}
- return x.ref77e8d4b8
+ return x.refdb619e1c
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ImageViewCreateInfo) Free() {
- if x != nil && x.allocs77e8d4b8 != nil {
- x.allocs77e8d4b8.(*cgoAllocMap).Free()
- x.ref77e8d4b8 = nil
+func (x *SwapchainCreateInfo) Free() {
+ if x != nil && x.allocsdb619e1c != nil {
+ x.allocsdb619e1c.(*cgoAllocMap).Free()
+ x.refdb619e1c = nil
}
}
-// NewImageViewCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewSwapchainCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewImageViewCreateInfoRef(ref unsafe.Pointer) *ImageViewCreateInfo {
+func NewSwapchainCreateInfoRef(ref unsafe.Pointer) *SwapchainCreateInfo {
if ref == nil {
return nil
}
- obj := new(ImageViewCreateInfo)
- obj.ref77e8d4b8 = (*C.VkImageViewCreateInfo)(unsafe.Pointer(ref))
+ obj := new(SwapchainCreateInfo)
+ obj.refdb619e1c = (*C.VkSwapchainCreateInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ImageViewCreateInfo) PassRef() (*C.VkImageViewCreateInfo, *cgoAllocMap) {
+func (x *SwapchainCreateInfo) PassRef() (*C.VkSwapchainCreateInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref77e8d4b8 != nil {
- return x.ref77e8d4b8, nil
+ } else if x.refdb619e1c != nil {
+ return x.refdb619e1c, nil
}
- mem77e8d4b8 := allocImageViewCreateInfoMemory(1)
- ref77e8d4b8 := (*C.VkImageViewCreateInfo)(mem77e8d4b8)
- allocs77e8d4b8 := new(cgoAllocMap)
- allocs77e8d4b8.Add(mem77e8d4b8)
+ memdb619e1c := allocSwapchainCreateInfoMemory(1)
+ refdb619e1c := (*C.VkSwapchainCreateInfoKHR)(memdb619e1c)
+ allocsdb619e1c := new(cgoAllocMap)
+ allocsdb619e1c.Add(memdb619e1c)
var csType_allocs *cgoAllocMap
- ref77e8d4b8.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs77e8d4b8.Borrow(csType_allocs)
+ refdb619e1c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsdb619e1c.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref77e8d4b8.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs77e8d4b8.Borrow(cpNext_allocs)
+ refdb619e1c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsdb619e1c.Borrow(cpNext_allocs)
var cflags_allocs *cgoAllocMap
- ref77e8d4b8.flags, cflags_allocs = (C.VkImageViewCreateFlags)(x.Flags), cgoAllocsUnknown
- allocs77e8d4b8.Borrow(cflags_allocs)
+ refdb619e1c.flags, cflags_allocs = (C.VkSwapchainCreateFlagsKHR)(x.Flags), cgoAllocsUnknown
+ allocsdb619e1c.Borrow(cflags_allocs)
- var cimage_allocs *cgoAllocMap
- ref77e8d4b8.image, cimage_allocs = *(*C.VkImage)(unsafe.Pointer(&x.Image)), cgoAllocsUnknown
- allocs77e8d4b8.Borrow(cimage_allocs)
+ var csurface_allocs *cgoAllocMap
+ refdb619e1c.surface, csurface_allocs = *(*C.VkSurfaceKHR)(unsafe.Pointer(&x.Surface)), cgoAllocsUnknown
+ allocsdb619e1c.Borrow(csurface_allocs)
- var cviewType_allocs *cgoAllocMap
- ref77e8d4b8.viewType, cviewType_allocs = (C.VkImageViewType)(x.ViewType), cgoAllocsUnknown
- allocs77e8d4b8.Borrow(cviewType_allocs)
+ var cminImageCount_allocs *cgoAllocMap
+ refdb619e1c.minImageCount, cminImageCount_allocs = (C.uint32_t)(x.MinImageCount), cgoAllocsUnknown
+ allocsdb619e1c.Borrow(cminImageCount_allocs)
- var cformat_allocs *cgoAllocMap
- ref77e8d4b8.format, cformat_allocs = (C.VkFormat)(x.Format), cgoAllocsUnknown
- allocs77e8d4b8.Borrow(cformat_allocs)
+ var cimageFormat_allocs *cgoAllocMap
+ refdb619e1c.imageFormat, cimageFormat_allocs = (C.VkFormat)(x.ImageFormat), cgoAllocsUnknown
+ allocsdb619e1c.Borrow(cimageFormat_allocs)
- var ccomponents_allocs *cgoAllocMap
- ref77e8d4b8.components, ccomponents_allocs = x.Components.PassValue()
- allocs77e8d4b8.Borrow(ccomponents_allocs)
+ var cimageColorSpace_allocs *cgoAllocMap
+ refdb619e1c.imageColorSpace, cimageColorSpace_allocs = (C.VkColorSpaceKHR)(x.ImageColorSpace), cgoAllocsUnknown
+ allocsdb619e1c.Borrow(cimageColorSpace_allocs)
- var csubresourceRange_allocs *cgoAllocMap
- ref77e8d4b8.subresourceRange, csubresourceRange_allocs = x.SubresourceRange.PassValue()
- allocs77e8d4b8.Borrow(csubresourceRange_allocs)
+ var cimageExtent_allocs *cgoAllocMap
+ refdb619e1c.imageExtent, cimageExtent_allocs = x.ImageExtent.PassValue()
+ allocsdb619e1c.Borrow(cimageExtent_allocs)
- x.ref77e8d4b8 = ref77e8d4b8
- x.allocs77e8d4b8 = allocs77e8d4b8
- return ref77e8d4b8, allocs77e8d4b8
+ var cimageArrayLayers_allocs *cgoAllocMap
+ refdb619e1c.imageArrayLayers, cimageArrayLayers_allocs = (C.uint32_t)(x.ImageArrayLayers), cgoAllocsUnknown
+ allocsdb619e1c.Borrow(cimageArrayLayers_allocs)
+
+ var cimageUsage_allocs *cgoAllocMap
+ refdb619e1c.imageUsage, cimageUsage_allocs = (C.VkImageUsageFlags)(x.ImageUsage), cgoAllocsUnknown
+ allocsdb619e1c.Borrow(cimageUsage_allocs)
+
+ var cimageSharingMode_allocs *cgoAllocMap
+ refdb619e1c.imageSharingMode, cimageSharingMode_allocs = (C.VkSharingMode)(x.ImageSharingMode), cgoAllocsUnknown
+ allocsdb619e1c.Borrow(cimageSharingMode_allocs)
+
+ var cqueueFamilyIndexCount_allocs *cgoAllocMap
+ refdb619e1c.queueFamilyIndexCount, cqueueFamilyIndexCount_allocs = (C.uint32_t)(x.QueueFamilyIndexCount), cgoAllocsUnknown
+ allocsdb619e1c.Borrow(cqueueFamilyIndexCount_allocs)
+
+ var cpQueueFamilyIndices_allocs *cgoAllocMap
+ refdb619e1c.pQueueFamilyIndices, cpQueueFamilyIndices_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PQueueFamilyIndices)).Data)), cgoAllocsUnknown
+ allocsdb619e1c.Borrow(cpQueueFamilyIndices_allocs)
+
+ var cpreTransform_allocs *cgoAllocMap
+ refdb619e1c.preTransform, cpreTransform_allocs = (C.VkSurfaceTransformFlagBitsKHR)(x.PreTransform), cgoAllocsUnknown
+ allocsdb619e1c.Borrow(cpreTransform_allocs)
+
+ var ccompositeAlpha_allocs *cgoAllocMap
+ refdb619e1c.compositeAlpha, ccompositeAlpha_allocs = (C.VkCompositeAlphaFlagBitsKHR)(x.CompositeAlpha), cgoAllocsUnknown
+ allocsdb619e1c.Borrow(ccompositeAlpha_allocs)
+
+ var cpresentMode_allocs *cgoAllocMap
+ refdb619e1c.presentMode, cpresentMode_allocs = (C.VkPresentModeKHR)(x.PresentMode), cgoAllocsUnknown
+ allocsdb619e1c.Borrow(cpresentMode_allocs)
+
+ var cclipped_allocs *cgoAllocMap
+ refdb619e1c.clipped, cclipped_allocs = (C.VkBool32)(x.Clipped), cgoAllocsUnknown
+ allocsdb619e1c.Borrow(cclipped_allocs)
+
+ var coldSwapchain_allocs *cgoAllocMap
+ refdb619e1c.oldSwapchain, coldSwapchain_allocs = *(*C.VkSwapchainKHR)(unsafe.Pointer(&x.OldSwapchain)), cgoAllocsUnknown
+ allocsdb619e1c.Borrow(coldSwapchain_allocs)
+
+ x.refdb619e1c = refdb619e1c
+ x.allocsdb619e1c = allocsdb619e1c
+ return refdb619e1c, allocsdb619e1c
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ImageViewCreateInfo) PassValue() (C.VkImageViewCreateInfo, *cgoAllocMap) {
- if x.ref77e8d4b8 != nil {
- return *x.ref77e8d4b8, nil
+func (x SwapchainCreateInfo) PassValue() (C.VkSwapchainCreateInfoKHR, *cgoAllocMap) {
+ if x.refdb619e1c != nil {
+ return *x.refdb619e1c, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -5611,103 +33099,129 @@ func (x ImageViewCreateInfo) PassValue() (C.VkImageViewCreateInfo, *cgoAllocMap)
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ImageViewCreateInfo) Deref() {
- if x.ref77e8d4b8 == nil {
+func (x *SwapchainCreateInfo) Deref() {
+ if x.refdb619e1c == nil {
return
}
- x.SType = (StructureType)(x.ref77e8d4b8.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref77e8d4b8.pNext))
- x.Flags = (ImageViewCreateFlags)(x.ref77e8d4b8.flags)
- x.Image = *(*Image)(unsafe.Pointer(&x.ref77e8d4b8.image))
- x.ViewType = (ImageViewType)(x.ref77e8d4b8.viewType)
- x.Format = (Format)(x.ref77e8d4b8.format)
- x.Components = *NewComponentMappingRef(unsafe.Pointer(&x.ref77e8d4b8.components))
- x.SubresourceRange = *NewImageSubresourceRangeRef(unsafe.Pointer(&x.ref77e8d4b8.subresourceRange))
+ x.SType = (StructureType)(x.refdb619e1c.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refdb619e1c.pNext))
+ x.Flags = (SwapchainCreateFlags)(x.refdb619e1c.flags)
+ x.Surface = *(*Surface)(unsafe.Pointer(&x.refdb619e1c.surface))
+ x.MinImageCount = (uint32)(x.refdb619e1c.minImageCount)
+ x.ImageFormat = (Format)(x.refdb619e1c.imageFormat)
+ x.ImageColorSpace = (ColorSpace)(x.refdb619e1c.imageColorSpace)
+ x.ImageExtent = *NewExtent2DRef(unsafe.Pointer(&x.refdb619e1c.imageExtent))
+ x.ImageArrayLayers = (uint32)(x.refdb619e1c.imageArrayLayers)
+ x.ImageUsage = (ImageUsageFlags)(x.refdb619e1c.imageUsage)
+ x.ImageSharingMode = (SharingMode)(x.refdb619e1c.imageSharingMode)
+ x.QueueFamilyIndexCount = (uint32)(x.refdb619e1c.queueFamilyIndexCount)
+ hxf8e0dd2 := (*sliceHeader)(unsafe.Pointer(&x.PQueueFamilyIndices))
+ hxf8e0dd2.Data = unsafe.Pointer(x.refdb619e1c.pQueueFamilyIndices)
+ hxf8e0dd2.Cap = 0x7fffffff
+ // hxf8e0dd2.Len = ?
+
+ x.PreTransform = (SurfaceTransformFlagBits)(x.refdb619e1c.preTransform)
+ x.CompositeAlpha = (CompositeAlphaFlagBits)(x.refdb619e1c.compositeAlpha)
+ x.PresentMode = (PresentMode)(x.refdb619e1c.presentMode)
+ x.Clipped = (Bool32)(x.refdb619e1c.clipped)
+ x.OldSwapchain = *(*Swapchain)(unsafe.Pointer(&x.refdb619e1c.oldSwapchain))
}
-// allocShaderModuleCreateInfoMemory allocates memory for type C.VkShaderModuleCreateInfo in C.
+// allocPresentInfoMemory allocates memory for type C.VkPresentInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocShaderModuleCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfShaderModuleCreateInfoValue))
+func allocPresentInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPresentInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfShaderModuleCreateInfoValue = unsafe.Sizeof([1]C.VkShaderModuleCreateInfo{})
+const sizeOfPresentInfoValue = unsafe.Sizeof([1]C.VkPresentInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ShaderModuleCreateInfo) Ref() *C.VkShaderModuleCreateInfo {
+func (x *PresentInfo) Ref() *C.VkPresentInfoKHR {
if x == nil {
return nil
}
- return x.refc663d23e
+ return x.ref1d0e82d4
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ShaderModuleCreateInfo) Free() {
- if x != nil && x.allocsc663d23e != nil {
- x.allocsc663d23e.(*cgoAllocMap).Free()
- x.refc663d23e = nil
+func (x *PresentInfo) Free() {
+ if x != nil && x.allocs1d0e82d4 != nil {
+ x.allocs1d0e82d4.(*cgoAllocMap).Free()
+ x.ref1d0e82d4 = nil
}
}
-// NewShaderModuleCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPresentInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewShaderModuleCreateInfoRef(ref unsafe.Pointer) *ShaderModuleCreateInfo {
+func NewPresentInfoRef(ref unsafe.Pointer) *PresentInfo {
if ref == nil {
return nil
}
- obj := new(ShaderModuleCreateInfo)
- obj.refc663d23e = (*C.VkShaderModuleCreateInfo)(unsafe.Pointer(ref))
+ obj := new(PresentInfo)
+ obj.ref1d0e82d4 = (*C.VkPresentInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ShaderModuleCreateInfo) PassRef() (*C.VkShaderModuleCreateInfo, *cgoAllocMap) {
+func (x *PresentInfo) PassRef() (*C.VkPresentInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refc663d23e != nil {
- return x.refc663d23e, nil
+ } else if x.ref1d0e82d4 != nil {
+ return x.ref1d0e82d4, nil
}
- memc663d23e := allocShaderModuleCreateInfoMemory(1)
- refc663d23e := (*C.VkShaderModuleCreateInfo)(memc663d23e)
- allocsc663d23e := new(cgoAllocMap)
- allocsc663d23e.Add(memc663d23e)
+ mem1d0e82d4 := allocPresentInfoMemory(1)
+ ref1d0e82d4 := (*C.VkPresentInfoKHR)(mem1d0e82d4)
+ allocs1d0e82d4 := new(cgoAllocMap)
+ allocs1d0e82d4.Add(mem1d0e82d4)
var csType_allocs *cgoAllocMap
- refc663d23e.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsc663d23e.Borrow(csType_allocs)
+ ref1d0e82d4.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs1d0e82d4.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refc663d23e.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsc663d23e.Borrow(cpNext_allocs)
+ ref1d0e82d4.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs1d0e82d4.Borrow(cpNext_allocs)
- var cflags_allocs *cgoAllocMap
- refc663d23e.flags, cflags_allocs = (C.VkShaderModuleCreateFlags)(x.Flags), cgoAllocsUnknown
- allocsc663d23e.Borrow(cflags_allocs)
+ var cwaitSemaphoreCount_allocs *cgoAllocMap
+ ref1d0e82d4.waitSemaphoreCount, cwaitSemaphoreCount_allocs = (C.uint32_t)(x.WaitSemaphoreCount), cgoAllocsUnknown
+ allocs1d0e82d4.Borrow(cwaitSemaphoreCount_allocs)
- var ccodeSize_allocs *cgoAllocMap
- refc663d23e.codeSize, ccodeSize_allocs = (C.size_t)(x.CodeSize), cgoAllocsUnknown
- allocsc663d23e.Borrow(ccodeSize_allocs)
+ var cpWaitSemaphores_allocs *cgoAllocMap
+ ref1d0e82d4.pWaitSemaphores, cpWaitSemaphores_allocs = (*C.VkSemaphore)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PWaitSemaphores)).Data)), cgoAllocsUnknown
+ allocs1d0e82d4.Borrow(cpWaitSemaphores_allocs)
- var cpCode_allocs *cgoAllocMap
- refc663d23e.pCode, cpCode_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PCode)).Data)), cgoAllocsUnknown
- allocsc663d23e.Borrow(cpCode_allocs)
+ var cswapchainCount_allocs *cgoAllocMap
+ ref1d0e82d4.swapchainCount, cswapchainCount_allocs = (C.uint32_t)(x.SwapchainCount), cgoAllocsUnknown
+ allocs1d0e82d4.Borrow(cswapchainCount_allocs)
- x.refc663d23e = refc663d23e
- x.allocsc663d23e = allocsc663d23e
- return refc663d23e, allocsc663d23e
+ var cpSwapchains_allocs *cgoAllocMap
+ ref1d0e82d4.pSwapchains, cpSwapchains_allocs = (*C.VkSwapchainKHR)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PSwapchains)).Data)), cgoAllocsUnknown
+ allocs1d0e82d4.Borrow(cpSwapchains_allocs)
+
+ var cpImageIndices_allocs *cgoAllocMap
+ ref1d0e82d4.pImageIndices, cpImageIndices_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PImageIndices)).Data)), cgoAllocsUnknown
+ allocs1d0e82d4.Borrow(cpImageIndices_allocs)
+
+ var cpResults_allocs *cgoAllocMap
+ ref1d0e82d4.pResults, cpResults_allocs = (*C.VkResult)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PResults)).Data)), cgoAllocsUnknown
+ allocs1d0e82d4.Borrow(cpResults_allocs)
+
+ x.ref1d0e82d4 = ref1d0e82d4
+ x.allocs1d0e82d4 = allocs1d0e82d4
+ return ref1d0e82d4, allocs1d0e82d4
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ShaderModuleCreateInfo) PassValue() (C.VkShaderModuleCreateInfo, *cgoAllocMap) {
- if x.refc663d23e != nil {
- return *x.refc663d23e, nil
+func (x PresentInfo) PassValue() (C.VkPresentInfoKHR, *cgoAllocMap) {
+ if x.ref1d0e82d4 != nil {
+ return *x.ref1d0e82d4, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -5715,104 +33229,111 @@ func (x ShaderModuleCreateInfo) PassValue() (C.VkShaderModuleCreateInfo, *cgoAll
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ShaderModuleCreateInfo) Deref() {
- if x.refc663d23e == nil {
+func (x *PresentInfo) Deref() {
+ if x.ref1d0e82d4 == nil {
return
}
- x.SType = (StructureType)(x.refc663d23e.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc663d23e.pNext))
- x.Flags = (ShaderModuleCreateFlags)(x.refc663d23e.flags)
- x.CodeSize = (uint)(x.refc663d23e.codeSize)
- hxf65bf54 := (*sliceHeader)(unsafe.Pointer(&x.PCode))
- hxf65bf54.Data = unsafe.Pointer(x.refc663d23e.pCode)
- hxf65bf54.Cap = 0x7fffffff
- // hxf65bf54.Len = ?
+ x.SType = (StructureType)(x.ref1d0e82d4.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref1d0e82d4.pNext))
+ x.WaitSemaphoreCount = (uint32)(x.ref1d0e82d4.waitSemaphoreCount)
+ hxf44d909 := (*sliceHeader)(unsafe.Pointer(&x.PWaitSemaphores))
+ hxf44d909.Data = unsafe.Pointer(x.ref1d0e82d4.pWaitSemaphores)
+ hxf44d909.Cap = 0x7fffffff
+ // hxf44d909.Len = ?
+
+ x.SwapchainCount = (uint32)(x.ref1d0e82d4.swapchainCount)
+ hxfa835e7 := (*sliceHeader)(unsafe.Pointer(&x.PSwapchains))
+ hxfa835e7.Data = unsafe.Pointer(x.ref1d0e82d4.pSwapchains)
+ hxfa835e7.Cap = 0x7fffffff
+ // hxfa835e7.Len = ?
+
+ hxf8eae10 := (*sliceHeader)(unsafe.Pointer(&x.PImageIndices))
+ hxf8eae10.Data = unsafe.Pointer(x.ref1d0e82d4.pImageIndices)
+ hxf8eae10.Cap = 0x7fffffff
+ // hxf8eae10.Len = ?
+
+ hxfeb55cf := (*sliceHeader)(unsafe.Pointer(&x.PResults))
+ hxfeb55cf.Data = unsafe.Pointer(x.ref1d0e82d4.pResults)
+ hxfeb55cf.Cap = 0x7fffffff
+ // hxfeb55cf.Len = ?
}
-// allocPipelineCacheCreateInfoMemory allocates memory for type C.VkPipelineCacheCreateInfo in C.
+// allocImageSwapchainCreateInfoMemory allocates memory for type C.VkImageSwapchainCreateInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPipelineCacheCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineCacheCreateInfoValue))
+func allocImageSwapchainCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageSwapchainCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPipelineCacheCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineCacheCreateInfo{})
+const sizeOfImageSwapchainCreateInfoValue = unsafe.Sizeof([1]C.VkImageSwapchainCreateInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PipelineCacheCreateInfo) Ref() *C.VkPipelineCacheCreateInfo {
+func (x *ImageSwapchainCreateInfo) Ref() *C.VkImageSwapchainCreateInfoKHR {
if x == nil {
return nil
}
- return x.reff11e7dd1
+ return x.refd83cc5d0
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PipelineCacheCreateInfo) Free() {
- if x != nil && x.allocsf11e7dd1 != nil {
- x.allocsf11e7dd1.(*cgoAllocMap).Free()
- x.reff11e7dd1 = nil
+func (x *ImageSwapchainCreateInfo) Free() {
+ if x != nil && x.allocsd83cc5d0 != nil {
+ x.allocsd83cc5d0.(*cgoAllocMap).Free()
+ x.refd83cc5d0 = nil
}
}
-// NewPipelineCacheCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewImageSwapchainCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPipelineCacheCreateInfoRef(ref unsafe.Pointer) *PipelineCacheCreateInfo {
+func NewImageSwapchainCreateInfoRef(ref unsafe.Pointer) *ImageSwapchainCreateInfo {
if ref == nil {
return nil
}
- obj := new(PipelineCacheCreateInfo)
- obj.reff11e7dd1 = (*C.VkPipelineCacheCreateInfo)(unsafe.Pointer(ref))
+ obj := new(ImageSwapchainCreateInfo)
+ obj.refd83cc5d0 = (*C.VkImageSwapchainCreateInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PipelineCacheCreateInfo) PassRef() (*C.VkPipelineCacheCreateInfo, *cgoAllocMap) {
+func (x *ImageSwapchainCreateInfo) PassRef() (*C.VkImageSwapchainCreateInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.reff11e7dd1 != nil {
- return x.reff11e7dd1, nil
+ } else if x.refd83cc5d0 != nil {
+ return x.refd83cc5d0, nil
}
- memf11e7dd1 := allocPipelineCacheCreateInfoMemory(1)
- reff11e7dd1 := (*C.VkPipelineCacheCreateInfo)(memf11e7dd1)
- allocsf11e7dd1 := new(cgoAllocMap)
- allocsf11e7dd1.Add(memf11e7dd1)
+ memd83cc5d0 := allocImageSwapchainCreateInfoMemory(1)
+ refd83cc5d0 := (*C.VkImageSwapchainCreateInfoKHR)(memd83cc5d0)
+ allocsd83cc5d0 := new(cgoAllocMap)
+ allocsd83cc5d0.Add(memd83cc5d0)
var csType_allocs *cgoAllocMap
- reff11e7dd1.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsf11e7dd1.Borrow(csType_allocs)
+ refd83cc5d0.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd83cc5d0.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- reff11e7dd1.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsf11e7dd1.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- reff11e7dd1.flags, cflags_allocs = (C.VkPipelineCacheCreateFlags)(x.Flags), cgoAllocsUnknown
- allocsf11e7dd1.Borrow(cflags_allocs)
-
- var cinitialDataSize_allocs *cgoAllocMap
- reff11e7dd1.initialDataSize, cinitialDataSize_allocs = (C.size_t)(x.InitialDataSize), cgoAllocsUnknown
- allocsf11e7dd1.Borrow(cinitialDataSize_allocs)
+ refd83cc5d0.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsd83cc5d0.Borrow(cpNext_allocs)
- var cpInitialData_allocs *cgoAllocMap
- reff11e7dd1.pInitialData, cpInitialData_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PInitialData)), cgoAllocsUnknown
- allocsf11e7dd1.Borrow(cpInitialData_allocs)
+ var cswapchain_allocs *cgoAllocMap
+ refd83cc5d0.swapchain, cswapchain_allocs = *(*C.VkSwapchainKHR)(unsafe.Pointer(&x.Swapchain)), cgoAllocsUnknown
+ allocsd83cc5d0.Borrow(cswapchain_allocs)
- x.reff11e7dd1 = reff11e7dd1
- x.allocsf11e7dd1 = allocsf11e7dd1
- return reff11e7dd1, allocsf11e7dd1
+ x.refd83cc5d0 = refd83cc5d0
+ x.allocsd83cc5d0 = allocsd83cc5d0
+ return refd83cc5d0, allocsd83cc5d0
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PipelineCacheCreateInfo) PassValue() (C.VkPipelineCacheCreateInfo, *cgoAllocMap) {
- if x.reff11e7dd1 != nil {
- return *x.reff11e7dd1, nil
+func (x ImageSwapchainCreateInfo) PassValue() (C.VkImageSwapchainCreateInfoKHR, *cgoAllocMap) {
+ if x.refd83cc5d0 != nil {
+ return *x.refd83cc5d0, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -5820,92 +33341,94 @@ func (x PipelineCacheCreateInfo) PassValue() (C.VkPipelineCacheCreateInfo, *cgoA
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PipelineCacheCreateInfo) Deref() {
- if x.reff11e7dd1 == nil {
+func (x *ImageSwapchainCreateInfo) Deref() {
+ if x.refd83cc5d0 == nil {
return
}
- x.SType = (StructureType)(x.reff11e7dd1.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff11e7dd1.pNext))
- x.Flags = (PipelineCacheCreateFlags)(x.reff11e7dd1.flags)
- x.InitialDataSize = (uint)(x.reff11e7dd1.initialDataSize)
- x.PInitialData = (unsafe.Pointer)(unsafe.Pointer(x.reff11e7dd1.pInitialData))
+ x.SType = (StructureType)(x.refd83cc5d0.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd83cc5d0.pNext))
+ x.Swapchain = *(*Swapchain)(unsafe.Pointer(&x.refd83cc5d0.swapchain))
}
-// allocSpecializationMapEntryMemory allocates memory for type C.VkSpecializationMapEntry in C.
+// allocBindImageMemorySwapchainInfoMemory allocates memory for type C.VkBindImageMemorySwapchainInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSpecializationMapEntryMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSpecializationMapEntryValue))
+func allocBindImageMemorySwapchainInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBindImageMemorySwapchainInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSpecializationMapEntryValue = unsafe.Sizeof([1]C.VkSpecializationMapEntry{})
+const sizeOfBindImageMemorySwapchainInfoValue = unsafe.Sizeof([1]C.VkBindImageMemorySwapchainInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SpecializationMapEntry) Ref() *C.VkSpecializationMapEntry {
+func (x *BindImageMemorySwapchainInfo) Ref() *C.VkBindImageMemorySwapchainInfoKHR {
if x == nil {
return nil
}
- return x.ref2fd815d1
+ return x.ref1aa25cb6
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SpecializationMapEntry) Free() {
- if x != nil && x.allocs2fd815d1 != nil {
- x.allocs2fd815d1.(*cgoAllocMap).Free()
- x.ref2fd815d1 = nil
+func (x *BindImageMemorySwapchainInfo) Free() {
+ if x != nil && x.allocs1aa25cb6 != nil {
+ x.allocs1aa25cb6.(*cgoAllocMap).Free()
+ x.ref1aa25cb6 = nil
}
}
-// NewSpecializationMapEntryRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewBindImageMemorySwapchainInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSpecializationMapEntryRef(ref unsafe.Pointer) *SpecializationMapEntry {
+func NewBindImageMemorySwapchainInfoRef(ref unsafe.Pointer) *BindImageMemorySwapchainInfo {
if ref == nil {
return nil
}
- obj := new(SpecializationMapEntry)
- obj.ref2fd815d1 = (*C.VkSpecializationMapEntry)(unsafe.Pointer(ref))
+ obj := new(BindImageMemorySwapchainInfo)
+ obj.ref1aa25cb6 = (*C.VkBindImageMemorySwapchainInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SpecializationMapEntry) PassRef() (*C.VkSpecializationMapEntry, *cgoAllocMap) {
+func (x *BindImageMemorySwapchainInfo) PassRef() (*C.VkBindImageMemorySwapchainInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref2fd815d1 != nil {
- return x.ref2fd815d1, nil
+ } else if x.ref1aa25cb6 != nil {
+ return x.ref1aa25cb6, nil
}
- mem2fd815d1 := allocSpecializationMapEntryMemory(1)
- ref2fd815d1 := (*C.VkSpecializationMapEntry)(mem2fd815d1)
- allocs2fd815d1 := new(cgoAllocMap)
- allocs2fd815d1.Add(mem2fd815d1)
+ mem1aa25cb6 := allocBindImageMemorySwapchainInfoMemory(1)
+ ref1aa25cb6 := (*C.VkBindImageMemorySwapchainInfoKHR)(mem1aa25cb6)
+ allocs1aa25cb6 := new(cgoAllocMap)
+ allocs1aa25cb6.Add(mem1aa25cb6)
- var cconstantID_allocs *cgoAllocMap
- ref2fd815d1.constantID, cconstantID_allocs = (C.uint32_t)(x.ConstantID), cgoAllocsUnknown
- allocs2fd815d1.Borrow(cconstantID_allocs)
+ var csType_allocs *cgoAllocMap
+ ref1aa25cb6.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs1aa25cb6.Borrow(csType_allocs)
- var coffset_allocs *cgoAllocMap
- ref2fd815d1.offset, coffset_allocs = (C.uint32_t)(x.Offset), cgoAllocsUnknown
- allocs2fd815d1.Borrow(coffset_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref1aa25cb6.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs1aa25cb6.Borrow(cpNext_allocs)
- var csize_allocs *cgoAllocMap
- ref2fd815d1.size, csize_allocs = (C.size_t)(x.Size), cgoAllocsUnknown
- allocs2fd815d1.Borrow(csize_allocs)
+ var cswapchain_allocs *cgoAllocMap
+ ref1aa25cb6.swapchain, cswapchain_allocs = *(*C.VkSwapchainKHR)(unsafe.Pointer(&x.Swapchain)), cgoAllocsUnknown
+ allocs1aa25cb6.Borrow(cswapchain_allocs)
- x.ref2fd815d1 = ref2fd815d1
- x.allocs2fd815d1 = allocs2fd815d1
- return ref2fd815d1, allocs2fd815d1
+ var cimageIndex_allocs *cgoAllocMap
+ ref1aa25cb6.imageIndex, cimageIndex_allocs = (C.uint32_t)(x.ImageIndex), cgoAllocsUnknown
+ allocs1aa25cb6.Borrow(cimageIndex_allocs)
+
+ x.ref1aa25cb6 = ref1aa25cb6
+ x.allocs1aa25cb6 = allocs1aa25cb6
+ return ref1aa25cb6, allocs1aa25cb6
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SpecializationMapEntry) PassValue() (C.VkSpecializationMapEntry, *cgoAllocMap) {
- if x.ref2fd815d1 != nil {
- return *x.ref2fd815d1, nil
+func (x BindImageMemorySwapchainInfo) PassValue() (C.VkBindImageMemorySwapchainInfoKHR, *cgoAllocMap) {
+ if x.ref1aa25cb6 != nil {
+ return *x.ref1aa25cb6, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -5913,132 +33436,107 @@ func (x SpecializationMapEntry) PassValue() (C.VkSpecializationMapEntry, *cgoAll
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SpecializationMapEntry) Deref() {
- if x.ref2fd815d1 == nil {
+func (x *BindImageMemorySwapchainInfo) Deref() {
+ if x.ref1aa25cb6 == nil {
return
}
- x.ConstantID = (uint32)(x.ref2fd815d1.constantID)
- x.Offset = (uint32)(x.ref2fd815d1.offset)
- x.Size = (uint)(x.ref2fd815d1.size)
+ x.SType = (StructureType)(x.ref1aa25cb6.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref1aa25cb6.pNext))
+ x.Swapchain = *(*Swapchain)(unsafe.Pointer(&x.ref1aa25cb6.swapchain))
+ x.ImageIndex = (uint32)(x.ref1aa25cb6.imageIndex)
}
-// allocSpecializationInfoMemory allocates memory for type C.VkSpecializationInfo in C.
+// allocAcquireNextImageInfoMemory allocates memory for type C.VkAcquireNextImageInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSpecializationInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSpecializationInfoValue))
+func allocAcquireNextImageInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfAcquireNextImageInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSpecializationInfoValue = unsafe.Sizeof([1]C.VkSpecializationInfo{})
-
-// unpackSSpecializationMapEntry transforms a sliced Go data structure into plain C format.
-func unpackSSpecializationMapEntry(x []SpecializationMapEntry) (unpacked *C.VkSpecializationMapEntry, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkSpecializationMapEntry) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocSpecializationMapEntryMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkSpecializationMapEntry)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkSpecializationMapEntry)(h.Data)
- return
-}
-
-// packSSpecializationMapEntry reads sliced Go data structure out from plain C format.
-func packSSpecializationMapEntry(v []SpecializationMapEntry, ptr0 *C.VkSpecializationMapEntry) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfSpecializationMapEntryValue]C.VkSpecializationMapEntry)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewSpecializationMapEntryRef(unsafe.Pointer(&ptr1))
- }
-}
+const sizeOfAcquireNextImageInfoValue = unsafe.Sizeof([1]C.VkAcquireNextImageInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SpecializationInfo) Ref() *C.VkSpecializationInfo {
+func (x *AcquireNextImageInfo) Ref() *C.VkAcquireNextImageInfoKHR {
if x == nil {
return nil
}
- return x.ref6bc395a3
+ return x.ref588806a5
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SpecializationInfo) Free() {
- if x != nil && x.allocs6bc395a3 != nil {
- x.allocs6bc395a3.(*cgoAllocMap).Free()
- x.ref6bc395a3 = nil
+func (x *AcquireNextImageInfo) Free() {
+ if x != nil && x.allocs588806a5 != nil {
+ x.allocs588806a5.(*cgoAllocMap).Free()
+ x.ref588806a5 = nil
}
}
-// NewSpecializationInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewAcquireNextImageInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSpecializationInfoRef(ref unsafe.Pointer) *SpecializationInfo {
+func NewAcquireNextImageInfoRef(ref unsafe.Pointer) *AcquireNextImageInfo {
if ref == nil {
return nil
}
- obj := new(SpecializationInfo)
- obj.ref6bc395a3 = (*C.VkSpecializationInfo)(unsafe.Pointer(ref))
+ obj := new(AcquireNextImageInfo)
+ obj.ref588806a5 = (*C.VkAcquireNextImageInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SpecializationInfo) PassRef() (*C.VkSpecializationInfo, *cgoAllocMap) {
+func (x *AcquireNextImageInfo) PassRef() (*C.VkAcquireNextImageInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref6bc395a3 != nil {
- return x.ref6bc395a3, nil
+ } else if x.ref588806a5 != nil {
+ return x.ref588806a5, nil
}
- mem6bc395a3 := allocSpecializationInfoMemory(1)
- ref6bc395a3 := (*C.VkSpecializationInfo)(mem6bc395a3)
- allocs6bc395a3 := new(cgoAllocMap)
- allocs6bc395a3.Add(mem6bc395a3)
+ mem588806a5 := allocAcquireNextImageInfoMemory(1)
+ ref588806a5 := (*C.VkAcquireNextImageInfoKHR)(mem588806a5)
+ allocs588806a5 := new(cgoAllocMap)
+ allocs588806a5.Add(mem588806a5)
- var cmapEntryCount_allocs *cgoAllocMap
- ref6bc395a3.mapEntryCount, cmapEntryCount_allocs = (C.uint32_t)(x.MapEntryCount), cgoAllocsUnknown
- allocs6bc395a3.Borrow(cmapEntryCount_allocs)
+ var csType_allocs *cgoAllocMap
+ ref588806a5.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs588806a5.Borrow(csType_allocs)
- var cpMapEntries_allocs *cgoAllocMap
- ref6bc395a3.pMapEntries, cpMapEntries_allocs = unpackSSpecializationMapEntry(x.PMapEntries)
- allocs6bc395a3.Borrow(cpMapEntries_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref588806a5.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs588806a5.Borrow(cpNext_allocs)
- var cdataSize_allocs *cgoAllocMap
- ref6bc395a3.dataSize, cdataSize_allocs = (C.size_t)(x.DataSize), cgoAllocsUnknown
- allocs6bc395a3.Borrow(cdataSize_allocs)
+ var cswapchain_allocs *cgoAllocMap
+ ref588806a5.swapchain, cswapchain_allocs = *(*C.VkSwapchainKHR)(unsafe.Pointer(&x.Swapchain)), cgoAllocsUnknown
+ allocs588806a5.Borrow(cswapchain_allocs)
- var cpData_allocs *cgoAllocMap
- ref6bc395a3.pData, cpData_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PData)), cgoAllocsUnknown
- allocs6bc395a3.Borrow(cpData_allocs)
+ var ctimeout_allocs *cgoAllocMap
+ ref588806a5.timeout, ctimeout_allocs = (C.uint64_t)(x.Timeout), cgoAllocsUnknown
+ allocs588806a5.Borrow(ctimeout_allocs)
- x.ref6bc395a3 = ref6bc395a3
- x.allocs6bc395a3 = allocs6bc395a3
- return ref6bc395a3, allocs6bc395a3
+ var csemaphore_allocs *cgoAllocMap
+ ref588806a5.semaphore, csemaphore_allocs = *(*C.VkSemaphore)(unsafe.Pointer(&x.Semaphore)), cgoAllocsUnknown
+ allocs588806a5.Borrow(csemaphore_allocs)
+
+ var cfence_allocs *cgoAllocMap
+ ref588806a5.fence, cfence_allocs = *(*C.VkFence)(unsafe.Pointer(&x.Fence)), cgoAllocsUnknown
+ allocs588806a5.Borrow(cfence_allocs)
+
+ var cdeviceMask_allocs *cgoAllocMap
+ ref588806a5.deviceMask, cdeviceMask_allocs = (C.uint32_t)(x.DeviceMask), cgoAllocsUnknown
+ allocs588806a5.Borrow(cdeviceMask_allocs)
+
+ x.ref588806a5 = ref588806a5
+ x.allocs588806a5 = allocs588806a5
+ return ref588806a5, allocs588806a5
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SpecializationInfo) PassValue() (C.VkSpecializationInfo, *cgoAllocMap) {
- if x.ref6bc395a3 != nil {
- return *x.ref6bc395a3, nil
+func (x AcquireNextImageInfo) PassValue() (C.VkAcquireNextImageInfoKHR, *cgoAllocMap) {
+ if x.ref588806a5 != nil {
+ return *x.ref588806a5, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -6046,145 +33544,98 @@ func (x SpecializationInfo) PassValue() (C.VkSpecializationInfo, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SpecializationInfo) Deref() {
- if x.ref6bc395a3 == nil {
+func (x *AcquireNextImageInfo) Deref() {
+ if x.ref588806a5 == nil {
return
}
- x.MapEntryCount = (uint32)(x.ref6bc395a3.mapEntryCount)
- packSSpecializationMapEntry(x.PMapEntries, x.ref6bc395a3.pMapEntries)
- x.DataSize = (uint)(x.ref6bc395a3.dataSize)
- x.PData = (unsafe.Pointer)(unsafe.Pointer(x.ref6bc395a3.pData))
+ x.SType = (StructureType)(x.ref588806a5.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref588806a5.pNext))
+ x.Swapchain = *(*Swapchain)(unsafe.Pointer(&x.ref588806a5.swapchain))
+ x.Timeout = (uint64)(x.ref588806a5.timeout)
+ x.Semaphore = *(*Semaphore)(unsafe.Pointer(&x.ref588806a5.semaphore))
+ x.Fence = *(*Fence)(unsafe.Pointer(&x.ref588806a5.fence))
+ x.DeviceMask = (uint32)(x.ref588806a5.deviceMask)
}
-// allocPipelineShaderStageCreateInfoMemory allocates memory for type C.VkPipelineShaderStageCreateInfo in C.
+// allocDeviceGroupPresentCapabilitiesMemory allocates memory for type C.VkDeviceGroupPresentCapabilitiesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPipelineShaderStageCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineShaderStageCreateInfoValue))
+func allocDeviceGroupPresentCapabilitiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceGroupPresentCapabilitiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPipelineShaderStageCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineShaderStageCreateInfo{})
-
-// unpackSSpecializationInfo transforms a sliced Go data structure into plain C format.
-func unpackSSpecializationInfo(x []SpecializationInfo) (unpacked *C.VkSpecializationInfo, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkSpecializationInfo) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocSpecializationInfoMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkSpecializationInfo)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkSpecializationInfo)(h.Data)
- return
-}
-
-// packSSpecializationInfo reads sliced Go data structure out from plain C format.
-func packSSpecializationInfo(v []SpecializationInfo, ptr0 *C.VkSpecializationInfo) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfSpecializationInfoValue]C.VkSpecializationInfo)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewSpecializationInfoRef(unsafe.Pointer(&ptr1))
- }
-}
+const sizeOfDeviceGroupPresentCapabilitiesValue = unsafe.Sizeof([1]C.VkDeviceGroupPresentCapabilitiesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PipelineShaderStageCreateInfo) Ref() *C.VkPipelineShaderStageCreateInfo {
+func (x *DeviceGroupPresentCapabilities) Ref() *C.VkDeviceGroupPresentCapabilitiesKHR {
if x == nil {
return nil
}
- return x.ref50ba8b60
+ return x.refa3962c81
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PipelineShaderStageCreateInfo) Free() {
- if x != nil && x.allocs50ba8b60 != nil {
- x.allocs50ba8b60.(*cgoAllocMap).Free()
- x.ref50ba8b60 = nil
+func (x *DeviceGroupPresentCapabilities) Free() {
+ if x != nil && x.allocsa3962c81 != nil {
+ x.allocsa3962c81.(*cgoAllocMap).Free()
+ x.refa3962c81 = nil
}
}
-// NewPipelineShaderStageCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDeviceGroupPresentCapabilitiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPipelineShaderStageCreateInfoRef(ref unsafe.Pointer) *PipelineShaderStageCreateInfo {
+func NewDeviceGroupPresentCapabilitiesRef(ref unsafe.Pointer) *DeviceGroupPresentCapabilities {
if ref == nil {
return nil
}
- obj := new(PipelineShaderStageCreateInfo)
- obj.ref50ba8b60 = (*C.VkPipelineShaderStageCreateInfo)(unsafe.Pointer(ref))
+ obj := new(DeviceGroupPresentCapabilities)
+ obj.refa3962c81 = (*C.VkDeviceGroupPresentCapabilitiesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PipelineShaderStageCreateInfo) PassRef() (*C.VkPipelineShaderStageCreateInfo, *cgoAllocMap) {
+func (x *DeviceGroupPresentCapabilities) PassRef() (*C.VkDeviceGroupPresentCapabilitiesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref50ba8b60 != nil {
- return x.ref50ba8b60, nil
+ } else if x.refa3962c81 != nil {
+ return x.refa3962c81, nil
}
- mem50ba8b60 := allocPipelineShaderStageCreateInfoMemory(1)
- ref50ba8b60 := (*C.VkPipelineShaderStageCreateInfo)(mem50ba8b60)
- allocs50ba8b60 := new(cgoAllocMap)
- allocs50ba8b60.Add(mem50ba8b60)
+ mema3962c81 := allocDeviceGroupPresentCapabilitiesMemory(1)
+ refa3962c81 := (*C.VkDeviceGroupPresentCapabilitiesKHR)(mema3962c81)
+ allocsa3962c81 := new(cgoAllocMap)
+ allocsa3962c81.Add(mema3962c81)
var csType_allocs *cgoAllocMap
- ref50ba8b60.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs50ba8b60.Borrow(csType_allocs)
+ refa3962c81.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsa3962c81.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref50ba8b60.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs50ba8b60.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- ref50ba8b60.flags, cflags_allocs = (C.VkPipelineShaderStageCreateFlags)(x.Flags), cgoAllocsUnknown
- allocs50ba8b60.Borrow(cflags_allocs)
-
- var cstage_allocs *cgoAllocMap
- ref50ba8b60.stage, cstage_allocs = (C.VkShaderStageFlagBits)(x.Stage), cgoAllocsUnknown
- allocs50ba8b60.Borrow(cstage_allocs)
-
- var cmodule_allocs *cgoAllocMap
- ref50ba8b60.module, cmodule_allocs = *(*C.VkShaderModule)(unsafe.Pointer(&x.Module)), cgoAllocsUnknown
- allocs50ba8b60.Borrow(cmodule_allocs)
+ refa3962c81.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsa3962c81.Borrow(cpNext_allocs)
- var cpName_allocs *cgoAllocMap
- ref50ba8b60.pName, cpName_allocs = unpackPCharString(x.PName)
- allocs50ba8b60.Borrow(cpName_allocs)
+ var cpresentMask_allocs *cgoAllocMap
+ refa3962c81.presentMask, cpresentMask_allocs = *(*[32]C.uint32_t)(unsafe.Pointer(&x.PresentMask)), cgoAllocsUnknown
+ allocsa3962c81.Borrow(cpresentMask_allocs)
- var cpSpecializationInfo_allocs *cgoAllocMap
- ref50ba8b60.pSpecializationInfo, cpSpecializationInfo_allocs = unpackSSpecializationInfo(x.PSpecializationInfo)
- allocs50ba8b60.Borrow(cpSpecializationInfo_allocs)
+ var cmodes_allocs *cgoAllocMap
+ refa3962c81.modes, cmodes_allocs = (C.VkDeviceGroupPresentModeFlagsKHR)(x.Modes), cgoAllocsUnknown
+ allocsa3962c81.Borrow(cmodes_allocs)
- x.ref50ba8b60 = ref50ba8b60
- x.allocs50ba8b60 = allocs50ba8b60
- return ref50ba8b60, allocs50ba8b60
+ x.refa3962c81 = refa3962c81
+ x.allocsa3962c81 = allocsa3962c81
+ return refa3962c81, allocsa3962c81
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PipelineShaderStageCreateInfo) PassValue() (C.VkPipelineShaderStageCreateInfo, *cgoAllocMap) {
- if x.ref50ba8b60 != nil {
- return *x.ref50ba8b60, nil
+func (x DeviceGroupPresentCapabilities) PassValue() (C.VkDeviceGroupPresentCapabilitiesKHR, *cgoAllocMap) {
+ if x.refa3962c81 != nil {
+ return *x.refa3962c81, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -6192,94 +33643,99 @@ func (x PipelineShaderStageCreateInfo) PassValue() (C.VkPipelineShaderStageCreat
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PipelineShaderStageCreateInfo) Deref() {
- if x.ref50ba8b60 == nil {
+func (x *DeviceGroupPresentCapabilities) Deref() {
+ if x.refa3962c81 == nil {
return
}
- x.SType = (StructureType)(x.ref50ba8b60.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref50ba8b60.pNext))
- x.Flags = (PipelineShaderStageCreateFlags)(x.ref50ba8b60.flags)
- x.Stage = (ShaderStageFlagBits)(x.ref50ba8b60.stage)
- x.Module = *(*ShaderModule)(unsafe.Pointer(&x.ref50ba8b60.module))
- x.PName = packPCharString(x.ref50ba8b60.pName)
- packSSpecializationInfo(x.PSpecializationInfo, x.ref50ba8b60.pSpecializationInfo)
+ x.SType = (StructureType)(x.refa3962c81.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa3962c81.pNext))
+ x.PresentMask = *(*[32]uint32)(unsafe.Pointer(&x.refa3962c81.presentMask))
+ x.Modes = (DeviceGroupPresentModeFlags)(x.refa3962c81.modes)
}
-// allocVertexInputBindingDescriptionMemory allocates memory for type C.VkVertexInputBindingDescription in C.
+// allocDeviceGroupPresentInfoMemory allocates memory for type C.VkDeviceGroupPresentInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocVertexInputBindingDescriptionMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfVertexInputBindingDescriptionValue))
+func allocDeviceGroupPresentInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceGroupPresentInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfVertexInputBindingDescriptionValue = unsafe.Sizeof([1]C.VkVertexInputBindingDescription{})
+const sizeOfDeviceGroupPresentInfoValue = unsafe.Sizeof([1]C.VkDeviceGroupPresentInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *VertexInputBindingDescription) Ref() *C.VkVertexInputBindingDescription {
+func (x *DeviceGroupPresentInfo) Ref() *C.VkDeviceGroupPresentInfoKHR {
if x == nil {
return nil
}
- return x.ref5c9d8c23
+ return x.reff6912d09
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *VertexInputBindingDescription) Free() {
- if x != nil && x.allocs5c9d8c23 != nil {
- x.allocs5c9d8c23.(*cgoAllocMap).Free()
- x.ref5c9d8c23 = nil
+func (x *DeviceGroupPresentInfo) Free() {
+ if x != nil && x.allocsf6912d09 != nil {
+ x.allocsf6912d09.(*cgoAllocMap).Free()
+ x.reff6912d09 = nil
}
}
-// NewVertexInputBindingDescriptionRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDeviceGroupPresentInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewVertexInputBindingDescriptionRef(ref unsafe.Pointer) *VertexInputBindingDescription {
+func NewDeviceGroupPresentInfoRef(ref unsafe.Pointer) *DeviceGroupPresentInfo {
if ref == nil {
return nil
}
- obj := new(VertexInputBindingDescription)
- obj.ref5c9d8c23 = (*C.VkVertexInputBindingDescription)(unsafe.Pointer(ref))
+ obj := new(DeviceGroupPresentInfo)
+ obj.reff6912d09 = (*C.VkDeviceGroupPresentInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *VertexInputBindingDescription) PassRef() (*C.VkVertexInputBindingDescription, *cgoAllocMap) {
+func (x *DeviceGroupPresentInfo) PassRef() (*C.VkDeviceGroupPresentInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref5c9d8c23 != nil {
- return x.ref5c9d8c23, nil
+ } else if x.reff6912d09 != nil {
+ return x.reff6912d09, nil
}
- mem5c9d8c23 := allocVertexInputBindingDescriptionMemory(1)
- ref5c9d8c23 := (*C.VkVertexInputBindingDescription)(mem5c9d8c23)
- allocs5c9d8c23 := new(cgoAllocMap)
- allocs5c9d8c23.Add(mem5c9d8c23)
+ memf6912d09 := allocDeviceGroupPresentInfoMemory(1)
+ reff6912d09 := (*C.VkDeviceGroupPresentInfoKHR)(memf6912d09)
+ allocsf6912d09 := new(cgoAllocMap)
+ allocsf6912d09.Add(memf6912d09)
- var cbinding_allocs *cgoAllocMap
- ref5c9d8c23.binding, cbinding_allocs = (C.uint32_t)(x.Binding), cgoAllocsUnknown
- allocs5c9d8c23.Borrow(cbinding_allocs)
+ var csType_allocs *cgoAllocMap
+ reff6912d09.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsf6912d09.Borrow(csType_allocs)
- var cstride_allocs *cgoAllocMap
- ref5c9d8c23.stride, cstride_allocs = (C.uint32_t)(x.Stride), cgoAllocsUnknown
- allocs5c9d8c23.Borrow(cstride_allocs)
+ var cpNext_allocs *cgoAllocMap
+ reff6912d09.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsf6912d09.Borrow(cpNext_allocs)
- var cinputRate_allocs *cgoAllocMap
- ref5c9d8c23.inputRate, cinputRate_allocs = (C.VkVertexInputRate)(x.InputRate), cgoAllocsUnknown
- allocs5c9d8c23.Borrow(cinputRate_allocs)
+ var cswapchainCount_allocs *cgoAllocMap
+ reff6912d09.swapchainCount, cswapchainCount_allocs = (C.uint32_t)(x.SwapchainCount), cgoAllocsUnknown
+ allocsf6912d09.Borrow(cswapchainCount_allocs)
- x.ref5c9d8c23 = ref5c9d8c23
- x.allocs5c9d8c23 = allocs5c9d8c23
- return ref5c9d8c23, allocs5c9d8c23
+ var cpDeviceMasks_allocs *cgoAllocMap
+ reff6912d09.pDeviceMasks, cpDeviceMasks_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PDeviceMasks)).Data)), cgoAllocsUnknown
+ allocsf6912d09.Borrow(cpDeviceMasks_allocs)
+
+ var cmode_allocs *cgoAllocMap
+ reff6912d09.mode, cmode_allocs = (C.VkDeviceGroupPresentModeFlagBitsKHR)(x.Mode), cgoAllocsUnknown
+ allocsf6912d09.Borrow(cmode_allocs)
+
+ x.reff6912d09 = reff6912d09
+ x.allocsf6912d09 = allocsf6912d09
+ return reff6912d09, allocsf6912d09
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x VertexInputBindingDescription) PassValue() (C.VkVertexInputBindingDescription, *cgoAllocMap) {
- if x.ref5c9d8c23 != nil {
- return *x.ref5c9d8c23, nil
+func (x DeviceGroupPresentInfo) PassValue() (C.VkDeviceGroupPresentInfoKHR, *cgoAllocMap) {
+ if x.reff6912d09 != nil {
+ return *x.reff6912d09, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -6287,94 +33743,96 @@ func (x VertexInputBindingDescription) PassValue() (C.VkVertexInputBindingDescri
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *VertexInputBindingDescription) Deref() {
- if x.ref5c9d8c23 == nil {
+func (x *DeviceGroupPresentInfo) Deref() {
+ if x.reff6912d09 == nil {
return
}
- x.Binding = (uint32)(x.ref5c9d8c23.binding)
- x.Stride = (uint32)(x.ref5c9d8c23.stride)
- x.InputRate = (VertexInputRate)(x.ref5c9d8c23.inputRate)
+ x.SType = (StructureType)(x.reff6912d09.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff6912d09.pNext))
+ x.SwapchainCount = (uint32)(x.reff6912d09.swapchainCount)
+ hxf458096 := (*sliceHeader)(unsafe.Pointer(&x.PDeviceMasks))
+ hxf458096.Data = unsafe.Pointer(x.reff6912d09.pDeviceMasks)
+ hxf458096.Cap = 0x7fffffff
+ // hxf458096.Len = ?
+
+ x.Mode = (DeviceGroupPresentModeFlagBits)(x.reff6912d09.mode)
}
-// allocVertexInputAttributeDescriptionMemory allocates memory for type C.VkVertexInputAttributeDescription in C.
+// allocDeviceGroupSwapchainCreateInfoMemory allocates memory for type C.VkDeviceGroupSwapchainCreateInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocVertexInputAttributeDescriptionMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfVertexInputAttributeDescriptionValue))
+func allocDeviceGroupSwapchainCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceGroupSwapchainCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfVertexInputAttributeDescriptionValue = unsafe.Sizeof([1]C.VkVertexInputAttributeDescription{})
+const sizeOfDeviceGroupSwapchainCreateInfoValue = unsafe.Sizeof([1]C.VkDeviceGroupSwapchainCreateInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *VertexInputAttributeDescription) Ref() *C.VkVertexInputAttributeDescription {
+func (x *DeviceGroupSwapchainCreateInfo) Ref() *C.VkDeviceGroupSwapchainCreateInfoKHR {
if x == nil {
return nil
}
- return x.refdc4635ff
+ return x.ref44ae0c0e
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *VertexInputAttributeDescription) Free() {
- if x != nil && x.allocsdc4635ff != nil {
- x.allocsdc4635ff.(*cgoAllocMap).Free()
- x.refdc4635ff = nil
+func (x *DeviceGroupSwapchainCreateInfo) Free() {
+ if x != nil && x.allocs44ae0c0e != nil {
+ x.allocs44ae0c0e.(*cgoAllocMap).Free()
+ x.ref44ae0c0e = nil
}
}
-// NewVertexInputAttributeDescriptionRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDeviceGroupSwapchainCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewVertexInputAttributeDescriptionRef(ref unsafe.Pointer) *VertexInputAttributeDescription {
+func NewDeviceGroupSwapchainCreateInfoRef(ref unsafe.Pointer) *DeviceGroupSwapchainCreateInfo {
if ref == nil {
return nil
}
- obj := new(VertexInputAttributeDescription)
- obj.refdc4635ff = (*C.VkVertexInputAttributeDescription)(unsafe.Pointer(ref))
+ obj := new(DeviceGroupSwapchainCreateInfo)
+ obj.ref44ae0c0e = (*C.VkDeviceGroupSwapchainCreateInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *VertexInputAttributeDescription) PassRef() (*C.VkVertexInputAttributeDescription, *cgoAllocMap) {
+func (x *DeviceGroupSwapchainCreateInfo) PassRef() (*C.VkDeviceGroupSwapchainCreateInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refdc4635ff != nil {
- return x.refdc4635ff, nil
+ } else if x.ref44ae0c0e != nil {
+ return x.ref44ae0c0e, nil
}
- memdc4635ff := allocVertexInputAttributeDescriptionMemory(1)
- refdc4635ff := (*C.VkVertexInputAttributeDescription)(memdc4635ff)
- allocsdc4635ff := new(cgoAllocMap)
- allocsdc4635ff.Add(memdc4635ff)
-
- var clocation_allocs *cgoAllocMap
- refdc4635ff.location, clocation_allocs = (C.uint32_t)(x.Location), cgoAllocsUnknown
- allocsdc4635ff.Borrow(clocation_allocs)
+ mem44ae0c0e := allocDeviceGroupSwapchainCreateInfoMemory(1)
+ ref44ae0c0e := (*C.VkDeviceGroupSwapchainCreateInfoKHR)(mem44ae0c0e)
+ allocs44ae0c0e := new(cgoAllocMap)
+ allocs44ae0c0e.Add(mem44ae0c0e)
- var cbinding_allocs *cgoAllocMap
- refdc4635ff.binding, cbinding_allocs = (C.uint32_t)(x.Binding), cgoAllocsUnknown
- allocsdc4635ff.Borrow(cbinding_allocs)
+ var csType_allocs *cgoAllocMap
+ ref44ae0c0e.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs44ae0c0e.Borrow(csType_allocs)
- var cformat_allocs *cgoAllocMap
- refdc4635ff.format, cformat_allocs = (C.VkFormat)(x.Format), cgoAllocsUnknown
- allocsdc4635ff.Borrow(cformat_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref44ae0c0e.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs44ae0c0e.Borrow(cpNext_allocs)
- var coffset_allocs *cgoAllocMap
- refdc4635ff.offset, coffset_allocs = (C.uint32_t)(x.Offset), cgoAllocsUnknown
- allocsdc4635ff.Borrow(coffset_allocs)
+ var cmodes_allocs *cgoAllocMap
+ ref44ae0c0e.modes, cmodes_allocs = (C.VkDeviceGroupPresentModeFlagsKHR)(x.Modes), cgoAllocsUnknown
+ allocs44ae0c0e.Borrow(cmodes_allocs)
- x.refdc4635ff = refdc4635ff
- x.allocsdc4635ff = allocsdc4635ff
- return refdc4635ff, allocsdc4635ff
+ x.ref44ae0c0e = ref44ae0c0e
+ x.allocs44ae0c0e = allocs44ae0c0e
+ return ref44ae0c0e, allocs44ae0c0e
}
-// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x VertexInputAttributeDescription) PassValue() (C.VkVertexInputAttributeDescription, *cgoAllocMap) {
- if x.refdc4635ff != nil {
- return *x.refdc4635ff, nil
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DeviceGroupSwapchainCreateInfo) PassValue() (C.VkDeviceGroupSwapchainCreateInfoKHR, *cgoAllocMap) {
+ if x.ref44ae0c0e != nil {
+ return *x.ref44ae0c0e, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -6382,183 +33840,86 @@ func (x VertexInputAttributeDescription) PassValue() (C.VkVertexInputAttributeDe
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *VertexInputAttributeDescription) Deref() {
- if x.refdc4635ff == nil {
+func (x *DeviceGroupSwapchainCreateInfo) Deref() {
+ if x.ref44ae0c0e == nil {
return
}
- x.Location = (uint32)(x.refdc4635ff.location)
- x.Binding = (uint32)(x.refdc4635ff.binding)
- x.Format = (Format)(x.refdc4635ff.format)
- x.Offset = (uint32)(x.refdc4635ff.offset)
+ x.SType = (StructureType)(x.ref44ae0c0e.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref44ae0c0e.pNext))
+ x.Modes = (DeviceGroupPresentModeFlags)(x.ref44ae0c0e.modes)
}
-// allocPipelineVertexInputStateCreateInfoMemory allocates memory for type C.VkPipelineVertexInputStateCreateInfo in C.
+// allocDisplayModeParametersMemory allocates memory for type C.VkDisplayModeParametersKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPipelineVertexInputStateCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineVertexInputStateCreateInfoValue))
+func allocDisplayModeParametersMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplayModeParametersValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPipelineVertexInputStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineVertexInputStateCreateInfo{})
-
-// unpackSVertexInputBindingDescription transforms a sliced Go data structure into plain C format.
-func unpackSVertexInputBindingDescription(x []VertexInputBindingDescription) (unpacked *C.VkVertexInputBindingDescription, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkVertexInputBindingDescription) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocVertexInputBindingDescriptionMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkVertexInputBindingDescription)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkVertexInputBindingDescription)(h.Data)
- return
-}
-
-// unpackSVertexInputAttributeDescription transforms a sliced Go data structure into plain C format.
-func unpackSVertexInputAttributeDescription(x []VertexInputAttributeDescription) (unpacked *C.VkVertexInputAttributeDescription, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkVertexInputAttributeDescription) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocVertexInputAttributeDescriptionMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkVertexInputAttributeDescription)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkVertexInputAttributeDescription)(h.Data)
- return
-}
-
-// packSVertexInputBindingDescription reads sliced Go data structure out from plain C format.
-func packSVertexInputBindingDescription(v []VertexInputBindingDescription, ptr0 *C.VkVertexInputBindingDescription) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfVertexInputBindingDescriptionValue]C.VkVertexInputBindingDescription)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewVertexInputBindingDescriptionRef(unsafe.Pointer(&ptr1))
- }
-}
-
-// packSVertexInputAttributeDescription reads sliced Go data structure out from plain C format.
-func packSVertexInputAttributeDescription(v []VertexInputAttributeDescription, ptr0 *C.VkVertexInputAttributeDescription) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfVertexInputAttributeDescriptionValue]C.VkVertexInputAttributeDescription)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewVertexInputAttributeDescriptionRef(unsafe.Pointer(&ptr1))
- }
-}
+const sizeOfDisplayModeParametersValue = unsafe.Sizeof([1]C.VkDisplayModeParametersKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PipelineVertexInputStateCreateInfo) Ref() *C.VkPipelineVertexInputStateCreateInfo {
+func (x *DisplayModeParameters) Ref() *C.VkDisplayModeParametersKHR {
if x == nil {
return nil
}
- return x.ref5fe4aa50
+ return x.refe016f77f
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PipelineVertexInputStateCreateInfo) Free() {
- if x != nil && x.allocs5fe4aa50 != nil {
- x.allocs5fe4aa50.(*cgoAllocMap).Free()
- x.ref5fe4aa50 = nil
+func (x *DisplayModeParameters) Free() {
+ if x != nil && x.allocse016f77f != nil {
+ x.allocse016f77f.(*cgoAllocMap).Free()
+ x.refe016f77f = nil
}
}
-// NewPipelineVertexInputStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDisplayModeParametersRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPipelineVertexInputStateCreateInfoRef(ref unsafe.Pointer) *PipelineVertexInputStateCreateInfo {
+func NewDisplayModeParametersRef(ref unsafe.Pointer) *DisplayModeParameters {
if ref == nil {
return nil
}
- obj := new(PipelineVertexInputStateCreateInfo)
- obj.ref5fe4aa50 = (*C.VkPipelineVertexInputStateCreateInfo)(unsafe.Pointer(ref))
+ obj := new(DisplayModeParameters)
+ obj.refe016f77f = (*C.VkDisplayModeParametersKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PipelineVertexInputStateCreateInfo) PassRef() (*C.VkPipelineVertexInputStateCreateInfo, *cgoAllocMap) {
+func (x *DisplayModeParameters) PassRef() (*C.VkDisplayModeParametersKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref5fe4aa50 != nil {
- return x.ref5fe4aa50, nil
+ } else if x.refe016f77f != nil {
+ return x.refe016f77f, nil
}
- mem5fe4aa50 := allocPipelineVertexInputStateCreateInfoMemory(1)
- ref5fe4aa50 := (*C.VkPipelineVertexInputStateCreateInfo)(mem5fe4aa50)
- allocs5fe4aa50 := new(cgoAllocMap)
- allocs5fe4aa50.Add(mem5fe4aa50)
-
- var csType_allocs *cgoAllocMap
- ref5fe4aa50.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs5fe4aa50.Borrow(csType_allocs)
-
- var cpNext_allocs *cgoAllocMap
- ref5fe4aa50.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs5fe4aa50.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- ref5fe4aa50.flags, cflags_allocs = (C.VkPipelineVertexInputStateCreateFlags)(x.Flags), cgoAllocsUnknown
- allocs5fe4aa50.Borrow(cflags_allocs)
-
- var cvertexBindingDescriptionCount_allocs *cgoAllocMap
- ref5fe4aa50.vertexBindingDescriptionCount, cvertexBindingDescriptionCount_allocs = (C.uint32_t)(x.VertexBindingDescriptionCount), cgoAllocsUnknown
- allocs5fe4aa50.Borrow(cvertexBindingDescriptionCount_allocs)
-
- var cpVertexBindingDescriptions_allocs *cgoAllocMap
- ref5fe4aa50.pVertexBindingDescriptions, cpVertexBindingDescriptions_allocs = unpackSVertexInputBindingDescription(x.PVertexBindingDescriptions)
- allocs5fe4aa50.Borrow(cpVertexBindingDescriptions_allocs)
+ meme016f77f := allocDisplayModeParametersMemory(1)
+ refe016f77f := (*C.VkDisplayModeParametersKHR)(meme016f77f)
+ allocse016f77f := new(cgoAllocMap)
+ allocse016f77f.Add(meme016f77f)
- var cvertexAttributeDescriptionCount_allocs *cgoAllocMap
- ref5fe4aa50.vertexAttributeDescriptionCount, cvertexAttributeDescriptionCount_allocs = (C.uint32_t)(x.VertexAttributeDescriptionCount), cgoAllocsUnknown
- allocs5fe4aa50.Borrow(cvertexAttributeDescriptionCount_allocs)
+ var cvisibleRegion_allocs *cgoAllocMap
+ refe016f77f.visibleRegion, cvisibleRegion_allocs = x.VisibleRegion.PassValue()
+ allocse016f77f.Borrow(cvisibleRegion_allocs)
- var cpVertexAttributeDescriptions_allocs *cgoAllocMap
- ref5fe4aa50.pVertexAttributeDescriptions, cpVertexAttributeDescriptions_allocs = unpackSVertexInputAttributeDescription(x.PVertexAttributeDescriptions)
- allocs5fe4aa50.Borrow(cpVertexAttributeDescriptions_allocs)
+ var crefreshRate_allocs *cgoAllocMap
+ refe016f77f.refreshRate, crefreshRate_allocs = (C.uint32_t)(x.RefreshRate), cgoAllocsUnknown
+ allocse016f77f.Borrow(crefreshRate_allocs)
- x.ref5fe4aa50 = ref5fe4aa50
- x.allocs5fe4aa50 = allocs5fe4aa50
- return ref5fe4aa50, allocs5fe4aa50
+ x.refe016f77f = refe016f77f
+ x.allocse016f77f = allocse016f77f
+ return refe016f77f, allocse016f77f
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PipelineVertexInputStateCreateInfo) PassValue() (C.VkPipelineVertexInputStateCreateInfo, *cgoAllocMap) {
- if x.ref5fe4aa50 != nil {
- return *x.ref5fe4aa50, nil
+func (x DisplayModeParameters) PassValue() (C.VkDisplayModeParametersKHR, *cgoAllocMap) {
+ if x.refe016f77f != nil {
+ return *x.refe016f77f, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -6566,102 +33927,93 @@ func (x PipelineVertexInputStateCreateInfo) PassValue() (C.VkPipelineVertexInput
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PipelineVertexInputStateCreateInfo) Deref() {
- if x.ref5fe4aa50 == nil {
+func (x *DisplayModeParameters) Deref() {
+ if x.refe016f77f == nil {
return
}
- x.SType = (StructureType)(x.ref5fe4aa50.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5fe4aa50.pNext))
- x.Flags = (PipelineVertexInputStateCreateFlags)(x.ref5fe4aa50.flags)
- x.VertexBindingDescriptionCount = (uint32)(x.ref5fe4aa50.vertexBindingDescriptionCount)
- packSVertexInputBindingDescription(x.PVertexBindingDescriptions, x.ref5fe4aa50.pVertexBindingDescriptions)
- x.VertexAttributeDescriptionCount = (uint32)(x.ref5fe4aa50.vertexAttributeDescriptionCount)
- packSVertexInputAttributeDescription(x.PVertexAttributeDescriptions, x.ref5fe4aa50.pVertexAttributeDescriptions)
+ x.VisibleRegion = *NewExtent2DRef(unsafe.Pointer(&x.refe016f77f.visibleRegion))
+ x.RefreshRate = (uint32)(x.refe016f77f.refreshRate)
}
-// allocPipelineInputAssemblyStateCreateInfoMemory allocates memory for type C.VkPipelineInputAssemblyStateCreateInfo in C.
+// allocDisplayModeCreateInfoMemory allocates memory for type C.VkDisplayModeCreateInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPipelineInputAssemblyStateCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineInputAssemblyStateCreateInfoValue))
+func allocDisplayModeCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplayModeCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPipelineInputAssemblyStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineInputAssemblyStateCreateInfo{})
+const sizeOfDisplayModeCreateInfoValue = unsafe.Sizeof([1]C.VkDisplayModeCreateInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PipelineInputAssemblyStateCreateInfo) Ref() *C.VkPipelineInputAssemblyStateCreateInfo {
+func (x *DisplayModeCreateInfo) Ref() *C.VkDisplayModeCreateInfoKHR {
if x == nil {
return nil
}
- return x.ref22e1691d
+ return x.ref392fca31
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PipelineInputAssemblyStateCreateInfo) Free() {
- if x != nil && x.allocs22e1691d != nil {
- x.allocs22e1691d.(*cgoAllocMap).Free()
- x.ref22e1691d = nil
+func (x *DisplayModeCreateInfo) Free() {
+ if x != nil && x.allocs392fca31 != nil {
+ x.allocs392fca31.(*cgoAllocMap).Free()
+ x.ref392fca31 = nil
}
}
-// NewPipelineInputAssemblyStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDisplayModeCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPipelineInputAssemblyStateCreateInfoRef(ref unsafe.Pointer) *PipelineInputAssemblyStateCreateInfo {
+func NewDisplayModeCreateInfoRef(ref unsafe.Pointer) *DisplayModeCreateInfo {
if ref == nil {
return nil
}
- obj := new(PipelineInputAssemblyStateCreateInfo)
- obj.ref22e1691d = (*C.VkPipelineInputAssemblyStateCreateInfo)(unsafe.Pointer(ref))
+ obj := new(DisplayModeCreateInfo)
+ obj.ref392fca31 = (*C.VkDisplayModeCreateInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PipelineInputAssemblyStateCreateInfo) PassRef() (*C.VkPipelineInputAssemblyStateCreateInfo, *cgoAllocMap) {
+func (x *DisplayModeCreateInfo) PassRef() (*C.VkDisplayModeCreateInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref22e1691d != nil {
- return x.ref22e1691d, nil
+ } else if x.ref392fca31 != nil {
+ return x.ref392fca31, nil
}
- mem22e1691d := allocPipelineInputAssemblyStateCreateInfoMemory(1)
- ref22e1691d := (*C.VkPipelineInputAssemblyStateCreateInfo)(mem22e1691d)
- allocs22e1691d := new(cgoAllocMap)
- allocs22e1691d.Add(mem22e1691d)
+ mem392fca31 := allocDisplayModeCreateInfoMemory(1)
+ ref392fca31 := (*C.VkDisplayModeCreateInfoKHR)(mem392fca31)
+ allocs392fca31 := new(cgoAllocMap)
+ allocs392fca31.Add(mem392fca31)
var csType_allocs *cgoAllocMap
- ref22e1691d.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs22e1691d.Borrow(csType_allocs)
+ ref392fca31.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs392fca31.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref22e1691d.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs22e1691d.Borrow(cpNext_allocs)
+ ref392fca31.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs392fca31.Borrow(cpNext_allocs)
var cflags_allocs *cgoAllocMap
- ref22e1691d.flags, cflags_allocs = (C.VkPipelineInputAssemblyStateCreateFlags)(x.Flags), cgoAllocsUnknown
- allocs22e1691d.Borrow(cflags_allocs)
-
- var ctopology_allocs *cgoAllocMap
- ref22e1691d.topology, ctopology_allocs = (C.VkPrimitiveTopology)(x.Topology), cgoAllocsUnknown
- allocs22e1691d.Borrow(ctopology_allocs)
+ ref392fca31.flags, cflags_allocs = (C.VkDisplayModeCreateFlagsKHR)(x.Flags), cgoAllocsUnknown
+ allocs392fca31.Borrow(cflags_allocs)
- var cprimitiveRestartEnable_allocs *cgoAllocMap
- ref22e1691d.primitiveRestartEnable, cprimitiveRestartEnable_allocs = (C.VkBool32)(x.PrimitiveRestartEnable), cgoAllocsUnknown
- allocs22e1691d.Borrow(cprimitiveRestartEnable_allocs)
+ var cparameters_allocs *cgoAllocMap
+ ref392fca31.parameters, cparameters_allocs = x.Parameters.PassValue()
+ allocs392fca31.Borrow(cparameters_allocs)
- x.ref22e1691d = ref22e1691d
- x.allocs22e1691d = allocs22e1691d
- return ref22e1691d, allocs22e1691d
+ x.ref392fca31 = ref392fca31
+ x.allocs392fca31 = allocs392fca31
+ return ref392fca31, allocs392fca31
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PipelineInputAssemblyStateCreateInfo) PassValue() (C.VkPipelineInputAssemblyStateCreateInfo, *cgoAllocMap) {
- if x.ref22e1691d != nil {
- return *x.ref22e1691d, nil
+func (x DisplayModeCreateInfo) PassValue() (C.VkDisplayModeCreateInfoKHR, *cgoAllocMap) {
+ if x.ref392fca31 != nil {
+ return *x.ref392fca31, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -6669,96 +34021,87 @@ func (x PipelineInputAssemblyStateCreateInfo) PassValue() (C.VkPipelineInputAsse
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PipelineInputAssemblyStateCreateInfo) Deref() {
- if x.ref22e1691d == nil {
+func (x *DisplayModeCreateInfo) Deref() {
+ if x.ref392fca31 == nil {
return
}
- x.SType = (StructureType)(x.ref22e1691d.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref22e1691d.pNext))
- x.Flags = (PipelineInputAssemblyStateCreateFlags)(x.ref22e1691d.flags)
- x.Topology = (PrimitiveTopology)(x.ref22e1691d.topology)
- x.PrimitiveRestartEnable = (Bool32)(x.ref22e1691d.primitiveRestartEnable)
+ x.SType = (StructureType)(x.ref392fca31.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref392fca31.pNext))
+ x.Flags = (DisplayModeCreateFlags)(x.ref392fca31.flags)
+ x.Parameters = *NewDisplayModeParametersRef(unsafe.Pointer(&x.ref392fca31.parameters))
}
-// allocPipelineTessellationStateCreateInfoMemory allocates memory for type C.VkPipelineTessellationStateCreateInfo in C.
+// allocDisplayModePropertiesMemory allocates memory for type C.VkDisplayModePropertiesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPipelineTessellationStateCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineTessellationStateCreateInfoValue))
+func allocDisplayModePropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplayModePropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPipelineTessellationStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineTessellationStateCreateInfo{})
+const sizeOfDisplayModePropertiesValue = unsafe.Sizeof([1]C.VkDisplayModePropertiesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PipelineTessellationStateCreateInfo) Ref() *C.VkPipelineTessellationStateCreateInfo {
+func (x *DisplayModeProperties) Ref() *C.VkDisplayModePropertiesKHR {
if x == nil {
return nil
}
- return x.ref4ef3997a
+ return x.ref5e3abaaa
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PipelineTessellationStateCreateInfo) Free() {
- if x != nil && x.allocs4ef3997a != nil {
- x.allocs4ef3997a.(*cgoAllocMap).Free()
- x.ref4ef3997a = nil
+func (x *DisplayModeProperties) Free() {
+ if x != nil && x.allocs5e3abaaa != nil {
+ x.allocs5e3abaaa.(*cgoAllocMap).Free()
+ x.ref5e3abaaa = nil
}
}
-// NewPipelineTessellationStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDisplayModePropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPipelineTessellationStateCreateInfoRef(ref unsafe.Pointer) *PipelineTessellationStateCreateInfo {
+func NewDisplayModePropertiesRef(ref unsafe.Pointer) *DisplayModeProperties {
if ref == nil {
return nil
}
- obj := new(PipelineTessellationStateCreateInfo)
- obj.ref4ef3997a = (*C.VkPipelineTessellationStateCreateInfo)(unsafe.Pointer(ref))
+ obj := new(DisplayModeProperties)
+ obj.ref5e3abaaa = (*C.VkDisplayModePropertiesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PipelineTessellationStateCreateInfo) PassRef() (*C.VkPipelineTessellationStateCreateInfo, *cgoAllocMap) {
+func (x *DisplayModeProperties) PassRef() (*C.VkDisplayModePropertiesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref4ef3997a != nil {
- return x.ref4ef3997a, nil
+ } else if x.ref5e3abaaa != nil {
+ return x.ref5e3abaaa, nil
}
- mem4ef3997a := allocPipelineTessellationStateCreateInfoMemory(1)
- ref4ef3997a := (*C.VkPipelineTessellationStateCreateInfo)(mem4ef3997a)
- allocs4ef3997a := new(cgoAllocMap)
- allocs4ef3997a.Add(mem4ef3997a)
-
- var csType_allocs *cgoAllocMap
- ref4ef3997a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs4ef3997a.Borrow(csType_allocs)
-
- var cpNext_allocs *cgoAllocMap
- ref4ef3997a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs4ef3997a.Borrow(cpNext_allocs)
+ mem5e3abaaa := allocDisplayModePropertiesMemory(1)
+ ref5e3abaaa := (*C.VkDisplayModePropertiesKHR)(mem5e3abaaa)
+ allocs5e3abaaa := new(cgoAllocMap)
+ allocs5e3abaaa.Add(mem5e3abaaa)
- var cflags_allocs *cgoAllocMap
- ref4ef3997a.flags, cflags_allocs = (C.VkPipelineTessellationStateCreateFlags)(x.Flags), cgoAllocsUnknown
- allocs4ef3997a.Borrow(cflags_allocs)
+ var cdisplayMode_allocs *cgoAllocMap
+ ref5e3abaaa.displayMode, cdisplayMode_allocs = *(*C.VkDisplayModeKHR)(unsafe.Pointer(&x.DisplayMode)), cgoAllocsUnknown
+ allocs5e3abaaa.Borrow(cdisplayMode_allocs)
- var cpatchControlPoints_allocs *cgoAllocMap
- ref4ef3997a.patchControlPoints, cpatchControlPoints_allocs = (C.uint32_t)(x.PatchControlPoints), cgoAllocsUnknown
- allocs4ef3997a.Borrow(cpatchControlPoints_allocs)
+ var cparameters_allocs *cgoAllocMap
+ ref5e3abaaa.parameters, cparameters_allocs = x.Parameters.PassValue()
+ allocs5e3abaaa.Borrow(cparameters_allocs)
- x.ref4ef3997a = ref4ef3997a
- x.allocs4ef3997a = allocs4ef3997a
- return ref4ef3997a, allocs4ef3997a
+ x.ref5e3abaaa = ref5e3abaaa
+ x.allocs5e3abaaa = allocs5e3abaaa
+ return ref5e3abaaa, allocs5e3abaaa
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PipelineTessellationStateCreateInfo) PassValue() (C.VkPipelineTessellationStateCreateInfo, *cgoAllocMap) {
- if x.ref4ef3997a != nil {
- return *x.ref4ef3997a, nil
+func (x DisplayModeProperties) PassValue() (C.VkDisplayModePropertiesKHR, *cgoAllocMap) {
+ if x.ref5e3abaaa != nil {
+ return *x.ref5e3abaaa, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -6766,103 +34109,113 @@ func (x PipelineTessellationStateCreateInfo) PassValue() (C.VkPipelineTessellati
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PipelineTessellationStateCreateInfo) Deref() {
- if x.ref4ef3997a == nil {
+func (x *DisplayModeProperties) Deref() {
+ if x.ref5e3abaaa == nil {
return
}
- x.SType = (StructureType)(x.ref4ef3997a.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref4ef3997a.pNext))
- x.Flags = (PipelineTessellationStateCreateFlags)(x.ref4ef3997a.flags)
- x.PatchControlPoints = (uint32)(x.ref4ef3997a.patchControlPoints)
+ x.DisplayMode = *(*DisplayMode)(unsafe.Pointer(&x.ref5e3abaaa.displayMode))
+ x.Parameters = *NewDisplayModeParametersRef(unsafe.Pointer(&x.ref5e3abaaa.parameters))
}
-// allocViewportMemory allocates memory for type C.VkViewport in C.
+// allocDisplayPlaneCapabilitiesMemory allocates memory for type C.VkDisplayPlaneCapabilitiesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocViewportMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfViewportValue))
+func allocDisplayPlaneCapabilitiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplayPlaneCapabilitiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfViewportValue = unsafe.Sizeof([1]C.VkViewport{})
+const sizeOfDisplayPlaneCapabilitiesValue = unsafe.Sizeof([1]C.VkDisplayPlaneCapabilitiesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *Viewport) Ref() *C.VkViewport {
+func (x *DisplayPlaneCapabilities) Ref() *C.VkDisplayPlaneCapabilitiesKHR {
if x == nil {
return nil
}
- return x.ref75cf5291
+ return x.ref6f31fcaf
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *Viewport) Free() {
- if x != nil && x.allocs75cf5291 != nil {
- x.allocs75cf5291.(*cgoAllocMap).Free()
- x.ref75cf5291 = nil
+func (x *DisplayPlaneCapabilities) Free() {
+ if x != nil && x.allocs6f31fcaf != nil {
+ x.allocs6f31fcaf.(*cgoAllocMap).Free()
+ x.ref6f31fcaf = nil
}
}
-// NewViewportRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDisplayPlaneCapabilitiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewViewportRef(ref unsafe.Pointer) *Viewport {
+func NewDisplayPlaneCapabilitiesRef(ref unsafe.Pointer) *DisplayPlaneCapabilities {
if ref == nil {
return nil
}
- obj := new(Viewport)
- obj.ref75cf5291 = (*C.VkViewport)(unsafe.Pointer(ref))
+ obj := new(DisplayPlaneCapabilities)
+ obj.ref6f31fcaf = (*C.VkDisplayPlaneCapabilitiesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *Viewport) PassRef() (*C.VkViewport, *cgoAllocMap) {
+func (x *DisplayPlaneCapabilities) PassRef() (*C.VkDisplayPlaneCapabilitiesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref75cf5291 != nil {
- return x.ref75cf5291, nil
+ } else if x.ref6f31fcaf != nil {
+ return x.ref6f31fcaf, nil
}
- mem75cf5291 := allocViewportMemory(1)
- ref75cf5291 := (*C.VkViewport)(mem75cf5291)
- allocs75cf5291 := new(cgoAllocMap)
- allocs75cf5291.Add(mem75cf5291)
+ mem6f31fcaf := allocDisplayPlaneCapabilitiesMemory(1)
+ ref6f31fcaf := (*C.VkDisplayPlaneCapabilitiesKHR)(mem6f31fcaf)
+ allocs6f31fcaf := new(cgoAllocMap)
+ allocs6f31fcaf.Add(mem6f31fcaf)
- var cx_allocs *cgoAllocMap
- ref75cf5291.x, cx_allocs = (C.float)(x.X), cgoAllocsUnknown
- allocs75cf5291.Borrow(cx_allocs)
+ var csupportedAlpha_allocs *cgoAllocMap
+ ref6f31fcaf.supportedAlpha, csupportedAlpha_allocs = (C.VkDisplayPlaneAlphaFlagsKHR)(x.SupportedAlpha), cgoAllocsUnknown
+ allocs6f31fcaf.Borrow(csupportedAlpha_allocs)
- var cy_allocs *cgoAllocMap
- ref75cf5291.y, cy_allocs = (C.float)(x.Y), cgoAllocsUnknown
- allocs75cf5291.Borrow(cy_allocs)
+ var cminSrcPosition_allocs *cgoAllocMap
+ ref6f31fcaf.minSrcPosition, cminSrcPosition_allocs = x.MinSrcPosition.PassValue()
+ allocs6f31fcaf.Borrow(cminSrcPosition_allocs)
- var cwidth_allocs *cgoAllocMap
- ref75cf5291.width, cwidth_allocs = (C.float)(x.Width), cgoAllocsUnknown
- allocs75cf5291.Borrow(cwidth_allocs)
+ var cmaxSrcPosition_allocs *cgoAllocMap
+ ref6f31fcaf.maxSrcPosition, cmaxSrcPosition_allocs = x.MaxSrcPosition.PassValue()
+ allocs6f31fcaf.Borrow(cmaxSrcPosition_allocs)
- var cheight_allocs *cgoAllocMap
- ref75cf5291.height, cheight_allocs = (C.float)(x.Height), cgoAllocsUnknown
- allocs75cf5291.Borrow(cheight_allocs)
+ var cminSrcExtent_allocs *cgoAllocMap
+ ref6f31fcaf.minSrcExtent, cminSrcExtent_allocs = x.MinSrcExtent.PassValue()
+ allocs6f31fcaf.Borrow(cminSrcExtent_allocs)
- var cminDepth_allocs *cgoAllocMap
- ref75cf5291.minDepth, cminDepth_allocs = (C.float)(x.MinDepth), cgoAllocsUnknown
- allocs75cf5291.Borrow(cminDepth_allocs)
+ var cmaxSrcExtent_allocs *cgoAllocMap
+ ref6f31fcaf.maxSrcExtent, cmaxSrcExtent_allocs = x.MaxSrcExtent.PassValue()
+ allocs6f31fcaf.Borrow(cmaxSrcExtent_allocs)
- var cmaxDepth_allocs *cgoAllocMap
- ref75cf5291.maxDepth, cmaxDepth_allocs = (C.float)(x.MaxDepth), cgoAllocsUnknown
- allocs75cf5291.Borrow(cmaxDepth_allocs)
+ var cminDstPosition_allocs *cgoAllocMap
+ ref6f31fcaf.minDstPosition, cminDstPosition_allocs = x.MinDstPosition.PassValue()
+ allocs6f31fcaf.Borrow(cminDstPosition_allocs)
- x.ref75cf5291 = ref75cf5291
- x.allocs75cf5291 = allocs75cf5291
- return ref75cf5291, allocs75cf5291
+ var cmaxDstPosition_allocs *cgoAllocMap
+ ref6f31fcaf.maxDstPosition, cmaxDstPosition_allocs = x.MaxDstPosition.PassValue()
+ allocs6f31fcaf.Borrow(cmaxDstPosition_allocs)
+
+ var cminDstExtent_allocs *cgoAllocMap
+ ref6f31fcaf.minDstExtent, cminDstExtent_allocs = x.MinDstExtent.PassValue()
+ allocs6f31fcaf.Borrow(cminDstExtent_allocs)
+
+ var cmaxDstExtent_allocs *cgoAllocMap
+ ref6f31fcaf.maxDstExtent, cmaxDstExtent_allocs = x.MaxDstExtent.PassValue()
+ allocs6f31fcaf.Borrow(cmaxDstExtent_allocs)
+
+ x.ref6f31fcaf = ref6f31fcaf
+ x.allocs6f31fcaf = allocs6f31fcaf
+ return ref6f31fcaf, allocs6f31fcaf
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x Viewport) PassValue() (C.VkViewport, *cgoAllocMap) {
- if x.ref75cf5291 != nil {
- return *x.ref75cf5291, nil
+func (x DisplayPlaneCapabilities) PassValue() (C.VkDisplayPlaneCapabilitiesKHR, *cgoAllocMap) {
+ if x.ref6f31fcaf != nil {
+ return *x.ref6f31fcaf, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -6870,89 +34223,92 @@ func (x Viewport) PassValue() (C.VkViewport, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *Viewport) Deref() {
- if x.ref75cf5291 == nil {
+func (x *DisplayPlaneCapabilities) Deref() {
+ if x.ref6f31fcaf == nil {
return
}
- x.X = (float32)(x.ref75cf5291.x)
- x.Y = (float32)(x.ref75cf5291.y)
- x.Width = (float32)(x.ref75cf5291.width)
- x.Height = (float32)(x.ref75cf5291.height)
- x.MinDepth = (float32)(x.ref75cf5291.minDepth)
- x.MaxDepth = (float32)(x.ref75cf5291.maxDepth)
+ x.SupportedAlpha = (DisplayPlaneAlphaFlags)(x.ref6f31fcaf.supportedAlpha)
+ x.MinSrcPosition = *NewOffset2DRef(unsafe.Pointer(&x.ref6f31fcaf.minSrcPosition))
+ x.MaxSrcPosition = *NewOffset2DRef(unsafe.Pointer(&x.ref6f31fcaf.maxSrcPosition))
+ x.MinSrcExtent = *NewExtent2DRef(unsafe.Pointer(&x.ref6f31fcaf.minSrcExtent))
+ x.MaxSrcExtent = *NewExtent2DRef(unsafe.Pointer(&x.ref6f31fcaf.maxSrcExtent))
+ x.MinDstPosition = *NewOffset2DRef(unsafe.Pointer(&x.ref6f31fcaf.minDstPosition))
+ x.MaxDstPosition = *NewOffset2DRef(unsafe.Pointer(&x.ref6f31fcaf.maxDstPosition))
+ x.MinDstExtent = *NewExtent2DRef(unsafe.Pointer(&x.ref6f31fcaf.minDstExtent))
+ x.MaxDstExtent = *NewExtent2DRef(unsafe.Pointer(&x.ref6f31fcaf.maxDstExtent))
}
-// allocOffset2DMemory allocates memory for type C.VkOffset2D in C.
+// allocDisplayPlanePropertiesMemory allocates memory for type C.VkDisplayPlanePropertiesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocOffset2DMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfOffset2DValue))
+func allocDisplayPlanePropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplayPlanePropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfOffset2DValue = unsafe.Sizeof([1]C.VkOffset2D{})
+const sizeOfDisplayPlanePropertiesValue = unsafe.Sizeof([1]C.VkDisplayPlanePropertiesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *Offset2D) Ref() *C.VkOffset2D {
+func (x *DisplayPlaneProperties) Ref() *C.VkDisplayPlanePropertiesKHR {
if x == nil {
return nil
}
- return x.ref32734883
+ return x.refce3db3f6
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *Offset2D) Free() {
- if x != nil && x.allocs32734883 != nil {
- x.allocs32734883.(*cgoAllocMap).Free()
- x.ref32734883 = nil
+func (x *DisplayPlaneProperties) Free() {
+ if x != nil && x.allocsce3db3f6 != nil {
+ x.allocsce3db3f6.(*cgoAllocMap).Free()
+ x.refce3db3f6 = nil
}
}
-// NewOffset2DRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDisplayPlanePropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewOffset2DRef(ref unsafe.Pointer) *Offset2D {
+func NewDisplayPlanePropertiesRef(ref unsafe.Pointer) *DisplayPlaneProperties {
if ref == nil {
return nil
}
- obj := new(Offset2D)
- obj.ref32734883 = (*C.VkOffset2D)(unsafe.Pointer(ref))
+ obj := new(DisplayPlaneProperties)
+ obj.refce3db3f6 = (*C.VkDisplayPlanePropertiesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *Offset2D) PassRef() (*C.VkOffset2D, *cgoAllocMap) {
+func (x *DisplayPlaneProperties) PassRef() (*C.VkDisplayPlanePropertiesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref32734883 != nil {
- return x.ref32734883, nil
+ } else if x.refce3db3f6 != nil {
+ return x.refce3db3f6, nil
}
- mem32734883 := allocOffset2DMemory(1)
- ref32734883 := (*C.VkOffset2D)(mem32734883)
- allocs32734883 := new(cgoAllocMap)
- allocs32734883.Add(mem32734883)
+ memce3db3f6 := allocDisplayPlanePropertiesMemory(1)
+ refce3db3f6 := (*C.VkDisplayPlanePropertiesKHR)(memce3db3f6)
+ allocsce3db3f6 := new(cgoAllocMap)
+ allocsce3db3f6.Add(memce3db3f6)
- var cx_allocs *cgoAllocMap
- ref32734883.x, cx_allocs = (C.int32_t)(x.X), cgoAllocsUnknown
- allocs32734883.Borrow(cx_allocs)
+ var ccurrentDisplay_allocs *cgoAllocMap
+ refce3db3f6.currentDisplay, ccurrentDisplay_allocs = *(*C.VkDisplayKHR)(unsafe.Pointer(&x.CurrentDisplay)), cgoAllocsUnknown
+ allocsce3db3f6.Borrow(ccurrentDisplay_allocs)
- var cy_allocs *cgoAllocMap
- ref32734883.y, cy_allocs = (C.int32_t)(x.Y), cgoAllocsUnknown
- allocs32734883.Borrow(cy_allocs)
+ var ccurrentStackIndex_allocs *cgoAllocMap
+ refce3db3f6.currentStackIndex, ccurrentStackIndex_allocs = (C.uint32_t)(x.CurrentStackIndex), cgoAllocsUnknown
+ allocsce3db3f6.Borrow(ccurrentStackIndex_allocs)
- x.ref32734883 = ref32734883
- x.allocs32734883 = allocs32734883
- return ref32734883, allocs32734883
+ x.refce3db3f6 = refce3db3f6
+ x.allocsce3db3f6 = allocsce3db3f6
+ return refce3db3f6, allocsce3db3f6
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x Offset2D) PassValue() (C.VkOffset2D, *cgoAllocMap) {
- if x.ref32734883 != nil {
- return *x.ref32734883, nil
+func (x DisplayPlaneProperties) PassValue() (C.VkDisplayPlanePropertiesKHR, *cgoAllocMap) {
+ if x.refce3db3f6 != nil {
+ return *x.refce3db3f6, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -6960,85 +34316,105 @@ func (x Offset2D) PassValue() (C.VkOffset2D, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *Offset2D) Deref() {
- if x.ref32734883 == nil {
+func (x *DisplayPlaneProperties) Deref() {
+ if x.refce3db3f6 == nil {
return
}
- x.X = (int32)(x.ref32734883.x)
- x.Y = (int32)(x.ref32734883.y)
+ x.CurrentDisplay = *(*Display)(unsafe.Pointer(&x.refce3db3f6.currentDisplay))
+ x.CurrentStackIndex = (uint32)(x.refce3db3f6.currentStackIndex)
}
-// allocExtent2DMemory allocates memory for type C.VkExtent2D in C.
+// allocDisplayPropertiesMemory allocates memory for type C.VkDisplayPropertiesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocExtent2DMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExtent2DValue))
+func allocDisplayPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplayPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfExtent2DValue = unsafe.Sizeof([1]C.VkExtent2D{})
+const sizeOfDisplayPropertiesValue = unsafe.Sizeof([1]C.VkDisplayPropertiesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *Extent2D) Ref() *C.VkExtent2D {
+func (x *DisplayProperties) Ref() *C.VkDisplayPropertiesKHR {
if x == nil {
return nil
}
- return x.refe2edf56b
+ return x.reffe2a7187
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *Extent2D) Free() {
- if x != nil && x.allocse2edf56b != nil {
- x.allocse2edf56b.(*cgoAllocMap).Free()
- x.refe2edf56b = nil
+func (x *DisplayProperties) Free() {
+ if x != nil && x.allocsfe2a7187 != nil {
+ x.allocsfe2a7187.(*cgoAllocMap).Free()
+ x.reffe2a7187 = nil
}
}
-// NewExtent2DRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDisplayPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewExtent2DRef(ref unsafe.Pointer) *Extent2D {
+func NewDisplayPropertiesRef(ref unsafe.Pointer) *DisplayProperties {
if ref == nil {
return nil
}
- obj := new(Extent2D)
- obj.refe2edf56b = (*C.VkExtent2D)(unsafe.Pointer(ref))
+ obj := new(DisplayProperties)
+ obj.reffe2a7187 = (*C.VkDisplayPropertiesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *Extent2D) PassRef() (*C.VkExtent2D, *cgoAllocMap) {
+func (x *DisplayProperties) PassRef() (*C.VkDisplayPropertiesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refe2edf56b != nil {
- return x.refe2edf56b, nil
+ } else if x.reffe2a7187 != nil {
+ return x.reffe2a7187, nil
}
- meme2edf56b := allocExtent2DMemory(1)
- refe2edf56b := (*C.VkExtent2D)(meme2edf56b)
- allocse2edf56b := new(cgoAllocMap)
- allocse2edf56b.Add(meme2edf56b)
+ memfe2a7187 := allocDisplayPropertiesMemory(1)
+ reffe2a7187 := (*C.VkDisplayPropertiesKHR)(memfe2a7187)
+ allocsfe2a7187 := new(cgoAllocMap)
+ allocsfe2a7187.Add(memfe2a7187)
- var cwidth_allocs *cgoAllocMap
- refe2edf56b.width, cwidth_allocs = (C.uint32_t)(x.Width), cgoAllocsUnknown
- allocse2edf56b.Borrow(cwidth_allocs)
+ var cdisplay_allocs *cgoAllocMap
+ reffe2a7187.display, cdisplay_allocs = *(*C.VkDisplayKHR)(unsafe.Pointer(&x.Display)), cgoAllocsUnknown
+ allocsfe2a7187.Borrow(cdisplay_allocs)
- var cheight_allocs *cgoAllocMap
- refe2edf56b.height, cheight_allocs = (C.uint32_t)(x.Height), cgoAllocsUnknown
- allocse2edf56b.Borrow(cheight_allocs)
+ var cdisplayName_allocs *cgoAllocMap
+ reffe2a7187.displayName, cdisplayName_allocs = unpackPCharString(x.DisplayName)
+ allocsfe2a7187.Borrow(cdisplayName_allocs)
- x.refe2edf56b = refe2edf56b
- x.allocse2edf56b = allocse2edf56b
- return refe2edf56b, allocse2edf56b
+ var cphysicalDimensions_allocs *cgoAllocMap
+ reffe2a7187.physicalDimensions, cphysicalDimensions_allocs = x.PhysicalDimensions.PassValue()
+ allocsfe2a7187.Borrow(cphysicalDimensions_allocs)
+
+ var cphysicalResolution_allocs *cgoAllocMap
+ reffe2a7187.physicalResolution, cphysicalResolution_allocs = x.PhysicalResolution.PassValue()
+ allocsfe2a7187.Borrow(cphysicalResolution_allocs)
+
+ var csupportedTransforms_allocs *cgoAllocMap
+ reffe2a7187.supportedTransforms, csupportedTransforms_allocs = (C.VkSurfaceTransformFlagsKHR)(x.SupportedTransforms), cgoAllocsUnknown
+ allocsfe2a7187.Borrow(csupportedTransforms_allocs)
+
+ var cplaneReorderPossible_allocs *cgoAllocMap
+ reffe2a7187.planeReorderPossible, cplaneReorderPossible_allocs = (C.VkBool32)(x.PlaneReorderPossible), cgoAllocsUnknown
+ allocsfe2a7187.Borrow(cplaneReorderPossible_allocs)
+
+ var cpersistentContent_allocs *cgoAllocMap
+ reffe2a7187.persistentContent, cpersistentContent_allocs = (C.VkBool32)(x.PersistentContent), cgoAllocsUnknown
+ allocsfe2a7187.Borrow(cpersistentContent_allocs)
+
+ x.reffe2a7187 = reffe2a7187
+ x.allocsfe2a7187 = allocsfe2a7187
+ return reffe2a7187, allocsfe2a7187
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x Extent2D) PassValue() (C.VkExtent2D, *cgoAllocMap) {
- if x.refe2edf56b != nil {
- return *x.refe2edf56b, nil
+func (x DisplayProperties) PassValue() (C.VkDisplayPropertiesKHR, *cgoAllocMap) {
+ if x.reffe2a7187 != nil {
+ return *x.reffe2a7187, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -7046,85 +34422,122 @@ func (x Extent2D) PassValue() (C.VkExtent2D, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *Extent2D) Deref() {
- if x.refe2edf56b == nil {
+func (x *DisplayProperties) Deref() {
+ if x.reffe2a7187 == nil {
return
}
- x.Width = (uint32)(x.refe2edf56b.width)
- x.Height = (uint32)(x.refe2edf56b.height)
+ x.Display = *(*Display)(unsafe.Pointer(&x.reffe2a7187.display))
+ x.DisplayName = packPCharString(x.reffe2a7187.displayName)
+ x.PhysicalDimensions = *NewExtent2DRef(unsafe.Pointer(&x.reffe2a7187.physicalDimensions))
+ x.PhysicalResolution = *NewExtent2DRef(unsafe.Pointer(&x.reffe2a7187.physicalResolution))
+ x.SupportedTransforms = (SurfaceTransformFlags)(x.reffe2a7187.supportedTransforms)
+ x.PlaneReorderPossible = (Bool32)(x.reffe2a7187.planeReorderPossible)
+ x.PersistentContent = (Bool32)(x.reffe2a7187.persistentContent)
}
-// allocRect2DMemory allocates memory for type C.VkRect2D in C.
+// allocDisplaySurfaceCreateInfoMemory allocates memory for type C.VkDisplaySurfaceCreateInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocRect2DMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfRect2DValue))
+func allocDisplaySurfaceCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplaySurfaceCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfRect2DValue = unsafe.Sizeof([1]C.VkRect2D{})
+const sizeOfDisplaySurfaceCreateInfoValue = unsafe.Sizeof([1]C.VkDisplaySurfaceCreateInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *Rect2D) Ref() *C.VkRect2D {
+func (x *DisplaySurfaceCreateInfo) Ref() *C.VkDisplaySurfaceCreateInfoKHR {
if x == nil {
return nil
}
- return x.ref89e4256f
+ return x.ref58445c35
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *Rect2D) Free() {
- if x != nil && x.allocs89e4256f != nil {
- x.allocs89e4256f.(*cgoAllocMap).Free()
- x.ref89e4256f = nil
+func (x *DisplaySurfaceCreateInfo) Free() {
+ if x != nil && x.allocs58445c35 != nil {
+ x.allocs58445c35.(*cgoAllocMap).Free()
+ x.ref58445c35 = nil
}
}
-// NewRect2DRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDisplaySurfaceCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewRect2DRef(ref unsafe.Pointer) *Rect2D {
+func NewDisplaySurfaceCreateInfoRef(ref unsafe.Pointer) *DisplaySurfaceCreateInfo {
if ref == nil {
return nil
}
- obj := new(Rect2D)
- obj.ref89e4256f = (*C.VkRect2D)(unsafe.Pointer(ref))
+ obj := new(DisplaySurfaceCreateInfo)
+ obj.ref58445c35 = (*C.VkDisplaySurfaceCreateInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *Rect2D) PassRef() (*C.VkRect2D, *cgoAllocMap) {
+func (x *DisplaySurfaceCreateInfo) PassRef() (*C.VkDisplaySurfaceCreateInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref89e4256f != nil {
- return x.ref89e4256f, nil
+ } else if x.ref58445c35 != nil {
+ return x.ref58445c35, nil
}
- mem89e4256f := allocRect2DMemory(1)
- ref89e4256f := (*C.VkRect2D)(mem89e4256f)
- allocs89e4256f := new(cgoAllocMap)
- allocs89e4256f.Add(mem89e4256f)
+ mem58445c35 := allocDisplaySurfaceCreateInfoMemory(1)
+ ref58445c35 := (*C.VkDisplaySurfaceCreateInfoKHR)(mem58445c35)
+ allocs58445c35 := new(cgoAllocMap)
+ allocs58445c35.Add(mem58445c35)
- var coffset_allocs *cgoAllocMap
- ref89e4256f.offset, coffset_allocs = x.Offset.PassValue()
- allocs89e4256f.Borrow(coffset_allocs)
+ var csType_allocs *cgoAllocMap
+ ref58445c35.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs58445c35.Borrow(csType_allocs)
- var cextent_allocs *cgoAllocMap
- ref89e4256f.extent, cextent_allocs = x.Extent.PassValue()
- allocs89e4256f.Borrow(cextent_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref58445c35.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs58445c35.Borrow(cpNext_allocs)
- x.ref89e4256f = ref89e4256f
- x.allocs89e4256f = allocs89e4256f
- return ref89e4256f, allocs89e4256f
+ var cflags_allocs *cgoAllocMap
+ ref58445c35.flags, cflags_allocs = (C.VkDisplaySurfaceCreateFlagsKHR)(x.Flags), cgoAllocsUnknown
+ allocs58445c35.Borrow(cflags_allocs)
+
+ var cdisplayMode_allocs *cgoAllocMap
+ ref58445c35.displayMode, cdisplayMode_allocs = *(*C.VkDisplayModeKHR)(unsafe.Pointer(&x.DisplayMode)), cgoAllocsUnknown
+ allocs58445c35.Borrow(cdisplayMode_allocs)
+
+ var cplaneIndex_allocs *cgoAllocMap
+ ref58445c35.planeIndex, cplaneIndex_allocs = (C.uint32_t)(x.PlaneIndex), cgoAllocsUnknown
+ allocs58445c35.Borrow(cplaneIndex_allocs)
+
+ var cplaneStackIndex_allocs *cgoAllocMap
+ ref58445c35.planeStackIndex, cplaneStackIndex_allocs = (C.uint32_t)(x.PlaneStackIndex), cgoAllocsUnknown
+ allocs58445c35.Borrow(cplaneStackIndex_allocs)
+
+ var ctransform_allocs *cgoAllocMap
+ ref58445c35.transform, ctransform_allocs = (C.VkSurfaceTransformFlagBitsKHR)(x.Transform), cgoAllocsUnknown
+ allocs58445c35.Borrow(ctransform_allocs)
+
+ var cglobalAlpha_allocs *cgoAllocMap
+ ref58445c35.globalAlpha, cglobalAlpha_allocs = (C.float)(x.GlobalAlpha), cgoAllocsUnknown
+ allocs58445c35.Borrow(cglobalAlpha_allocs)
+
+ var calphaMode_allocs *cgoAllocMap
+ ref58445c35.alphaMode, calphaMode_allocs = (C.VkDisplayPlaneAlphaFlagBitsKHR)(x.AlphaMode), cgoAllocsUnknown
+ allocs58445c35.Borrow(calphaMode_allocs)
+
+ var cimageExtent_allocs *cgoAllocMap
+ ref58445c35.imageExtent, cimageExtent_allocs = x.ImageExtent.PassValue()
+ allocs58445c35.Borrow(cimageExtent_allocs)
+
+ x.ref58445c35 = ref58445c35
+ x.allocs58445c35 = allocs58445c35
+ return ref58445c35, allocs58445c35
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x Rect2D) PassValue() (C.VkRect2D, *cgoAllocMap) {
- if x.ref89e4256f != nil {
- return *x.ref89e4256f, nil
+func (x DisplaySurfaceCreateInfo) PassValue() (C.VkDisplaySurfaceCreateInfoKHR, *cgoAllocMap) {
+ if x.ref58445c35 != nil {
+ return *x.ref58445c35, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -7132,181 +34545,105 @@ func (x Rect2D) PassValue() (C.VkRect2D, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *Rect2D) Deref() {
- if x.ref89e4256f == nil {
+func (x *DisplaySurfaceCreateInfo) Deref() {
+ if x.ref58445c35 == nil {
return
}
- x.Offset = *NewOffset2DRef(unsafe.Pointer(&x.ref89e4256f.offset))
- x.Extent = *NewExtent2DRef(unsafe.Pointer(&x.ref89e4256f.extent))
+ x.SType = (StructureType)(x.ref58445c35.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref58445c35.pNext))
+ x.Flags = (DisplaySurfaceCreateFlags)(x.ref58445c35.flags)
+ x.DisplayMode = *(*DisplayMode)(unsafe.Pointer(&x.ref58445c35.displayMode))
+ x.PlaneIndex = (uint32)(x.ref58445c35.planeIndex)
+ x.PlaneStackIndex = (uint32)(x.ref58445c35.planeStackIndex)
+ x.Transform = (SurfaceTransformFlagBits)(x.ref58445c35.transform)
+ x.GlobalAlpha = (float32)(x.ref58445c35.globalAlpha)
+ x.AlphaMode = (DisplayPlaneAlphaFlagBits)(x.ref58445c35.alphaMode)
+ x.ImageExtent = *NewExtent2DRef(unsafe.Pointer(&x.ref58445c35.imageExtent))
}
-// allocPipelineViewportStateCreateInfoMemory allocates memory for type C.VkPipelineViewportStateCreateInfo in C.
+// allocDisplayPresentInfoMemory allocates memory for type C.VkDisplayPresentInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPipelineViewportStateCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineViewportStateCreateInfoValue))
+func allocDisplayPresentInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplayPresentInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPipelineViewportStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineViewportStateCreateInfo{})
-
-// unpackSViewport transforms a sliced Go data structure into plain C format.
-func unpackSViewport(x []Viewport) (unpacked *C.VkViewport, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkViewport) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocViewportMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkViewport)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkViewport)(h.Data)
- return
-}
-
-// unpackSRect2D transforms a sliced Go data structure into plain C format.
-func unpackSRect2D(x []Rect2D) (unpacked *C.VkRect2D, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkRect2D) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocRect2DMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkRect2D)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkRect2D)(h.Data)
- return
-}
-
-// packSViewport reads sliced Go data structure out from plain C format.
-func packSViewport(v []Viewport, ptr0 *C.VkViewport) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfViewportValue]C.VkViewport)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewViewportRef(unsafe.Pointer(&ptr1))
- }
-}
-
-// packSRect2D reads sliced Go data structure out from plain C format.
-func packSRect2D(v []Rect2D, ptr0 *C.VkRect2D) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfRect2DValue]C.VkRect2D)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewRect2DRef(unsafe.Pointer(&ptr1))
- }
-}
+const sizeOfDisplayPresentInfoValue = unsafe.Sizeof([1]C.VkDisplayPresentInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PipelineViewportStateCreateInfo) Ref() *C.VkPipelineViewportStateCreateInfo {
+func (x *DisplayPresentInfo) Ref() *C.VkDisplayPresentInfoKHR {
if x == nil {
return nil
}
- return x.refc4705791
+ return x.ref8d2571e4
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PipelineViewportStateCreateInfo) Free() {
- if x != nil && x.allocsc4705791 != nil {
- x.allocsc4705791.(*cgoAllocMap).Free()
- x.refc4705791 = nil
+func (x *DisplayPresentInfo) Free() {
+ if x != nil && x.allocs8d2571e4 != nil {
+ x.allocs8d2571e4.(*cgoAllocMap).Free()
+ x.ref8d2571e4 = nil
}
}
-// NewPipelineViewportStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDisplayPresentInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPipelineViewportStateCreateInfoRef(ref unsafe.Pointer) *PipelineViewportStateCreateInfo {
+func NewDisplayPresentInfoRef(ref unsafe.Pointer) *DisplayPresentInfo {
if ref == nil {
return nil
}
- obj := new(PipelineViewportStateCreateInfo)
- obj.refc4705791 = (*C.VkPipelineViewportStateCreateInfo)(unsafe.Pointer(ref))
+ obj := new(DisplayPresentInfo)
+ obj.ref8d2571e4 = (*C.VkDisplayPresentInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PipelineViewportStateCreateInfo) PassRef() (*C.VkPipelineViewportStateCreateInfo, *cgoAllocMap) {
+func (x *DisplayPresentInfo) PassRef() (*C.VkDisplayPresentInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refc4705791 != nil {
- return x.refc4705791, nil
+ } else if x.ref8d2571e4 != nil {
+ return x.ref8d2571e4, nil
}
- memc4705791 := allocPipelineViewportStateCreateInfoMemory(1)
- refc4705791 := (*C.VkPipelineViewportStateCreateInfo)(memc4705791)
- allocsc4705791 := new(cgoAllocMap)
- allocsc4705791.Add(memc4705791)
+ mem8d2571e4 := allocDisplayPresentInfoMemory(1)
+ ref8d2571e4 := (*C.VkDisplayPresentInfoKHR)(mem8d2571e4)
+ allocs8d2571e4 := new(cgoAllocMap)
+ allocs8d2571e4.Add(mem8d2571e4)
var csType_allocs *cgoAllocMap
- refc4705791.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsc4705791.Borrow(csType_allocs)
+ ref8d2571e4.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs8d2571e4.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refc4705791.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsc4705791.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- refc4705791.flags, cflags_allocs = (C.VkPipelineViewportStateCreateFlags)(x.Flags), cgoAllocsUnknown
- allocsc4705791.Borrow(cflags_allocs)
-
- var cviewportCount_allocs *cgoAllocMap
- refc4705791.viewportCount, cviewportCount_allocs = (C.uint32_t)(x.ViewportCount), cgoAllocsUnknown
- allocsc4705791.Borrow(cviewportCount_allocs)
+ ref8d2571e4.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs8d2571e4.Borrow(cpNext_allocs)
- var cpViewports_allocs *cgoAllocMap
- refc4705791.pViewports, cpViewports_allocs = unpackSViewport(x.PViewports)
- allocsc4705791.Borrow(cpViewports_allocs)
+ var csrcRect_allocs *cgoAllocMap
+ ref8d2571e4.srcRect, csrcRect_allocs = x.SrcRect.PassValue()
+ allocs8d2571e4.Borrow(csrcRect_allocs)
- var cscissorCount_allocs *cgoAllocMap
- refc4705791.scissorCount, cscissorCount_allocs = (C.uint32_t)(x.ScissorCount), cgoAllocsUnknown
- allocsc4705791.Borrow(cscissorCount_allocs)
+ var cdstRect_allocs *cgoAllocMap
+ ref8d2571e4.dstRect, cdstRect_allocs = x.DstRect.PassValue()
+ allocs8d2571e4.Borrow(cdstRect_allocs)
- var cpScissors_allocs *cgoAllocMap
- refc4705791.pScissors, cpScissors_allocs = unpackSRect2D(x.PScissors)
- allocsc4705791.Borrow(cpScissors_allocs)
+ var cpersistent_allocs *cgoAllocMap
+ ref8d2571e4.persistent, cpersistent_allocs = (C.VkBool32)(x.Persistent), cgoAllocsUnknown
+ allocs8d2571e4.Borrow(cpersistent_allocs)
- x.refc4705791 = refc4705791
- x.allocsc4705791 = allocsc4705791
- return refc4705791, allocsc4705791
+ x.ref8d2571e4 = ref8d2571e4
+ x.allocs8d2571e4 = allocs8d2571e4
+ return ref8d2571e4, allocs8d2571e4
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PipelineViewportStateCreateInfo) PassValue() (C.VkPipelineViewportStateCreateInfo, *cgoAllocMap) {
- if x.refc4705791 != nil {
- return *x.refc4705791, nil
+func (x DisplayPresentInfo) PassValue() (C.VkDisplayPresentInfoKHR, *cgoAllocMap) {
+ if x.ref8d2571e4 != nil {
+ return *x.ref8d2571e4, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -7314,134 +34651,183 @@ func (x PipelineViewportStateCreateInfo) PassValue() (C.VkPipelineViewportStateC
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PipelineViewportStateCreateInfo) Deref() {
- if x.refc4705791 == nil {
+func (x *DisplayPresentInfo) Deref() {
+ if x.ref8d2571e4 == nil {
return
}
- x.SType = (StructureType)(x.refc4705791.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc4705791.pNext))
- x.Flags = (PipelineViewportStateCreateFlags)(x.refc4705791.flags)
- x.ViewportCount = (uint32)(x.refc4705791.viewportCount)
- packSViewport(x.PViewports, x.refc4705791.pViewports)
- x.ScissorCount = (uint32)(x.refc4705791.scissorCount)
- packSRect2D(x.PScissors, x.refc4705791.pScissors)
+ x.SType = (StructureType)(x.ref8d2571e4.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref8d2571e4.pNext))
+ x.SrcRect = *NewRect2DRef(unsafe.Pointer(&x.ref8d2571e4.srcRect))
+ x.DstRect = *NewRect2DRef(unsafe.Pointer(&x.ref8d2571e4.dstRect))
+ x.Persistent = (Bool32)(x.ref8d2571e4.persistent)
}
-// allocPipelineRasterizationStateCreateInfoMemory allocates memory for type C.VkPipelineRasterizationStateCreateInfo in C.
+// allocQueueFamilyQueryResultStatusPropertiesMemory allocates memory for type C.VkQueueFamilyQueryResultStatusPropertiesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPipelineRasterizationStateCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineRasterizationStateCreateInfoValue))
+func allocQueueFamilyQueryResultStatusPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfQueueFamilyQueryResultStatusPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPipelineRasterizationStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineRasterizationStateCreateInfo{})
+const sizeOfQueueFamilyQueryResultStatusPropertiesValue = unsafe.Sizeof([1]C.VkQueueFamilyQueryResultStatusPropertiesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PipelineRasterizationStateCreateInfo) Ref() *C.VkPipelineRasterizationStateCreateInfo {
+func (x *QueueFamilyQueryResultStatusProperties) Ref() *C.VkQueueFamilyQueryResultStatusPropertiesKHR {
if x == nil {
return nil
}
- return x.ref48cb9fad
+ return x.ref1453d181
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PipelineRasterizationStateCreateInfo) Free() {
- if x != nil && x.allocs48cb9fad != nil {
- x.allocs48cb9fad.(*cgoAllocMap).Free()
- x.ref48cb9fad = nil
+func (x *QueueFamilyQueryResultStatusProperties) Free() {
+ if x != nil && x.allocs1453d181 != nil {
+ x.allocs1453d181.(*cgoAllocMap).Free()
+ x.ref1453d181 = nil
}
}
-// NewPipelineRasterizationStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewQueueFamilyQueryResultStatusPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPipelineRasterizationStateCreateInfoRef(ref unsafe.Pointer) *PipelineRasterizationStateCreateInfo {
+func NewQueueFamilyQueryResultStatusPropertiesRef(ref unsafe.Pointer) *QueueFamilyQueryResultStatusProperties {
if ref == nil {
return nil
}
- obj := new(PipelineRasterizationStateCreateInfo)
- obj.ref48cb9fad = (*C.VkPipelineRasterizationStateCreateInfo)(unsafe.Pointer(ref))
+ obj := new(QueueFamilyQueryResultStatusProperties)
+ obj.ref1453d181 = (*C.VkQueueFamilyQueryResultStatusPropertiesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PipelineRasterizationStateCreateInfo) PassRef() (*C.VkPipelineRasterizationStateCreateInfo, *cgoAllocMap) {
+func (x *QueueFamilyQueryResultStatusProperties) PassRef() (*C.VkQueueFamilyQueryResultStatusPropertiesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref48cb9fad != nil {
- return x.ref48cb9fad, nil
+ } else if x.ref1453d181 != nil {
+ return x.ref1453d181, nil
}
- mem48cb9fad := allocPipelineRasterizationStateCreateInfoMemory(1)
- ref48cb9fad := (*C.VkPipelineRasterizationStateCreateInfo)(mem48cb9fad)
- allocs48cb9fad := new(cgoAllocMap)
- allocs48cb9fad.Add(mem48cb9fad)
+ mem1453d181 := allocQueueFamilyQueryResultStatusPropertiesMemory(1)
+ ref1453d181 := (*C.VkQueueFamilyQueryResultStatusPropertiesKHR)(mem1453d181)
+ allocs1453d181 := new(cgoAllocMap)
+ allocs1453d181.Add(mem1453d181)
var csType_allocs *cgoAllocMap
- ref48cb9fad.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs48cb9fad.Borrow(csType_allocs)
+ ref1453d181.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs1453d181.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref48cb9fad.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs48cb9fad.Borrow(cpNext_allocs)
+ ref1453d181.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs1453d181.Borrow(cpNext_allocs)
- var cflags_allocs *cgoAllocMap
- ref48cb9fad.flags, cflags_allocs = (C.VkPipelineRasterizationStateCreateFlags)(x.Flags), cgoAllocsUnknown
- allocs48cb9fad.Borrow(cflags_allocs)
+ var cqueryResultStatusSupport_allocs *cgoAllocMap
+ ref1453d181.queryResultStatusSupport, cqueryResultStatusSupport_allocs = (C.VkBool32)(x.QueryResultStatusSupport), cgoAllocsUnknown
+ allocs1453d181.Borrow(cqueryResultStatusSupport_allocs)
- var cdepthClampEnable_allocs *cgoAllocMap
- ref48cb9fad.depthClampEnable, cdepthClampEnable_allocs = (C.VkBool32)(x.DepthClampEnable), cgoAllocsUnknown
- allocs48cb9fad.Borrow(cdepthClampEnable_allocs)
+ x.ref1453d181 = ref1453d181
+ x.allocs1453d181 = allocs1453d181
+ return ref1453d181, allocs1453d181
- var crasterizerDiscardEnable_allocs *cgoAllocMap
- ref48cb9fad.rasterizerDiscardEnable, crasterizerDiscardEnable_allocs = (C.VkBool32)(x.RasterizerDiscardEnable), cgoAllocsUnknown
- allocs48cb9fad.Borrow(crasterizerDiscardEnable_allocs)
+}
- var cpolygonMode_allocs *cgoAllocMap
- ref48cb9fad.polygonMode, cpolygonMode_allocs = (C.VkPolygonMode)(x.PolygonMode), cgoAllocsUnknown
- allocs48cb9fad.Borrow(cpolygonMode_allocs)
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x QueueFamilyQueryResultStatusProperties) PassValue() (C.VkQueueFamilyQueryResultStatusPropertiesKHR, *cgoAllocMap) {
+ if x.ref1453d181 != nil {
+ return *x.ref1453d181, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
- var ccullMode_allocs *cgoAllocMap
- ref48cb9fad.cullMode, ccullMode_allocs = (C.VkCullModeFlags)(x.CullMode), cgoAllocsUnknown
- allocs48cb9fad.Borrow(ccullMode_allocs)
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *QueueFamilyQueryResultStatusProperties) Deref() {
+ if x.ref1453d181 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref1453d181.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref1453d181.pNext))
+ x.QueryResultStatusSupport = (Bool32)(x.ref1453d181.queryResultStatusSupport)
+}
- var cfrontFace_allocs *cgoAllocMap
- ref48cb9fad.frontFace, cfrontFace_allocs = (C.VkFrontFace)(x.FrontFace), cgoAllocsUnknown
- allocs48cb9fad.Borrow(cfrontFace_allocs)
+// allocQueueFamilyVideoPropertiesMemory allocates memory for type C.VkQueueFamilyVideoPropertiesKHR in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocQueueFamilyVideoPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfQueueFamilyVideoPropertiesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
- var cdepthBiasEnable_allocs *cgoAllocMap
- ref48cb9fad.depthBiasEnable, cdepthBiasEnable_allocs = (C.VkBool32)(x.DepthBiasEnable), cgoAllocsUnknown
- allocs48cb9fad.Borrow(cdepthBiasEnable_allocs)
+const sizeOfQueueFamilyVideoPropertiesValue = unsafe.Sizeof([1]C.VkQueueFamilyVideoPropertiesKHR{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *QueueFamilyVideoProperties) Ref() *C.VkQueueFamilyVideoPropertiesKHR {
+ if x == nil {
+ return nil
+ }
+ return x.refb21c87c4
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *QueueFamilyVideoProperties) Free() {
+ if x != nil && x.allocsb21c87c4 != nil {
+ x.allocsb21c87c4.(*cgoAllocMap).Free()
+ x.refb21c87c4 = nil
+ }
+}
- var cdepthBiasConstantFactor_allocs *cgoAllocMap
- ref48cb9fad.depthBiasConstantFactor, cdepthBiasConstantFactor_allocs = (C.float)(x.DepthBiasConstantFactor), cgoAllocsUnknown
- allocs48cb9fad.Borrow(cdepthBiasConstantFactor_allocs)
+// NewQueueFamilyVideoPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewQueueFamilyVideoPropertiesRef(ref unsafe.Pointer) *QueueFamilyVideoProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(QueueFamilyVideoProperties)
+ obj.refb21c87c4 = (*C.VkQueueFamilyVideoPropertiesKHR)(unsafe.Pointer(ref))
+ return obj
+}
- var cdepthBiasClamp_allocs *cgoAllocMap
- ref48cb9fad.depthBiasClamp, cdepthBiasClamp_allocs = (C.float)(x.DepthBiasClamp), cgoAllocsUnknown
- allocs48cb9fad.Borrow(cdepthBiasClamp_allocs)
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *QueueFamilyVideoProperties) PassRef() (*C.VkQueueFamilyVideoPropertiesKHR, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refb21c87c4 != nil {
+ return x.refb21c87c4, nil
+ }
+ memb21c87c4 := allocQueueFamilyVideoPropertiesMemory(1)
+ refb21c87c4 := (*C.VkQueueFamilyVideoPropertiesKHR)(memb21c87c4)
+ allocsb21c87c4 := new(cgoAllocMap)
+ allocsb21c87c4.Add(memb21c87c4)
- var cdepthBiasSlopeFactor_allocs *cgoAllocMap
- ref48cb9fad.depthBiasSlopeFactor, cdepthBiasSlopeFactor_allocs = (C.float)(x.DepthBiasSlopeFactor), cgoAllocsUnknown
- allocs48cb9fad.Borrow(cdepthBiasSlopeFactor_allocs)
+ var csType_allocs *cgoAllocMap
+ refb21c87c4.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsb21c87c4.Borrow(csType_allocs)
- var clineWidth_allocs *cgoAllocMap
- ref48cb9fad.lineWidth, clineWidth_allocs = (C.float)(x.LineWidth), cgoAllocsUnknown
- allocs48cb9fad.Borrow(clineWidth_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refb21c87c4.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsb21c87c4.Borrow(cpNext_allocs)
- x.ref48cb9fad = ref48cb9fad
- x.allocs48cb9fad = allocs48cb9fad
- return ref48cb9fad, allocs48cb9fad
+ var cvideoCodecOperations_allocs *cgoAllocMap
+ refb21c87c4.videoCodecOperations, cvideoCodecOperations_allocs = (C.VkVideoCodecOperationFlagsKHR)(x.VideoCodecOperations), cgoAllocsUnknown
+ allocsb21c87c4.Borrow(cvideoCodecOperations_allocs)
+
+ x.refb21c87c4 = refb21c87c4
+ x.allocsb21c87c4 = allocsb21c87c4
+ return refb21c87c4, allocsb21c87c4
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PipelineRasterizationStateCreateInfo) PassValue() (C.VkPipelineRasterizationStateCreateInfo, *cgoAllocMap) {
- if x.ref48cb9fad != nil {
- return *x.ref48cb9fad, nil
+func (x QueueFamilyVideoProperties) PassValue() (C.VkQueueFamilyVideoPropertiesKHR, *cgoAllocMap) {
+ if x.refb21c87c4 != nil {
+ return *x.refb21c87c4, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -7449,124 +34835,102 @@ func (x PipelineRasterizationStateCreateInfo) PassValue() (C.VkPipelineRasteriza
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PipelineRasterizationStateCreateInfo) Deref() {
- if x.ref48cb9fad == nil {
+func (x *QueueFamilyVideoProperties) Deref() {
+ if x.refb21c87c4 == nil {
return
}
- x.SType = (StructureType)(x.ref48cb9fad.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref48cb9fad.pNext))
- x.Flags = (PipelineRasterizationStateCreateFlags)(x.ref48cb9fad.flags)
- x.DepthClampEnable = (Bool32)(x.ref48cb9fad.depthClampEnable)
- x.RasterizerDiscardEnable = (Bool32)(x.ref48cb9fad.rasterizerDiscardEnable)
- x.PolygonMode = (PolygonMode)(x.ref48cb9fad.polygonMode)
- x.CullMode = (CullModeFlags)(x.ref48cb9fad.cullMode)
- x.FrontFace = (FrontFace)(x.ref48cb9fad.frontFace)
- x.DepthBiasEnable = (Bool32)(x.ref48cb9fad.depthBiasEnable)
- x.DepthBiasConstantFactor = (float32)(x.ref48cb9fad.depthBiasConstantFactor)
- x.DepthBiasClamp = (float32)(x.ref48cb9fad.depthBiasClamp)
- x.DepthBiasSlopeFactor = (float32)(x.ref48cb9fad.depthBiasSlopeFactor)
- x.LineWidth = (float32)(x.ref48cb9fad.lineWidth)
+ x.SType = (StructureType)(x.refb21c87c4.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb21c87c4.pNext))
+ x.VideoCodecOperations = (VideoCodecOperationFlags)(x.refb21c87c4.videoCodecOperations)
}
-// allocPipelineMultisampleStateCreateInfoMemory allocates memory for type C.VkPipelineMultisampleStateCreateInfo in C.
+// allocVideoProfileInfoMemory allocates memory for type C.VkVideoProfileInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPipelineMultisampleStateCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineMultisampleStateCreateInfoValue))
+func allocVideoProfileInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfVideoProfileInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPipelineMultisampleStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineMultisampleStateCreateInfo{})
+const sizeOfVideoProfileInfoValue = unsafe.Sizeof([1]C.VkVideoProfileInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PipelineMultisampleStateCreateInfo) Ref() *C.VkPipelineMultisampleStateCreateInfo {
+func (x *VideoProfileInfo) Ref() *C.VkVideoProfileInfoKHR {
if x == nil {
return nil
}
- return x.refb6538bfb
+ return x.refdbadacde
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PipelineMultisampleStateCreateInfo) Free() {
- if x != nil && x.allocsb6538bfb != nil {
- x.allocsb6538bfb.(*cgoAllocMap).Free()
- x.refb6538bfb = nil
+func (x *VideoProfileInfo) Free() {
+ if x != nil && x.allocsdbadacde != nil {
+ x.allocsdbadacde.(*cgoAllocMap).Free()
+ x.refdbadacde = nil
}
}
-// NewPipelineMultisampleStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewVideoProfileInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPipelineMultisampleStateCreateInfoRef(ref unsafe.Pointer) *PipelineMultisampleStateCreateInfo {
+func NewVideoProfileInfoRef(ref unsafe.Pointer) *VideoProfileInfo {
if ref == nil {
return nil
}
- obj := new(PipelineMultisampleStateCreateInfo)
- obj.refb6538bfb = (*C.VkPipelineMultisampleStateCreateInfo)(unsafe.Pointer(ref))
+ obj := new(VideoProfileInfo)
+ obj.refdbadacde = (*C.VkVideoProfileInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PipelineMultisampleStateCreateInfo) PassRef() (*C.VkPipelineMultisampleStateCreateInfo, *cgoAllocMap) {
+func (x *VideoProfileInfo) PassRef() (*C.VkVideoProfileInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refb6538bfb != nil {
- return x.refb6538bfb, nil
+ } else if x.refdbadacde != nil {
+ return x.refdbadacde, nil
}
- memb6538bfb := allocPipelineMultisampleStateCreateInfoMemory(1)
- refb6538bfb := (*C.VkPipelineMultisampleStateCreateInfo)(memb6538bfb)
- allocsb6538bfb := new(cgoAllocMap)
- allocsb6538bfb.Add(memb6538bfb)
+ memdbadacde := allocVideoProfileInfoMemory(1)
+ refdbadacde := (*C.VkVideoProfileInfoKHR)(memdbadacde)
+ allocsdbadacde := new(cgoAllocMap)
+ allocsdbadacde.Add(memdbadacde)
var csType_allocs *cgoAllocMap
- refb6538bfb.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsb6538bfb.Borrow(csType_allocs)
+ refdbadacde.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsdbadacde.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refb6538bfb.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsb6538bfb.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- refb6538bfb.flags, cflags_allocs = (C.VkPipelineMultisampleStateCreateFlags)(x.Flags), cgoAllocsUnknown
- allocsb6538bfb.Borrow(cflags_allocs)
-
- var crasterizationSamples_allocs *cgoAllocMap
- refb6538bfb.rasterizationSamples, crasterizationSamples_allocs = (C.VkSampleCountFlagBits)(x.RasterizationSamples), cgoAllocsUnknown
- allocsb6538bfb.Borrow(crasterizationSamples_allocs)
-
- var csampleShadingEnable_allocs *cgoAllocMap
- refb6538bfb.sampleShadingEnable, csampleShadingEnable_allocs = (C.VkBool32)(x.SampleShadingEnable), cgoAllocsUnknown
- allocsb6538bfb.Borrow(csampleShadingEnable_allocs)
+ refdbadacde.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsdbadacde.Borrow(cpNext_allocs)
- var cminSampleShading_allocs *cgoAllocMap
- refb6538bfb.minSampleShading, cminSampleShading_allocs = (C.float)(x.MinSampleShading), cgoAllocsUnknown
- allocsb6538bfb.Borrow(cminSampleShading_allocs)
+ var cvideoCodecOperation_allocs *cgoAllocMap
+ refdbadacde.videoCodecOperation, cvideoCodecOperation_allocs = (C.VkVideoCodecOperationFlagBitsKHR)(x.VideoCodecOperation), cgoAllocsUnknown
+ allocsdbadacde.Borrow(cvideoCodecOperation_allocs)
- var cpSampleMask_allocs *cgoAllocMap
- refb6538bfb.pSampleMask, cpSampleMask_allocs = (*C.VkSampleMask)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PSampleMask)).Data)), cgoAllocsUnknown
- allocsb6538bfb.Borrow(cpSampleMask_allocs)
+ var cchromaSubsampling_allocs *cgoAllocMap
+ refdbadacde.chromaSubsampling, cchromaSubsampling_allocs = (C.VkVideoChromaSubsamplingFlagsKHR)(x.ChromaSubsampling), cgoAllocsUnknown
+ allocsdbadacde.Borrow(cchromaSubsampling_allocs)
- var calphaToCoverageEnable_allocs *cgoAllocMap
- refb6538bfb.alphaToCoverageEnable, calphaToCoverageEnable_allocs = (C.VkBool32)(x.AlphaToCoverageEnable), cgoAllocsUnknown
- allocsb6538bfb.Borrow(calphaToCoverageEnable_allocs)
+ var clumaBitDepth_allocs *cgoAllocMap
+ refdbadacde.lumaBitDepth, clumaBitDepth_allocs = (C.VkVideoComponentBitDepthFlagsKHR)(x.LumaBitDepth), cgoAllocsUnknown
+ allocsdbadacde.Borrow(clumaBitDepth_allocs)
- var calphaToOneEnable_allocs *cgoAllocMap
- refb6538bfb.alphaToOneEnable, calphaToOneEnable_allocs = (C.VkBool32)(x.AlphaToOneEnable), cgoAllocsUnknown
- allocsb6538bfb.Borrow(calphaToOneEnable_allocs)
+ var cchromaBitDepth_allocs *cgoAllocMap
+ refdbadacde.chromaBitDepth, cchromaBitDepth_allocs = (C.VkVideoComponentBitDepthFlagsKHR)(x.ChromaBitDepth), cgoAllocsUnknown
+ allocsdbadacde.Borrow(cchromaBitDepth_allocs)
- x.refb6538bfb = refb6538bfb
- x.allocsb6538bfb = allocsb6538bfb
- return refb6538bfb, allocsb6538bfb
+ x.refdbadacde = refdbadacde
+ x.allocsdbadacde = allocsdbadacde
+ return refdbadacde, allocsdbadacde
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PipelineMultisampleStateCreateInfo) PassValue() (C.VkPipelineMultisampleStateCreateInfo, *cgoAllocMap) {
- if x.refb6538bfb != nil {
- return *x.refb6538bfb, nil
+func (x VideoProfileInfo) PassValue() (C.VkVideoProfileInfoKHR, *cgoAllocMap) {
+ if x.refdbadacde != nil {
+ return *x.refdbadacde, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -7574,116 +34938,135 @@ func (x PipelineMultisampleStateCreateInfo) PassValue() (C.VkPipelineMultisample
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PipelineMultisampleStateCreateInfo) Deref() {
- if x.refb6538bfb == nil {
+func (x *VideoProfileInfo) Deref() {
+ if x.refdbadacde == nil {
return
}
- x.SType = (StructureType)(x.refb6538bfb.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb6538bfb.pNext))
- x.Flags = (PipelineMultisampleStateCreateFlags)(x.refb6538bfb.flags)
- x.RasterizationSamples = (SampleCountFlagBits)(x.refb6538bfb.rasterizationSamples)
- x.SampleShadingEnable = (Bool32)(x.refb6538bfb.sampleShadingEnable)
- x.MinSampleShading = (float32)(x.refb6538bfb.minSampleShading)
- hxf3b8dbd := (*sliceHeader)(unsafe.Pointer(&x.PSampleMask))
- hxf3b8dbd.Data = unsafe.Pointer(x.refb6538bfb.pSampleMask)
- hxf3b8dbd.Cap = 0x7fffffff
- // hxf3b8dbd.Len = ?
-
- x.AlphaToCoverageEnable = (Bool32)(x.refb6538bfb.alphaToCoverageEnable)
- x.AlphaToOneEnable = (Bool32)(x.refb6538bfb.alphaToOneEnable)
+ x.SType = (StructureType)(x.refdbadacde.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refdbadacde.pNext))
+ x.VideoCodecOperation = (VideoCodecOperationFlagBits)(x.refdbadacde.videoCodecOperation)
+ x.ChromaSubsampling = (VideoChromaSubsamplingFlags)(x.refdbadacde.chromaSubsampling)
+ x.LumaBitDepth = (VideoComponentBitDepthFlags)(x.refdbadacde.lumaBitDepth)
+ x.ChromaBitDepth = (VideoComponentBitDepthFlags)(x.refdbadacde.chromaBitDepth)
}
-// allocStencilOpStateMemory allocates memory for type C.VkStencilOpState in C.
+// allocVideoProfileListInfoMemory allocates memory for type C.VkVideoProfileListInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocStencilOpStateMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfStencilOpStateValue))
+func allocVideoProfileListInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfVideoProfileListInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfStencilOpStateValue = unsafe.Sizeof([1]C.VkStencilOpState{})
+const sizeOfVideoProfileListInfoValue = unsafe.Sizeof([1]C.VkVideoProfileListInfoKHR{})
+
+// unpackSVideoProfileInfo transforms a sliced Go data structure into plain C format.
+func unpackSVideoProfileInfo(x []VideoProfileInfo) (unpacked *C.VkVideoProfileInfoKHR, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkVideoProfileInfoKHR) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocVideoProfileInfoMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkVideoProfileInfoKHR)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkVideoProfileInfoKHR)(h.Data)
+ return
+}
+
+// packSVideoProfileInfo reads sliced Go data structure out from plain C format.
+func packSVideoProfileInfo(v []VideoProfileInfo, ptr0 *C.VkVideoProfileInfoKHR) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfVideoProfileInfoValue]C.VkVideoProfileInfoKHR)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewVideoProfileInfoRef(unsafe.Pointer(&ptr1))
+ }
+}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *StencilOpState) Ref() *C.VkStencilOpState {
+func (x *VideoProfileListInfo) Ref() *C.VkVideoProfileListInfoKHR {
if x == nil {
return nil
}
- return x.ref28886871
+ return x.refd98c78d7
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *StencilOpState) Free() {
- if x != nil && x.allocs28886871 != nil {
- x.allocs28886871.(*cgoAllocMap).Free()
- x.ref28886871 = nil
+func (x *VideoProfileListInfo) Free() {
+ if x != nil && x.allocsd98c78d7 != nil {
+ x.allocsd98c78d7.(*cgoAllocMap).Free()
+ x.refd98c78d7 = nil
}
}
-// NewStencilOpStateRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewVideoProfileListInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewStencilOpStateRef(ref unsafe.Pointer) *StencilOpState {
+func NewVideoProfileListInfoRef(ref unsafe.Pointer) *VideoProfileListInfo {
if ref == nil {
return nil
}
- obj := new(StencilOpState)
- obj.ref28886871 = (*C.VkStencilOpState)(unsafe.Pointer(ref))
+ obj := new(VideoProfileListInfo)
+ obj.refd98c78d7 = (*C.VkVideoProfileListInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *StencilOpState) PassRef() (*C.VkStencilOpState, *cgoAllocMap) {
+func (x *VideoProfileListInfo) PassRef() (*C.VkVideoProfileListInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref28886871 != nil {
- return x.ref28886871, nil
+ } else if x.refd98c78d7 != nil {
+ return x.refd98c78d7, nil
}
- mem28886871 := allocStencilOpStateMemory(1)
- ref28886871 := (*C.VkStencilOpState)(mem28886871)
- allocs28886871 := new(cgoAllocMap)
- allocs28886871.Add(mem28886871)
-
- var cfailOp_allocs *cgoAllocMap
- ref28886871.failOp, cfailOp_allocs = (C.VkStencilOp)(x.FailOp), cgoAllocsUnknown
- allocs28886871.Borrow(cfailOp_allocs)
-
- var cpassOp_allocs *cgoAllocMap
- ref28886871.passOp, cpassOp_allocs = (C.VkStencilOp)(x.PassOp), cgoAllocsUnknown
- allocs28886871.Borrow(cpassOp_allocs)
-
- var cdepthFailOp_allocs *cgoAllocMap
- ref28886871.depthFailOp, cdepthFailOp_allocs = (C.VkStencilOp)(x.DepthFailOp), cgoAllocsUnknown
- allocs28886871.Borrow(cdepthFailOp_allocs)
+ memd98c78d7 := allocVideoProfileListInfoMemory(1)
+ refd98c78d7 := (*C.VkVideoProfileListInfoKHR)(memd98c78d7)
+ allocsd98c78d7 := new(cgoAllocMap)
+ allocsd98c78d7.Add(memd98c78d7)
- var ccompareOp_allocs *cgoAllocMap
- ref28886871.compareOp, ccompareOp_allocs = (C.VkCompareOp)(x.CompareOp), cgoAllocsUnknown
- allocs28886871.Borrow(ccompareOp_allocs)
+ var csType_allocs *cgoAllocMap
+ refd98c78d7.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd98c78d7.Borrow(csType_allocs)
- var ccompareMask_allocs *cgoAllocMap
- ref28886871.compareMask, ccompareMask_allocs = (C.uint32_t)(x.CompareMask), cgoAllocsUnknown
- allocs28886871.Borrow(ccompareMask_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refd98c78d7.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsd98c78d7.Borrow(cpNext_allocs)
- var cwriteMask_allocs *cgoAllocMap
- ref28886871.writeMask, cwriteMask_allocs = (C.uint32_t)(x.WriteMask), cgoAllocsUnknown
- allocs28886871.Borrow(cwriteMask_allocs)
+ var cprofileCount_allocs *cgoAllocMap
+ refd98c78d7.profileCount, cprofileCount_allocs = (C.uint32_t)(x.ProfileCount), cgoAllocsUnknown
+ allocsd98c78d7.Borrow(cprofileCount_allocs)
- var creference_allocs *cgoAllocMap
- ref28886871.reference, creference_allocs = (C.uint32_t)(x.Reference), cgoAllocsUnknown
- allocs28886871.Borrow(creference_allocs)
+ var cpProfiles_allocs *cgoAllocMap
+ refd98c78d7.pProfiles, cpProfiles_allocs = unpackSVideoProfileInfo(x.PProfiles)
+ allocsd98c78d7.Borrow(cpProfiles_allocs)
- x.ref28886871 = ref28886871
- x.allocs28886871 = allocs28886871
- return ref28886871, allocs28886871
+ x.refd98c78d7 = refd98c78d7
+ x.allocsd98c78d7 = allocsd98c78d7
+ return refd98c78d7, allocsd98c78d7
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x StencilOpState) PassValue() (C.VkStencilOpState, *cgoAllocMap) {
- if x.ref28886871 != nil {
- return *x.ref28886871, nil
+func (x VideoProfileListInfo) PassValue() (C.VkVideoProfileListInfoKHR, *cgoAllocMap) {
+ if x.refd98c78d7 != nil {
+ return *x.refd98c78d7, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -7691,130 +35074,123 @@ func (x StencilOpState) PassValue() (C.VkStencilOpState, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *StencilOpState) Deref() {
- if x.ref28886871 == nil {
+func (x *VideoProfileListInfo) Deref() {
+ if x.refd98c78d7 == nil {
return
}
- x.FailOp = (StencilOp)(x.ref28886871.failOp)
- x.PassOp = (StencilOp)(x.ref28886871.passOp)
- x.DepthFailOp = (StencilOp)(x.ref28886871.depthFailOp)
- x.CompareOp = (CompareOp)(x.ref28886871.compareOp)
- x.CompareMask = (uint32)(x.ref28886871.compareMask)
- x.WriteMask = (uint32)(x.ref28886871.writeMask)
- x.Reference = (uint32)(x.ref28886871.reference)
+ x.SType = (StructureType)(x.refd98c78d7.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd98c78d7.pNext))
+ x.ProfileCount = (uint32)(x.refd98c78d7.profileCount)
+ packSVideoProfileInfo(x.PProfiles, x.refd98c78d7.pProfiles)
}
-// allocPipelineDepthStencilStateCreateInfoMemory allocates memory for type C.VkPipelineDepthStencilStateCreateInfo in C.
+// allocVideoCapabilitiesMemory allocates memory for type C.VkVideoCapabilitiesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPipelineDepthStencilStateCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineDepthStencilStateCreateInfoValue))
+func allocVideoCapabilitiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfVideoCapabilitiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPipelineDepthStencilStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineDepthStencilStateCreateInfo{})
+const sizeOfVideoCapabilitiesValue = unsafe.Sizeof([1]C.VkVideoCapabilitiesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PipelineDepthStencilStateCreateInfo) Ref() *C.VkPipelineDepthStencilStateCreateInfo {
+func (x *VideoCapabilities) Ref() *C.VkVideoCapabilitiesKHR {
if x == nil {
return nil
}
- return x.refeabfcf1
+ return x.reff1959efe
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PipelineDepthStencilStateCreateInfo) Free() {
- if x != nil && x.allocseabfcf1 != nil {
- x.allocseabfcf1.(*cgoAllocMap).Free()
- x.refeabfcf1 = nil
+func (x *VideoCapabilities) Free() {
+ if x != nil && x.allocsf1959efe != nil {
+ x.allocsf1959efe.(*cgoAllocMap).Free()
+ x.reff1959efe = nil
}
}
-// NewPipelineDepthStencilStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewVideoCapabilitiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPipelineDepthStencilStateCreateInfoRef(ref unsafe.Pointer) *PipelineDepthStencilStateCreateInfo {
+func NewVideoCapabilitiesRef(ref unsafe.Pointer) *VideoCapabilities {
if ref == nil {
return nil
}
- obj := new(PipelineDepthStencilStateCreateInfo)
- obj.refeabfcf1 = (*C.VkPipelineDepthStencilStateCreateInfo)(unsafe.Pointer(ref))
+ obj := new(VideoCapabilities)
+ obj.reff1959efe = (*C.VkVideoCapabilitiesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PipelineDepthStencilStateCreateInfo) PassRef() (*C.VkPipelineDepthStencilStateCreateInfo, *cgoAllocMap) {
+func (x *VideoCapabilities) PassRef() (*C.VkVideoCapabilitiesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refeabfcf1 != nil {
- return x.refeabfcf1, nil
+ } else if x.reff1959efe != nil {
+ return x.reff1959efe, nil
}
- memeabfcf1 := allocPipelineDepthStencilStateCreateInfoMemory(1)
- refeabfcf1 := (*C.VkPipelineDepthStencilStateCreateInfo)(memeabfcf1)
- allocseabfcf1 := new(cgoAllocMap)
- allocseabfcf1.Add(memeabfcf1)
+ memf1959efe := allocVideoCapabilitiesMemory(1)
+ reff1959efe := (*C.VkVideoCapabilitiesKHR)(memf1959efe)
+ allocsf1959efe := new(cgoAllocMap)
+ allocsf1959efe.Add(memf1959efe)
var csType_allocs *cgoAllocMap
- refeabfcf1.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocseabfcf1.Borrow(csType_allocs)
+ reff1959efe.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsf1959efe.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refeabfcf1.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocseabfcf1.Borrow(cpNext_allocs)
+ reff1959efe.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsf1959efe.Borrow(cpNext_allocs)
var cflags_allocs *cgoAllocMap
- refeabfcf1.flags, cflags_allocs = (C.VkPipelineDepthStencilStateCreateFlags)(x.Flags), cgoAllocsUnknown
- allocseabfcf1.Borrow(cflags_allocs)
-
- var cdepthTestEnable_allocs *cgoAllocMap
- refeabfcf1.depthTestEnable, cdepthTestEnable_allocs = (C.VkBool32)(x.DepthTestEnable), cgoAllocsUnknown
- allocseabfcf1.Borrow(cdepthTestEnable_allocs)
+ reff1959efe.flags, cflags_allocs = (C.VkVideoCapabilityFlagsKHR)(x.Flags), cgoAllocsUnknown
+ allocsf1959efe.Borrow(cflags_allocs)
- var cdepthWriteEnable_allocs *cgoAllocMap
- refeabfcf1.depthWriteEnable, cdepthWriteEnable_allocs = (C.VkBool32)(x.DepthWriteEnable), cgoAllocsUnknown
- allocseabfcf1.Borrow(cdepthWriteEnable_allocs)
+ var cminBitstreamBufferOffsetAlignment_allocs *cgoAllocMap
+ reff1959efe.minBitstreamBufferOffsetAlignment, cminBitstreamBufferOffsetAlignment_allocs = (C.VkDeviceSize)(x.MinBitstreamBufferOffsetAlignment), cgoAllocsUnknown
+ allocsf1959efe.Borrow(cminBitstreamBufferOffsetAlignment_allocs)
- var cdepthCompareOp_allocs *cgoAllocMap
- refeabfcf1.depthCompareOp, cdepthCompareOp_allocs = (C.VkCompareOp)(x.DepthCompareOp), cgoAllocsUnknown
- allocseabfcf1.Borrow(cdepthCompareOp_allocs)
+ var cminBitstreamBufferSizeAlignment_allocs *cgoAllocMap
+ reff1959efe.minBitstreamBufferSizeAlignment, cminBitstreamBufferSizeAlignment_allocs = (C.VkDeviceSize)(x.MinBitstreamBufferSizeAlignment), cgoAllocsUnknown
+ allocsf1959efe.Borrow(cminBitstreamBufferSizeAlignment_allocs)
- var cdepthBoundsTestEnable_allocs *cgoAllocMap
- refeabfcf1.depthBoundsTestEnable, cdepthBoundsTestEnable_allocs = (C.VkBool32)(x.DepthBoundsTestEnable), cgoAllocsUnknown
- allocseabfcf1.Borrow(cdepthBoundsTestEnable_allocs)
+ var cpictureAccessGranularity_allocs *cgoAllocMap
+ reff1959efe.pictureAccessGranularity, cpictureAccessGranularity_allocs = x.PictureAccessGranularity.PassValue()
+ allocsf1959efe.Borrow(cpictureAccessGranularity_allocs)
- var cstencilTestEnable_allocs *cgoAllocMap
- refeabfcf1.stencilTestEnable, cstencilTestEnable_allocs = (C.VkBool32)(x.StencilTestEnable), cgoAllocsUnknown
- allocseabfcf1.Borrow(cstencilTestEnable_allocs)
+ var cminCodedExtent_allocs *cgoAllocMap
+ reff1959efe.minCodedExtent, cminCodedExtent_allocs = x.MinCodedExtent.PassValue()
+ allocsf1959efe.Borrow(cminCodedExtent_allocs)
- var cfront_allocs *cgoAllocMap
- refeabfcf1.front, cfront_allocs = x.Front.PassValue()
- allocseabfcf1.Borrow(cfront_allocs)
+ var cmaxCodedExtent_allocs *cgoAllocMap
+ reff1959efe.maxCodedExtent, cmaxCodedExtent_allocs = x.MaxCodedExtent.PassValue()
+ allocsf1959efe.Borrow(cmaxCodedExtent_allocs)
- var cback_allocs *cgoAllocMap
- refeabfcf1.back, cback_allocs = x.Back.PassValue()
- allocseabfcf1.Borrow(cback_allocs)
+ var cmaxDpbSlots_allocs *cgoAllocMap
+ reff1959efe.maxDpbSlots, cmaxDpbSlots_allocs = (C.uint32_t)(x.MaxDpbSlots), cgoAllocsUnknown
+ allocsf1959efe.Borrow(cmaxDpbSlots_allocs)
- var cminDepthBounds_allocs *cgoAllocMap
- refeabfcf1.minDepthBounds, cminDepthBounds_allocs = (C.float)(x.MinDepthBounds), cgoAllocsUnknown
- allocseabfcf1.Borrow(cminDepthBounds_allocs)
+ var cmaxActiveReferencePictures_allocs *cgoAllocMap
+ reff1959efe.maxActiveReferencePictures, cmaxActiveReferencePictures_allocs = (C.uint32_t)(x.MaxActiveReferencePictures), cgoAllocsUnknown
+ allocsf1959efe.Borrow(cmaxActiveReferencePictures_allocs)
- var cmaxDepthBounds_allocs *cgoAllocMap
- refeabfcf1.maxDepthBounds, cmaxDepthBounds_allocs = (C.float)(x.MaxDepthBounds), cgoAllocsUnknown
- allocseabfcf1.Borrow(cmaxDepthBounds_allocs)
+ var cstdHeaderVersion_allocs *cgoAllocMap
+ reff1959efe.stdHeaderVersion, cstdHeaderVersion_allocs = x.StdHeaderVersion.PassValue()
+ allocsf1959efe.Borrow(cstdHeaderVersion_allocs)
- x.refeabfcf1 = refeabfcf1
- x.allocseabfcf1 = allocseabfcf1
- return refeabfcf1, allocseabfcf1
+ x.reff1959efe = reff1959efe
+ x.allocsf1959efe = allocsf1959efe
+ return reff1959efe, allocsf1959efe
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PipelineDepthStencilStateCreateInfo) PassValue() (C.VkPipelineDepthStencilStateCreateInfo, *cgoAllocMap) {
- if x.refeabfcf1 != nil {
- return *x.refeabfcf1, nil
+func (x VideoCapabilities) PassValue() (C.VkVideoCapabilitiesKHR, *cgoAllocMap) {
+ if x.reff1959efe != nil {
+ return *x.reff1959efe, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -7822,119 +35198,98 @@ func (x PipelineDepthStencilStateCreateInfo) PassValue() (C.VkPipelineDepthStenc
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PipelineDepthStencilStateCreateInfo) Deref() {
- if x.refeabfcf1 == nil {
+func (x *VideoCapabilities) Deref() {
+ if x.reff1959efe == nil {
return
}
- x.SType = (StructureType)(x.refeabfcf1.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refeabfcf1.pNext))
- x.Flags = (PipelineDepthStencilStateCreateFlags)(x.refeabfcf1.flags)
- x.DepthTestEnable = (Bool32)(x.refeabfcf1.depthTestEnable)
- x.DepthWriteEnable = (Bool32)(x.refeabfcf1.depthWriteEnable)
- x.DepthCompareOp = (CompareOp)(x.refeabfcf1.depthCompareOp)
- x.DepthBoundsTestEnable = (Bool32)(x.refeabfcf1.depthBoundsTestEnable)
- x.StencilTestEnable = (Bool32)(x.refeabfcf1.stencilTestEnable)
- x.Front = *NewStencilOpStateRef(unsafe.Pointer(&x.refeabfcf1.front))
- x.Back = *NewStencilOpStateRef(unsafe.Pointer(&x.refeabfcf1.back))
- x.MinDepthBounds = (float32)(x.refeabfcf1.minDepthBounds)
- x.MaxDepthBounds = (float32)(x.refeabfcf1.maxDepthBounds)
+ x.SType = (StructureType)(x.reff1959efe.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff1959efe.pNext))
+ x.Flags = (VideoCapabilityFlags)(x.reff1959efe.flags)
+ x.MinBitstreamBufferOffsetAlignment = (DeviceSize)(x.reff1959efe.minBitstreamBufferOffsetAlignment)
+ x.MinBitstreamBufferSizeAlignment = (DeviceSize)(x.reff1959efe.minBitstreamBufferSizeAlignment)
+ x.PictureAccessGranularity = *NewExtent2DRef(unsafe.Pointer(&x.reff1959efe.pictureAccessGranularity))
+ x.MinCodedExtent = *NewExtent2DRef(unsafe.Pointer(&x.reff1959efe.minCodedExtent))
+ x.MaxCodedExtent = *NewExtent2DRef(unsafe.Pointer(&x.reff1959efe.maxCodedExtent))
+ x.MaxDpbSlots = (uint32)(x.reff1959efe.maxDpbSlots)
+ x.MaxActiveReferencePictures = (uint32)(x.reff1959efe.maxActiveReferencePictures)
+ x.StdHeaderVersion = *NewExtensionPropertiesRef(unsafe.Pointer(&x.reff1959efe.stdHeaderVersion))
}
-// allocPipelineColorBlendAttachmentStateMemory allocates memory for type C.VkPipelineColorBlendAttachmentState in C.
+// allocPhysicalDeviceVideoFormatInfoMemory allocates memory for type C.VkPhysicalDeviceVideoFormatInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPipelineColorBlendAttachmentStateMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineColorBlendAttachmentStateValue))
+func allocPhysicalDeviceVideoFormatInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceVideoFormatInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPipelineColorBlendAttachmentStateValue = unsafe.Sizeof([1]C.VkPipelineColorBlendAttachmentState{})
+const sizeOfPhysicalDeviceVideoFormatInfoValue = unsafe.Sizeof([1]C.VkPhysicalDeviceVideoFormatInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PipelineColorBlendAttachmentState) Ref() *C.VkPipelineColorBlendAttachmentState {
+func (x *PhysicalDeviceVideoFormatInfo) Ref() *C.VkPhysicalDeviceVideoFormatInfoKHR {
if x == nil {
return nil
}
- return x.ref9e889477
+ return x.ref4d0248b7
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PipelineColorBlendAttachmentState) Free() {
- if x != nil && x.allocs9e889477 != nil {
- x.allocs9e889477.(*cgoAllocMap).Free()
- x.ref9e889477 = nil
+func (x *PhysicalDeviceVideoFormatInfo) Free() {
+ if x != nil && x.allocs4d0248b7 != nil {
+ x.allocs4d0248b7.(*cgoAllocMap).Free()
+ x.ref4d0248b7 = nil
}
}
-// NewPipelineColorBlendAttachmentStateRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceVideoFormatInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPipelineColorBlendAttachmentStateRef(ref unsafe.Pointer) *PipelineColorBlendAttachmentState {
+func NewPhysicalDeviceVideoFormatInfoRef(ref unsafe.Pointer) *PhysicalDeviceVideoFormatInfo {
if ref == nil {
return nil
}
- obj := new(PipelineColorBlendAttachmentState)
- obj.ref9e889477 = (*C.VkPipelineColorBlendAttachmentState)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceVideoFormatInfo)
+ obj.ref4d0248b7 = (*C.VkPhysicalDeviceVideoFormatInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PipelineColorBlendAttachmentState) PassRef() (*C.VkPipelineColorBlendAttachmentState, *cgoAllocMap) {
+func (x *PhysicalDeviceVideoFormatInfo) PassRef() (*C.VkPhysicalDeviceVideoFormatInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref9e889477 != nil {
- return x.ref9e889477, nil
+ } else if x.ref4d0248b7 != nil {
+ return x.ref4d0248b7, nil
}
- mem9e889477 := allocPipelineColorBlendAttachmentStateMemory(1)
- ref9e889477 := (*C.VkPipelineColorBlendAttachmentState)(mem9e889477)
- allocs9e889477 := new(cgoAllocMap)
- allocs9e889477.Add(mem9e889477)
-
- var cblendEnable_allocs *cgoAllocMap
- ref9e889477.blendEnable, cblendEnable_allocs = (C.VkBool32)(x.BlendEnable), cgoAllocsUnknown
- allocs9e889477.Borrow(cblendEnable_allocs)
-
- var csrcColorBlendFactor_allocs *cgoAllocMap
- ref9e889477.srcColorBlendFactor, csrcColorBlendFactor_allocs = (C.VkBlendFactor)(x.SrcColorBlendFactor), cgoAllocsUnknown
- allocs9e889477.Borrow(csrcColorBlendFactor_allocs)
-
- var cdstColorBlendFactor_allocs *cgoAllocMap
- ref9e889477.dstColorBlendFactor, cdstColorBlendFactor_allocs = (C.VkBlendFactor)(x.DstColorBlendFactor), cgoAllocsUnknown
- allocs9e889477.Borrow(cdstColorBlendFactor_allocs)
-
- var ccolorBlendOp_allocs *cgoAllocMap
- ref9e889477.colorBlendOp, ccolorBlendOp_allocs = (C.VkBlendOp)(x.ColorBlendOp), cgoAllocsUnknown
- allocs9e889477.Borrow(ccolorBlendOp_allocs)
+ mem4d0248b7 := allocPhysicalDeviceVideoFormatInfoMemory(1)
+ ref4d0248b7 := (*C.VkPhysicalDeviceVideoFormatInfoKHR)(mem4d0248b7)
+ allocs4d0248b7 := new(cgoAllocMap)
+ allocs4d0248b7.Add(mem4d0248b7)
- var csrcAlphaBlendFactor_allocs *cgoAllocMap
- ref9e889477.srcAlphaBlendFactor, csrcAlphaBlendFactor_allocs = (C.VkBlendFactor)(x.SrcAlphaBlendFactor), cgoAllocsUnknown
- allocs9e889477.Borrow(csrcAlphaBlendFactor_allocs)
-
- var cdstAlphaBlendFactor_allocs *cgoAllocMap
- ref9e889477.dstAlphaBlendFactor, cdstAlphaBlendFactor_allocs = (C.VkBlendFactor)(x.DstAlphaBlendFactor), cgoAllocsUnknown
- allocs9e889477.Borrow(cdstAlphaBlendFactor_allocs)
+ var csType_allocs *cgoAllocMap
+ ref4d0248b7.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs4d0248b7.Borrow(csType_allocs)
- var calphaBlendOp_allocs *cgoAllocMap
- ref9e889477.alphaBlendOp, calphaBlendOp_allocs = (C.VkBlendOp)(x.AlphaBlendOp), cgoAllocsUnknown
- allocs9e889477.Borrow(calphaBlendOp_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref4d0248b7.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs4d0248b7.Borrow(cpNext_allocs)
- var ccolorWriteMask_allocs *cgoAllocMap
- ref9e889477.colorWriteMask, ccolorWriteMask_allocs = (C.VkColorComponentFlags)(x.ColorWriteMask), cgoAllocsUnknown
- allocs9e889477.Borrow(ccolorWriteMask_allocs)
+ var cimageUsage_allocs *cgoAllocMap
+ ref4d0248b7.imageUsage, cimageUsage_allocs = (C.VkImageUsageFlags)(x.ImageUsage), cgoAllocsUnknown
+ allocs4d0248b7.Borrow(cimageUsage_allocs)
- x.ref9e889477 = ref9e889477
- x.allocs9e889477 = allocs9e889477
- return ref9e889477, allocs9e889477
+ x.ref4d0248b7 = ref4d0248b7
+ x.allocs4d0248b7 = allocs4d0248b7
+ return ref4d0248b7, allocs4d0248b7
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PipelineColorBlendAttachmentState) PassValue() (C.VkPipelineColorBlendAttachmentState, *cgoAllocMap) {
- if x.ref9e889477 != nil {
- return *x.ref9e889477, nil
+func (x PhysicalDeviceVideoFormatInfo) PassValue() (C.VkPhysicalDeviceVideoFormatInfoKHR, *cgoAllocMap) {
+ if x.ref4d0248b7 != nil {
+ return *x.ref4d0248b7, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -7942,153 +35297,110 @@ func (x PipelineColorBlendAttachmentState) PassValue() (C.VkPipelineColorBlendAt
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PipelineColorBlendAttachmentState) Deref() {
- if x.ref9e889477 == nil {
+func (x *PhysicalDeviceVideoFormatInfo) Deref() {
+ if x.ref4d0248b7 == nil {
return
}
- x.BlendEnable = (Bool32)(x.ref9e889477.blendEnable)
- x.SrcColorBlendFactor = (BlendFactor)(x.ref9e889477.srcColorBlendFactor)
- x.DstColorBlendFactor = (BlendFactor)(x.ref9e889477.dstColorBlendFactor)
- x.ColorBlendOp = (BlendOp)(x.ref9e889477.colorBlendOp)
- x.SrcAlphaBlendFactor = (BlendFactor)(x.ref9e889477.srcAlphaBlendFactor)
- x.DstAlphaBlendFactor = (BlendFactor)(x.ref9e889477.dstAlphaBlendFactor)
- x.AlphaBlendOp = (BlendOp)(x.ref9e889477.alphaBlendOp)
- x.ColorWriteMask = (ColorComponentFlags)(x.ref9e889477.colorWriteMask)
+ x.SType = (StructureType)(x.ref4d0248b7.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref4d0248b7.pNext))
+ x.ImageUsage = (ImageUsageFlags)(x.ref4d0248b7.imageUsage)
}
-// allocPipelineColorBlendStateCreateInfoMemory allocates memory for type C.VkPipelineColorBlendStateCreateInfo in C.
+// allocVideoFormatPropertiesMemory allocates memory for type C.VkVideoFormatPropertiesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPipelineColorBlendStateCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineColorBlendStateCreateInfoValue))
+func allocVideoFormatPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfVideoFormatPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPipelineColorBlendStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineColorBlendStateCreateInfo{})
-
-// unpackSPipelineColorBlendAttachmentState transforms a sliced Go data structure into plain C format.
-func unpackSPipelineColorBlendAttachmentState(x []PipelineColorBlendAttachmentState) (unpacked *C.VkPipelineColorBlendAttachmentState, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkPipelineColorBlendAttachmentState) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocPipelineColorBlendAttachmentStateMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkPipelineColorBlendAttachmentState)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkPipelineColorBlendAttachmentState)(h.Data)
- return
-}
-
-// packSPipelineColorBlendAttachmentState reads sliced Go data structure out from plain C format.
-func packSPipelineColorBlendAttachmentState(v []PipelineColorBlendAttachmentState, ptr0 *C.VkPipelineColorBlendAttachmentState) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfPipelineColorBlendAttachmentStateValue]C.VkPipelineColorBlendAttachmentState)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewPipelineColorBlendAttachmentStateRef(unsafe.Pointer(&ptr1))
- }
-}
+const sizeOfVideoFormatPropertiesValue = unsafe.Sizeof([1]C.VkVideoFormatPropertiesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PipelineColorBlendStateCreateInfo) Ref() *C.VkPipelineColorBlendStateCreateInfo {
+func (x *VideoFormatProperties) Ref() *C.VkVideoFormatPropertiesKHR {
if x == nil {
return nil
}
- return x.ref2a9b490b
+ return x.refa1a566f8
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PipelineColorBlendStateCreateInfo) Free() {
- if x != nil && x.allocs2a9b490b != nil {
- x.allocs2a9b490b.(*cgoAllocMap).Free()
- x.ref2a9b490b = nil
+func (x *VideoFormatProperties) Free() {
+ if x != nil && x.allocsa1a566f8 != nil {
+ x.allocsa1a566f8.(*cgoAllocMap).Free()
+ x.refa1a566f8 = nil
}
}
-// NewPipelineColorBlendStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewVideoFormatPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPipelineColorBlendStateCreateInfoRef(ref unsafe.Pointer) *PipelineColorBlendStateCreateInfo {
+func NewVideoFormatPropertiesRef(ref unsafe.Pointer) *VideoFormatProperties {
if ref == nil {
return nil
}
- obj := new(PipelineColorBlendStateCreateInfo)
- obj.ref2a9b490b = (*C.VkPipelineColorBlendStateCreateInfo)(unsafe.Pointer(ref))
+ obj := new(VideoFormatProperties)
+ obj.refa1a566f8 = (*C.VkVideoFormatPropertiesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PipelineColorBlendStateCreateInfo) PassRef() (*C.VkPipelineColorBlendStateCreateInfo, *cgoAllocMap) {
+func (x *VideoFormatProperties) PassRef() (*C.VkVideoFormatPropertiesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref2a9b490b != nil {
- return x.ref2a9b490b, nil
+ } else if x.refa1a566f8 != nil {
+ return x.refa1a566f8, nil
}
- mem2a9b490b := allocPipelineColorBlendStateCreateInfoMemory(1)
- ref2a9b490b := (*C.VkPipelineColorBlendStateCreateInfo)(mem2a9b490b)
- allocs2a9b490b := new(cgoAllocMap)
- allocs2a9b490b.Add(mem2a9b490b)
+ mema1a566f8 := allocVideoFormatPropertiesMemory(1)
+ refa1a566f8 := (*C.VkVideoFormatPropertiesKHR)(mema1a566f8)
+ allocsa1a566f8 := new(cgoAllocMap)
+ allocsa1a566f8.Add(mema1a566f8)
var csType_allocs *cgoAllocMap
- ref2a9b490b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs2a9b490b.Borrow(csType_allocs)
+ refa1a566f8.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsa1a566f8.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref2a9b490b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs2a9b490b.Borrow(cpNext_allocs)
+ refa1a566f8.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsa1a566f8.Borrow(cpNext_allocs)
- var cflags_allocs *cgoAllocMap
- ref2a9b490b.flags, cflags_allocs = (C.VkPipelineColorBlendStateCreateFlags)(x.Flags), cgoAllocsUnknown
- allocs2a9b490b.Borrow(cflags_allocs)
+ var cformat_allocs *cgoAllocMap
+ refa1a566f8.format, cformat_allocs = (C.VkFormat)(x.Format), cgoAllocsUnknown
+ allocsa1a566f8.Borrow(cformat_allocs)
- var clogicOpEnable_allocs *cgoAllocMap
- ref2a9b490b.logicOpEnable, clogicOpEnable_allocs = (C.VkBool32)(x.LogicOpEnable), cgoAllocsUnknown
- allocs2a9b490b.Borrow(clogicOpEnable_allocs)
+ var ccomponentMapping_allocs *cgoAllocMap
+ refa1a566f8.componentMapping, ccomponentMapping_allocs = x.ComponentMapping.PassValue()
+ allocsa1a566f8.Borrow(ccomponentMapping_allocs)
- var clogicOp_allocs *cgoAllocMap
- ref2a9b490b.logicOp, clogicOp_allocs = (C.VkLogicOp)(x.LogicOp), cgoAllocsUnknown
- allocs2a9b490b.Borrow(clogicOp_allocs)
+ var cimageCreateFlags_allocs *cgoAllocMap
+ refa1a566f8.imageCreateFlags, cimageCreateFlags_allocs = (C.VkImageCreateFlags)(x.ImageCreateFlags), cgoAllocsUnknown
+ allocsa1a566f8.Borrow(cimageCreateFlags_allocs)
- var cattachmentCount_allocs *cgoAllocMap
- ref2a9b490b.attachmentCount, cattachmentCount_allocs = (C.uint32_t)(x.AttachmentCount), cgoAllocsUnknown
- allocs2a9b490b.Borrow(cattachmentCount_allocs)
+ var cimageType_allocs *cgoAllocMap
+ refa1a566f8.imageType, cimageType_allocs = (C.VkImageType)(x.ImageType), cgoAllocsUnknown
+ allocsa1a566f8.Borrow(cimageType_allocs)
- var cpAttachments_allocs *cgoAllocMap
- ref2a9b490b.pAttachments, cpAttachments_allocs = unpackSPipelineColorBlendAttachmentState(x.PAttachments)
- allocs2a9b490b.Borrow(cpAttachments_allocs)
+ var cimageTiling_allocs *cgoAllocMap
+ refa1a566f8.imageTiling, cimageTiling_allocs = (C.VkImageTiling)(x.ImageTiling), cgoAllocsUnknown
+ allocsa1a566f8.Borrow(cimageTiling_allocs)
- var cblendConstants_allocs *cgoAllocMap
- ref2a9b490b.blendConstants, cblendConstants_allocs = *(*[4]C.float)(unsafe.Pointer(&x.BlendConstants)), cgoAllocsUnknown
- allocs2a9b490b.Borrow(cblendConstants_allocs)
+ var cimageUsageFlags_allocs *cgoAllocMap
+ refa1a566f8.imageUsageFlags, cimageUsageFlags_allocs = (C.VkImageUsageFlags)(x.ImageUsageFlags), cgoAllocsUnknown
+ allocsa1a566f8.Borrow(cimageUsageFlags_allocs)
- x.ref2a9b490b = ref2a9b490b
- x.allocs2a9b490b = allocs2a9b490b
- return ref2a9b490b, allocs2a9b490b
+ x.refa1a566f8 = refa1a566f8
+ x.allocsa1a566f8 = allocsa1a566f8
+ return refa1a566f8, allocsa1a566f8
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PipelineColorBlendStateCreateInfo) PassValue() (C.VkPipelineColorBlendStateCreateInfo, *cgoAllocMap) {
- if x.ref2a9b490b != nil {
- return *x.ref2a9b490b, nil
+func (x VideoFormatProperties) PassValue() (C.VkVideoFormatPropertiesKHR, *cgoAllocMap) {
+ if x.refa1a566f8 != nil {
+ return *x.refa1a566f8, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -8096,103 +35408,107 @@ func (x PipelineColorBlendStateCreateInfo) PassValue() (C.VkPipelineColorBlendSt
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PipelineColorBlendStateCreateInfo) Deref() {
- if x.ref2a9b490b == nil {
+func (x *VideoFormatProperties) Deref() {
+ if x.refa1a566f8 == nil {
return
}
- x.SType = (StructureType)(x.ref2a9b490b.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref2a9b490b.pNext))
- x.Flags = (PipelineColorBlendStateCreateFlags)(x.ref2a9b490b.flags)
- x.LogicOpEnable = (Bool32)(x.ref2a9b490b.logicOpEnable)
- x.LogicOp = (LogicOp)(x.ref2a9b490b.logicOp)
- x.AttachmentCount = (uint32)(x.ref2a9b490b.attachmentCount)
- packSPipelineColorBlendAttachmentState(x.PAttachments, x.ref2a9b490b.pAttachments)
- x.BlendConstants = *(*[4]float32)(unsafe.Pointer(&x.ref2a9b490b.blendConstants))
+ x.SType = (StructureType)(x.refa1a566f8.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa1a566f8.pNext))
+ x.Format = (Format)(x.refa1a566f8.format)
+ x.ComponentMapping = *NewComponentMappingRef(unsafe.Pointer(&x.refa1a566f8.componentMapping))
+ x.ImageCreateFlags = (ImageCreateFlags)(x.refa1a566f8.imageCreateFlags)
+ x.ImageType = (ImageType)(x.refa1a566f8.imageType)
+ x.ImageTiling = (ImageTiling)(x.refa1a566f8.imageTiling)
+ x.ImageUsageFlags = (ImageUsageFlags)(x.refa1a566f8.imageUsageFlags)
}
-// allocPipelineDynamicStateCreateInfoMemory allocates memory for type C.VkPipelineDynamicStateCreateInfo in C.
+// allocVideoPictureResourceInfoMemory allocates memory for type C.VkVideoPictureResourceInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPipelineDynamicStateCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineDynamicStateCreateInfoValue))
+func allocVideoPictureResourceInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfVideoPictureResourceInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPipelineDynamicStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineDynamicStateCreateInfo{})
+const sizeOfVideoPictureResourceInfoValue = unsafe.Sizeof([1]C.VkVideoPictureResourceInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PipelineDynamicStateCreateInfo) Ref() *C.VkPipelineDynamicStateCreateInfo {
+func (x *VideoPictureResourceInfo) Ref() *C.VkVideoPictureResourceInfoKHR {
if x == nil {
return nil
}
- return x.ref246d7bc8
+ return x.refe7a42049
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PipelineDynamicStateCreateInfo) Free() {
- if x != nil && x.allocs246d7bc8 != nil {
- x.allocs246d7bc8.(*cgoAllocMap).Free()
- x.ref246d7bc8 = nil
+func (x *VideoPictureResourceInfo) Free() {
+ if x != nil && x.allocse7a42049 != nil {
+ x.allocse7a42049.(*cgoAllocMap).Free()
+ x.refe7a42049 = nil
}
}
-// NewPipelineDynamicStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewVideoPictureResourceInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPipelineDynamicStateCreateInfoRef(ref unsafe.Pointer) *PipelineDynamicStateCreateInfo {
+func NewVideoPictureResourceInfoRef(ref unsafe.Pointer) *VideoPictureResourceInfo {
if ref == nil {
return nil
}
- obj := new(PipelineDynamicStateCreateInfo)
- obj.ref246d7bc8 = (*C.VkPipelineDynamicStateCreateInfo)(unsafe.Pointer(ref))
+ obj := new(VideoPictureResourceInfo)
+ obj.refe7a42049 = (*C.VkVideoPictureResourceInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PipelineDynamicStateCreateInfo) PassRef() (*C.VkPipelineDynamicStateCreateInfo, *cgoAllocMap) {
+func (x *VideoPictureResourceInfo) PassRef() (*C.VkVideoPictureResourceInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref246d7bc8 != nil {
- return x.ref246d7bc8, nil
+ } else if x.refe7a42049 != nil {
+ return x.refe7a42049, nil
}
- mem246d7bc8 := allocPipelineDynamicStateCreateInfoMemory(1)
- ref246d7bc8 := (*C.VkPipelineDynamicStateCreateInfo)(mem246d7bc8)
- allocs246d7bc8 := new(cgoAllocMap)
- allocs246d7bc8.Add(mem246d7bc8)
+ meme7a42049 := allocVideoPictureResourceInfoMemory(1)
+ refe7a42049 := (*C.VkVideoPictureResourceInfoKHR)(meme7a42049)
+ allocse7a42049 := new(cgoAllocMap)
+ allocse7a42049.Add(meme7a42049)
var csType_allocs *cgoAllocMap
- ref246d7bc8.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs246d7bc8.Borrow(csType_allocs)
+ refe7a42049.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocse7a42049.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref246d7bc8.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs246d7bc8.Borrow(cpNext_allocs)
+ refe7a42049.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocse7a42049.Borrow(cpNext_allocs)
- var cflags_allocs *cgoAllocMap
- ref246d7bc8.flags, cflags_allocs = (C.VkPipelineDynamicStateCreateFlags)(x.Flags), cgoAllocsUnknown
- allocs246d7bc8.Borrow(cflags_allocs)
+ var ccodedOffset_allocs *cgoAllocMap
+ refe7a42049.codedOffset, ccodedOffset_allocs = x.CodedOffset.PassValue()
+ allocse7a42049.Borrow(ccodedOffset_allocs)
- var cdynamicStateCount_allocs *cgoAllocMap
- ref246d7bc8.dynamicStateCount, cdynamicStateCount_allocs = (C.uint32_t)(x.DynamicStateCount), cgoAllocsUnknown
- allocs246d7bc8.Borrow(cdynamicStateCount_allocs)
+ var ccodedExtent_allocs *cgoAllocMap
+ refe7a42049.codedExtent, ccodedExtent_allocs = x.CodedExtent.PassValue()
+ allocse7a42049.Borrow(ccodedExtent_allocs)
- var cpDynamicStates_allocs *cgoAllocMap
- ref246d7bc8.pDynamicStates, cpDynamicStates_allocs = (*C.VkDynamicState)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PDynamicStates)).Data)), cgoAllocsUnknown
- allocs246d7bc8.Borrow(cpDynamicStates_allocs)
+ var cbaseArrayLayer_allocs *cgoAllocMap
+ refe7a42049.baseArrayLayer, cbaseArrayLayer_allocs = (C.uint32_t)(x.BaseArrayLayer), cgoAllocsUnknown
+ allocse7a42049.Borrow(cbaseArrayLayer_allocs)
- x.ref246d7bc8 = ref246d7bc8
- x.allocs246d7bc8 = allocs246d7bc8
- return ref246d7bc8, allocs246d7bc8
+ var cimageViewBinding_allocs *cgoAllocMap
+ refe7a42049.imageViewBinding, cimageViewBinding_allocs = *(*C.VkImageView)(unsafe.Pointer(&x.ImageViewBinding)), cgoAllocsUnknown
+ allocse7a42049.Borrow(cimageViewBinding_allocs)
+
+ x.refe7a42049 = refe7a42049
+ x.allocse7a42049 = allocse7a42049
+ return refe7a42049, allocse7a42049
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PipelineDynamicStateCreateInfo) PassValue() (C.VkPipelineDynamicStateCreateInfo, *cgoAllocMap) {
- if x.ref246d7bc8 != nil {
- return *x.ref246d7bc8, nil
+func (x VideoPictureResourceInfo) PassValue() (C.VkVideoPictureResourceInfoKHR, *cgoAllocMap) {
+ if x.refe7a42049 != nil {
+ return *x.refe7a42049, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -8200,198 +35516,135 @@ func (x PipelineDynamicStateCreateInfo) PassValue() (C.VkPipelineDynamicStateCre
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PipelineDynamicStateCreateInfo) Deref() {
- if x.ref246d7bc8 == nil {
+func (x *VideoPictureResourceInfo) Deref() {
+ if x.refe7a42049 == nil {
return
}
- x.SType = (StructureType)(x.ref246d7bc8.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref246d7bc8.pNext))
- x.Flags = (PipelineDynamicStateCreateFlags)(x.ref246d7bc8.flags)
- x.DynamicStateCount = (uint32)(x.ref246d7bc8.dynamicStateCount)
- hxf7a6dff := (*sliceHeader)(unsafe.Pointer(&x.PDynamicStates))
- hxf7a6dff.Data = unsafe.Pointer(x.ref246d7bc8.pDynamicStates)
- hxf7a6dff.Cap = 0x7fffffff
- // hxf7a6dff.Len = ?
-
+ x.SType = (StructureType)(x.refe7a42049.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refe7a42049.pNext))
+ x.CodedOffset = *NewOffset2DRef(unsafe.Pointer(&x.refe7a42049.codedOffset))
+ x.CodedExtent = *NewExtent2DRef(unsafe.Pointer(&x.refe7a42049.codedExtent))
+ x.BaseArrayLayer = (uint32)(x.refe7a42049.baseArrayLayer)
+ x.ImageViewBinding = *(*ImageView)(unsafe.Pointer(&x.refe7a42049.imageViewBinding))
}
-// allocGraphicsPipelineCreateInfoMemory allocates memory for type C.VkGraphicsPipelineCreateInfo in C.
+// allocVideoReferenceSlotInfoMemory allocates memory for type C.VkVideoReferenceSlotInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocGraphicsPipelineCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfGraphicsPipelineCreateInfoValue))
+func allocVideoReferenceSlotInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfVideoReferenceSlotInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfGraphicsPipelineCreateInfoValue = unsafe.Sizeof([1]C.VkGraphicsPipelineCreateInfo{})
+const sizeOfVideoReferenceSlotInfoValue = unsafe.Sizeof([1]C.VkVideoReferenceSlotInfoKHR{})
-// unpackSPipelineShaderStageCreateInfo transforms a sliced Go data structure into plain C format.
-func unpackSPipelineShaderStageCreateInfo(x []PipelineShaderStageCreateInfo) (unpacked *C.VkPipelineShaderStageCreateInfo, allocs *cgoAllocMap) {
+// unpackSVideoPictureResourceInfo transforms a sliced Go data structure into plain C format.
+func unpackSVideoPictureResourceInfo(x []VideoPictureResourceInfo) (unpacked *C.VkVideoPictureResourceInfoKHR, allocs *cgoAllocMap) {
if x == nil {
return nil, nil
}
allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkPipelineShaderStageCreateInfo) {
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkVideoPictureResourceInfoKHR) {
go allocs.Free()
})
len0 := len(x)
- mem0 := allocPipelineShaderStageCreateInfoMemory(len0)
+ mem0 := allocVideoPictureResourceInfoMemory(len0)
allocs.Add(mem0)
h0 := &sliceHeader{
Data: mem0,
Cap: len0,
Len: len0,
}
- v0 := *(*[]C.VkPipelineShaderStageCreateInfo)(unsafe.Pointer(h0))
+ v0 := *(*[]C.VkVideoPictureResourceInfoKHR)(unsafe.Pointer(h0))
for i0 := range x {
allocs0 := new(cgoAllocMap)
v0[i0], allocs0 = x[i0].PassValue()
allocs.Borrow(allocs0)
}
h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkPipelineShaderStageCreateInfo)(h.Data)
+ unpacked = (*C.VkVideoPictureResourceInfoKHR)(h.Data)
return
}
-// packSPipelineShaderStageCreateInfo reads sliced Go data structure out from plain C format.
-func packSPipelineShaderStageCreateInfo(v []PipelineShaderStageCreateInfo, ptr0 *C.VkPipelineShaderStageCreateInfo) {
+// packSVideoPictureResourceInfo reads sliced Go data structure out from plain C format.
+func packSVideoPictureResourceInfo(v []VideoPictureResourceInfo, ptr0 *C.VkVideoPictureResourceInfoKHR) {
const m = 0x7fffffff
for i0 := range v {
- ptr1 := (*(*[m / sizeOfPipelineShaderStageCreateInfoValue]C.VkPipelineShaderStageCreateInfo)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewPipelineShaderStageCreateInfoRef(unsafe.Pointer(&ptr1))
+ ptr1 := (*(*[m / sizeOfVideoPictureResourceInfoValue]C.VkVideoPictureResourceInfoKHR)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewVideoPictureResourceInfoRef(unsafe.Pointer(&ptr1))
}
}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *GraphicsPipelineCreateInfo) Ref() *C.VkGraphicsPipelineCreateInfo {
+func (x *VideoReferenceSlotInfo) Ref() *C.VkVideoReferenceSlotInfoKHR {
if x == nil {
return nil
}
- return x.ref178f88b6
+ return x.refbbd1d28
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *GraphicsPipelineCreateInfo) Free() {
- if x != nil && x.allocs178f88b6 != nil {
- x.allocs178f88b6.(*cgoAllocMap).Free()
- x.ref178f88b6 = nil
+func (x *VideoReferenceSlotInfo) Free() {
+ if x != nil && x.allocsbbd1d28 != nil {
+ x.allocsbbd1d28.(*cgoAllocMap).Free()
+ x.refbbd1d28 = nil
}
}
-// NewGraphicsPipelineCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewVideoReferenceSlotInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewGraphicsPipelineCreateInfoRef(ref unsafe.Pointer) *GraphicsPipelineCreateInfo {
+func NewVideoReferenceSlotInfoRef(ref unsafe.Pointer) *VideoReferenceSlotInfo {
if ref == nil {
return nil
}
- obj := new(GraphicsPipelineCreateInfo)
- obj.ref178f88b6 = (*C.VkGraphicsPipelineCreateInfo)(unsafe.Pointer(ref))
+ obj := new(VideoReferenceSlotInfo)
+ obj.refbbd1d28 = (*C.VkVideoReferenceSlotInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *GraphicsPipelineCreateInfo) PassRef() (*C.VkGraphicsPipelineCreateInfo, *cgoAllocMap) {
+func (x *VideoReferenceSlotInfo) PassRef() (*C.VkVideoReferenceSlotInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref178f88b6 != nil {
- return x.ref178f88b6, nil
+ } else if x.refbbd1d28 != nil {
+ return x.refbbd1d28, nil
}
- mem178f88b6 := allocGraphicsPipelineCreateInfoMemory(1)
- ref178f88b6 := (*C.VkGraphicsPipelineCreateInfo)(mem178f88b6)
- allocs178f88b6 := new(cgoAllocMap)
- allocs178f88b6.Add(mem178f88b6)
+ membbd1d28 := allocVideoReferenceSlotInfoMemory(1)
+ refbbd1d28 := (*C.VkVideoReferenceSlotInfoKHR)(membbd1d28)
+ allocsbbd1d28 := new(cgoAllocMap)
+ allocsbbd1d28.Add(membbd1d28)
var csType_allocs *cgoAllocMap
- ref178f88b6.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs178f88b6.Borrow(csType_allocs)
+ refbbd1d28.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsbbd1d28.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref178f88b6.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs178f88b6.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- ref178f88b6.flags, cflags_allocs = (C.VkPipelineCreateFlags)(x.Flags), cgoAllocsUnknown
- allocs178f88b6.Borrow(cflags_allocs)
-
- var cstageCount_allocs *cgoAllocMap
- ref178f88b6.stageCount, cstageCount_allocs = (C.uint32_t)(x.StageCount), cgoAllocsUnknown
- allocs178f88b6.Borrow(cstageCount_allocs)
-
- var cpStages_allocs *cgoAllocMap
- ref178f88b6.pStages, cpStages_allocs = unpackSPipelineShaderStageCreateInfo(x.PStages)
- allocs178f88b6.Borrow(cpStages_allocs)
-
- var cpVertexInputState_allocs *cgoAllocMap
- ref178f88b6.pVertexInputState, cpVertexInputState_allocs = x.PVertexInputState.PassRef()
- allocs178f88b6.Borrow(cpVertexInputState_allocs)
-
- var cpInputAssemblyState_allocs *cgoAllocMap
- ref178f88b6.pInputAssemblyState, cpInputAssemblyState_allocs = x.PInputAssemblyState.PassRef()
- allocs178f88b6.Borrow(cpInputAssemblyState_allocs)
-
- var cpTessellationState_allocs *cgoAllocMap
- ref178f88b6.pTessellationState, cpTessellationState_allocs = x.PTessellationState.PassRef()
- allocs178f88b6.Borrow(cpTessellationState_allocs)
-
- var cpViewportState_allocs *cgoAllocMap
- ref178f88b6.pViewportState, cpViewportState_allocs = x.PViewportState.PassRef()
- allocs178f88b6.Borrow(cpViewportState_allocs)
-
- var cpRasterizationState_allocs *cgoAllocMap
- ref178f88b6.pRasterizationState, cpRasterizationState_allocs = x.PRasterizationState.PassRef()
- allocs178f88b6.Borrow(cpRasterizationState_allocs)
-
- var cpMultisampleState_allocs *cgoAllocMap
- ref178f88b6.pMultisampleState, cpMultisampleState_allocs = x.PMultisampleState.PassRef()
- allocs178f88b6.Borrow(cpMultisampleState_allocs)
-
- var cpDepthStencilState_allocs *cgoAllocMap
- ref178f88b6.pDepthStencilState, cpDepthStencilState_allocs = x.PDepthStencilState.PassRef()
- allocs178f88b6.Borrow(cpDepthStencilState_allocs)
-
- var cpColorBlendState_allocs *cgoAllocMap
- ref178f88b6.pColorBlendState, cpColorBlendState_allocs = x.PColorBlendState.PassRef()
- allocs178f88b6.Borrow(cpColorBlendState_allocs)
-
- var cpDynamicState_allocs *cgoAllocMap
- ref178f88b6.pDynamicState, cpDynamicState_allocs = x.PDynamicState.PassRef()
- allocs178f88b6.Borrow(cpDynamicState_allocs)
-
- var clayout_allocs *cgoAllocMap
- ref178f88b6.layout, clayout_allocs = *(*C.VkPipelineLayout)(unsafe.Pointer(&x.Layout)), cgoAllocsUnknown
- allocs178f88b6.Borrow(clayout_allocs)
-
- var crenderPass_allocs *cgoAllocMap
- ref178f88b6.renderPass, crenderPass_allocs = *(*C.VkRenderPass)(unsafe.Pointer(&x.RenderPass)), cgoAllocsUnknown
- allocs178f88b6.Borrow(crenderPass_allocs)
-
- var csubpass_allocs *cgoAllocMap
- ref178f88b6.subpass, csubpass_allocs = (C.uint32_t)(x.Subpass), cgoAllocsUnknown
- allocs178f88b6.Borrow(csubpass_allocs)
+ refbbd1d28.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsbbd1d28.Borrow(cpNext_allocs)
- var cbasePipelineHandle_allocs *cgoAllocMap
- ref178f88b6.basePipelineHandle, cbasePipelineHandle_allocs = *(*C.VkPipeline)(unsafe.Pointer(&x.BasePipelineHandle)), cgoAllocsUnknown
- allocs178f88b6.Borrow(cbasePipelineHandle_allocs)
+ var cslotIndex_allocs *cgoAllocMap
+ refbbd1d28.slotIndex, cslotIndex_allocs = (C.int32_t)(x.SlotIndex), cgoAllocsUnknown
+ allocsbbd1d28.Borrow(cslotIndex_allocs)
- var cbasePipelineIndex_allocs *cgoAllocMap
- ref178f88b6.basePipelineIndex, cbasePipelineIndex_allocs = (C.int32_t)(x.BasePipelineIndex), cgoAllocsUnknown
- allocs178f88b6.Borrow(cbasePipelineIndex_allocs)
+ var cpPictureResource_allocs *cgoAllocMap
+ refbbd1d28.pPictureResource, cpPictureResource_allocs = unpackSVideoPictureResourceInfo(x.PPictureResource)
+ allocsbbd1d28.Borrow(cpPictureResource_allocs)
- x.ref178f88b6 = ref178f88b6
- x.allocs178f88b6 = allocs178f88b6
- return ref178f88b6, allocs178f88b6
+ x.refbbd1d28 = refbbd1d28
+ x.allocsbbd1d28 = allocsbbd1d28
+ return refbbd1d28, allocsbbd1d28
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x GraphicsPipelineCreateInfo) PassValue() (C.VkGraphicsPipelineCreateInfo, *cgoAllocMap) {
- if x.ref178f88b6 != nil {
- return *x.ref178f88b6, nil
+func (x VideoReferenceSlotInfo) PassValue() (C.VkVideoReferenceSlotInfoKHR, *cgoAllocMap) {
+ if x.refbbd1d28 != nil {
+ return *x.refbbd1d28, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -8399,122 +35652,95 @@ func (x GraphicsPipelineCreateInfo) PassValue() (C.VkGraphicsPipelineCreateInfo,
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *GraphicsPipelineCreateInfo) Deref() {
- if x.ref178f88b6 == nil {
+func (x *VideoReferenceSlotInfo) Deref() {
+ if x.refbbd1d28 == nil {
return
}
- x.SType = (StructureType)(x.ref178f88b6.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref178f88b6.pNext))
- x.Flags = (PipelineCreateFlags)(x.ref178f88b6.flags)
- x.StageCount = (uint32)(x.ref178f88b6.stageCount)
- packSPipelineShaderStageCreateInfo(x.PStages, x.ref178f88b6.pStages)
- x.PVertexInputState = NewPipelineVertexInputStateCreateInfoRef(unsafe.Pointer(x.ref178f88b6.pVertexInputState))
- x.PInputAssemblyState = NewPipelineInputAssemblyStateCreateInfoRef(unsafe.Pointer(x.ref178f88b6.pInputAssemblyState))
- x.PTessellationState = NewPipelineTessellationStateCreateInfoRef(unsafe.Pointer(x.ref178f88b6.pTessellationState))
- x.PViewportState = NewPipelineViewportStateCreateInfoRef(unsafe.Pointer(x.ref178f88b6.pViewportState))
- x.PRasterizationState = NewPipelineRasterizationStateCreateInfoRef(unsafe.Pointer(x.ref178f88b6.pRasterizationState))
- x.PMultisampleState = NewPipelineMultisampleStateCreateInfoRef(unsafe.Pointer(x.ref178f88b6.pMultisampleState))
- x.PDepthStencilState = NewPipelineDepthStencilStateCreateInfoRef(unsafe.Pointer(x.ref178f88b6.pDepthStencilState))
- x.PColorBlendState = NewPipelineColorBlendStateCreateInfoRef(unsafe.Pointer(x.ref178f88b6.pColorBlendState))
- x.PDynamicState = NewPipelineDynamicStateCreateInfoRef(unsafe.Pointer(x.ref178f88b6.pDynamicState))
- x.Layout = *(*PipelineLayout)(unsafe.Pointer(&x.ref178f88b6.layout))
- x.RenderPass = *(*RenderPass)(unsafe.Pointer(&x.ref178f88b6.renderPass))
- x.Subpass = (uint32)(x.ref178f88b6.subpass)
- x.BasePipelineHandle = *(*Pipeline)(unsafe.Pointer(&x.ref178f88b6.basePipelineHandle))
- x.BasePipelineIndex = (int32)(x.ref178f88b6.basePipelineIndex)
+ x.SType = (StructureType)(x.refbbd1d28.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refbbd1d28.pNext))
+ x.SlotIndex = (int32)(x.refbbd1d28.slotIndex)
+ packSVideoPictureResourceInfo(x.PPictureResource, x.refbbd1d28.pPictureResource)
}
-// allocComputePipelineCreateInfoMemory allocates memory for type C.VkComputePipelineCreateInfo in C.
+// allocVideoSessionMemoryRequirementsMemory allocates memory for type C.VkVideoSessionMemoryRequirementsKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocComputePipelineCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfComputePipelineCreateInfoValue))
+func allocVideoSessionMemoryRequirementsMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfVideoSessionMemoryRequirementsValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfComputePipelineCreateInfoValue = unsafe.Sizeof([1]C.VkComputePipelineCreateInfo{})
+const sizeOfVideoSessionMemoryRequirementsValue = unsafe.Sizeof([1]C.VkVideoSessionMemoryRequirementsKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ComputePipelineCreateInfo) Ref() *C.VkComputePipelineCreateInfo {
+func (x *VideoSessionMemoryRequirements) Ref() *C.VkVideoSessionMemoryRequirementsKHR {
if x == nil {
return nil
}
- return x.ref77823220
+ return x.refd39e523e
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ComputePipelineCreateInfo) Free() {
- if x != nil && x.allocs77823220 != nil {
- x.allocs77823220.(*cgoAllocMap).Free()
- x.ref77823220 = nil
+func (x *VideoSessionMemoryRequirements) Free() {
+ if x != nil && x.allocsd39e523e != nil {
+ x.allocsd39e523e.(*cgoAllocMap).Free()
+ x.refd39e523e = nil
}
}
-// NewComputePipelineCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewVideoSessionMemoryRequirementsRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewComputePipelineCreateInfoRef(ref unsafe.Pointer) *ComputePipelineCreateInfo {
+func NewVideoSessionMemoryRequirementsRef(ref unsafe.Pointer) *VideoSessionMemoryRequirements {
if ref == nil {
return nil
}
- obj := new(ComputePipelineCreateInfo)
- obj.ref77823220 = (*C.VkComputePipelineCreateInfo)(unsafe.Pointer(ref))
+ obj := new(VideoSessionMemoryRequirements)
+ obj.refd39e523e = (*C.VkVideoSessionMemoryRequirementsKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ComputePipelineCreateInfo) PassRef() (*C.VkComputePipelineCreateInfo, *cgoAllocMap) {
+func (x *VideoSessionMemoryRequirements) PassRef() (*C.VkVideoSessionMemoryRequirementsKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref77823220 != nil {
- return x.ref77823220, nil
+ } else if x.refd39e523e != nil {
+ return x.refd39e523e, nil
}
- mem77823220 := allocComputePipelineCreateInfoMemory(1)
- ref77823220 := (*C.VkComputePipelineCreateInfo)(mem77823220)
- allocs77823220 := new(cgoAllocMap)
- allocs77823220.Add(mem77823220)
+ memd39e523e := allocVideoSessionMemoryRequirementsMemory(1)
+ refd39e523e := (*C.VkVideoSessionMemoryRequirementsKHR)(memd39e523e)
+ allocsd39e523e := new(cgoAllocMap)
+ allocsd39e523e.Add(memd39e523e)
var csType_allocs *cgoAllocMap
- ref77823220.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs77823220.Borrow(csType_allocs)
+ refd39e523e.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd39e523e.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref77823220.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs77823220.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- ref77823220.flags, cflags_allocs = (C.VkPipelineCreateFlags)(x.Flags), cgoAllocsUnknown
- allocs77823220.Borrow(cflags_allocs)
-
- var cstage_allocs *cgoAllocMap
- ref77823220.stage, cstage_allocs = x.Stage.PassValue()
- allocs77823220.Borrow(cstage_allocs)
-
- var clayout_allocs *cgoAllocMap
- ref77823220.layout, clayout_allocs = *(*C.VkPipelineLayout)(unsafe.Pointer(&x.Layout)), cgoAllocsUnknown
- allocs77823220.Borrow(clayout_allocs)
+ refd39e523e.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsd39e523e.Borrow(cpNext_allocs)
- var cbasePipelineHandle_allocs *cgoAllocMap
- ref77823220.basePipelineHandle, cbasePipelineHandle_allocs = *(*C.VkPipeline)(unsafe.Pointer(&x.BasePipelineHandle)), cgoAllocsUnknown
- allocs77823220.Borrow(cbasePipelineHandle_allocs)
+ var cmemoryBindIndex_allocs *cgoAllocMap
+ refd39e523e.memoryBindIndex, cmemoryBindIndex_allocs = (C.uint32_t)(x.MemoryBindIndex), cgoAllocsUnknown
+ allocsd39e523e.Borrow(cmemoryBindIndex_allocs)
- var cbasePipelineIndex_allocs *cgoAllocMap
- ref77823220.basePipelineIndex, cbasePipelineIndex_allocs = (C.int32_t)(x.BasePipelineIndex), cgoAllocsUnknown
- allocs77823220.Borrow(cbasePipelineIndex_allocs)
+ var cmemoryRequirements_allocs *cgoAllocMap
+ refd39e523e.memoryRequirements, cmemoryRequirements_allocs = x.MemoryRequirements.PassValue()
+ allocsd39e523e.Borrow(cmemoryRequirements_allocs)
- x.ref77823220 = ref77823220
- x.allocs77823220 = allocs77823220
- return ref77823220, allocs77823220
+ x.refd39e523e = refd39e523e
+ x.allocsd39e523e = allocsd39e523e
+ return refd39e523e, allocsd39e523e
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ComputePipelineCreateInfo) PassValue() (C.VkComputePipelineCreateInfo, *cgoAllocMap) {
- if x.ref77823220 != nil {
- return *x.ref77823220, nil
+func (x VideoSessionMemoryRequirements) PassValue() (C.VkVideoSessionMemoryRequirementsKHR, *cgoAllocMap) {
+ if x.refd39e523e != nil {
+ return *x.refd39e523e, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -8522,94 +35748,103 @@ func (x ComputePipelineCreateInfo) PassValue() (C.VkComputePipelineCreateInfo, *
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ComputePipelineCreateInfo) Deref() {
- if x.ref77823220 == nil {
+func (x *VideoSessionMemoryRequirements) Deref() {
+ if x.refd39e523e == nil {
return
}
- x.SType = (StructureType)(x.ref77823220.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref77823220.pNext))
- x.Flags = (PipelineCreateFlags)(x.ref77823220.flags)
- x.Stage = *NewPipelineShaderStageCreateInfoRef(unsafe.Pointer(&x.ref77823220.stage))
- x.Layout = *(*PipelineLayout)(unsafe.Pointer(&x.ref77823220.layout))
- x.BasePipelineHandle = *(*Pipeline)(unsafe.Pointer(&x.ref77823220.basePipelineHandle))
- x.BasePipelineIndex = (int32)(x.ref77823220.basePipelineIndex)
+ x.SType = (StructureType)(x.refd39e523e.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd39e523e.pNext))
+ x.MemoryBindIndex = (uint32)(x.refd39e523e.memoryBindIndex)
+ x.MemoryRequirements = *NewMemoryRequirementsRef(unsafe.Pointer(&x.refd39e523e.memoryRequirements))
}
-// allocPushConstantRangeMemory allocates memory for type C.VkPushConstantRange in C.
+// allocBindVideoSessionMemoryInfoMemory allocates memory for type C.VkBindVideoSessionMemoryInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPushConstantRangeMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPushConstantRangeValue))
+func allocBindVideoSessionMemoryInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBindVideoSessionMemoryInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPushConstantRangeValue = unsafe.Sizeof([1]C.VkPushConstantRange{})
+const sizeOfBindVideoSessionMemoryInfoValue = unsafe.Sizeof([1]C.VkBindVideoSessionMemoryInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PushConstantRange) Ref() *C.VkPushConstantRange {
+func (x *BindVideoSessionMemoryInfo) Ref() *C.VkBindVideoSessionMemoryInfoKHR {
if x == nil {
return nil
}
- return x.ref6f025856
+ return x.refaa36fd7c
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PushConstantRange) Free() {
- if x != nil && x.allocs6f025856 != nil {
- x.allocs6f025856.(*cgoAllocMap).Free()
- x.ref6f025856 = nil
+func (x *BindVideoSessionMemoryInfo) Free() {
+ if x != nil && x.allocsaa36fd7c != nil {
+ x.allocsaa36fd7c.(*cgoAllocMap).Free()
+ x.refaa36fd7c = nil
}
}
-// NewPushConstantRangeRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewBindVideoSessionMemoryInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPushConstantRangeRef(ref unsafe.Pointer) *PushConstantRange {
+func NewBindVideoSessionMemoryInfoRef(ref unsafe.Pointer) *BindVideoSessionMemoryInfo {
if ref == nil {
return nil
}
- obj := new(PushConstantRange)
- obj.ref6f025856 = (*C.VkPushConstantRange)(unsafe.Pointer(ref))
+ obj := new(BindVideoSessionMemoryInfo)
+ obj.refaa36fd7c = (*C.VkBindVideoSessionMemoryInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PushConstantRange) PassRef() (*C.VkPushConstantRange, *cgoAllocMap) {
+func (x *BindVideoSessionMemoryInfo) PassRef() (*C.VkBindVideoSessionMemoryInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref6f025856 != nil {
- return x.ref6f025856, nil
+ } else if x.refaa36fd7c != nil {
+ return x.refaa36fd7c, nil
}
- mem6f025856 := allocPushConstantRangeMemory(1)
- ref6f025856 := (*C.VkPushConstantRange)(mem6f025856)
- allocs6f025856 := new(cgoAllocMap)
- allocs6f025856.Add(mem6f025856)
+ memaa36fd7c := allocBindVideoSessionMemoryInfoMemory(1)
+ refaa36fd7c := (*C.VkBindVideoSessionMemoryInfoKHR)(memaa36fd7c)
+ allocsaa36fd7c := new(cgoAllocMap)
+ allocsaa36fd7c.Add(memaa36fd7c)
- var cstageFlags_allocs *cgoAllocMap
- ref6f025856.stageFlags, cstageFlags_allocs = (C.VkShaderStageFlags)(x.StageFlags), cgoAllocsUnknown
- allocs6f025856.Borrow(cstageFlags_allocs)
+ var csType_allocs *cgoAllocMap
+ refaa36fd7c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsaa36fd7c.Borrow(csType_allocs)
- var coffset_allocs *cgoAllocMap
- ref6f025856.offset, coffset_allocs = (C.uint32_t)(x.Offset), cgoAllocsUnknown
- allocs6f025856.Borrow(coffset_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refaa36fd7c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsaa36fd7c.Borrow(cpNext_allocs)
- var csize_allocs *cgoAllocMap
- ref6f025856.size, csize_allocs = (C.uint32_t)(x.Size), cgoAllocsUnknown
- allocs6f025856.Borrow(csize_allocs)
+ var cmemoryBindIndex_allocs *cgoAllocMap
+ refaa36fd7c.memoryBindIndex, cmemoryBindIndex_allocs = (C.uint32_t)(x.MemoryBindIndex), cgoAllocsUnknown
+ allocsaa36fd7c.Borrow(cmemoryBindIndex_allocs)
- x.ref6f025856 = ref6f025856
- x.allocs6f025856 = allocs6f025856
- return ref6f025856, allocs6f025856
+ var cmemory_allocs *cgoAllocMap
+ refaa36fd7c.memory, cmemory_allocs = *(*C.VkDeviceMemory)(unsafe.Pointer(&x.Memory)), cgoAllocsUnknown
+ allocsaa36fd7c.Borrow(cmemory_allocs)
+
+ var cmemoryOffset_allocs *cgoAllocMap
+ refaa36fd7c.memoryOffset, cmemoryOffset_allocs = (C.VkDeviceSize)(x.MemoryOffset), cgoAllocsUnknown
+ allocsaa36fd7c.Borrow(cmemoryOffset_allocs)
+
+ var cmemorySize_allocs *cgoAllocMap
+ refaa36fd7c.memorySize, cmemorySize_allocs = (C.VkDeviceSize)(x.MemorySize), cgoAllocsUnknown
+ allocsaa36fd7c.Borrow(cmemorySize_allocs)
+
+ x.refaa36fd7c = refaa36fd7c
+ x.allocsaa36fd7c = allocsaa36fd7c
+ return refaa36fd7c, allocsaa36fd7c
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PushConstantRange) PassValue() (C.VkPushConstantRange, *cgoAllocMap) {
- if x.ref6f025856 != nil {
- return *x.ref6f025856, nil
+func (x BindVideoSessionMemoryInfo) PassValue() (C.VkBindVideoSessionMemoryInfoKHR, *cgoAllocMap) {
+ if x.refaa36fd7c != nil {
+ return *x.refaa36fd7c, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -8617,144 +35852,163 @@ func (x PushConstantRange) PassValue() (C.VkPushConstantRange, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PushConstantRange) Deref() {
- if x.ref6f025856 == nil {
+func (x *BindVideoSessionMemoryInfo) Deref() {
+ if x.refaa36fd7c == nil {
return
}
- x.StageFlags = (ShaderStageFlags)(x.ref6f025856.stageFlags)
- x.Offset = (uint32)(x.ref6f025856.offset)
- x.Size = (uint32)(x.ref6f025856.size)
+ x.SType = (StructureType)(x.refaa36fd7c.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refaa36fd7c.pNext))
+ x.MemoryBindIndex = (uint32)(x.refaa36fd7c.memoryBindIndex)
+ x.Memory = *(*DeviceMemory)(unsafe.Pointer(&x.refaa36fd7c.memory))
+ x.MemoryOffset = (DeviceSize)(x.refaa36fd7c.memoryOffset)
+ x.MemorySize = (DeviceSize)(x.refaa36fd7c.memorySize)
}
-// allocPipelineLayoutCreateInfoMemory allocates memory for type C.VkPipelineLayoutCreateInfo in C.
+// allocVideoSessionCreateInfoMemory allocates memory for type C.VkVideoSessionCreateInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPipelineLayoutCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineLayoutCreateInfoValue))
+func allocVideoSessionCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfVideoSessionCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPipelineLayoutCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineLayoutCreateInfo{})
+const sizeOfVideoSessionCreateInfoValue = unsafe.Sizeof([1]C.VkVideoSessionCreateInfoKHR{})
-// unpackSPushConstantRange transforms a sliced Go data structure into plain C format.
-func unpackSPushConstantRange(x []PushConstantRange) (unpacked *C.VkPushConstantRange, allocs *cgoAllocMap) {
+// unpackSExtensionProperties transforms a sliced Go data structure into plain C format.
+func unpackSExtensionProperties(x []ExtensionProperties) (unpacked *C.VkExtensionProperties, allocs *cgoAllocMap) {
if x == nil {
return nil, nil
}
allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkPushConstantRange) {
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkExtensionProperties) {
go allocs.Free()
})
len0 := len(x)
- mem0 := allocPushConstantRangeMemory(len0)
+ mem0 := allocExtensionPropertiesMemory(len0)
allocs.Add(mem0)
h0 := &sliceHeader{
Data: mem0,
Cap: len0,
Len: len0,
}
- v0 := *(*[]C.VkPushConstantRange)(unsafe.Pointer(h0))
+ v0 := *(*[]C.VkExtensionProperties)(unsafe.Pointer(h0))
for i0 := range x {
allocs0 := new(cgoAllocMap)
v0[i0], allocs0 = x[i0].PassValue()
allocs.Borrow(allocs0)
}
h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkPushConstantRange)(h.Data)
+ unpacked = (*C.VkExtensionProperties)(h.Data)
return
}
-// packSPushConstantRange reads sliced Go data structure out from plain C format.
-func packSPushConstantRange(v []PushConstantRange, ptr0 *C.VkPushConstantRange) {
+// packSExtensionProperties reads sliced Go data structure out from plain C format.
+func packSExtensionProperties(v []ExtensionProperties, ptr0 *C.VkExtensionProperties) {
const m = 0x7fffffff
for i0 := range v {
- ptr1 := (*(*[m / sizeOfPushConstantRangeValue]C.VkPushConstantRange)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewPushConstantRangeRef(unsafe.Pointer(&ptr1))
+ ptr1 := (*(*[m / sizeOfExtensionPropertiesValue]C.VkExtensionProperties)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewExtensionPropertiesRef(unsafe.Pointer(&ptr1))
}
}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PipelineLayoutCreateInfo) Ref() *C.VkPipelineLayoutCreateInfo {
+func (x *VideoSessionCreateInfo) Ref() *C.VkVideoSessionCreateInfoKHR {
if x == nil {
return nil
}
- return x.ref64cc4eed
+ return x.refaf4ef5a1
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PipelineLayoutCreateInfo) Free() {
- if x != nil && x.allocs64cc4eed != nil {
- x.allocs64cc4eed.(*cgoAllocMap).Free()
- x.ref64cc4eed = nil
+func (x *VideoSessionCreateInfo) Free() {
+ if x != nil && x.allocsaf4ef5a1 != nil {
+ x.allocsaf4ef5a1.(*cgoAllocMap).Free()
+ x.refaf4ef5a1 = nil
}
}
-// NewPipelineLayoutCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewVideoSessionCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPipelineLayoutCreateInfoRef(ref unsafe.Pointer) *PipelineLayoutCreateInfo {
+func NewVideoSessionCreateInfoRef(ref unsafe.Pointer) *VideoSessionCreateInfo {
if ref == nil {
return nil
}
- obj := new(PipelineLayoutCreateInfo)
- obj.ref64cc4eed = (*C.VkPipelineLayoutCreateInfo)(unsafe.Pointer(ref))
+ obj := new(VideoSessionCreateInfo)
+ obj.refaf4ef5a1 = (*C.VkVideoSessionCreateInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PipelineLayoutCreateInfo) PassRef() (*C.VkPipelineLayoutCreateInfo, *cgoAllocMap) {
+func (x *VideoSessionCreateInfo) PassRef() (*C.VkVideoSessionCreateInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref64cc4eed != nil {
- return x.ref64cc4eed, nil
+ } else if x.refaf4ef5a1 != nil {
+ return x.refaf4ef5a1, nil
}
- mem64cc4eed := allocPipelineLayoutCreateInfoMemory(1)
- ref64cc4eed := (*C.VkPipelineLayoutCreateInfo)(mem64cc4eed)
- allocs64cc4eed := new(cgoAllocMap)
- allocs64cc4eed.Add(mem64cc4eed)
+ memaf4ef5a1 := allocVideoSessionCreateInfoMemory(1)
+ refaf4ef5a1 := (*C.VkVideoSessionCreateInfoKHR)(memaf4ef5a1)
+ allocsaf4ef5a1 := new(cgoAllocMap)
+ allocsaf4ef5a1.Add(memaf4ef5a1)
var csType_allocs *cgoAllocMap
- ref64cc4eed.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs64cc4eed.Borrow(csType_allocs)
+ refaf4ef5a1.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsaf4ef5a1.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref64cc4eed.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs64cc4eed.Borrow(cpNext_allocs)
+ refaf4ef5a1.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsaf4ef5a1.Borrow(cpNext_allocs)
+
+ var cqueueFamilyIndex_allocs *cgoAllocMap
+ refaf4ef5a1.queueFamilyIndex, cqueueFamilyIndex_allocs = (C.uint32_t)(x.QueueFamilyIndex), cgoAllocsUnknown
+ allocsaf4ef5a1.Borrow(cqueueFamilyIndex_allocs)
var cflags_allocs *cgoAllocMap
- ref64cc4eed.flags, cflags_allocs = (C.VkPipelineLayoutCreateFlags)(x.Flags), cgoAllocsUnknown
- allocs64cc4eed.Borrow(cflags_allocs)
+ refaf4ef5a1.flags, cflags_allocs = (C.VkVideoSessionCreateFlagsKHR)(x.Flags), cgoAllocsUnknown
+ allocsaf4ef5a1.Borrow(cflags_allocs)
- var csetLayoutCount_allocs *cgoAllocMap
- ref64cc4eed.setLayoutCount, csetLayoutCount_allocs = (C.uint32_t)(x.SetLayoutCount), cgoAllocsUnknown
- allocs64cc4eed.Borrow(csetLayoutCount_allocs)
+ var cpVideoProfile_allocs *cgoAllocMap
+ refaf4ef5a1.pVideoProfile, cpVideoProfile_allocs = unpackSVideoProfileInfo(x.PVideoProfile)
+ allocsaf4ef5a1.Borrow(cpVideoProfile_allocs)
- var cpSetLayouts_allocs *cgoAllocMap
- ref64cc4eed.pSetLayouts, cpSetLayouts_allocs = (*C.VkDescriptorSetLayout)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PSetLayouts)).Data)), cgoAllocsUnknown
- allocs64cc4eed.Borrow(cpSetLayouts_allocs)
+ var cpictureFormat_allocs *cgoAllocMap
+ refaf4ef5a1.pictureFormat, cpictureFormat_allocs = (C.VkFormat)(x.PictureFormat), cgoAllocsUnknown
+ allocsaf4ef5a1.Borrow(cpictureFormat_allocs)
- var cpushConstantRangeCount_allocs *cgoAllocMap
- ref64cc4eed.pushConstantRangeCount, cpushConstantRangeCount_allocs = (C.uint32_t)(x.PushConstantRangeCount), cgoAllocsUnknown
- allocs64cc4eed.Borrow(cpushConstantRangeCount_allocs)
+ var cmaxCodedExtent_allocs *cgoAllocMap
+ refaf4ef5a1.maxCodedExtent, cmaxCodedExtent_allocs = x.MaxCodedExtent.PassValue()
+ allocsaf4ef5a1.Borrow(cmaxCodedExtent_allocs)
- var cpPushConstantRanges_allocs *cgoAllocMap
- ref64cc4eed.pPushConstantRanges, cpPushConstantRanges_allocs = unpackSPushConstantRange(x.PPushConstantRanges)
- allocs64cc4eed.Borrow(cpPushConstantRanges_allocs)
+ var creferencePictureFormat_allocs *cgoAllocMap
+ refaf4ef5a1.referencePictureFormat, creferencePictureFormat_allocs = (C.VkFormat)(x.ReferencePictureFormat), cgoAllocsUnknown
+ allocsaf4ef5a1.Borrow(creferencePictureFormat_allocs)
- x.ref64cc4eed = ref64cc4eed
- x.allocs64cc4eed = allocs64cc4eed
- return ref64cc4eed, allocs64cc4eed
+ var cmaxDpbSlots_allocs *cgoAllocMap
+ refaf4ef5a1.maxDpbSlots, cmaxDpbSlots_allocs = (C.uint32_t)(x.MaxDpbSlots), cgoAllocsUnknown
+ allocsaf4ef5a1.Borrow(cmaxDpbSlots_allocs)
+
+ var cmaxActiveReferencePictures_allocs *cgoAllocMap
+ refaf4ef5a1.maxActiveReferencePictures, cmaxActiveReferencePictures_allocs = (C.uint32_t)(x.MaxActiveReferencePictures), cgoAllocsUnknown
+ allocsaf4ef5a1.Borrow(cmaxActiveReferencePictures_allocs)
+
+ var cpStdHeaderVersion_allocs *cgoAllocMap
+ refaf4ef5a1.pStdHeaderVersion, cpStdHeaderVersion_allocs = unpackSExtensionProperties(x.PStdHeaderVersion)
+ allocsaf4ef5a1.Borrow(cpStdHeaderVersion_allocs)
+
+ x.refaf4ef5a1 = refaf4ef5a1
+ x.allocsaf4ef5a1 = allocsaf4ef5a1
+ return refaf4ef5a1, allocsaf4ef5a1
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PipelineLayoutCreateInfo) PassValue() (C.VkPipelineLayoutCreateInfo, *cgoAllocMap) {
- if x.ref64cc4eed != nil {
- return *x.ref64cc4eed, nil
+func (x VideoSessionCreateInfo) PassValue() (C.VkVideoSessionCreateInfoKHR, *cgoAllocMap) {
+ if x.refaf4ef5a1 != nil {
+ return *x.refaf4ef5a1, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -8762,158 +36016,106 @@ func (x PipelineLayoutCreateInfo) PassValue() (C.VkPipelineLayoutCreateInfo, *cg
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PipelineLayoutCreateInfo) Deref() {
- if x.ref64cc4eed == nil {
+func (x *VideoSessionCreateInfo) Deref() {
+ if x.refaf4ef5a1 == nil {
return
}
- x.SType = (StructureType)(x.ref64cc4eed.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref64cc4eed.pNext))
- x.Flags = (PipelineLayoutCreateFlags)(x.ref64cc4eed.flags)
- x.SetLayoutCount = (uint32)(x.ref64cc4eed.setLayoutCount)
- hxfe48d67 := (*sliceHeader)(unsafe.Pointer(&x.PSetLayouts))
- hxfe48d67.Data = unsafe.Pointer(x.ref64cc4eed.pSetLayouts)
- hxfe48d67.Cap = 0x7fffffff
- // hxfe48d67.Len = ?
-
- x.PushConstantRangeCount = (uint32)(x.ref64cc4eed.pushConstantRangeCount)
- packSPushConstantRange(x.PPushConstantRanges, x.ref64cc4eed.pPushConstantRanges)
+ x.SType = (StructureType)(x.refaf4ef5a1.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refaf4ef5a1.pNext))
+ x.QueueFamilyIndex = (uint32)(x.refaf4ef5a1.queueFamilyIndex)
+ x.Flags = (VideoSessionCreateFlags)(x.refaf4ef5a1.flags)
+ packSVideoProfileInfo(x.PVideoProfile, x.refaf4ef5a1.pVideoProfile)
+ x.PictureFormat = (Format)(x.refaf4ef5a1.pictureFormat)
+ x.MaxCodedExtent = *NewExtent2DRef(unsafe.Pointer(&x.refaf4ef5a1.maxCodedExtent))
+ x.ReferencePictureFormat = (Format)(x.refaf4ef5a1.referencePictureFormat)
+ x.MaxDpbSlots = (uint32)(x.refaf4ef5a1.maxDpbSlots)
+ x.MaxActiveReferencePictures = (uint32)(x.refaf4ef5a1.maxActiveReferencePictures)
+ packSExtensionProperties(x.PStdHeaderVersion, x.refaf4ef5a1.pStdHeaderVersion)
}
-// allocSamplerCreateInfoMemory allocates memory for type C.VkSamplerCreateInfo in C.
+// allocVideoSessionParametersCreateInfoMemory allocates memory for type C.VkVideoSessionParametersCreateInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSamplerCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSamplerCreateInfoValue))
+func allocVideoSessionParametersCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfVideoSessionParametersCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSamplerCreateInfoValue = unsafe.Sizeof([1]C.VkSamplerCreateInfo{})
+const sizeOfVideoSessionParametersCreateInfoValue = unsafe.Sizeof([1]C.VkVideoSessionParametersCreateInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SamplerCreateInfo) Ref() *C.VkSamplerCreateInfo {
+func (x *VideoSessionParametersCreateInfo) Ref() *C.VkVideoSessionParametersCreateInfoKHR {
if x == nil {
return nil
}
- return x.refce034abf
+ return x.reff62c4e51
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SamplerCreateInfo) Free() {
- if x != nil && x.allocsce034abf != nil {
- x.allocsce034abf.(*cgoAllocMap).Free()
- x.refce034abf = nil
+func (x *VideoSessionParametersCreateInfo) Free() {
+ if x != nil && x.allocsf62c4e51 != nil {
+ x.allocsf62c4e51.(*cgoAllocMap).Free()
+ x.reff62c4e51 = nil
}
}
-// NewSamplerCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewVideoSessionParametersCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSamplerCreateInfoRef(ref unsafe.Pointer) *SamplerCreateInfo {
+func NewVideoSessionParametersCreateInfoRef(ref unsafe.Pointer) *VideoSessionParametersCreateInfo {
if ref == nil {
return nil
}
- obj := new(SamplerCreateInfo)
- obj.refce034abf = (*C.VkSamplerCreateInfo)(unsafe.Pointer(ref))
+ obj := new(VideoSessionParametersCreateInfo)
+ obj.reff62c4e51 = (*C.VkVideoSessionParametersCreateInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SamplerCreateInfo) PassRef() (*C.VkSamplerCreateInfo, *cgoAllocMap) {
+func (x *VideoSessionParametersCreateInfo) PassRef() (*C.VkVideoSessionParametersCreateInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refce034abf != nil {
- return x.refce034abf, nil
+ } else if x.reff62c4e51 != nil {
+ return x.reff62c4e51, nil
}
- memce034abf := allocSamplerCreateInfoMemory(1)
- refce034abf := (*C.VkSamplerCreateInfo)(memce034abf)
- allocsce034abf := new(cgoAllocMap)
- allocsce034abf.Add(memce034abf)
+ memf62c4e51 := allocVideoSessionParametersCreateInfoMemory(1)
+ reff62c4e51 := (*C.VkVideoSessionParametersCreateInfoKHR)(memf62c4e51)
+ allocsf62c4e51 := new(cgoAllocMap)
+ allocsf62c4e51.Add(memf62c4e51)
var csType_allocs *cgoAllocMap
- refce034abf.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsce034abf.Borrow(csType_allocs)
+ reff62c4e51.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsf62c4e51.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refce034abf.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsce034abf.Borrow(cpNext_allocs)
+ reff62c4e51.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsf62c4e51.Borrow(cpNext_allocs)
var cflags_allocs *cgoAllocMap
- refce034abf.flags, cflags_allocs = (C.VkSamplerCreateFlags)(x.Flags), cgoAllocsUnknown
- allocsce034abf.Borrow(cflags_allocs)
-
- var cmagFilter_allocs *cgoAllocMap
- refce034abf.magFilter, cmagFilter_allocs = (C.VkFilter)(x.MagFilter), cgoAllocsUnknown
- allocsce034abf.Borrow(cmagFilter_allocs)
-
- var cminFilter_allocs *cgoAllocMap
- refce034abf.minFilter, cminFilter_allocs = (C.VkFilter)(x.MinFilter), cgoAllocsUnknown
- allocsce034abf.Borrow(cminFilter_allocs)
-
- var cmipmapMode_allocs *cgoAllocMap
- refce034abf.mipmapMode, cmipmapMode_allocs = (C.VkSamplerMipmapMode)(x.MipmapMode), cgoAllocsUnknown
- allocsce034abf.Borrow(cmipmapMode_allocs)
-
- var caddressModeU_allocs *cgoAllocMap
- refce034abf.addressModeU, caddressModeU_allocs = (C.VkSamplerAddressMode)(x.AddressModeU), cgoAllocsUnknown
- allocsce034abf.Borrow(caddressModeU_allocs)
-
- var caddressModeV_allocs *cgoAllocMap
- refce034abf.addressModeV, caddressModeV_allocs = (C.VkSamplerAddressMode)(x.AddressModeV), cgoAllocsUnknown
- allocsce034abf.Borrow(caddressModeV_allocs)
-
- var caddressModeW_allocs *cgoAllocMap
- refce034abf.addressModeW, caddressModeW_allocs = (C.VkSamplerAddressMode)(x.AddressModeW), cgoAllocsUnknown
- allocsce034abf.Borrow(caddressModeW_allocs)
-
- var cmipLodBias_allocs *cgoAllocMap
- refce034abf.mipLodBias, cmipLodBias_allocs = (C.float)(x.MipLodBias), cgoAllocsUnknown
- allocsce034abf.Borrow(cmipLodBias_allocs)
-
- var canisotropyEnable_allocs *cgoAllocMap
- refce034abf.anisotropyEnable, canisotropyEnable_allocs = (C.VkBool32)(x.AnisotropyEnable), cgoAllocsUnknown
- allocsce034abf.Borrow(canisotropyEnable_allocs)
-
- var cmaxAnisotropy_allocs *cgoAllocMap
- refce034abf.maxAnisotropy, cmaxAnisotropy_allocs = (C.float)(x.MaxAnisotropy), cgoAllocsUnknown
- allocsce034abf.Borrow(cmaxAnisotropy_allocs)
-
- var ccompareEnable_allocs *cgoAllocMap
- refce034abf.compareEnable, ccompareEnable_allocs = (C.VkBool32)(x.CompareEnable), cgoAllocsUnknown
- allocsce034abf.Borrow(ccompareEnable_allocs)
-
- var ccompareOp_allocs *cgoAllocMap
- refce034abf.compareOp, ccompareOp_allocs = (C.VkCompareOp)(x.CompareOp), cgoAllocsUnknown
- allocsce034abf.Borrow(ccompareOp_allocs)
-
- var cminLod_allocs *cgoAllocMap
- refce034abf.minLod, cminLod_allocs = (C.float)(x.MinLod), cgoAllocsUnknown
- allocsce034abf.Borrow(cminLod_allocs)
-
- var cmaxLod_allocs *cgoAllocMap
- refce034abf.maxLod, cmaxLod_allocs = (C.float)(x.MaxLod), cgoAllocsUnknown
- allocsce034abf.Borrow(cmaxLod_allocs)
+ reff62c4e51.flags, cflags_allocs = (C.VkVideoSessionParametersCreateFlagsKHR)(x.Flags), cgoAllocsUnknown
+ allocsf62c4e51.Borrow(cflags_allocs)
- var cborderColor_allocs *cgoAllocMap
- refce034abf.borderColor, cborderColor_allocs = (C.VkBorderColor)(x.BorderColor), cgoAllocsUnknown
- allocsce034abf.Borrow(cborderColor_allocs)
+ var cvideoSessionParametersTemplate_allocs *cgoAllocMap
+ reff62c4e51.videoSessionParametersTemplate, cvideoSessionParametersTemplate_allocs = *(*C.VkVideoSessionParametersKHR)(unsafe.Pointer(&x.VideoSessionParametersTemplate)), cgoAllocsUnknown
+ allocsf62c4e51.Borrow(cvideoSessionParametersTemplate_allocs)
- var cunnormalizedCoordinates_allocs *cgoAllocMap
- refce034abf.unnormalizedCoordinates, cunnormalizedCoordinates_allocs = (C.VkBool32)(x.UnnormalizedCoordinates), cgoAllocsUnknown
- allocsce034abf.Borrow(cunnormalizedCoordinates_allocs)
+ var cvideoSession_allocs *cgoAllocMap
+ reff62c4e51.videoSession, cvideoSession_allocs = *(*C.VkVideoSessionKHR)(unsafe.Pointer(&x.VideoSession)), cgoAllocsUnknown
+ allocsf62c4e51.Borrow(cvideoSession_allocs)
- x.refce034abf = refce034abf
- x.allocsce034abf = allocsce034abf
- return refce034abf, allocsce034abf
+ x.reff62c4e51 = reff62c4e51
+ x.allocsf62c4e51 = allocsf62c4e51
+ return reff62c4e51, allocsf62c4e51
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SamplerCreateInfo) PassValue() (C.VkSamplerCreateInfo, *cgoAllocMap) {
- if x.refce034abf != nil {
- return *x.refce034abf, nil
+func (x VideoSessionParametersCreateInfo) PassValue() (C.VkVideoSessionParametersCreateInfoKHR, *cgoAllocMap) {
+ if x.reff62c4e51 != nil {
+ return *x.reff62c4e51, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -8921,113 +36123,92 @@ func (x SamplerCreateInfo) PassValue() (C.VkSamplerCreateInfo, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SamplerCreateInfo) Deref() {
- if x.refce034abf == nil {
+func (x *VideoSessionParametersCreateInfo) Deref() {
+ if x.reff62c4e51 == nil {
return
}
- x.SType = (StructureType)(x.refce034abf.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refce034abf.pNext))
- x.Flags = (SamplerCreateFlags)(x.refce034abf.flags)
- x.MagFilter = (Filter)(x.refce034abf.magFilter)
- x.MinFilter = (Filter)(x.refce034abf.minFilter)
- x.MipmapMode = (SamplerMipmapMode)(x.refce034abf.mipmapMode)
- x.AddressModeU = (SamplerAddressMode)(x.refce034abf.addressModeU)
- x.AddressModeV = (SamplerAddressMode)(x.refce034abf.addressModeV)
- x.AddressModeW = (SamplerAddressMode)(x.refce034abf.addressModeW)
- x.MipLodBias = (float32)(x.refce034abf.mipLodBias)
- x.AnisotropyEnable = (Bool32)(x.refce034abf.anisotropyEnable)
- x.MaxAnisotropy = (float32)(x.refce034abf.maxAnisotropy)
- x.CompareEnable = (Bool32)(x.refce034abf.compareEnable)
- x.CompareOp = (CompareOp)(x.refce034abf.compareOp)
- x.MinLod = (float32)(x.refce034abf.minLod)
- x.MaxLod = (float32)(x.refce034abf.maxLod)
- x.BorderColor = (BorderColor)(x.refce034abf.borderColor)
- x.UnnormalizedCoordinates = (Bool32)(x.refce034abf.unnormalizedCoordinates)
+ x.SType = (StructureType)(x.reff62c4e51.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff62c4e51.pNext))
+ x.Flags = (VideoSessionParametersCreateFlags)(x.reff62c4e51.flags)
+ x.VideoSessionParametersTemplate = *(*VideoSessionParameters)(unsafe.Pointer(&x.reff62c4e51.videoSessionParametersTemplate))
+ x.VideoSession = *(*VideoSession)(unsafe.Pointer(&x.reff62c4e51.videoSession))
}
-// allocDescriptorSetLayoutBindingMemory allocates memory for type C.VkDescriptorSetLayoutBinding in C.
+// allocVideoSessionParametersUpdateInfoMemory allocates memory for type C.VkVideoSessionParametersUpdateInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDescriptorSetLayoutBindingMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorSetLayoutBindingValue))
+func allocVideoSessionParametersUpdateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfVideoSessionParametersUpdateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDescriptorSetLayoutBindingValue = unsafe.Sizeof([1]C.VkDescriptorSetLayoutBinding{})
+const sizeOfVideoSessionParametersUpdateInfoValue = unsafe.Sizeof([1]C.VkVideoSessionParametersUpdateInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DescriptorSetLayoutBinding) Ref() *C.VkDescriptorSetLayoutBinding {
+func (x *VideoSessionParametersUpdateInfo) Ref() *C.VkVideoSessionParametersUpdateInfoKHR {
if x == nil {
return nil
}
- return x.ref8b50b4ec
+ return x.refcf7b7609
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DescriptorSetLayoutBinding) Free() {
- if x != nil && x.allocs8b50b4ec != nil {
- x.allocs8b50b4ec.(*cgoAllocMap).Free()
- x.ref8b50b4ec = nil
+func (x *VideoSessionParametersUpdateInfo) Free() {
+ if x != nil && x.allocscf7b7609 != nil {
+ x.allocscf7b7609.(*cgoAllocMap).Free()
+ x.refcf7b7609 = nil
}
}
-// NewDescriptorSetLayoutBindingRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewVideoSessionParametersUpdateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDescriptorSetLayoutBindingRef(ref unsafe.Pointer) *DescriptorSetLayoutBinding {
+func NewVideoSessionParametersUpdateInfoRef(ref unsafe.Pointer) *VideoSessionParametersUpdateInfo {
if ref == nil {
return nil
}
- obj := new(DescriptorSetLayoutBinding)
- obj.ref8b50b4ec = (*C.VkDescriptorSetLayoutBinding)(unsafe.Pointer(ref))
+ obj := new(VideoSessionParametersUpdateInfo)
+ obj.refcf7b7609 = (*C.VkVideoSessionParametersUpdateInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DescriptorSetLayoutBinding) PassRef() (*C.VkDescriptorSetLayoutBinding, *cgoAllocMap) {
+func (x *VideoSessionParametersUpdateInfo) PassRef() (*C.VkVideoSessionParametersUpdateInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref8b50b4ec != nil {
- return x.ref8b50b4ec, nil
+ } else if x.refcf7b7609 != nil {
+ return x.refcf7b7609, nil
}
- mem8b50b4ec := allocDescriptorSetLayoutBindingMemory(1)
- ref8b50b4ec := (*C.VkDescriptorSetLayoutBinding)(mem8b50b4ec)
- allocs8b50b4ec := new(cgoAllocMap)
- allocs8b50b4ec.Add(mem8b50b4ec)
-
- var cbinding_allocs *cgoAllocMap
- ref8b50b4ec.binding, cbinding_allocs = (C.uint32_t)(x.Binding), cgoAllocsUnknown
- allocs8b50b4ec.Borrow(cbinding_allocs)
-
- var cdescriptorType_allocs *cgoAllocMap
- ref8b50b4ec.descriptorType, cdescriptorType_allocs = (C.VkDescriptorType)(x.DescriptorType), cgoAllocsUnknown
- allocs8b50b4ec.Borrow(cdescriptorType_allocs)
+ memcf7b7609 := allocVideoSessionParametersUpdateInfoMemory(1)
+ refcf7b7609 := (*C.VkVideoSessionParametersUpdateInfoKHR)(memcf7b7609)
+ allocscf7b7609 := new(cgoAllocMap)
+ allocscf7b7609.Add(memcf7b7609)
- var cdescriptorCount_allocs *cgoAllocMap
- ref8b50b4ec.descriptorCount, cdescriptorCount_allocs = (C.uint32_t)(x.DescriptorCount), cgoAllocsUnknown
- allocs8b50b4ec.Borrow(cdescriptorCount_allocs)
+ var csType_allocs *cgoAllocMap
+ refcf7b7609.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocscf7b7609.Borrow(csType_allocs)
- var cstageFlags_allocs *cgoAllocMap
- ref8b50b4ec.stageFlags, cstageFlags_allocs = (C.VkShaderStageFlags)(x.StageFlags), cgoAllocsUnknown
- allocs8b50b4ec.Borrow(cstageFlags_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refcf7b7609.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocscf7b7609.Borrow(cpNext_allocs)
- var cpImmutableSamplers_allocs *cgoAllocMap
- ref8b50b4ec.pImmutableSamplers, cpImmutableSamplers_allocs = (*C.VkSampler)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PImmutableSamplers)).Data)), cgoAllocsUnknown
- allocs8b50b4ec.Borrow(cpImmutableSamplers_allocs)
+ var cupdateSequenceCount_allocs *cgoAllocMap
+ refcf7b7609.updateSequenceCount, cupdateSequenceCount_allocs = (C.uint32_t)(x.UpdateSequenceCount), cgoAllocsUnknown
+ allocscf7b7609.Borrow(cupdateSequenceCount_allocs)
- x.ref8b50b4ec = ref8b50b4ec
- x.allocs8b50b4ec = allocs8b50b4ec
- return ref8b50b4ec, allocs8b50b4ec
+ x.refcf7b7609 = refcf7b7609
+ x.allocscf7b7609 = allocscf7b7609
+ return refcf7b7609, allocscf7b7609
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DescriptorSetLayoutBinding) PassValue() (C.VkDescriptorSetLayoutBinding, *cgoAllocMap) {
- if x.ref8b50b4ec != nil {
- return *x.ref8b50b4ec, nil
+func (x VideoSessionParametersUpdateInfo) PassValue() (C.VkVideoSessionParametersUpdateInfoKHR, *cgoAllocMap) {
+ if x.refcf7b7609 != nil {
+ return *x.refcf7b7609, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -9035,142 +36216,144 @@ func (x DescriptorSetLayoutBinding) PassValue() (C.VkDescriptorSetLayoutBinding,
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DescriptorSetLayoutBinding) Deref() {
- if x.ref8b50b4ec == nil {
+func (x *VideoSessionParametersUpdateInfo) Deref() {
+ if x.refcf7b7609 == nil {
return
}
- x.Binding = (uint32)(x.ref8b50b4ec.binding)
- x.DescriptorType = (DescriptorType)(x.ref8b50b4ec.descriptorType)
- x.DescriptorCount = (uint32)(x.ref8b50b4ec.descriptorCount)
- x.StageFlags = (ShaderStageFlags)(x.ref8b50b4ec.stageFlags)
- hxf4171bf := (*sliceHeader)(unsafe.Pointer(&x.PImmutableSamplers))
- hxf4171bf.Data = unsafe.Pointer(x.ref8b50b4ec.pImmutableSamplers)
- hxf4171bf.Cap = 0x7fffffff
- // hxf4171bf.Len = ?
-
+ x.SType = (StructureType)(x.refcf7b7609.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refcf7b7609.pNext))
+ x.UpdateSequenceCount = (uint32)(x.refcf7b7609.updateSequenceCount)
}
-// allocDescriptorSetLayoutCreateInfoMemory allocates memory for type C.VkDescriptorSetLayoutCreateInfo in C.
+// allocVideoBeginCodingInfoMemory allocates memory for type C.VkVideoBeginCodingInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDescriptorSetLayoutCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorSetLayoutCreateInfoValue))
+func allocVideoBeginCodingInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfVideoBeginCodingInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDescriptorSetLayoutCreateInfoValue = unsafe.Sizeof([1]C.VkDescriptorSetLayoutCreateInfo{})
+const sizeOfVideoBeginCodingInfoValue = unsafe.Sizeof([1]C.VkVideoBeginCodingInfoKHR{})
-// unpackSDescriptorSetLayoutBinding transforms a sliced Go data structure into plain C format.
-func unpackSDescriptorSetLayoutBinding(x []DescriptorSetLayoutBinding) (unpacked *C.VkDescriptorSetLayoutBinding, allocs *cgoAllocMap) {
+// unpackSVideoReferenceSlotInfo transforms a sliced Go data structure into plain C format.
+func unpackSVideoReferenceSlotInfo(x []VideoReferenceSlotInfo) (unpacked *C.VkVideoReferenceSlotInfoKHR, allocs *cgoAllocMap) {
if x == nil {
return nil, nil
}
allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkDescriptorSetLayoutBinding) {
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkVideoReferenceSlotInfoKHR) {
go allocs.Free()
})
len0 := len(x)
- mem0 := allocDescriptorSetLayoutBindingMemory(len0)
+ mem0 := allocVideoReferenceSlotInfoMemory(len0)
allocs.Add(mem0)
h0 := &sliceHeader{
Data: mem0,
Cap: len0,
Len: len0,
}
- v0 := *(*[]C.VkDescriptorSetLayoutBinding)(unsafe.Pointer(h0))
+ v0 := *(*[]C.VkVideoReferenceSlotInfoKHR)(unsafe.Pointer(h0))
for i0 := range x {
allocs0 := new(cgoAllocMap)
v0[i0], allocs0 = x[i0].PassValue()
allocs.Borrow(allocs0)
}
h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkDescriptorSetLayoutBinding)(h.Data)
+ unpacked = (*C.VkVideoReferenceSlotInfoKHR)(h.Data)
return
}
-// packSDescriptorSetLayoutBinding reads sliced Go data structure out from plain C format.
-func packSDescriptorSetLayoutBinding(v []DescriptorSetLayoutBinding, ptr0 *C.VkDescriptorSetLayoutBinding) {
+// packSVideoReferenceSlotInfo reads sliced Go data structure out from plain C format.
+func packSVideoReferenceSlotInfo(v []VideoReferenceSlotInfo, ptr0 *C.VkVideoReferenceSlotInfoKHR) {
const m = 0x7fffffff
for i0 := range v {
- ptr1 := (*(*[m / sizeOfDescriptorSetLayoutBindingValue]C.VkDescriptorSetLayoutBinding)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewDescriptorSetLayoutBindingRef(unsafe.Pointer(&ptr1))
+ ptr1 := (*(*[m / sizeOfVideoReferenceSlotInfoValue]C.VkVideoReferenceSlotInfoKHR)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewVideoReferenceSlotInfoRef(unsafe.Pointer(&ptr1))
}
}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DescriptorSetLayoutCreateInfo) Ref() *C.VkDescriptorSetLayoutCreateInfo {
+func (x *VideoBeginCodingInfo) Ref() *C.VkVideoBeginCodingInfoKHR {
if x == nil {
return nil
}
- return x.ref5ee8e0ed
+ return x.ref6ab3d7b5
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DescriptorSetLayoutCreateInfo) Free() {
- if x != nil && x.allocs5ee8e0ed != nil {
- x.allocs5ee8e0ed.(*cgoAllocMap).Free()
- x.ref5ee8e0ed = nil
+func (x *VideoBeginCodingInfo) Free() {
+ if x != nil && x.allocs6ab3d7b5 != nil {
+ x.allocs6ab3d7b5.(*cgoAllocMap).Free()
+ x.ref6ab3d7b5 = nil
}
}
-// NewDescriptorSetLayoutCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewVideoBeginCodingInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDescriptorSetLayoutCreateInfoRef(ref unsafe.Pointer) *DescriptorSetLayoutCreateInfo {
+func NewVideoBeginCodingInfoRef(ref unsafe.Pointer) *VideoBeginCodingInfo {
if ref == nil {
return nil
}
- obj := new(DescriptorSetLayoutCreateInfo)
- obj.ref5ee8e0ed = (*C.VkDescriptorSetLayoutCreateInfo)(unsafe.Pointer(ref))
+ obj := new(VideoBeginCodingInfo)
+ obj.ref6ab3d7b5 = (*C.VkVideoBeginCodingInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DescriptorSetLayoutCreateInfo) PassRef() (*C.VkDescriptorSetLayoutCreateInfo, *cgoAllocMap) {
+func (x *VideoBeginCodingInfo) PassRef() (*C.VkVideoBeginCodingInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref5ee8e0ed != nil {
- return x.ref5ee8e0ed, nil
+ } else if x.ref6ab3d7b5 != nil {
+ return x.ref6ab3d7b5, nil
}
- mem5ee8e0ed := allocDescriptorSetLayoutCreateInfoMemory(1)
- ref5ee8e0ed := (*C.VkDescriptorSetLayoutCreateInfo)(mem5ee8e0ed)
- allocs5ee8e0ed := new(cgoAllocMap)
- allocs5ee8e0ed.Add(mem5ee8e0ed)
+ mem6ab3d7b5 := allocVideoBeginCodingInfoMemory(1)
+ ref6ab3d7b5 := (*C.VkVideoBeginCodingInfoKHR)(mem6ab3d7b5)
+ allocs6ab3d7b5 := new(cgoAllocMap)
+ allocs6ab3d7b5.Add(mem6ab3d7b5)
var csType_allocs *cgoAllocMap
- ref5ee8e0ed.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs5ee8e0ed.Borrow(csType_allocs)
+ ref6ab3d7b5.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs6ab3d7b5.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref5ee8e0ed.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs5ee8e0ed.Borrow(cpNext_allocs)
+ ref6ab3d7b5.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs6ab3d7b5.Borrow(cpNext_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref6ab3d7b5.flags, cflags_allocs = (C.VkVideoBeginCodingFlagsKHR)(x.Flags), cgoAllocsUnknown
+ allocs6ab3d7b5.Borrow(cflags_allocs)
+
+ var cvideoSession_allocs *cgoAllocMap
+ ref6ab3d7b5.videoSession, cvideoSession_allocs = *(*C.VkVideoSessionKHR)(unsafe.Pointer(&x.VideoSession)), cgoAllocsUnknown
+ allocs6ab3d7b5.Borrow(cvideoSession_allocs)
- var cflags_allocs *cgoAllocMap
- ref5ee8e0ed.flags, cflags_allocs = (C.VkDescriptorSetLayoutCreateFlags)(x.Flags), cgoAllocsUnknown
- allocs5ee8e0ed.Borrow(cflags_allocs)
+ var cvideoSessionParameters_allocs *cgoAllocMap
+ ref6ab3d7b5.videoSessionParameters, cvideoSessionParameters_allocs = *(*C.VkVideoSessionParametersKHR)(unsafe.Pointer(&x.VideoSessionParameters)), cgoAllocsUnknown
+ allocs6ab3d7b5.Borrow(cvideoSessionParameters_allocs)
- var cbindingCount_allocs *cgoAllocMap
- ref5ee8e0ed.bindingCount, cbindingCount_allocs = (C.uint32_t)(x.BindingCount), cgoAllocsUnknown
- allocs5ee8e0ed.Borrow(cbindingCount_allocs)
+ var creferenceSlotCount_allocs *cgoAllocMap
+ ref6ab3d7b5.referenceSlotCount, creferenceSlotCount_allocs = (C.uint32_t)(x.ReferenceSlotCount), cgoAllocsUnknown
+ allocs6ab3d7b5.Borrow(creferenceSlotCount_allocs)
- var cpBindings_allocs *cgoAllocMap
- ref5ee8e0ed.pBindings, cpBindings_allocs = unpackSDescriptorSetLayoutBinding(x.PBindings)
- allocs5ee8e0ed.Borrow(cpBindings_allocs)
+ var cpReferenceSlots_allocs *cgoAllocMap
+ ref6ab3d7b5.pReferenceSlots, cpReferenceSlots_allocs = unpackSVideoReferenceSlotInfo(x.PReferenceSlots)
+ allocs6ab3d7b5.Borrow(cpReferenceSlots_allocs)
- x.ref5ee8e0ed = ref5ee8e0ed
- x.allocs5ee8e0ed = allocs5ee8e0ed
- return ref5ee8e0ed, allocs5ee8e0ed
+ x.ref6ab3d7b5 = ref6ab3d7b5
+ x.allocs6ab3d7b5 = allocs6ab3d7b5
+ return ref6ab3d7b5, allocs6ab3d7b5
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DescriptorSetLayoutCreateInfo) PassValue() (C.VkDescriptorSetLayoutCreateInfo, *cgoAllocMap) {
- if x.ref5ee8e0ed != nil {
- return *x.ref5ee8e0ed, nil
+func (x VideoBeginCodingInfo) PassValue() (C.VkVideoBeginCodingInfoKHR, *cgoAllocMap) {
+ if x.ref6ab3d7b5 != nil {
+ return *x.ref6ab3d7b5, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -9178,88 +36361,94 @@ func (x DescriptorSetLayoutCreateInfo) PassValue() (C.VkDescriptorSetLayoutCreat
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DescriptorSetLayoutCreateInfo) Deref() {
- if x.ref5ee8e0ed == nil {
+func (x *VideoBeginCodingInfo) Deref() {
+ if x.ref6ab3d7b5 == nil {
return
}
- x.SType = (StructureType)(x.ref5ee8e0ed.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5ee8e0ed.pNext))
- x.Flags = (DescriptorSetLayoutCreateFlags)(x.ref5ee8e0ed.flags)
- x.BindingCount = (uint32)(x.ref5ee8e0ed.bindingCount)
- packSDescriptorSetLayoutBinding(x.PBindings, x.ref5ee8e0ed.pBindings)
+ x.SType = (StructureType)(x.ref6ab3d7b5.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref6ab3d7b5.pNext))
+ x.Flags = (VideoBeginCodingFlags)(x.ref6ab3d7b5.flags)
+ x.VideoSession = *(*VideoSession)(unsafe.Pointer(&x.ref6ab3d7b5.videoSession))
+ x.VideoSessionParameters = *(*VideoSessionParameters)(unsafe.Pointer(&x.ref6ab3d7b5.videoSessionParameters))
+ x.ReferenceSlotCount = (uint32)(x.ref6ab3d7b5.referenceSlotCount)
+ packSVideoReferenceSlotInfo(x.PReferenceSlots, x.ref6ab3d7b5.pReferenceSlots)
}
-// allocDescriptorPoolSizeMemory allocates memory for type C.VkDescriptorPoolSize in C.
+// allocVideoEndCodingInfoMemory allocates memory for type C.VkVideoEndCodingInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDescriptorPoolSizeMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorPoolSizeValue))
+func allocVideoEndCodingInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfVideoEndCodingInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDescriptorPoolSizeValue = unsafe.Sizeof([1]C.VkDescriptorPoolSize{})
+const sizeOfVideoEndCodingInfoValue = unsafe.Sizeof([1]C.VkVideoEndCodingInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DescriptorPoolSize) Ref() *C.VkDescriptorPoolSize {
+func (x *VideoEndCodingInfo) Ref() *C.VkVideoEndCodingInfoKHR {
if x == nil {
return nil
}
- return x.refe15137da
+ return x.ref13b0038a
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DescriptorPoolSize) Free() {
- if x != nil && x.allocse15137da != nil {
- x.allocse15137da.(*cgoAllocMap).Free()
- x.refe15137da = nil
+func (x *VideoEndCodingInfo) Free() {
+ if x != nil && x.allocs13b0038a != nil {
+ x.allocs13b0038a.(*cgoAllocMap).Free()
+ x.ref13b0038a = nil
}
}
-// NewDescriptorPoolSizeRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewVideoEndCodingInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDescriptorPoolSizeRef(ref unsafe.Pointer) *DescriptorPoolSize {
+func NewVideoEndCodingInfoRef(ref unsafe.Pointer) *VideoEndCodingInfo {
if ref == nil {
return nil
}
- obj := new(DescriptorPoolSize)
- obj.refe15137da = (*C.VkDescriptorPoolSize)(unsafe.Pointer(ref))
+ obj := new(VideoEndCodingInfo)
+ obj.ref13b0038a = (*C.VkVideoEndCodingInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DescriptorPoolSize) PassRef() (*C.VkDescriptorPoolSize, *cgoAllocMap) {
+func (x *VideoEndCodingInfo) PassRef() (*C.VkVideoEndCodingInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refe15137da != nil {
- return x.refe15137da, nil
+ } else if x.ref13b0038a != nil {
+ return x.ref13b0038a, nil
}
- meme15137da := allocDescriptorPoolSizeMemory(1)
- refe15137da := (*C.VkDescriptorPoolSize)(meme15137da)
- allocse15137da := new(cgoAllocMap)
- allocse15137da.Add(meme15137da)
+ mem13b0038a := allocVideoEndCodingInfoMemory(1)
+ ref13b0038a := (*C.VkVideoEndCodingInfoKHR)(mem13b0038a)
+ allocs13b0038a := new(cgoAllocMap)
+ allocs13b0038a.Add(mem13b0038a)
- var c_type_allocs *cgoAllocMap
- refe15137da._type, c_type_allocs = (C.VkDescriptorType)(x.Type), cgoAllocsUnknown
- allocse15137da.Borrow(c_type_allocs)
+ var csType_allocs *cgoAllocMap
+ ref13b0038a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs13b0038a.Borrow(csType_allocs)
- var cdescriptorCount_allocs *cgoAllocMap
- refe15137da.descriptorCount, cdescriptorCount_allocs = (C.uint32_t)(x.DescriptorCount), cgoAllocsUnknown
- allocse15137da.Borrow(cdescriptorCount_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref13b0038a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs13b0038a.Borrow(cpNext_allocs)
- x.refe15137da = refe15137da
- x.allocse15137da = allocse15137da
- return refe15137da, allocse15137da
+ var cflags_allocs *cgoAllocMap
+ ref13b0038a.flags, cflags_allocs = (C.VkVideoEndCodingFlagsKHR)(x.Flags), cgoAllocsUnknown
+ allocs13b0038a.Borrow(cflags_allocs)
+
+ x.ref13b0038a = ref13b0038a
+ x.allocs13b0038a = allocs13b0038a
+ return ref13b0038a, allocs13b0038a
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DescriptorPoolSize) PassValue() (C.VkDescriptorPoolSize, *cgoAllocMap) {
- if x.refe15137da != nil {
- return *x.refe15137da, nil
+func (x VideoEndCodingInfo) PassValue() (C.VkVideoEndCodingInfoKHR, *cgoAllocMap) {
+ if x.ref13b0038a != nil {
+ return *x.ref13b0038a, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -9267,139 +36456,90 @@ func (x DescriptorPoolSize) PassValue() (C.VkDescriptorPoolSize, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DescriptorPoolSize) Deref() {
- if x.refe15137da == nil {
+func (x *VideoEndCodingInfo) Deref() {
+ if x.ref13b0038a == nil {
return
}
- x.Type = (DescriptorType)(x.refe15137da._type)
- x.DescriptorCount = (uint32)(x.refe15137da.descriptorCount)
+ x.SType = (StructureType)(x.ref13b0038a.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref13b0038a.pNext))
+ x.Flags = (VideoEndCodingFlags)(x.ref13b0038a.flags)
}
-// allocDescriptorPoolCreateInfoMemory allocates memory for type C.VkDescriptorPoolCreateInfo in C.
+// allocVideoCodingControlInfoMemory allocates memory for type C.VkVideoCodingControlInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDescriptorPoolCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorPoolCreateInfoValue))
+func allocVideoCodingControlInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfVideoCodingControlInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDescriptorPoolCreateInfoValue = unsafe.Sizeof([1]C.VkDescriptorPoolCreateInfo{})
-
-// unpackSDescriptorPoolSize transforms a sliced Go data structure into plain C format.
-func unpackSDescriptorPoolSize(x []DescriptorPoolSize) (unpacked *C.VkDescriptorPoolSize, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkDescriptorPoolSize) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocDescriptorPoolSizeMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkDescriptorPoolSize)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkDescriptorPoolSize)(h.Data)
- return
-}
-
-// packSDescriptorPoolSize reads sliced Go data structure out from plain C format.
-func packSDescriptorPoolSize(v []DescriptorPoolSize, ptr0 *C.VkDescriptorPoolSize) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfDescriptorPoolSizeValue]C.VkDescriptorPoolSize)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewDescriptorPoolSizeRef(unsafe.Pointer(&ptr1))
- }
-}
+const sizeOfVideoCodingControlInfoValue = unsafe.Sizeof([1]C.VkVideoCodingControlInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DescriptorPoolCreateInfo) Ref() *C.VkDescriptorPoolCreateInfo {
+func (x *VideoCodingControlInfo) Ref() *C.VkVideoCodingControlInfoKHR {
if x == nil {
return nil
}
- return x.ref19868463
+ return x.ref226eddcd
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DescriptorPoolCreateInfo) Free() {
- if x != nil && x.allocs19868463 != nil {
- x.allocs19868463.(*cgoAllocMap).Free()
- x.ref19868463 = nil
+func (x *VideoCodingControlInfo) Free() {
+ if x != nil && x.allocs226eddcd != nil {
+ x.allocs226eddcd.(*cgoAllocMap).Free()
+ x.ref226eddcd = nil
}
}
-// NewDescriptorPoolCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewVideoCodingControlInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDescriptorPoolCreateInfoRef(ref unsafe.Pointer) *DescriptorPoolCreateInfo {
+func NewVideoCodingControlInfoRef(ref unsafe.Pointer) *VideoCodingControlInfo {
if ref == nil {
return nil
}
- obj := new(DescriptorPoolCreateInfo)
- obj.ref19868463 = (*C.VkDescriptorPoolCreateInfo)(unsafe.Pointer(ref))
+ obj := new(VideoCodingControlInfo)
+ obj.ref226eddcd = (*C.VkVideoCodingControlInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DescriptorPoolCreateInfo) PassRef() (*C.VkDescriptorPoolCreateInfo, *cgoAllocMap) {
+func (x *VideoCodingControlInfo) PassRef() (*C.VkVideoCodingControlInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref19868463 != nil {
- return x.ref19868463, nil
+ } else if x.ref226eddcd != nil {
+ return x.ref226eddcd, nil
}
- mem19868463 := allocDescriptorPoolCreateInfoMemory(1)
- ref19868463 := (*C.VkDescriptorPoolCreateInfo)(mem19868463)
- allocs19868463 := new(cgoAllocMap)
- allocs19868463.Add(mem19868463)
+ mem226eddcd := allocVideoCodingControlInfoMemory(1)
+ ref226eddcd := (*C.VkVideoCodingControlInfoKHR)(mem226eddcd)
+ allocs226eddcd := new(cgoAllocMap)
+ allocs226eddcd.Add(mem226eddcd)
var csType_allocs *cgoAllocMap
- ref19868463.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs19868463.Borrow(csType_allocs)
+ ref226eddcd.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs226eddcd.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref19868463.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs19868463.Borrow(cpNext_allocs)
+ ref226eddcd.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs226eddcd.Borrow(cpNext_allocs)
var cflags_allocs *cgoAllocMap
- ref19868463.flags, cflags_allocs = (C.VkDescriptorPoolCreateFlags)(x.Flags), cgoAllocsUnknown
- allocs19868463.Borrow(cflags_allocs)
+ ref226eddcd.flags, cflags_allocs = (C.VkVideoCodingControlFlagsKHR)(x.Flags), cgoAllocsUnknown
+ allocs226eddcd.Borrow(cflags_allocs)
- var cmaxSets_allocs *cgoAllocMap
- ref19868463.maxSets, cmaxSets_allocs = (C.uint32_t)(x.MaxSets), cgoAllocsUnknown
- allocs19868463.Borrow(cmaxSets_allocs)
-
- var cpoolSizeCount_allocs *cgoAllocMap
- ref19868463.poolSizeCount, cpoolSizeCount_allocs = (C.uint32_t)(x.PoolSizeCount), cgoAllocsUnknown
- allocs19868463.Borrow(cpoolSizeCount_allocs)
-
- var cpPoolSizes_allocs *cgoAllocMap
- ref19868463.pPoolSizes, cpPoolSizes_allocs = unpackSDescriptorPoolSize(x.PPoolSizes)
- allocs19868463.Borrow(cpPoolSizes_allocs)
-
- x.ref19868463 = ref19868463
- x.allocs19868463 = allocs19868463
- return ref19868463, allocs19868463
+ x.ref226eddcd = ref226eddcd
+ x.allocs226eddcd = allocs226eddcd
+ return ref226eddcd, allocs226eddcd
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DescriptorPoolCreateInfo) PassValue() (C.VkDescriptorPoolCreateInfo, *cgoAllocMap) {
- if x.ref19868463 != nil {
- return *x.ref19868463, nil
+func (x VideoCodingControlInfo) PassValue() (C.VkVideoCodingControlInfoKHR, *cgoAllocMap) {
+ if x.ref226eddcd != nil {
+ return *x.ref226eddcd, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -9407,101 +36547,90 @@ func (x DescriptorPoolCreateInfo) PassValue() (C.VkDescriptorPoolCreateInfo, *cg
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DescriptorPoolCreateInfo) Deref() {
- if x.ref19868463 == nil {
+func (x *VideoCodingControlInfo) Deref() {
+ if x.ref226eddcd == nil {
return
}
- x.SType = (StructureType)(x.ref19868463.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref19868463.pNext))
- x.Flags = (DescriptorPoolCreateFlags)(x.ref19868463.flags)
- x.MaxSets = (uint32)(x.ref19868463.maxSets)
- x.PoolSizeCount = (uint32)(x.ref19868463.poolSizeCount)
- packSDescriptorPoolSize(x.PPoolSizes, x.ref19868463.pPoolSizes)
+ x.SType = (StructureType)(x.ref226eddcd.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref226eddcd.pNext))
+ x.Flags = (VideoCodingControlFlags)(x.ref226eddcd.flags)
}
-// allocDescriptorSetAllocateInfoMemory allocates memory for type C.VkDescriptorSetAllocateInfo in C.
+// allocVideoDecodeCapabilitiesMemory allocates memory for type C.VkVideoDecodeCapabilitiesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDescriptorSetAllocateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorSetAllocateInfoValue))
+func allocVideoDecodeCapabilitiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfVideoDecodeCapabilitiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDescriptorSetAllocateInfoValue = unsafe.Sizeof([1]C.VkDescriptorSetAllocateInfo{})
+const sizeOfVideoDecodeCapabilitiesValue = unsafe.Sizeof([1]C.VkVideoDecodeCapabilitiesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DescriptorSetAllocateInfo) Ref() *C.VkDescriptorSetAllocateInfo {
+func (x *VideoDecodeCapabilities) Ref() *C.VkVideoDecodeCapabilitiesKHR {
if x == nil {
return nil
}
- return x.ref2dd6cc22
+ return x.refc94faaf3
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DescriptorSetAllocateInfo) Free() {
- if x != nil && x.allocs2dd6cc22 != nil {
- x.allocs2dd6cc22.(*cgoAllocMap).Free()
- x.ref2dd6cc22 = nil
+func (x *VideoDecodeCapabilities) Free() {
+ if x != nil && x.allocsc94faaf3 != nil {
+ x.allocsc94faaf3.(*cgoAllocMap).Free()
+ x.refc94faaf3 = nil
}
}
-// NewDescriptorSetAllocateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewVideoDecodeCapabilitiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDescriptorSetAllocateInfoRef(ref unsafe.Pointer) *DescriptorSetAllocateInfo {
+func NewVideoDecodeCapabilitiesRef(ref unsafe.Pointer) *VideoDecodeCapabilities {
if ref == nil {
return nil
}
- obj := new(DescriptorSetAllocateInfo)
- obj.ref2dd6cc22 = (*C.VkDescriptorSetAllocateInfo)(unsafe.Pointer(ref))
+ obj := new(VideoDecodeCapabilities)
+ obj.refc94faaf3 = (*C.VkVideoDecodeCapabilitiesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DescriptorSetAllocateInfo) PassRef() (*C.VkDescriptorSetAllocateInfo, *cgoAllocMap) {
+func (x *VideoDecodeCapabilities) PassRef() (*C.VkVideoDecodeCapabilitiesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref2dd6cc22 != nil {
- return x.ref2dd6cc22, nil
+ } else if x.refc94faaf3 != nil {
+ return x.refc94faaf3, nil
}
- mem2dd6cc22 := allocDescriptorSetAllocateInfoMemory(1)
- ref2dd6cc22 := (*C.VkDescriptorSetAllocateInfo)(mem2dd6cc22)
- allocs2dd6cc22 := new(cgoAllocMap)
- allocs2dd6cc22.Add(mem2dd6cc22)
+ memc94faaf3 := allocVideoDecodeCapabilitiesMemory(1)
+ refc94faaf3 := (*C.VkVideoDecodeCapabilitiesKHR)(memc94faaf3)
+ allocsc94faaf3 := new(cgoAllocMap)
+ allocsc94faaf3.Add(memc94faaf3)
var csType_allocs *cgoAllocMap
- ref2dd6cc22.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs2dd6cc22.Borrow(csType_allocs)
+ refc94faaf3.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsc94faaf3.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref2dd6cc22.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs2dd6cc22.Borrow(cpNext_allocs)
-
- var cdescriptorPool_allocs *cgoAllocMap
- ref2dd6cc22.descriptorPool, cdescriptorPool_allocs = *(*C.VkDescriptorPool)(unsafe.Pointer(&x.DescriptorPool)), cgoAllocsUnknown
- allocs2dd6cc22.Borrow(cdescriptorPool_allocs)
-
- var cdescriptorSetCount_allocs *cgoAllocMap
- ref2dd6cc22.descriptorSetCount, cdescriptorSetCount_allocs = (C.uint32_t)(x.DescriptorSetCount), cgoAllocsUnknown
- allocs2dd6cc22.Borrow(cdescriptorSetCount_allocs)
+ refc94faaf3.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsc94faaf3.Borrow(cpNext_allocs)
- var cpSetLayouts_allocs *cgoAllocMap
- ref2dd6cc22.pSetLayouts, cpSetLayouts_allocs = (*C.VkDescriptorSetLayout)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PSetLayouts)).Data)), cgoAllocsUnknown
- allocs2dd6cc22.Borrow(cpSetLayouts_allocs)
+ var cflags_allocs *cgoAllocMap
+ refc94faaf3.flags, cflags_allocs = (C.VkVideoDecodeCapabilityFlagsKHR)(x.Flags), cgoAllocsUnknown
+ allocsc94faaf3.Borrow(cflags_allocs)
- x.ref2dd6cc22 = ref2dd6cc22
- x.allocs2dd6cc22 = allocs2dd6cc22
- return ref2dd6cc22, allocs2dd6cc22
+ x.refc94faaf3 = refc94faaf3
+ x.allocsc94faaf3 = allocsc94faaf3
+ return refc94faaf3, allocsc94faaf3
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DescriptorSetAllocateInfo) PassValue() (C.VkDescriptorSetAllocateInfo, *cgoAllocMap) {
- if x.ref2dd6cc22 != nil {
- return *x.ref2dd6cc22, nil
+func (x VideoDecodeCapabilities) PassValue() (C.VkVideoDecodeCapabilitiesKHR, *cgoAllocMap) {
+ if x.refc94faaf3 != nil {
+ return *x.refc94faaf3, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -9509,96 +36638,90 @@ func (x DescriptorSetAllocateInfo) PassValue() (C.VkDescriptorSetAllocateInfo, *
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DescriptorSetAllocateInfo) Deref() {
- if x.ref2dd6cc22 == nil {
+func (x *VideoDecodeCapabilities) Deref() {
+ if x.refc94faaf3 == nil {
return
}
- x.SType = (StructureType)(x.ref2dd6cc22.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref2dd6cc22.pNext))
- x.DescriptorPool = *(*DescriptorPool)(unsafe.Pointer(&x.ref2dd6cc22.descriptorPool))
- x.DescriptorSetCount = (uint32)(x.ref2dd6cc22.descriptorSetCount)
- hxf058b18 := (*sliceHeader)(unsafe.Pointer(&x.PSetLayouts))
- hxf058b18.Data = unsafe.Pointer(x.ref2dd6cc22.pSetLayouts)
- hxf058b18.Cap = 0x7fffffff
- // hxf058b18.Len = ?
-
+ x.SType = (StructureType)(x.refc94faaf3.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc94faaf3.pNext))
+ x.Flags = (VideoDecodeCapabilityFlags)(x.refc94faaf3.flags)
}
-// allocDescriptorImageInfoMemory allocates memory for type C.VkDescriptorImageInfo in C.
+// allocVideoDecodeUsageInfoMemory allocates memory for type C.VkVideoDecodeUsageInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDescriptorImageInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorImageInfoValue))
+func allocVideoDecodeUsageInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfVideoDecodeUsageInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDescriptorImageInfoValue = unsafe.Sizeof([1]C.VkDescriptorImageInfo{})
+const sizeOfVideoDecodeUsageInfoValue = unsafe.Sizeof([1]C.VkVideoDecodeUsageInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DescriptorImageInfo) Ref() *C.VkDescriptorImageInfo {
+func (x *VideoDecodeUsageInfo) Ref() *C.VkVideoDecodeUsageInfoKHR {
if x == nil {
return nil
}
- return x.refaf073b07
+ return x.refd72a4309
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DescriptorImageInfo) Free() {
- if x != nil && x.allocsaf073b07 != nil {
- x.allocsaf073b07.(*cgoAllocMap).Free()
- x.refaf073b07 = nil
+func (x *VideoDecodeUsageInfo) Free() {
+ if x != nil && x.allocsd72a4309 != nil {
+ x.allocsd72a4309.(*cgoAllocMap).Free()
+ x.refd72a4309 = nil
}
}
-// NewDescriptorImageInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewVideoDecodeUsageInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDescriptorImageInfoRef(ref unsafe.Pointer) *DescriptorImageInfo {
+func NewVideoDecodeUsageInfoRef(ref unsafe.Pointer) *VideoDecodeUsageInfo {
if ref == nil {
return nil
}
- obj := new(DescriptorImageInfo)
- obj.refaf073b07 = (*C.VkDescriptorImageInfo)(unsafe.Pointer(ref))
+ obj := new(VideoDecodeUsageInfo)
+ obj.refd72a4309 = (*C.VkVideoDecodeUsageInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DescriptorImageInfo) PassRef() (*C.VkDescriptorImageInfo, *cgoAllocMap) {
+func (x *VideoDecodeUsageInfo) PassRef() (*C.VkVideoDecodeUsageInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refaf073b07 != nil {
- return x.refaf073b07, nil
+ } else if x.refd72a4309 != nil {
+ return x.refd72a4309, nil
}
- memaf073b07 := allocDescriptorImageInfoMemory(1)
- refaf073b07 := (*C.VkDescriptorImageInfo)(memaf073b07)
- allocsaf073b07 := new(cgoAllocMap)
- allocsaf073b07.Add(memaf073b07)
+ memd72a4309 := allocVideoDecodeUsageInfoMemory(1)
+ refd72a4309 := (*C.VkVideoDecodeUsageInfoKHR)(memd72a4309)
+ allocsd72a4309 := new(cgoAllocMap)
+ allocsd72a4309.Add(memd72a4309)
- var csampler_allocs *cgoAllocMap
- refaf073b07.sampler, csampler_allocs = *(*C.VkSampler)(unsafe.Pointer(&x.Sampler)), cgoAllocsUnknown
- allocsaf073b07.Borrow(csampler_allocs)
+ var csType_allocs *cgoAllocMap
+ refd72a4309.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd72a4309.Borrow(csType_allocs)
- var cimageView_allocs *cgoAllocMap
- refaf073b07.imageView, cimageView_allocs = *(*C.VkImageView)(unsafe.Pointer(&x.ImageView)), cgoAllocsUnknown
- allocsaf073b07.Borrow(cimageView_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refd72a4309.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsd72a4309.Borrow(cpNext_allocs)
- var cimageLayout_allocs *cgoAllocMap
- refaf073b07.imageLayout, cimageLayout_allocs = (C.VkImageLayout)(x.ImageLayout), cgoAllocsUnknown
- allocsaf073b07.Borrow(cimageLayout_allocs)
+ var cvideoUsageHints_allocs *cgoAllocMap
+ refd72a4309.videoUsageHints, cvideoUsageHints_allocs = (C.VkVideoDecodeUsageFlagsKHR)(x.VideoUsageHints), cgoAllocsUnknown
+ allocsd72a4309.Borrow(cvideoUsageHints_allocs)
- x.refaf073b07 = refaf073b07
- x.allocsaf073b07 = allocsaf073b07
- return refaf073b07, allocsaf073b07
+ x.refd72a4309 = refd72a4309
+ x.allocsd72a4309 = allocsd72a4309
+ return refd72a4309, allocsd72a4309
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DescriptorImageInfo) PassValue() (C.VkDescriptorImageInfo, *cgoAllocMap) {
- if x.refaf073b07 != nil {
- return *x.refaf073b07, nil
+func (x VideoDecodeUsageInfo) PassValue() (C.VkVideoDecodeUsageInfoKHR, *cgoAllocMap) {
+ if x.refd72a4309 != nil {
+ return *x.refd72a4309, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -9606,90 +36729,118 @@ func (x DescriptorImageInfo) PassValue() (C.VkDescriptorImageInfo, *cgoAllocMap)
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DescriptorImageInfo) Deref() {
- if x.refaf073b07 == nil {
+func (x *VideoDecodeUsageInfo) Deref() {
+ if x.refd72a4309 == nil {
return
}
- x.Sampler = *(*Sampler)(unsafe.Pointer(&x.refaf073b07.sampler))
- x.ImageView = *(*ImageView)(unsafe.Pointer(&x.refaf073b07.imageView))
- x.ImageLayout = (ImageLayout)(x.refaf073b07.imageLayout)
+ x.SType = (StructureType)(x.refd72a4309.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd72a4309.pNext))
+ x.VideoUsageHints = (VideoDecodeUsageFlags)(x.refd72a4309.videoUsageHints)
}
-// allocDescriptorBufferInfoMemory allocates memory for type C.VkDescriptorBufferInfo in C.
+// allocVideoDecodeInfoMemory allocates memory for type C.VkVideoDecodeInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDescriptorBufferInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorBufferInfoValue))
+func allocVideoDecodeInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfVideoDecodeInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDescriptorBufferInfoValue = unsafe.Sizeof([1]C.VkDescriptorBufferInfo{})
+const sizeOfVideoDecodeInfoValue = unsafe.Sizeof([1]C.VkVideoDecodeInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DescriptorBufferInfo) Ref() *C.VkDescriptorBufferInfo {
+func (x *VideoDecodeInfo) Ref() *C.VkVideoDecodeInfoKHR {
if x == nil {
return nil
}
- return x.refe64bec0e
+ return x.refbbf9d3b8
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DescriptorBufferInfo) Free() {
- if x != nil && x.allocse64bec0e != nil {
- x.allocse64bec0e.(*cgoAllocMap).Free()
- x.refe64bec0e = nil
+func (x *VideoDecodeInfo) Free() {
+ if x != nil && x.allocsbbf9d3b8 != nil {
+ x.allocsbbf9d3b8.(*cgoAllocMap).Free()
+ x.refbbf9d3b8 = nil
}
}
-// NewDescriptorBufferInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewVideoDecodeInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDescriptorBufferInfoRef(ref unsafe.Pointer) *DescriptorBufferInfo {
+func NewVideoDecodeInfoRef(ref unsafe.Pointer) *VideoDecodeInfo {
if ref == nil {
return nil
}
- obj := new(DescriptorBufferInfo)
- obj.refe64bec0e = (*C.VkDescriptorBufferInfo)(unsafe.Pointer(ref))
+ obj := new(VideoDecodeInfo)
+ obj.refbbf9d3b8 = (*C.VkVideoDecodeInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DescriptorBufferInfo) PassRef() (*C.VkDescriptorBufferInfo, *cgoAllocMap) {
+func (x *VideoDecodeInfo) PassRef() (*C.VkVideoDecodeInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refe64bec0e != nil {
- return x.refe64bec0e, nil
+ } else if x.refbbf9d3b8 != nil {
+ return x.refbbf9d3b8, nil
}
- meme64bec0e := allocDescriptorBufferInfoMemory(1)
- refe64bec0e := (*C.VkDescriptorBufferInfo)(meme64bec0e)
- allocse64bec0e := new(cgoAllocMap)
- allocse64bec0e.Add(meme64bec0e)
+ membbf9d3b8 := allocVideoDecodeInfoMemory(1)
+ refbbf9d3b8 := (*C.VkVideoDecodeInfoKHR)(membbf9d3b8)
+ allocsbbf9d3b8 := new(cgoAllocMap)
+ allocsbbf9d3b8.Add(membbf9d3b8)
- var cbuffer_allocs *cgoAllocMap
- refe64bec0e.buffer, cbuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.Buffer)), cgoAllocsUnknown
- allocse64bec0e.Borrow(cbuffer_allocs)
+ var csType_allocs *cgoAllocMap
+ refbbf9d3b8.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsbbf9d3b8.Borrow(csType_allocs)
- var coffset_allocs *cgoAllocMap
- refe64bec0e.offset, coffset_allocs = (C.VkDeviceSize)(x.Offset), cgoAllocsUnknown
- allocse64bec0e.Borrow(coffset_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refbbf9d3b8.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsbbf9d3b8.Borrow(cpNext_allocs)
- var c_range_allocs *cgoAllocMap
- refe64bec0e._range, c_range_allocs = (C.VkDeviceSize)(x.Range), cgoAllocsUnknown
- allocse64bec0e.Borrow(c_range_allocs)
+ var cflags_allocs *cgoAllocMap
+ refbbf9d3b8.flags, cflags_allocs = (C.VkVideoDecodeFlagsKHR)(x.Flags), cgoAllocsUnknown
+ allocsbbf9d3b8.Borrow(cflags_allocs)
- x.refe64bec0e = refe64bec0e
- x.allocse64bec0e = allocse64bec0e
- return refe64bec0e, allocse64bec0e
+ var csrcBuffer_allocs *cgoAllocMap
+ refbbf9d3b8.srcBuffer, csrcBuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.SrcBuffer)), cgoAllocsUnknown
+ allocsbbf9d3b8.Borrow(csrcBuffer_allocs)
+
+ var csrcBufferOffset_allocs *cgoAllocMap
+ refbbf9d3b8.srcBufferOffset, csrcBufferOffset_allocs = (C.VkDeviceSize)(x.SrcBufferOffset), cgoAllocsUnknown
+ allocsbbf9d3b8.Borrow(csrcBufferOffset_allocs)
+
+ var csrcBufferRange_allocs *cgoAllocMap
+ refbbf9d3b8.srcBufferRange, csrcBufferRange_allocs = (C.VkDeviceSize)(x.SrcBufferRange), cgoAllocsUnknown
+ allocsbbf9d3b8.Borrow(csrcBufferRange_allocs)
+
+ var cdstPictureResource_allocs *cgoAllocMap
+ refbbf9d3b8.dstPictureResource, cdstPictureResource_allocs = x.DstPictureResource.PassValue()
+ allocsbbf9d3b8.Borrow(cdstPictureResource_allocs)
+
+ var cpSetupReferenceSlot_allocs *cgoAllocMap
+ refbbf9d3b8.pSetupReferenceSlot, cpSetupReferenceSlot_allocs = unpackSVideoReferenceSlotInfo(x.PSetupReferenceSlot)
+ allocsbbf9d3b8.Borrow(cpSetupReferenceSlot_allocs)
+
+ var creferenceSlotCount_allocs *cgoAllocMap
+ refbbf9d3b8.referenceSlotCount, creferenceSlotCount_allocs = (C.uint32_t)(x.ReferenceSlotCount), cgoAllocsUnknown
+ allocsbbf9d3b8.Borrow(creferenceSlotCount_allocs)
+
+ var cpReferenceSlots_allocs *cgoAllocMap
+ refbbf9d3b8.pReferenceSlots, cpReferenceSlots_allocs = unpackSVideoReferenceSlotInfo(x.PReferenceSlots)
+ allocsbbf9d3b8.Borrow(cpReferenceSlots_allocs)
+
+ x.refbbf9d3b8 = refbbf9d3b8
+ x.allocsbbf9d3b8 = allocsbbf9d3b8
+ return refbbf9d3b8, allocsbbf9d3b8
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DescriptorBufferInfo) PassValue() (C.VkDescriptorBufferInfo, *cgoAllocMap) {
- if x.refe64bec0e != nil {
- return *x.refe64bec0e, nil
+func (x VideoDecodeInfo) PassValue() (C.VkVideoDecodeInfoKHR, *cgoAllocMap) {
+ if x.refbbf9d3b8 != nil {
+ return *x.refbbf9d3b8, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -9697,194 +36848,202 @@ func (x DescriptorBufferInfo) PassValue() (C.VkDescriptorBufferInfo, *cgoAllocMa
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DescriptorBufferInfo) Deref() {
- if x.refe64bec0e == nil {
+func (x *VideoDecodeInfo) Deref() {
+ if x.refbbf9d3b8 == nil {
return
}
- x.Buffer = *(*Buffer)(unsafe.Pointer(&x.refe64bec0e.buffer))
- x.Offset = (DeviceSize)(x.refe64bec0e.offset)
- x.Range = (DeviceSize)(x.refe64bec0e._range)
+ x.SType = (StructureType)(x.refbbf9d3b8.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refbbf9d3b8.pNext))
+ x.Flags = (VideoDecodeFlags)(x.refbbf9d3b8.flags)
+ x.SrcBuffer = *(*Buffer)(unsafe.Pointer(&x.refbbf9d3b8.srcBuffer))
+ x.SrcBufferOffset = (DeviceSize)(x.refbbf9d3b8.srcBufferOffset)
+ x.SrcBufferRange = (DeviceSize)(x.refbbf9d3b8.srcBufferRange)
+ x.DstPictureResource = *NewVideoPictureResourceInfoRef(unsafe.Pointer(&x.refbbf9d3b8.dstPictureResource))
+ packSVideoReferenceSlotInfo(x.PSetupReferenceSlot, x.refbbf9d3b8.pSetupReferenceSlot)
+ x.ReferenceSlotCount = (uint32)(x.refbbf9d3b8.referenceSlotCount)
+ packSVideoReferenceSlotInfo(x.PReferenceSlots, x.refbbf9d3b8.pReferenceSlots)
}
-// allocWriteDescriptorSetMemory allocates memory for type C.VkWriteDescriptorSet in C.
+// allocRenderingFragmentShadingRateAttachmentInfoMemory allocates memory for type C.VkRenderingFragmentShadingRateAttachmentInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocWriteDescriptorSetMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfWriteDescriptorSetValue))
+func allocRenderingFragmentShadingRateAttachmentInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfRenderingFragmentShadingRateAttachmentInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfWriteDescriptorSetValue = unsafe.Sizeof([1]C.VkWriteDescriptorSet{})
+const sizeOfRenderingFragmentShadingRateAttachmentInfoValue = unsafe.Sizeof([1]C.VkRenderingFragmentShadingRateAttachmentInfoKHR{})
-// unpackSDescriptorImageInfo transforms a sliced Go data structure into plain C format.
-func unpackSDescriptorImageInfo(x []DescriptorImageInfo) (unpacked *C.VkDescriptorImageInfo, allocs *cgoAllocMap) {
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *RenderingFragmentShadingRateAttachmentInfo) Ref() *C.VkRenderingFragmentShadingRateAttachmentInfoKHR {
if x == nil {
- return nil, nil
+ return nil
}
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkDescriptorImageInfo) {
- go allocs.Free()
- })
+ return x.ref4d98d68f
+}
- len0 := len(x)
- mem0 := allocDescriptorImageInfoMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *RenderingFragmentShadingRateAttachmentInfo) Free() {
+ if x != nil && x.allocs4d98d68f != nil {
+ x.allocs4d98d68f.(*cgoAllocMap).Free()
+ x.ref4d98d68f = nil
}
- v0 := *(*[]C.VkDescriptorImageInfo)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
+}
+
+// NewRenderingFragmentShadingRateAttachmentInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewRenderingFragmentShadingRateAttachmentInfoRef(ref unsafe.Pointer) *RenderingFragmentShadingRateAttachmentInfo {
+ if ref == nil {
+ return nil
}
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkDescriptorImageInfo)(h.Data)
- return
+ obj := new(RenderingFragmentShadingRateAttachmentInfo)
+ obj.ref4d98d68f = (*C.VkRenderingFragmentShadingRateAttachmentInfoKHR)(unsafe.Pointer(ref))
+ return obj
}
-// unpackSDescriptorBufferInfo transforms a sliced Go data structure into plain C format.
-func unpackSDescriptorBufferInfo(x []DescriptorBufferInfo) (unpacked *C.VkDescriptorBufferInfo, allocs *cgoAllocMap) {
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *RenderingFragmentShadingRateAttachmentInfo) PassRef() (*C.VkRenderingFragmentShadingRateAttachmentInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
+ } else if x.ref4d98d68f != nil {
+ return x.ref4d98d68f, nil
}
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkDescriptorBufferInfo) {
- go allocs.Free()
- })
+ mem4d98d68f := allocRenderingFragmentShadingRateAttachmentInfoMemory(1)
+ ref4d98d68f := (*C.VkRenderingFragmentShadingRateAttachmentInfoKHR)(mem4d98d68f)
+ allocs4d98d68f := new(cgoAllocMap)
+ allocs4d98d68f.Add(mem4d98d68f)
- len0 := len(x)
- mem0 := allocDescriptorBufferInfoMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkDescriptorBufferInfo)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
+ var csType_allocs *cgoAllocMap
+ ref4d98d68f.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs4d98d68f.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref4d98d68f.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs4d98d68f.Borrow(cpNext_allocs)
+
+ var cimageView_allocs *cgoAllocMap
+ ref4d98d68f.imageView, cimageView_allocs = *(*C.VkImageView)(unsafe.Pointer(&x.ImageView)), cgoAllocsUnknown
+ allocs4d98d68f.Borrow(cimageView_allocs)
+
+ var cimageLayout_allocs *cgoAllocMap
+ ref4d98d68f.imageLayout, cimageLayout_allocs = (C.VkImageLayout)(x.ImageLayout), cgoAllocsUnknown
+ allocs4d98d68f.Borrow(cimageLayout_allocs)
+
+ var cshadingRateAttachmentTexelSize_allocs *cgoAllocMap
+ ref4d98d68f.shadingRateAttachmentTexelSize, cshadingRateAttachmentTexelSize_allocs = x.ShadingRateAttachmentTexelSize.PassValue()
+ allocs4d98d68f.Borrow(cshadingRateAttachmentTexelSize_allocs)
+
+ x.ref4d98d68f = ref4d98d68f
+ x.allocs4d98d68f = allocs4d98d68f
+ return ref4d98d68f, allocs4d98d68f
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x RenderingFragmentShadingRateAttachmentInfo) PassValue() (C.VkRenderingFragmentShadingRateAttachmentInfoKHR, *cgoAllocMap) {
+ if x.ref4d98d68f != nil {
+ return *x.ref4d98d68f, nil
}
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkDescriptorBufferInfo)(h.Data)
- return
+ ref, allocs := x.PassRef()
+ return *ref, allocs
}
-// packSDescriptorImageInfo reads sliced Go data structure out from plain C format.
-func packSDescriptorImageInfo(v []DescriptorImageInfo, ptr0 *C.VkDescriptorImageInfo) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfDescriptorImageInfoValue]C.VkDescriptorImageInfo)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewDescriptorImageInfoRef(unsafe.Pointer(&ptr1))
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *RenderingFragmentShadingRateAttachmentInfo) Deref() {
+ if x.ref4d98d68f == nil {
+ return
}
+ x.SType = (StructureType)(x.ref4d98d68f.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref4d98d68f.pNext))
+ x.ImageView = *(*ImageView)(unsafe.Pointer(&x.ref4d98d68f.imageView))
+ x.ImageLayout = (ImageLayout)(x.ref4d98d68f.imageLayout)
+ x.ShadingRateAttachmentTexelSize = *NewExtent2DRef(unsafe.Pointer(&x.ref4d98d68f.shadingRateAttachmentTexelSize))
}
-// packSDescriptorBufferInfo reads sliced Go data structure out from plain C format.
-func packSDescriptorBufferInfo(v []DescriptorBufferInfo, ptr0 *C.VkDescriptorBufferInfo) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfDescriptorBufferInfoValue]C.VkDescriptorBufferInfo)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewDescriptorBufferInfoRef(unsafe.Pointer(&ptr1))
+// allocRenderingFragmentDensityMapAttachmentInfoMemory allocates memory for type C.VkRenderingFragmentDensityMapAttachmentInfoEXT in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocRenderingFragmentDensityMapAttachmentInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfRenderingFragmentDensityMapAttachmentInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
}
+ return mem
}
+const sizeOfRenderingFragmentDensityMapAttachmentInfoValue = unsafe.Sizeof([1]C.VkRenderingFragmentDensityMapAttachmentInfoEXT{})
+
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *WriteDescriptorSet) Ref() *C.VkWriteDescriptorSet {
+func (x *RenderingFragmentDensityMapAttachmentInfo) Ref() *C.VkRenderingFragmentDensityMapAttachmentInfoEXT {
if x == nil {
return nil
}
- return x.ref3cec3f3f
+ return x.ref5a007d48
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *WriteDescriptorSet) Free() {
- if x != nil && x.allocs3cec3f3f != nil {
- x.allocs3cec3f3f.(*cgoAllocMap).Free()
- x.ref3cec3f3f = nil
+func (x *RenderingFragmentDensityMapAttachmentInfo) Free() {
+ if x != nil && x.allocs5a007d48 != nil {
+ x.allocs5a007d48.(*cgoAllocMap).Free()
+ x.ref5a007d48 = nil
}
}
-// NewWriteDescriptorSetRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewRenderingFragmentDensityMapAttachmentInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewWriteDescriptorSetRef(ref unsafe.Pointer) *WriteDescriptorSet {
+func NewRenderingFragmentDensityMapAttachmentInfoRef(ref unsafe.Pointer) *RenderingFragmentDensityMapAttachmentInfo {
if ref == nil {
return nil
}
- obj := new(WriteDescriptorSet)
- obj.ref3cec3f3f = (*C.VkWriteDescriptorSet)(unsafe.Pointer(ref))
+ obj := new(RenderingFragmentDensityMapAttachmentInfo)
+ obj.ref5a007d48 = (*C.VkRenderingFragmentDensityMapAttachmentInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *WriteDescriptorSet) PassRef() (*C.VkWriteDescriptorSet, *cgoAllocMap) {
+func (x *RenderingFragmentDensityMapAttachmentInfo) PassRef() (*C.VkRenderingFragmentDensityMapAttachmentInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref3cec3f3f != nil {
- return x.ref3cec3f3f, nil
+ } else if x.ref5a007d48 != nil {
+ return x.ref5a007d48, nil
}
- mem3cec3f3f := allocWriteDescriptorSetMemory(1)
- ref3cec3f3f := (*C.VkWriteDescriptorSet)(mem3cec3f3f)
- allocs3cec3f3f := new(cgoAllocMap)
- allocs3cec3f3f.Add(mem3cec3f3f)
+ mem5a007d48 := allocRenderingFragmentDensityMapAttachmentInfoMemory(1)
+ ref5a007d48 := (*C.VkRenderingFragmentDensityMapAttachmentInfoEXT)(mem5a007d48)
+ allocs5a007d48 := new(cgoAllocMap)
+ allocs5a007d48.Add(mem5a007d48)
var csType_allocs *cgoAllocMap
- ref3cec3f3f.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs3cec3f3f.Borrow(csType_allocs)
+ ref5a007d48.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs5a007d48.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref3cec3f3f.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs3cec3f3f.Borrow(cpNext_allocs)
-
- var cdstSet_allocs *cgoAllocMap
- ref3cec3f3f.dstSet, cdstSet_allocs = *(*C.VkDescriptorSet)(unsafe.Pointer(&x.DstSet)), cgoAllocsUnknown
- allocs3cec3f3f.Borrow(cdstSet_allocs)
-
- var cdstBinding_allocs *cgoAllocMap
- ref3cec3f3f.dstBinding, cdstBinding_allocs = (C.uint32_t)(x.DstBinding), cgoAllocsUnknown
- allocs3cec3f3f.Borrow(cdstBinding_allocs)
-
- var cdstArrayElement_allocs *cgoAllocMap
- ref3cec3f3f.dstArrayElement, cdstArrayElement_allocs = (C.uint32_t)(x.DstArrayElement), cgoAllocsUnknown
- allocs3cec3f3f.Borrow(cdstArrayElement_allocs)
-
- var cdescriptorCount_allocs *cgoAllocMap
- ref3cec3f3f.descriptorCount, cdescriptorCount_allocs = (C.uint32_t)(x.DescriptorCount), cgoAllocsUnknown
- allocs3cec3f3f.Borrow(cdescriptorCount_allocs)
-
- var cdescriptorType_allocs *cgoAllocMap
- ref3cec3f3f.descriptorType, cdescriptorType_allocs = (C.VkDescriptorType)(x.DescriptorType), cgoAllocsUnknown
- allocs3cec3f3f.Borrow(cdescriptorType_allocs)
-
- var cpImageInfo_allocs *cgoAllocMap
- ref3cec3f3f.pImageInfo, cpImageInfo_allocs = unpackSDescriptorImageInfo(x.PImageInfo)
- allocs3cec3f3f.Borrow(cpImageInfo_allocs)
+ ref5a007d48.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs5a007d48.Borrow(cpNext_allocs)
- var cpBufferInfo_allocs *cgoAllocMap
- ref3cec3f3f.pBufferInfo, cpBufferInfo_allocs = unpackSDescriptorBufferInfo(x.PBufferInfo)
- allocs3cec3f3f.Borrow(cpBufferInfo_allocs)
+ var cimageView_allocs *cgoAllocMap
+ ref5a007d48.imageView, cimageView_allocs = *(*C.VkImageView)(unsafe.Pointer(&x.ImageView)), cgoAllocsUnknown
+ allocs5a007d48.Borrow(cimageView_allocs)
- var cpTexelBufferView_allocs *cgoAllocMap
- ref3cec3f3f.pTexelBufferView, cpTexelBufferView_allocs = (*C.VkBufferView)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PTexelBufferView)).Data)), cgoAllocsUnknown
- allocs3cec3f3f.Borrow(cpTexelBufferView_allocs)
+ var cimageLayout_allocs *cgoAllocMap
+ ref5a007d48.imageLayout, cimageLayout_allocs = (C.VkImageLayout)(x.ImageLayout), cgoAllocsUnknown
+ allocs5a007d48.Borrow(cimageLayout_allocs)
- x.ref3cec3f3f = ref3cec3f3f
- x.allocs3cec3f3f = allocs3cec3f3f
- return ref3cec3f3f, allocs3cec3f3f
+ x.ref5a007d48 = ref5a007d48
+ x.allocs5a007d48 = allocs5a007d48
+ return ref5a007d48, allocs5a007d48
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x WriteDescriptorSet) PassValue() (C.VkWriteDescriptorSet, *cgoAllocMap) {
- if x.ref3cec3f3f != nil {
- return *x.ref3cec3f3f, nil
+func (x RenderingFragmentDensityMapAttachmentInfo) PassValue() (C.VkRenderingFragmentDensityMapAttachmentInfoEXT, *cgoAllocMap) {
+ if x.ref5a007d48 != nil {
+ return *x.ref5a007d48, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -9892,125 +37051,99 @@ func (x WriteDescriptorSet) PassValue() (C.VkWriteDescriptorSet, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *WriteDescriptorSet) Deref() {
- if x.ref3cec3f3f == nil {
+func (x *RenderingFragmentDensityMapAttachmentInfo) Deref() {
+ if x.ref5a007d48 == nil {
return
}
- x.SType = (StructureType)(x.ref3cec3f3f.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref3cec3f3f.pNext))
- x.DstSet = *(*DescriptorSet)(unsafe.Pointer(&x.ref3cec3f3f.dstSet))
- x.DstBinding = (uint32)(x.ref3cec3f3f.dstBinding)
- x.DstArrayElement = (uint32)(x.ref3cec3f3f.dstArrayElement)
- x.DescriptorCount = (uint32)(x.ref3cec3f3f.descriptorCount)
- x.DescriptorType = (DescriptorType)(x.ref3cec3f3f.descriptorType)
- packSDescriptorImageInfo(x.PImageInfo, x.ref3cec3f3f.pImageInfo)
- packSDescriptorBufferInfo(x.PBufferInfo, x.ref3cec3f3f.pBufferInfo)
- hxff6bc57 := (*sliceHeader)(unsafe.Pointer(&x.PTexelBufferView))
- hxff6bc57.Data = unsafe.Pointer(x.ref3cec3f3f.pTexelBufferView)
- hxff6bc57.Cap = 0x7fffffff
- // hxff6bc57.Len = ?
-
+ x.SType = (StructureType)(x.ref5a007d48.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5a007d48.pNext))
+ x.ImageView = *(*ImageView)(unsafe.Pointer(&x.ref5a007d48.imageView))
+ x.ImageLayout = (ImageLayout)(x.ref5a007d48.imageLayout)
}
-// allocCopyDescriptorSetMemory allocates memory for type C.VkCopyDescriptorSet in C.
+// allocAttachmentSampleCountInfoAMDMemory allocates memory for type C.VkAttachmentSampleCountInfoAMD in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocCopyDescriptorSetMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCopyDescriptorSetValue))
+func allocAttachmentSampleCountInfoAMDMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfAttachmentSampleCountInfoAMDValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfCopyDescriptorSetValue = unsafe.Sizeof([1]C.VkCopyDescriptorSet{})
+const sizeOfAttachmentSampleCountInfoAMDValue = unsafe.Sizeof([1]C.VkAttachmentSampleCountInfoAMD{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *CopyDescriptorSet) Ref() *C.VkCopyDescriptorSet {
+func (x *AttachmentSampleCountInfoAMD) Ref() *C.VkAttachmentSampleCountInfoAMD {
if x == nil {
return nil
}
- return x.reffe237a3a
+ return x.refeef56262
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *CopyDescriptorSet) Free() {
- if x != nil && x.allocsfe237a3a != nil {
- x.allocsfe237a3a.(*cgoAllocMap).Free()
- x.reffe237a3a = nil
+func (x *AttachmentSampleCountInfoAMD) Free() {
+ if x != nil && x.allocseef56262 != nil {
+ x.allocseef56262.(*cgoAllocMap).Free()
+ x.refeef56262 = nil
}
}
-// NewCopyDescriptorSetRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewAttachmentSampleCountInfoAMDRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewCopyDescriptorSetRef(ref unsafe.Pointer) *CopyDescriptorSet {
+func NewAttachmentSampleCountInfoAMDRef(ref unsafe.Pointer) *AttachmentSampleCountInfoAMD {
if ref == nil {
return nil
}
- obj := new(CopyDescriptorSet)
- obj.reffe237a3a = (*C.VkCopyDescriptorSet)(unsafe.Pointer(ref))
+ obj := new(AttachmentSampleCountInfoAMD)
+ obj.refeef56262 = (*C.VkAttachmentSampleCountInfoAMD)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
-// from this wrapping struct, counting allocations into an allocation map.
-func (x *CopyDescriptorSet) PassRef() (*C.VkCopyDescriptorSet, *cgoAllocMap) {
- if x == nil {
- return nil, nil
- } else if x.reffe237a3a != nil {
- return x.reffe237a3a, nil
- }
- memfe237a3a := allocCopyDescriptorSetMemory(1)
- reffe237a3a := (*C.VkCopyDescriptorSet)(memfe237a3a)
- allocsfe237a3a := new(cgoAllocMap)
- allocsfe237a3a.Add(memfe237a3a)
-
- var csType_allocs *cgoAllocMap
- reffe237a3a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsfe237a3a.Borrow(csType_allocs)
-
- var cpNext_allocs *cgoAllocMap
- reffe237a3a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsfe237a3a.Borrow(cpNext_allocs)
-
- var csrcSet_allocs *cgoAllocMap
- reffe237a3a.srcSet, csrcSet_allocs = *(*C.VkDescriptorSet)(unsafe.Pointer(&x.SrcSet)), cgoAllocsUnknown
- allocsfe237a3a.Borrow(csrcSet_allocs)
-
- var csrcBinding_allocs *cgoAllocMap
- reffe237a3a.srcBinding, csrcBinding_allocs = (C.uint32_t)(x.SrcBinding), cgoAllocsUnknown
- allocsfe237a3a.Borrow(csrcBinding_allocs)
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *AttachmentSampleCountInfoAMD) PassRef() (*C.VkAttachmentSampleCountInfoAMD, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refeef56262 != nil {
+ return x.refeef56262, nil
+ }
+ memeef56262 := allocAttachmentSampleCountInfoAMDMemory(1)
+ refeef56262 := (*C.VkAttachmentSampleCountInfoAMD)(memeef56262)
+ allocseef56262 := new(cgoAllocMap)
+ allocseef56262.Add(memeef56262)
- var csrcArrayElement_allocs *cgoAllocMap
- reffe237a3a.srcArrayElement, csrcArrayElement_allocs = (C.uint32_t)(x.SrcArrayElement), cgoAllocsUnknown
- allocsfe237a3a.Borrow(csrcArrayElement_allocs)
+ var csType_allocs *cgoAllocMap
+ refeef56262.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocseef56262.Borrow(csType_allocs)
- var cdstSet_allocs *cgoAllocMap
- reffe237a3a.dstSet, cdstSet_allocs = *(*C.VkDescriptorSet)(unsafe.Pointer(&x.DstSet)), cgoAllocsUnknown
- allocsfe237a3a.Borrow(cdstSet_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refeef56262.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocseef56262.Borrow(cpNext_allocs)
- var cdstBinding_allocs *cgoAllocMap
- reffe237a3a.dstBinding, cdstBinding_allocs = (C.uint32_t)(x.DstBinding), cgoAllocsUnknown
- allocsfe237a3a.Borrow(cdstBinding_allocs)
+ var ccolorAttachmentCount_allocs *cgoAllocMap
+ refeef56262.colorAttachmentCount, ccolorAttachmentCount_allocs = (C.uint32_t)(x.ColorAttachmentCount), cgoAllocsUnknown
+ allocseef56262.Borrow(ccolorAttachmentCount_allocs)
- var cdstArrayElement_allocs *cgoAllocMap
- reffe237a3a.dstArrayElement, cdstArrayElement_allocs = (C.uint32_t)(x.DstArrayElement), cgoAllocsUnknown
- allocsfe237a3a.Borrow(cdstArrayElement_allocs)
+ var cpColorAttachmentSamples_allocs *cgoAllocMap
+ refeef56262.pColorAttachmentSamples, cpColorAttachmentSamples_allocs = (*C.VkSampleCountFlagBits)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PColorAttachmentSamples)).Data)), cgoAllocsUnknown
+ allocseef56262.Borrow(cpColorAttachmentSamples_allocs)
- var cdescriptorCount_allocs *cgoAllocMap
- reffe237a3a.descriptorCount, cdescriptorCount_allocs = (C.uint32_t)(x.DescriptorCount), cgoAllocsUnknown
- allocsfe237a3a.Borrow(cdescriptorCount_allocs)
+ var cdepthStencilAttachmentSamples_allocs *cgoAllocMap
+ refeef56262.depthStencilAttachmentSamples, cdepthStencilAttachmentSamples_allocs = (C.VkSampleCountFlagBits)(x.DepthStencilAttachmentSamples), cgoAllocsUnknown
+ allocseef56262.Borrow(cdepthStencilAttachmentSamples_allocs)
- x.reffe237a3a = reffe237a3a
- x.allocsfe237a3a = allocsfe237a3a
- return reffe237a3a, allocsfe237a3a
+ x.refeef56262 = refeef56262
+ x.allocseef56262 = allocseef56262
+ return refeef56262, allocseef56262
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x CopyDescriptorSet) PassValue() (C.VkCopyDescriptorSet, *cgoAllocMap) {
- if x.reffe237a3a != nil {
- return *x.reffe237a3a, nil
+func (x AttachmentSampleCountInfoAMD) PassValue() (C.VkAttachmentSampleCountInfoAMD, *cgoAllocMap) {
+ if x.refeef56262 != nil {
+ return *x.refeef56262, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -10018,120 +37151,92 @@ func (x CopyDescriptorSet) PassValue() (C.VkCopyDescriptorSet, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *CopyDescriptorSet) Deref() {
- if x.reffe237a3a == nil {
+func (x *AttachmentSampleCountInfoAMD) Deref() {
+ if x.refeef56262 == nil {
return
}
- x.SType = (StructureType)(x.reffe237a3a.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reffe237a3a.pNext))
- x.SrcSet = *(*DescriptorSet)(unsafe.Pointer(&x.reffe237a3a.srcSet))
- x.SrcBinding = (uint32)(x.reffe237a3a.srcBinding)
- x.SrcArrayElement = (uint32)(x.reffe237a3a.srcArrayElement)
- x.DstSet = *(*DescriptorSet)(unsafe.Pointer(&x.reffe237a3a.dstSet))
- x.DstBinding = (uint32)(x.reffe237a3a.dstBinding)
- x.DstArrayElement = (uint32)(x.reffe237a3a.dstArrayElement)
- x.DescriptorCount = (uint32)(x.reffe237a3a.descriptorCount)
-}
+ x.SType = (StructureType)(x.refeef56262.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refeef56262.pNext))
+ x.ColorAttachmentCount = (uint32)(x.refeef56262.colorAttachmentCount)
+ hxf9aab83 := (*sliceHeader)(unsafe.Pointer(&x.PColorAttachmentSamples))
+ hxf9aab83.Data = unsafe.Pointer(x.refeef56262.pColorAttachmentSamples)
+ hxf9aab83.Cap = 0x7fffffff
+ // hxf9aab83.Len = ?
-// allocFramebufferCreateInfoMemory allocates memory for type C.VkFramebufferCreateInfo in C.
-// The caller is responsible for freeing the this memory via C.free.
-func allocFramebufferCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfFramebufferCreateInfoValue))
- if err != nil {
- panic("memory alloc error: " + err.Error())
- }
- return mem
+ x.DepthStencilAttachmentSamples = (SampleCountFlagBits)(x.refeef56262.depthStencilAttachmentSamples)
}
-const sizeOfFramebufferCreateInfoValue = unsafe.Sizeof([1]C.VkFramebufferCreateInfo{})
-
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *FramebufferCreateInfo) Ref() *C.VkFramebufferCreateInfo {
+func (x *AttachmentSampleCountInfoNV) Ref() *C.VkAttachmentSampleCountInfoAMD {
if x == nil {
return nil
}
- return x.refa3ad85cc
+ return x.refeef56262
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *FramebufferCreateInfo) Free() {
- if x != nil && x.allocsa3ad85cc != nil {
- x.allocsa3ad85cc.(*cgoAllocMap).Free()
- x.refa3ad85cc = nil
+func (x *AttachmentSampleCountInfoNV) Free() {
+ if x != nil && x.allocseef56262 != nil {
+ x.allocseef56262.(*cgoAllocMap).Free()
+ x.refeef56262 = nil
}
}
-// NewFramebufferCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewAttachmentSampleCountInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewFramebufferCreateInfoRef(ref unsafe.Pointer) *FramebufferCreateInfo {
+func NewAttachmentSampleCountInfoNVRef(ref unsafe.Pointer) *AttachmentSampleCountInfoNV {
if ref == nil {
return nil
}
- obj := new(FramebufferCreateInfo)
- obj.refa3ad85cc = (*C.VkFramebufferCreateInfo)(unsafe.Pointer(ref))
+ obj := new(AttachmentSampleCountInfoNV)
+ obj.refeef56262 = (*C.VkAttachmentSampleCountInfoAMD)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *FramebufferCreateInfo) PassRef() (*C.VkFramebufferCreateInfo, *cgoAllocMap) {
+func (x *AttachmentSampleCountInfoNV) PassRef() (*C.VkAttachmentSampleCountInfoAMD, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refa3ad85cc != nil {
- return x.refa3ad85cc, nil
+ } else if x.refeef56262 != nil {
+ return x.refeef56262, nil
}
- mema3ad85cc := allocFramebufferCreateInfoMemory(1)
- refa3ad85cc := (*C.VkFramebufferCreateInfo)(mema3ad85cc)
- allocsa3ad85cc := new(cgoAllocMap)
- allocsa3ad85cc.Add(mema3ad85cc)
+ memeef56262 := allocAttachmentSampleCountInfoAMDMemory(1)
+ refeef56262 := (*C.VkAttachmentSampleCountInfoAMD)(memeef56262)
+ allocseef56262 := new(cgoAllocMap)
+ allocseef56262.Add(memeef56262)
var csType_allocs *cgoAllocMap
- refa3ad85cc.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsa3ad85cc.Borrow(csType_allocs)
+ refeef56262.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocseef56262.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refa3ad85cc.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsa3ad85cc.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- refa3ad85cc.flags, cflags_allocs = (C.VkFramebufferCreateFlags)(x.Flags), cgoAllocsUnknown
- allocsa3ad85cc.Borrow(cflags_allocs)
-
- var crenderPass_allocs *cgoAllocMap
- refa3ad85cc.renderPass, crenderPass_allocs = *(*C.VkRenderPass)(unsafe.Pointer(&x.RenderPass)), cgoAllocsUnknown
- allocsa3ad85cc.Borrow(crenderPass_allocs)
-
- var cattachmentCount_allocs *cgoAllocMap
- refa3ad85cc.attachmentCount, cattachmentCount_allocs = (C.uint32_t)(x.AttachmentCount), cgoAllocsUnknown
- allocsa3ad85cc.Borrow(cattachmentCount_allocs)
-
- var cpAttachments_allocs *cgoAllocMap
- refa3ad85cc.pAttachments, cpAttachments_allocs = (*C.VkImageView)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PAttachments)).Data)), cgoAllocsUnknown
- allocsa3ad85cc.Borrow(cpAttachments_allocs)
+ refeef56262.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocseef56262.Borrow(cpNext_allocs)
- var cwidth_allocs *cgoAllocMap
- refa3ad85cc.width, cwidth_allocs = (C.uint32_t)(x.Width), cgoAllocsUnknown
- allocsa3ad85cc.Borrow(cwidth_allocs)
+ var ccolorAttachmentCount_allocs *cgoAllocMap
+ refeef56262.colorAttachmentCount, ccolorAttachmentCount_allocs = (C.uint32_t)(x.ColorAttachmentCount), cgoAllocsUnknown
+ allocseef56262.Borrow(ccolorAttachmentCount_allocs)
- var cheight_allocs *cgoAllocMap
- refa3ad85cc.height, cheight_allocs = (C.uint32_t)(x.Height), cgoAllocsUnknown
- allocsa3ad85cc.Borrow(cheight_allocs)
+ var cpColorAttachmentSamples_allocs *cgoAllocMap
+ refeef56262.pColorAttachmentSamples, cpColorAttachmentSamples_allocs = (*C.VkSampleCountFlagBits)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PColorAttachmentSamples)).Data)), cgoAllocsUnknown
+ allocseef56262.Borrow(cpColorAttachmentSamples_allocs)
- var clayers_allocs *cgoAllocMap
- refa3ad85cc.layers, clayers_allocs = (C.uint32_t)(x.Layers), cgoAllocsUnknown
- allocsa3ad85cc.Borrow(clayers_allocs)
+ var cdepthStencilAttachmentSamples_allocs *cgoAllocMap
+ refeef56262.depthStencilAttachmentSamples, cdepthStencilAttachmentSamples_allocs = (C.VkSampleCountFlagBits)(x.DepthStencilAttachmentSamples), cgoAllocsUnknown
+ allocseef56262.Borrow(cdepthStencilAttachmentSamples_allocs)
- x.refa3ad85cc = refa3ad85cc
- x.allocsa3ad85cc = allocsa3ad85cc
- return refa3ad85cc, allocsa3ad85cc
+ x.refeef56262 = refeef56262
+ x.allocseef56262 = allocseef56262
+ return refeef56262, allocseef56262
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x FramebufferCreateInfo) PassValue() (C.VkFramebufferCreateInfo, *cgoAllocMap) {
- if x.refa3ad85cc != nil {
- return *x.refa3ad85cc, nil
+func (x AttachmentSampleCountInfoNV) PassValue() (C.VkAttachmentSampleCountInfoAMD, *cgoAllocMap) {
+ if x.refeef56262 != nil {
+ return *x.refeef56262, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -10139,124 +37244,100 @@ func (x FramebufferCreateInfo) PassValue() (C.VkFramebufferCreateInfo, *cgoAlloc
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *FramebufferCreateInfo) Deref() {
- if x.refa3ad85cc == nil {
+func (x *AttachmentSampleCountInfoNV) Deref() {
+ if x.refeef56262 == nil {
return
}
- x.SType = (StructureType)(x.refa3ad85cc.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa3ad85cc.pNext))
- x.Flags = (FramebufferCreateFlags)(x.refa3ad85cc.flags)
- x.RenderPass = *(*RenderPass)(unsafe.Pointer(&x.refa3ad85cc.renderPass))
- x.AttachmentCount = (uint32)(x.refa3ad85cc.attachmentCount)
- hxf5fa529 := (*sliceHeader)(unsafe.Pointer(&x.PAttachments))
- hxf5fa529.Data = unsafe.Pointer(x.refa3ad85cc.pAttachments)
- hxf5fa529.Cap = 0x7fffffff
- // hxf5fa529.Len = ?
+ x.SType = (StructureType)(x.refeef56262.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refeef56262.pNext))
+ x.ColorAttachmentCount = (uint32)(x.refeef56262.colorAttachmentCount)
+ hxf8b35a8 := (*sliceHeader)(unsafe.Pointer(&x.PColorAttachmentSamples))
+ hxf8b35a8.Data = unsafe.Pointer(x.refeef56262.pColorAttachmentSamples)
+ hxf8b35a8.Cap = 0x7fffffff
+ // hxf8b35a8.Len = ?
- x.Width = (uint32)(x.refa3ad85cc.width)
- x.Height = (uint32)(x.refa3ad85cc.height)
- x.Layers = (uint32)(x.refa3ad85cc.layers)
+ x.DepthStencilAttachmentSamples = (SampleCountFlagBits)(x.refeef56262.depthStencilAttachmentSamples)
}
-// allocAttachmentDescriptionMemory allocates memory for type C.VkAttachmentDescription in C.
+// allocMultiviewPerViewAttributesInfoNVXMemory allocates memory for type C.VkMultiviewPerViewAttributesInfoNVX in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocAttachmentDescriptionMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfAttachmentDescriptionValue))
+func allocMultiviewPerViewAttributesInfoNVXMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMultiviewPerViewAttributesInfoNVXValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfAttachmentDescriptionValue = unsafe.Sizeof([1]C.VkAttachmentDescription{})
+const sizeOfMultiviewPerViewAttributesInfoNVXValue = unsafe.Sizeof([1]C.VkMultiviewPerViewAttributesInfoNVX{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *AttachmentDescription) Ref() *C.VkAttachmentDescription {
+func (x *MultiviewPerViewAttributesInfoNVX) Ref() *C.VkMultiviewPerViewAttributesInfoNVX {
if x == nil {
return nil
}
- return x.refa5d685fc
+ return x.refc7d79ea0
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *AttachmentDescription) Free() {
- if x != nil && x.allocsa5d685fc != nil {
- x.allocsa5d685fc.(*cgoAllocMap).Free()
- x.refa5d685fc = nil
+func (x *MultiviewPerViewAttributesInfoNVX) Free() {
+ if x != nil && x.allocsc7d79ea0 != nil {
+ x.allocsc7d79ea0.(*cgoAllocMap).Free()
+ x.refc7d79ea0 = nil
}
}
-// NewAttachmentDescriptionRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewMultiviewPerViewAttributesInfoNVXRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewAttachmentDescriptionRef(ref unsafe.Pointer) *AttachmentDescription {
+func NewMultiviewPerViewAttributesInfoNVXRef(ref unsafe.Pointer) *MultiviewPerViewAttributesInfoNVX {
if ref == nil {
return nil
}
- obj := new(AttachmentDescription)
- obj.refa5d685fc = (*C.VkAttachmentDescription)(unsafe.Pointer(ref))
+ obj := new(MultiviewPerViewAttributesInfoNVX)
+ obj.refc7d79ea0 = (*C.VkMultiviewPerViewAttributesInfoNVX)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *AttachmentDescription) PassRef() (*C.VkAttachmentDescription, *cgoAllocMap) {
+func (x *MultiviewPerViewAttributesInfoNVX) PassRef() (*C.VkMultiviewPerViewAttributesInfoNVX, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refa5d685fc != nil {
- return x.refa5d685fc, nil
+ } else if x.refc7d79ea0 != nil {
+ return x.refc7d79ea0, nil
}
- mema5d685fc := allocAttachmentDescriptionMemory(1)
- refa5d685fc := (*C.VkAttachmentDescription)(mema5d685fc)
- allocsa5d685fc := new(cgoAllocMap)
- allocsa5d685fc.Add(mema5d685fc)
-
- var cflags_allocs *cgoAllocMap
- refa5d685fc.flags, cflags_allocs = (C.VkAttachmentDescriptionFlags)(x.Flags), cgoAllocsUnknown
- allocsa5d685fc.Borrow(cflags_allocs)
-
- var cformat_allocs *cgoAllocMap
- refa5d685fc.format, cformat_allocs = (C.VkFormat)(x.Format), cgoAllocsUnknown
- allocsa5d685fc.Borrow(cformat_allocs)
-
- var csamples_allocs *cgoAllocMap
- refa5d685fc.samples, csamples_allocs = (C.VkSampleCountFlagBits)(x.Samples), cgoAllocsUnknown
- allocsa5d685fc.Borrow(csamples_allocs)
-
- var cloadOp_allocs *cgoAllocMap
- refa5d685fc.loadOp, cloadOp_allocs = (C.VkAttachmentLoadOp)(x.LoadOp), cgoAllocsUnknown
- allocsa5d685fc.Borrow(cloadOp_allocs)
-
- var cstoreOp_allocs *cgoAllocMap
- refa5d685fc.storeOp, cstoreOp_allocs = (C.VkAttachmentStoreOp)(x.StoreOp), cgoAllocsUnknown
- allocsa5d685fc.Borrow(cstoreOp_allocs)
+ memc7d79ea0 := allocMultiviewPerViewAttributesInfoNVXMemory(1)
+ refc7d79ea0 := (*C.VkMultiviewPerViewAttributesInfoNVX)(memc7d79ea0)
+ allocsc7d79ea0 := new(cgoAllocMap)
+ allocsc7d79ea0.Add(memc7d79ea0)
- var cstencilLoadOp_allocs *cgoAllocMap
- refa5d685fc.stencilLoadOp, cstencilLoadOp_allocs = (C.VkAttachmentLoadOp)(x.StencilLoadOp), cgoAllocsUnknown
- allocsa5d685fc.Borrow(cstencilLoadOp_allocs)
+ var csType_allocs *cgoAllocMap
+ refc7d79ea0.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsc7d79ea0.Borrow(csType_allocs)
- var cstencilStoreOp_allocs *cgoAllocMap
- refa5d685fc.stencilStoreOp, cstencilStoreOp_allocs = (C.VkAttachmentStoreOp)(x.StencilStoreOp), cgoAllocsUnknown
- allocsa5d685fc.Borrow(cstencilStoreOp_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refc7d79ea0.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsc7d79ea0.Borrow(cpNext_allocs)
- var cinitialLayout_allocs *cgoAllocMap
- refa5d685fc.initialLayout, cinitialLayout_allocs = (C.VkImageLayout)(x.InitialLayout), cgoAllocsUnknown
- allocsa5d685fc.Borrow(cinitialLayout_allocs)
+ var cperViewAttributes_allocs *cgoAllocMap
+ refc7d79ea0.perViewAttributes, cperViewAttributes_allocs = (C.VkBool32)(x.PerViewAttributes), cgoAllocsUnknown
+ allocsc7d79ea0.Borrow(cperViewAttributes_allocs)
- var cfinalLayout_allocs *cgoAllocMap
- refa5d685fc.finalLayout, cfinalLayout_allocs = (C.VkImageLayout)(x.FinalLayout), cgoAllocsUnknown
- allocsa5d685fc.Borrow(cfinalLayout_allocs)
+ var cperViewAttributesPositionXOnly_allocs *cgoAllocMap
+ refc7d79ea0.perViewAttributesPositionXOnly, cperViewAttributesPositionXOnly_allocs = (C.VkBool32)(x.PerViewAttributesPositionXOnly), cgoAllocsUnknown
+ allocsc7d79ea0.Borrow(cperViewAttributesPositionXOnly_allocs)
- x.refa5d685fc = refa5d685fc
- x.allocsa5d685fc = allocsa5d685fc
- return refa5d685fc, allocsa5d685fc
+ x.refc7d79ea0 = refc7d79ea0
+ x.allocsc7d79ea0 = allocsc7d79ea0
+ return refc7d79ea0, allocsc7d79ea0
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x AttachmentDescription) PassValue() (C.VkAttachmentDescription, *cgoAllocMap) {
- if x.refa5d685fc != nil {
- return *x.refa5d685fc, nil
+func (x MultiviewPerViewAttributesInfoNVX) PassValue() (C.VkMultiviewPerViewAttributesInfoNVX, *cgoAllocMap) {
+ if x.refc7d79ea0 != nil {
+ return *x.refc7d79ea0, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -10264,92 +37345,95 @@ func (x AttachmentDescription) PassValue() (C.VkAttachmentDescription, *cgoAlloc
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *AttachmentDescription) Deref() {
- if x.refa5d685fc == nil {
+func (x *MultiviewPerViewAttributesInfoNVX) Deref() {
+ if x.refc7d79ea0 == nil {
return
}
- x.Flags = (AttachmentDescriptionFlags)(x.refa5d685fc.flags)
- x.Format = (Format)(x.refa5d685fc.format)
- x.Samples = (SampleCountFlagBits)(x.refa5d685fc.samples)
- x.LoadOp = (AttachmentLoadOp)(x.refa5d685fc.loadOp)
- x.StoreOp = (AttachmentStoreOp)(x.refa5d685fc.storeOp)
- x.StencilLoadOp = (AttachmentLoadOp)(x.refa5d685fc.stencilLoadOp)
- x.StencilStoreOp = (AttachmentStoreOp)(x.refa5d685fc.stencilStoreOp)
- x.InitialLayout = (ImageLayout)(x.refa5d685fc.initialLayout)
- x.FinalLayout = (ImageLayout)(x.refa5d685fc.finalLayout)
+ x.SType = (StructureType)(x.refc7d79ea0.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc7d79ea0.pNext))
+ x.PerViewAttributes = (Bool32)(x.refc7d79ea0.perViewAttributes)
+ x.PerViewAttributesPositionXOnly = (Bool32)(x.refc7d79ea0.perViewAttributesPositionXOnly)
}
-// allocAttachmentReferenceMemory allocates memory for type C.VkAttachmentReference in C.
+// allocImportMemoryFdInfoMemory allocates memory for type C.VkImportMemoryFdInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocAttachmentReferenceMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfAttachmentReferenceValue))
+func allocImportMemoryFdInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImportMemoryFdInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfAttachmentReferenceValue = unsafe.Sizeof([1]C.VkAttachmentReference{})
+const sizeOfImportMemoryFdInfoValue = unsafe.Sizeof([1]C.VkImportMemoryFdInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *AttachmentReference) Ref() *C.VkAttachmentReference {
+func (x *ImportMemoryFdInfo) Ref() *C.VkImportMemoryFdInfoKHR {
if x == nil {
return nil
}
- return x.refef4776de
+ return x.ref73f83287
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *AttachmentReference) Free() {
- if x != nil && x.allocsef4776de != nil {
- x.allocsef4776de.(*cgoAllocMap).Free()
- x.refef4776de = nil
+func (x *ImportMemoryFdInfo) Free() {
+ if x != nil && x.allocs73f83287 != nil {
+ x.allocs73f83287.(*cgoAllocMap).Free()
+ x.ref73f83287 = nil
}
}
-// NewAttachmentReferenceRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewImportMemoryFdInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewAttachmentReferenceRef(ref unsafe.Pointer) *AttachmentReference {
+func NewImportMemoryFdInfoRef(ref unsafe.Pointer) *ImportMemoryFdInfo {
if ref == nil {
return nil
}
- obj := new(AttachmentReference)
- obj.refef4776de = (*C.VkAttachmentReference)(unsafe.Pointer(ref))
+ obj := new(ImportMemoryFdInfo)
+ obj.ref73f83287 = (*C.VkImportMemoryFdInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *AttachmentReference) PassRef() (*C.VkAttachmentReference, *cgoAllocMap) {
+func (x *ImportMemoryFdInfo) PassRef() (*C.VkImportMemoryFdInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refef4776de != nil {
- return x.refef4776de, nil
+ } else if x.ref73f83287 != nil {
+ return x.ref73f83287, nil
}
- memef4776de := allocAttachmentReferenceMemory(1)
- refef4776de := (*C.VkAttachmentReference)(memef4776de)
- allocsef4776de := new(cgoAllocMap)
- allocsef4776de.Add(memef4776de)
+ mem73f83287 := allocImportMemoryFdInfoMemory(1)
+ ref73f83287 := (*C.VkImportMemoryFdInfoKHR)(mem73f83287)
+ allocs73f83287 := new(cgoAllocMap)
+ allocs73f83287.Add(mem73f83287)
- var cattachment_allocs *cgoAllocMap
- refef4776de.attachment, cattachment_allocs = (C.uint32_t)(x.Attachment), cgoAllocsUnknown
- allocsef4776de.Borrow(cattachment_allocs)
+ var csType_allocs *cgoAllocMap
+ ref73f83287.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs73f83287.Borrow(csType_allocs)
- var clayout_allocs *cgoAllocMap
- refef4776de.layout, clayout_allocs = (C.VkImageLayout)(x.Layout), cgoAllocsUnknown
- allocsef4776de.Borrow(clayout_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref73f83287.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs73f83287.Borrow(cpNext_allocs)
- x.refef4776de = refef4776de
- x.allocsef4776de = allocsef4776de
- return refef4776de, allocsef4776de
+ var chandleType_allocs *cgoAllocMap
+ ref73f83287.handleType, chandleType_allocs = (C.VkExternalMemoryHandleTypeFlagBits)(x.HandleType), cgoAllocsUnknown
+ allocs73f83287.Borrow(chandleType_allocs)
+
+ var cfd_allocs *cgoAllocMap
+ ref73f83287.fd, cfd_allocs = (C.int)(x.Fd), cgoAllocsUnknown
+ allocs73f83287.Borrow(cfd_allocs)
+
+ x.ref73f83287 = ref73f83287
+ x.allocs73f83287 = allocs73f83287
+ return ref73f83287, allocs73f83287
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x AttachmentReference) PassValue() (C.VkAttachmentReference, *cgoAllocMap) {
- if x.refef4776de != nil {
- return *x.refef4776de, nil
+func (x ImportMemoryFdInfo) PassValue() (C.VkImportMemoryFdInfoKHR, *cgoAllocMap) {
+ if x.ref73f83287 != nil {
+ return *x.ref73f83287, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -10357,155 +37441,91 @@ func (x AttachmentReference) PassValue() (C.VkAttachmentReference, *cgoAllocMap)
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *AttachmentReference) Deref() {
- if x.refef4776de == nil {
+func (x *ImportMemoryFdInfo) Deref() {
+ if x.ref73f83287 == nil {
return
}
- x.Attachment = (uint32)(x.refef4776de.attachment)
- x.Layout = (ImageLayout)(x.refef4776de.layout)
+ x.SType = (StructureType)(x.ref73f83287.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref73f83287.pNext))
+ x.HandleType = (ExternalMemoryHandleTypeFlagBits)(x.ref73f83287.handleType)
+ x.Fd = (int32)(x.ref73f83287.fd)
}
-// allocSubpassDescriptionMemory allocates memory for type C.VkSubpassDescription in C.
+// allocMemoryFdPropertiesMemory allocates memory for type C.VkMemoryFdPropertiesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSubpassDescriptionMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSubpassDescriptionValue))
+func allocMemoryFdPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMemoryFdPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSubpassDescriptionValue = unsafe.Sizeof([1]C.VkSubpassDescription{})
-
-// unpackSAttachmentReference transforms a sliced Go data structure into plain C format.
-func unpackSAttachmentReference(x []AttachmentReference) (unpacked *C.VkAttachmentReference, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkAttachmentReference) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocAttachmentReferenceMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkAttachmentReference)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkAttachmentReference)(h.Data)
- return
-}
-
-// packSAttachmentReference reads sliced Go data structure out from plain C format.
-func packSAttachmentReference(v []AttachmentReference, ptr0 *C.VkAttachmentReference) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfAttachmentReferenceValue]C.VkAttachmentReference)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewAttachmentReferenceRef(unsafe.Pointer(&ptr1))
- }
-}
+const sizeOfMemoryFdPropertiesValue = unsafe.Sizeof([1]C.VkMemoryFdPropertiesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SubpassDescription) Ref() *C.VkSubpassDescription {
+func (x *MemoryFdProperties) Ref() *C.VkMemoryFdPropertiesKHR {
if x == nil {
return nil
}
- return x.refc7bfeda
+ return x.ref51e16d38
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SubpassDescription) Free() {
- if x != nil && x.allocsc7bfeda != nil {
- x.allocsc7bfeda.(*cgoAllocMap).Free()
- x.refc7bfeda = nil
+func (x *MemoryFdProperties) Free() {
+ if x != nil && x.allocs51e16d38 != nil {
+ x.allocs51e16d38.(*cgoAllocMap).Free()
+ x.ref51e16d38 = nil
}
}
-// NewSubpassDescriptionRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewMemoryFdPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSubpassDescriptionRef(ref unsafe.Pointer) *SubpassDescription {
+func NewMemoryFdPropertiesRef(ref unsafe.Pointer) *MemoryFdProperties {
if ref == nil {
return nil
}
- obj := new(SubpassDescription)
- obj.refc7bfeda = (*C.VkSubpassDescription)(unsafe.Pointer(ref))
+ obj := new(MemoryFdProperties)
+ obj.ref51e16d38 = (*C.VkMemoryFdPropertiesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SubpassDescription) PassRef() (*C.VkSubpassDescription, *cgoAllocMap) {
+func (x *MemoryFdProperties) PassRef() (*C.VkMemoryFdPropertiesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refc7bfeda != nil {
- return x.refc7bfeda, nil
+ } else if x.ref51e16d38 != nil {
+ return x.ref51e16d38, nil
}
- memc7bfeda := allocSubpassDescriptionMemory(1)
- refc7bfeda := (*C.VkSubpassDescription)(memc7bfeda)
- allocsc7bfeda := new(cgoAllocMap)
- allocsc7bfeda.Add(memc7bfeda)
-
- var cflags_allocs *cgoAllocMap
- refc7bfeda.flags, cflags_allocs = (C.VkSubpassDescriptionFlags)(x.Flags), cgoAllocsUnknown
- allocsc7bfeda.Borrow(cflags_allocs)
-
- var cpipelineBindPoint_allocs *cgoAllocMap
- refc7bfeda.pipelineBindPoint, cpipelineBindPoint_allocs = (C.VkPipelineBindPoint)(x.PipelineBindPoint), cgoAllocsUnknown
- allocsc7bfeda.Borrow(cpipelineBindPoint_allocs)
-
- var cinputAttachmentCount_allocs *cgoAllocMap
- refc7bfeda.inputAttachmentCount, cinputAttachmentCount_allocs = (C.uint32_t)(x.InputAttachmentCount), cgoAllocsUnknown
- allocsc7bfeda.Borrow(cinputAttachmentCount_allocs)
-
- var cpInputAttachments_allocs *cgoAllocMap
- refc7bfeda.pInputAttachments, cpInputAttachments_allocs = unpackSAttachmentReference(x.PInputAttachments)
- allocsc7bfeda.Borrow(cpInputAttachments_allocs)
-
- var ccolorAttachmentCount_allocs *cgoAllocMap
- refc7bfeda.colorAttachmentCount, ccolorAttachmentCount_allocs = (C.uint32_t)(x.ColorAttachmentCount), cgoAllocsUnknown
- allocsc7bfeda.Borrow(ccolorAttachmentCount_allocs)
-
- var cpColorAttachments_allocs *cgoAllocMap
- refc7bfeda.pColorAttachments, cpColorAttachments_allocs = unpackSAttachmentReference(x.PColorAttachments)
- allocsc7bfeda.Borrow(cpColorAttachments_allocs)
-
- var cpResolveAttachments_allocs *cgoAllocMap
- refc7bfeda.pResolveAttachments, cpResolveAttachments_allocs = unpackSAttachmentReference(x.PResolveAttachments)
- allocsc7bfeda.Borrow(cpResolveAttachments_allocs)
+ mem51e16d38 := allocMemoryFdPropertiesMemory(1)
+ ref51e16d38 := (*C.VkMemoryFdPropertiesKHR)(mem51e16d38)
+ allocs51e16d38 := new(cgoAllocMap)
+ allocs51e16d38.Add(mem51e16d38)
- var cpDepthStencilAttachment_allocs *cgoAllocMap
- refc7bfeda.pDepthStencilAttachment, cpDepthStencilAttachment_allocs = x.PDepthStencilAttachment.PassRef()
- allocsc7bfeda.Borrow(cpDepthStencilAttachment_allocs)
+ var csType_allocs *cgoAllocMap
+ ref51e16d38.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs51e16d38.Borrow(csType_allocs)
- var cpreserveAttachmentCount_allocs *cgoAllocMap
- refc7bfeda.preserveAttachmentCount, cpreserveAttachmentCount_allocs = (C.uint32_t)(x.PreserveAttachmentCount), cgoAllocsUnknown
- allocsc7bfeda.Borrow(cpreserveAttachmentCount_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref51e16d38.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs51e16d38.Borrow(cpNext_allocs)
- var cpPreserveAttachments_allocs *cgoAllocMap
- refc7bfeda.pPreserveAttachments, cpPreserveAttachments_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PPreserveAttachments)).Data)), cgoAllocsUnknown
- allocsc7bfeda.Borrow(cpPreserveAttachments_allocs)
+ var cmemoryTypeBits_allocs *cgoAllocMap
+ ref51e16d38.memoryTypeBits, cmemoryTypeBits_allocs = (C.uint32_t)(x.MemoryTypeBits), cgoAllocsUnknown
+ allocs51e16d38.Borrow(cmemoryTypeBits_allocs)
- x.refc7bfeda = refc7bfeda
- x.allocsc7bfeda = allocsc7bfeda
- return refc7bfeda, allocsc7bfeda
+ x.ref51e16d38 = ref51e16d38
+ x.allocs51e16d38 = allocs51e16d38
+ return ref51e16d38, allocs51e16d38
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SubpassDescription) PassValue() (C.VkSubpassDescription, *cgoAllocMap) {
- if x.refc7bfeda != nil {
- return *x.refc7bfeda, nil
+func (x MemoryFdProperties) PassValue() (C.VkMemoryFdPropertiesKHR, *cgoAllocMap) {
+ if x.ref51e16d38 != nil {
+ return *x.ref51e16d38, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -10513,117 +37533,94 @@ func (x SubpassDescription) PassValue() (C.VkSubpassDescription, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SubpassDescription) Deref() {
- if x.refc7bfeda == nil {
+func (x *MemoryFdProperties) Deref() {
+ if x.ref51e16d38 == nil {
return
}
- x.Flags = (SubpassDescriptionFlags)(x.refc7bfeda.flags)
- x.PipelineBindPoint = (PipelineBindPoint)(x.refc7bfeda.pipelineBindPoint)
- x.InputAttachmentCount = (uint32)(x.refc7bfeda.inputAttachmentCount)
- packSAttachmentReference(x.PInputAttachments, x.refc7bfeda.pInputAttachments)
- x.ColorAttachmentCount = (uint32)(x.refc7bfeda.colorAttachmentCount)
- packSAttachmentReference(x.PColorAttachments, x.refc7bfeda.pColorAttachments)
- packSAttachmentReference(x.PResolveAttachments, x.refc7bfeda.pResolveAttachments)
- x.PDepthStencilAttachment = NewAttachmentReferenceRef(unsafe.Pointer(x.refc7bfeda.pDepthStencilAttachment))
- x.PreserveAttachmentCount = (uint32)(x.refc7bfeda.preserveAttachmentCount)
- hxf21690b := (*sliceHeader)(unsafe.Pointer(&x.PPreserveAttachments))
- hxf21690b.Data = unsafe.Pointer(x.refc7bfeda.pPreserveAttachments)
- hxf21690b.Cap = 0x7fffffff
- // hxf21690b.Len = ?
-
+ x.SType = (StructureType)(x.ref51e16d38.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref51e16d38.pNext))
+ x.MemoryTypeBits = (uint32)(x.ref51e16d38.memoryTypeBits)
}
-// allocSubpassDependencyMemory allocates memory for type C.VkSubpassDependency in C.
+// allocMemoryGetFdInfoMemory allocates memory for type C.VkMemoryGetFdInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSubpassDependencyMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSubpassDependencyValue))
+func allocMemoryGetFdInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMemoryGetFdInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSubpassDependencyValue = unsafe.Sizeof([1]C.VkSubpassDependency{})
+const sizeOfMemoryGetFdInfoValue = unsafe.Sizeof([1]C.VkMemoryGetFdInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SubpassDependency) Ref() *C.VkSubpassDependency {
+func (x *MemoryGetFdInfo) Ref() *C.VkMemoryGetFdInfoKHR {
if x == nil {
return nil
}
- return x.refdb197adb
+ return x.ref75a079b1
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SubpassDependency) Free() {
- if x != nil && x.allocsdb197adb != nil {
- x.allocsdb197adb.(*cgoAllocMap).Free()
- x.refdb197adb = nil
+func (x *MemoryGetFdInfo) Free() {
+ if x != nil && x.allocs75a079b1 != nil {
+ x.allocs75a079b1.(*cgoAllocMap).Free()
+ x.ref75a079b1 = nil
}
}
-// NewSubpassDependencyRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewMemoryGetFdInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSubpassDependencyRef(ref unsafe.Pointer) *SubpassDependency {
+func NewMemoryGetFdInfoRef(ref unsafe.Pointer) *MemoryGetFdInfo {
if ref == nil {
return nil
}
- obj := new(SubpassDependency)
- obj.refdb197adb = (*C.VkSubpassDependency)(unsafe.Pointer(ref))
+ obj := new(MemoryGetFdInfo)
+ obj.ref75a079b1 = (*C.VkMemoryGetFdInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SubpassDependency) PassRef() (*C.VkSubpassDependency, *cgoAllocMap) {
+func (x *MemoryGetFdInfo) PassRef() (*C.VkMemoryGetFdInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refdb197adb != nil {
- return x.refdb197adb, nil
+ } else if x.ref75a079b1 != nil {
+ return x.ref75a079b1, nil
}
- memdb197adb := allocSubpassDependencyMemory(1)
- refdb197adb := (*C.VkSubpassDependency)(memdb197adb)
- allocsdb197adb := new(cgoAllocMap)
- allocsdb197adb.Add(memdb197adb)
-
- var csrcSubpass_allocs *cgoAllocMap
- refdb197adb.srcSubpass, csrcSubpass_allocs = (C.uint32_t)(x.SrcSubpass), cgoAllocsUnknown
- allocsdb197adb.Borrow(csrcSubpass_allocs)
-
- var cdstSubpass_allocs *cgoAllocMap
- refdb197adb.dstSubpass, cdstSubpass_allocs = (C.uint32_t)(x.DstSubpass), cgoAllocsUnknown
- allocsdb197adb.Borrow(cdstSubpass_allocs)
-
- var csrcStageMask_allocs *cgoAllocMap
- refdb197adb.srcStageMask, csrcStageMask_allocs = (C.VkPipelineStageFlags)(x.SrcStageMask), cgoAllocsUnknown
- allocsdb197adb.Borrow(csrcStageMask_allocs)
+ mem75a079b1 := allocMemoryGetFdInfoMemory(1)
+ ref75a079b1 := (*C.VkMemoryGetFdInfoKHR)(mem75a079b1)
+ allocs75a079b1 := new(cgoAllocMap)
+ allocs75a079b1.Add(mem75a079b1)
- var cdstStageMask_allocs *cgoAllocMap
- refdb197adb.dstStageMask, cdstStageMask_allocs = (C.VkPipelineStageFlags)(x.DstStageMask), cgoAllocsUnknown
- allocsdb197adb.Borrow(cdstStageMask_allocs)
+ var csType_allocs *cgoAllocMap
+ ref75a079b1.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs75a079b1.Borrow(csType_allocs)
- var csrcAccessMask_allocs *cgoAllocMap
- refdb197adb.srcAccessMask, csrcAccessMask_allocs = (C.VkAccessFlags)(x.SrcAccessMask), cgoAllocsUnknown
- allocsdb197adb.Borrow(csrcAccessMask_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref75a079b1.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs75a079b1.Borrow(cpNext_allocs)
- var cdstAccessMask_allocs *cgoAllocMap
- refdb197adb.dstAccessMask, cdstAccessMask_allocs = (C.VkAccessFlags)(x.DstAccessMask), cgoAllocsUnknown
- allocsdb197adb.Borrow(cdstAccessMask_allocs)
+ var cmemory_allocs *cgoAllocMap
+ ref75a079b1.memory, cmemory_allocs = *(*C.VkDeviceMemory)(unsafe.Pointer(&x.Memory)), cgoAllocsUnknown
+ allocs75a079b1.Borrow(cmemory_allocs)
- var cdependencyFlags_allocs *cgoAllocMap
- refdb197adb.dependencyFlags, cdependencyFlags_allocs = (C.VkDependencyFlags)(x.DependencyFlags), cgoAllocsUnknown
- allocsdb197adb.Borrow(cdependencyFlags_allocs)
+ var chandleType_allocs *cgoAllocMap
+ ref75a079b1.handleType, chandleType_allocs = (C.VkExternalMemoryHandleTypeFlagBits)(x.HandleType), cgoAllocsUnknown
+ allocs75a079b1.Borrow(chandleType_allocs)
- x.refdb197adb = refdb197adb
- x.allocsdb197adb = allocsdb197adb
- return refdb197adb, allocsdb197adb
+ x.ref75a079b1 = ref75a079b1
+ x.allocs75a079b1 = allocs75a079b1
+ return ref75a079b1, allocs75a079b1
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SubpassDependency) PassValue() (C.VkSubpassDependency, *cgoAllocMap) {
- if x.refdb197adb != nil {
- return *x.refdb197adb, nil
+func (x MemoryGetFdInfo) PassValue() (C.VkMemoryGetFdInfoKHR, *cgoAllocMap) {
+ if x.ref75a079b1 != nil {
+ return *x.ref75a079b1, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -10631,232 +37628,201 @@ func (x SubpassDependency) PassValue() (C.VkSubpassDependency, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SubpassDependency) Deref() {
- if x.refdb197adb == nil {
+func (x *MemoryGetFdInfo) Deref() {
+ if x.ref75a079b1 == nil {
return
}
- x.SrcSubpass = (uint32)(x.refdb197adb.srcSubpass)
- x.DstSubpass = (uint32)(x.refdb197adb.dstSubpass)
- x.SrcStageMask = (PipelineStageFlags)(x.refdb197adb.srcStageMask)
- x.DstStageMask = (PipelineStageFlags)(x.refdb197adb.dstStageMask)
- x.SrcAccessMask = (AccessFlags)(x.refdb197adb.srcAccessMask)
- x.DstAccessMask = (AccessFlags)(x.refdb197adb.dstAccessMask)
- x.DependencyFlags = (DependencyFlags)(x.refdb197adb.dependencyFlags)
+ x.SType = (StructureType)(x.ref75a079b1.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref75a079b1.pNext))
+ x.Memory = *(*DeviceMemory)(unsafe.Pointer(&x.ref75a079b1.memory))
+ x.HandleType = (ExternalMemoryHandleTypeFlagBits)(x.ref75a079b1.handleType)
}
-// allocRenderPassCreateInfoMemory allocates memory for type C.VkRenderPassCreateInfo in C.
+// allocImportSemaphoreFdInfoMemory allocates memory for type C.VkImportSemaphoreFdInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocRenderPassCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfRenderPassCreateInfoValue))
+func allocImportSemaphoreFdInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImportSemaphoreFdInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfRenderPassCreateInfoValue = unsafe.Sizeof([1]C.VkRenderPassCreateInfo{})
+const sizeOfImportSemaphoreFdInfoValue = unsafe.Sizeof([1]C.VkImportSemaphoreFdInfoKHR{})
-// unpackSAttachmentDescription transforms a sliced Go data structure into plain C format.
-func unpackSAttachmentDescription(x []AttachmentDescription) (unpacked *C.VkAttachmentDescription, allocs *cgoAllocMap) {
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ImportSemaphoreFdInfo) Ref() *C.VkImportSemaphoreFdInfoKHR {
if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkAttachmentDescription) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocAttachmentDescriptionMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkAttachmentDescription)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
+ return nil
}
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkAttachmentDescription)(h.Data)
- return
+ return x.refbc2f829a
}
-// unpackSSubpassDescription transforms a sliced Go data structure into plain C format.
-func unpackSSubpassDescription(x []SubpassDescription) (unpacked *C.VkSubpassDescription, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ImportSemaphoreFdInfo) Free() {
+ if x != nil && x.allocsbc2f829a != nil {
+ x.allocsbc2f829a.(*cgoAllocMap).Free()
+ x.refbc2f829a = nil
}
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkSubpassDescription) {
- go allocs.Free()
- })
+}
- len0 := len(x)
- mem0 := allocSubpassDescriptionMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkSubpassDescription)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
+// NewImportSemaphoreFdInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewImportSemaphoreFdInfoRef(ref unsafe.Pointer) *ImportSemaphoreFdInfo {
+ if ref == nil {
+ return nil
}
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkSubpassDescription)(h.Data)
- return
+ obj := new(ImportSemaphoreFdInfo)
+ obj.refbc2f829a = (*C.VkImportSemaphoreFdInfoKHR)(unsafe.Pointer(ref))
+ return obj
}
-// unpackSSubpassDependency transforms a sliced Go data structure into plain C format.
-func unpackSSubpassDependency(x []SubpassDependency) (unpacked *C.VkSubpassDependency, allocs *cgoAllocMap) {
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ImportSemaphoreFdInfo) PassRef() (*C.VkImportSemaphoreFdInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
+ } else if x.refbc2f829a != nil {
+ return x.refbc2f829a, nil
}
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkSubpassDependency) {
- go allocs.Free()
- })
+ membc2f829a := allocImportSemaphoreFdInfoMemory(1)
+ refbc2f829a := (*C.VkImportSemaphoreFdInfoKHR)(membc2f829a)
+ allocsbc2f829a := new(cgoAllocMap)
+ allocsbc2f829a.Add(membc2f829a)
+
+ var csType_allocs *cgoAllocMap
+ refbc2f829a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsbc2f829a.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refbc2f829a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsbc2f829a.Borrow(cpNext_allocs)
+
+ var csemaphore_allocs *cgoAllocMap
+ refbc2f829a.semaphore, csemaphore_allocs = *(*C.VkSemaphore)(unsafe.Pointer(&x.Semaphore)), cgoAllocsUnknown
+ allocsbc2f829a.Borrow(csemaphore_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ refbc2f829a.flags, cflags_allocs = (C.VkSemaphoreImportFlags)(x.Flags), cgoAllocsUnknown
+ allocsbc2f829a.Borrow(cflags_allocs)
+
+ var chandleType_allocs *cgoAllocMap
+ refbc2f829a.handleType, chandleType_allocs = (C.VkExternalSemaphoreHandleTypeFlagBits)(x.HandleType), cgoAllocsUnknown
+ allocsbc2f829a.Borrow(chandleType_allocs)
+
+ var cfd_allocs *cgoAllocMap
+ refbc2f829a.fd, cfd_allocs = (C.int)(x.Fd), cgoAllocsUnknown
+ allocsbc2f829a.Borrow(cfd_allocs)
+
+ x.refbc2f829a = refbc2f829a
+ x.allocsbc2f829a = allocsbc2f829a
+ return refbc2f829a, allocsbc2f829a
- len0 := len(x)
- mem0 := allocSubpassDependencyMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkSubpassDependency)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkSubpassDependency)(h.Data)
- return
}
-// packSAttachmentDescription reads sliced Go data structure out from plain C format.
-func packSAttachmentDescription(v []AttachmentDescription, ptr0 *C.VkAttachmentDescription) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfAttachmentDescriptionValue]C.VkAttachmentDescription)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewAttachmentDescriptionRef(unsafe.Pointer(&ptr1))
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ImportSemaphoreFdInfo) PassValue() (C.VkImportSemaphoreFdInfoKHR, *cgoAllocMap) {
+ if x.refbc2f829a != nil {
+ return *x.refbc2f829a, nil
}
+ ref, allocs := x.PassRef()
+ return *ref, allocs
}
-// packSSubpassDescription reads sliced Go data structure out from plain C format.
-func packSSubpassDescription(v []SubpassDescription, ptr0 *C.VkSubpassDescription) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfSubpassDescriptionValue]C.VkSubpassDescription)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewSubpassDescriptionRef(unsafe.Pointer(&ptr1))
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ImportSemaphoreFdInfo) Deref() {
+ if x.refbc2f829a == nil {
+ return
}
+ x.SType = (StructureType)(x.refbc2f829a.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refbc2f829a.pNext))
+ x.Semaphore = *(*Semaphore)(unsafe.Pointer(&x.refbc2f829a.semaphore))
+ x.Flags = (SemaphoreImportFlags)(x.refbc2f829a.flags)
+ x.HandleType = (ExternalSemaphoreHandleTypeFlagBits)(x.refbc2f829a.handleType)
+ x.Fd = (int32)(x.refbc2f829a.fd)
}
-// packSSubpassDependency reads sliced Go data structure out from plain C format.
-func packSSubpassDependency(v []SubpassDependency, ptr0 *C.VkSubpassDependency) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfSubpassDependencyValue]C.VkSubpassDependency)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewSubpassDependencyRef(unsafe.Pointer(&ptr1))
+// allocSemaphoreGetFdInfoMemory allocates memory for type C.VkSemaphoreGetFdInfoKHR in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocSemaphoreGetFdInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSemaphoreGetFdInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
}
+ return mem
}
+const sizeOfSemaphoreGetFdInfoValue = unsafe.Sizeof([1]C.VkSemaphoreGetFdInfoKHR{})
+
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *RenderPassCreateInfo) Ref() *C.VkRenderPassCreateInfo {
+func (x *SemaphoreGetFdInfo) Ref() *C.VkSemaphoreGetFdInfoKHR {
if x == nil {
return nil
}
- return x.ref886d7d86
+ return x.refd9bd07cf
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *RenderPassCreateInfo) Free() {
- if x != nil && x.allocs886d7d86 != nil {
- x.allocs886d7d86.(*cgoAllocMap).Free()
- x.ref886d7d86 = nil
+func (x *SemaphoreGetFdInfo) Free() {
+ if x != nil && x.allocsd9bd07cf != nil {
+ x.allocsd9bd07cf.(*cgoAllocMap).Free()
+ x.refd9bd07cf = nil
}
}
-// NewRenderPassCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewSemaphoreGetFdInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewRenderPassCreateInfoRef(ref unsafe.Pointer) *RenderPassCreateInfo {
+func NewSemaphoreGetFdInfoRef(ref unsafe.Pointer) *SemaphoreGetFdInfo {
if ref == nil {
return nil
}
- obj := new(RenderPassCreateInfo)
- obj.ref886d7d86 = (*C.VkRenderPassCreateInfo)(unsafe.Pointer(ref))
+ obj := new(SemaphoreGetFdInfo)
+ obj.refd9bd07cf = (*C.VkSemaphoreGetFdInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *RenderPassCreateInfo) PassRef() (*C.VkRenderPassCreateInfo, *cgoAllocMap) {
+func (x *SemaphoreGetFdInfo) PassRef() (*C.VkSemaphoreGetFdInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref886d7d86 != nil {
- return x.ref886d7d86, nil
+ } else if x.refd9bd07cf != nil {
+ return x.refd9bd07cf, nil
}
- mem886d7d86 := allocRenderPassCreateInfoMemory(1)
- ref886d7d86 := (*C.VkRenderPassCreateInfo)(mem886d7d86)
- allocs886d7d86 := new(cgoAllocMap)
- allocs886d7d86.Add(mem886d7d86)
+ memd9bd07cf := allocSemaphoreGetFdInfoMemory(1)
+ refd9bd07cf := (*C.VkSemaphoreGetFdInfoKHR)(memd9bd07cf)
+ allocsd9bd07cf := new(cgoAllocMap)
+ allocsd9bd07cf.Add(memd9bd07cf)
var csType_allocs *cgoAllocMap
- ref886d7d86.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs886d7d86.Borrow(csType_allocs)
+ refd9bd07cf.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd9bd07cf.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref886d7d86.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs886d7d86.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- ref886d7d86.flags, cflags_allocs = (C.VkRenderPassCreateFlags)(x.Flags), cgoAllocsUnknown
- allocs886d7d86.Borrow(cflags_allocs)
-
- var cattachmentCount_allocs *cgoAllocMap
- ref886d7d86.attachmentCount, cattachmentCount_allocs = (C.uint32_t)(x.AttachmentCount), cgoAllocsUnknown
- allocs886d7d86.Borrow(cattachmentCount_allocs)
-
- var cpAttachments_allocs *cgoAllocMap
- ref886d7d86.pAttachments, cpAttachments_allocs = unpackSAttachmentDescription(x.PAttachments)
- allocs886d7d86.Borrow(cpAttachments_allocs)
-
- var csubpassCount_allocs *cgoAllocMap
- ref886d7d86.subpassCount, csubpassCount_allocs = (C.uint32_t)(x.SubpassCount), cgoAllocsUnknown
- allocs886d7d86.Borrow(csubpassCount_allocs)
-
- var cpSubpasses_allocs *cgoAllocMap
- ref886d7d86.pSubpasses, cpSubpasses_allocs = unpackSSubpassDescription(x.PSubpasses)
- allocs886d7d86.Borrow(cpSubpasses_allocs)
+ refd9bd07cf.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsd9bd07cf.Borrow(cpNext_allocs)
- var cdependencyCount_allocs *cgoAllocMap
- ref886d7d86.dependencyCount, cdependencyCount_allocs = (C.uint32_t)(x.DependencyCount), cgoAllocsUnknown
- allocs886d7d86.Borrow(cdependencyCount_allocs)
+ var csemaphore_allocs *cgoAllocMap
+ refd9bd07cf.semaphore, csemaphore_allocs = *(*C.VkSemaphore)(unsafe.Pointer(&x.Semaphore)), cgoAllocsUnknown
+ allocsd9bd07cf.Borrow(csemaphore_allocs)
- var cpDependencies_allocs *cgoAllocMap
- ref886d7d86.pDependencies, cpDependencies_allocs = unpackSSubpassDependency(x.PDependencies)
- allocs886d7d86.Borrow(cpDependencies_allocs)
+ var chandleType_allocs *cgoAllocMap
+ refd9bd07cf.handleType, chandleType_allocs = (C.VkExternalSemaphoreHandleTypeFlagBits)(x.HandleType), cgoAllocsUnknown
+ allocsd9bd07cf.Borrow(chandleType_allocs)
- x.ref886d7d86 = ref886d7d86
- x.allocs886d7d86 = allocs886d7d86
- return ref886d7d86, allocs886d7d86
+ x.refd9bd07cf = refd9bd07cf
+ x.allocsd9bd07cf = allocsd9bd07cf
+ return refd9bd07cf, allocsd9bd07cf
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x RenderPassCreateInfo) PassValue() (C.VkRenderPassCreateInfo, *cgoAllocMap) {
- if x.ref886d7d86 != nil {
- return *x.ref886d7d86, nil
+func (x SemaphoreGetFdInfo) PassValue() (C.VkSemaphoreGetFdInfoKHR, *cgoAllocMap) {
+ if x.refd9bd07cf != nil {
+ return *x.refd9bd07cf, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -10864,100 +37830,91 @@ func (x RenderPassCreateInfo) PassValue() (C.VkRenderPassCreateInfo, *cgoAllocMa
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *RenderPassCreateInfo) Deref() {
- if x.ref886d7d86 == nil {
+func (x *SemaphoreGetFdInfo) Deref() {
+ if x.refd9bd07cf == nil {
return
}
- x.SType = (StructureType)(x.ref886d7d86.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref886d7d86.pNext))
- x.Flags = (RenderPassCreateFlags)(x.ref886d7d86.flags)
- x.AttachmentCount = (uint32)(x.ref886d7d86.attachmentCount)
- packSAttachmentDescription(x.PAttachments, x.ref886d7d86.pAttachments)
- x.SubpassCount = (uint32)(x.ref886d7d86.subpassCount)
- packSSubpassDescription(x.PSubpasses, x.ref886d7d86.pSubpasses)
- x.DependencyCount = (uint32)(x.ref886d7d86.dependencyCount)
- packSSubpassDependency(x.PDependencies, x.ref886d7d86.pDependencies)
+ x.SType = (StructureType)(x.refd9bd07cf.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd9bd07cf.pNext))
+ x.Semaphore = *(*Semaphore)(unsafe.Pointer(&x.refd9bd07cf.semaphore))
+ x.HandleType = (ExternalSemaphoreHandleTypeFlagBits)(x.refd9bd07cf.handleType)
}
-// allocCommandPoolCreateInfoMemory allocates memory for type C.VkCommandPoolCreateInfo in C.
+// allocPhysicalDevicePushDescriptorPropertiesMemory allocates memory for type C.VkPhysicalDevicePushDescriptorPropertiesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocCommandPoolCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCommandPoolCreateInfoValue))
+func allocPhysicalDevicePushDescriptorPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDevicePushDescriptorPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfCommandPoolCreateInfoValue = unsafe.Sizeof([1]C.VkCommandPoolCreateInfo{})
+const sizeOfPhysicalDevicePushDescriptorPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDevicePushDescriptorPropertiesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *CommandPoolCreateInfo) Ref() *C.VkCommandPoolCreateInfo {
+func (x *PhysicalDevicePushDescriptorProperties) Ref() *C.VkPhysicalDevicePushDescriptorPropertiesKHR {
if x == nil {
return nil
}
- return x.ref73550de0
+ return x.ref8c58a1a5
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *CommandPoolCreateInfo) Free() {
- if x != nil && x.allocs73550de0 != nil {
- x.allocs73550de0.(*cgoAllocMap).Free()
- x.ref73550de0 = nil
+func (x *PhysicalDevicePushDescriptorProperties) Free() {
+ if x != nil && x.allocs8c58a1a5 != nil {
+ x.allocs8c58a1a5.(*cgoAllocMap).Free()
+ x.ref8c58a1a5 = nil
}
}
-// NewCommandPoolCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDevicePushDescriptorPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewCommandPoolCreateInfoRef(ref unsafe.Pointer) *CommandPoolCreateInfo {
+func NewPhysicalDevicePushDescriptorPropertiesRef(ref unsafe.Pointer) *PhysicalDevicePushDescriptorProperties {
if ref == nil {
return nil
}
- obj := new(CommandPoolCreateInfo)
- obj.ref73550de0 = (*C.VkCommandPoolCreateInfo)(unsafe.Pointer(ref))
+ obj := new(PhysicalDevicePushDescriptorProperties)
+ obj.ref8c58a1a5 = (*C.VkPhysicalDevicePushDescriptorPropertiesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *CommandPoolCreateInfo) PassRef() (*C.VkCommandPoolCreateInfo, *cgoAllocMap) {
+func (x *PhysicalDevicePushDescriptorProperties) PassRef() (*C.VkPhysicalDevicePushDescriptorPropertiesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref73550de0 != nil {
- return x.ref73550de0, nil
+ } else if x.ref8c58a1a5 != nil {
+ return x.ref8c58a1a5, nil
}
- mem73550de0 := allocCommandPoolCreateInfoMemory(1)
- ref73550de0 := (*C.VkCommandPoolCreateInfo)(mem73550de0)
- allocs73550de0 := new(cgoAllocMap)
- allocs73550de0.Add(mem73550de0)
+ mem8c58a1a5 := allocPhysicalDevicePushDescriptorPropertiesMemory(1)
+ ref8c58a1a5 := (*C.VkPhysicalDevicePushDescriptorPropertiesKHR)(mem8c58a1a5)
+ allocs8c58a1a5 := new(cgoAllocMap)
+ allocs8c58a1a5.Add(mem8c58a1a5)
var csType_allocs *cgoAllocMap
- ref73550de0.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs73550de0.Borrow(csType_allocs)
+ ref8c58a1a5.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs8c58a1a5.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref73550de0.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs73550de0.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- ref73550de0.flags, cflags_allocs = (C.VkCommandPoolCreateFlags)(x.Flags), cgoAllocsUnknown
- allocs73550de0.Borrow(cflags_allocs)
+ ref8c58a1a5.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs8c58a1a5.Borrow(cpNext_allocs)
- var cqueueFamilyIndex_allocs *cgoAllocMap
- ref73550de0.queueFamilyIndex, cqueueFamilyIndex_allocs = (C.uint32_t)(x.QueueFamilyIndex), cgoAllocsUnknown
- allocs73550de0.Borrow(cqueueFamilyIndex_allocs)
+ var cmaxPushDescriptors_allocs *cgoAllocMap
+ ref8c58a1a5.maxPushDescriptors, cmaxPushDescriptors_allocs = (C.uint32_t)(x.MaxPushDescriptors), cgoAllocsUnknown
+ allocs8c58a1a5.Borrow(cmaxPushDescriptors_allocs)
- x.ref73550de0 = ref73550de0
- x.allocs73550de0 = allocs73550de0
- return ref73550de0, allocs73550de0
+ x.ref8c58a1a5 = ref8c58a1a5
+ x.allocs8c58a1a5 = allocs8c58a1a5
+ return ref8c58a1a5, allocs8c58a1a5
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x CommandPoolCreateInfo) PassValue() (C.VkCommandPoolCreateInfo, *cgoAllocMap) {
- if x.ref73550de0 != nil {
- return *x.ref73550de0, nil
+func (x PhysicalDevicePushDescriptorProperties) PassValue() (C.VkPhysicalDevicePushDescriptorPropertiesKHR, *cgoAllocMap) {
+ if x.ref8c58a1a5 != nil {
+ return *x.ref8c58a1a5, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -10965,99 +37922,82 @@ func (x CommandPoolCreateInfo) PassValue() (C.VkCommandPoolCreateInfo, *cgoAlloc
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *CommandPoolCreateInfo) Deref() {
- if x.ref73550de0 == nil {
+func (x *PhysicalDevicePushDescriptorProperties) Deref() {
+ if x.ref8c58a1a5 == nil {
return
}
- x.SType = (StructureType)(x.ref73550de0.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref73550de0.pNext))
- x.Flags = (CommandPoolCreateFlags)(x.ref73550de0.flags)
- x.QueueFamilyIndex = (uint32)(x.ref73550de0.queueFamilyIndex)
-}
-
-// allocCommandBufferAllocateInfoMemory allocates memory for type C.VkCommandBufferAllocateInfo in C.
-// The caller is responsible for freeing the this memory via C.free.
-func allocCommandBufferAllocateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCommandBufferAllocateInfoValue))
- if err != nil {
- panic("memory alloc error: " + err.Error())
- }
- return mem
+ x.SType = (StructureType)(x.ref8c58a1a5.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref8c58a1a5.pNext))
+ x.MaxPushDescriptors = (uint32)(x.ref8c58a1a5.maxPushDescriptors)
}
-const sizeOfCommandBufferAllocateInfoValue = unsafe.Sizeof([1]C.VkCommandBufferAllocateInfo{})
-
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *CommandBufferAllocateInfo) Ref() *C.VkCommandBufferAllocateInfo {
+func (x *PhysicalDeviceFloat16Int8Features) Ref() *C.VkPhysicalDeviceShaderFloat16Int8Features {
if x == nil {
return nil
}
- return x.refd1a0a7c8
+ return x.refc9d315b6
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *CommandBufferAllocateInfo) Free() {
- if x != nil && x.allocsd1a0a7c8 != nil {
- x.allocsd1a0a7c8.(*cgoAllocMap).Free()
- x.refd1a0a7c8 = nil
+func (x *PhysicalDeviceFloat16Int8Features) Free() {
+ if x != nil && x.allocsc9d315b6 != nil {
+ x.allocsc9d315b6.(*cgoAllocMap).Free()
+ x.refc9d315b6 = nil
}
}
-// NewCommandBufferAllocateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceFloat16Int8FeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewCommandBufferAllocateInfoRef(ref unsafe.Pointer) *CommandBufferAllocateInfo {
+func NewPhysicalDeviceFloat16Int8FeaturesRef(ref unsafe.Pointer) *PhysicalDeviceFloat16Int8Features {
if ref == nil {
return nil
}
- obj := new(CommandBufferAllocateInfo)
- obj.refd1a0a7c8 = (*C.VkCommandBufferAllocateInfo)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceFloat16Int8Features)
+ obj.refc9d315b6 = (*C.VkPhysicalDeviceShaderFloat16Int8Features)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *CommandBufferAllocateInfo) PassRef() (*C.VkCommandBufferAllocateInfo, *cgoAllocMap) {
+func (x *PhysicalDeviceFloat16Int8Features) PassRef() (*C.VkPhysicalDeviceShaderFloat16Int8Features, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refd1a0a7c8 != nil {
- return x.refd1a0a7c8, nil
+ } else if x.refc9d315b6 != nil {
+ return x.refc9d315b6, nil
}
- memd1a0a7c8 := allocCommandBufferAllocateInfoMemory(1)
- refd1a0a7c8 := (*C.VkCommandBufferAllocateInfo)(memd1a0a7c8)
- allocsd1a0a7c8 := new(cgoAllocMap)
- allocsd1a0a7c8.Add(memd1a0a7c8)
+ memc9d315b6 := allocPhysicalDeviceShaderFloat16Int8FeaturesMemory(1)
+ refc9d315b6 := (*C.VkPhysicalDeviceShaderFloat16Int8Features)(memc9d315b6)
+ allocsc9d315b6 := new(cgoAllocMap)
+ allocsc9d315b6.Add(memc9d315b6)
var csType_allocs *cgoAllocMap
- refd1a0a7c8.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsd1a0a7c8.Borrow(csType_allocs)
+ refc9d315b6.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsc9d315b6.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refd1a0a7c8.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsd1a0a7c8.Borrow(cpNext_allocs)
-
- var ccommandPool_allocs *cgoAllocMap
- refd1a0a7c8.commandPool, ccommandPool_allocs = *(*C.VkCommandPool)(unsafe.Pointer(&x.CommandPool)), cgoAllocsUnknown
- allocsd1a0a7c8.Borrow(ccommandPool_allocs)
+ refc9d315b6.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsc9d315b6.Borrow(cpNext_allocs)
- var clevel_allocs *cgoAllocMap
- refd1a0a7c8.level, clevel_allocs = (C.VkCommandBufferLevel)(x.Level), cgoAllocsUnknown
- allocsd1a0a7c8.Borrow(clevel_allocs)
+ var cshaderFloat16_allocs *cgoAllocMap
+ refc9d315b6.shaderFloat16, cshaderFloat16_allocs = (C.VkBool32)(x.ShaderFloat16), cgoAllocsUnknown
+ allocsc9d315b6.Borrow(cshaderFloat16_allocs)
- var ccommandBufferCount_allocs *cgoAllocMap
- refd1a0a7c8.commandBufferCount, ccommandBufferCount_allocs = (C.uint32_t)(x.CommandBufferCount), cgoAllocsUnknown
- allocsd1a0a7c8.Borrow(ccommandBufferCount_allocs)
+ var cshaderInt8_allocs *cgoAllocMap
+ refc9d315b6.shaderInt8, cshaderInt8_allocs = (C.VkBool32)(x.ShaderInt8), cgoAllocsUnknown
+ allocsc9d315b6.Borrow(cshaderInt8_allocs)
- x.refd1a0a7c8 = refd1a0a7c8
- x.allocsd1a0a7c8 = allocsd1a0a7c8
- return refd1a0a7c8, allocsd1a0a7c8
+ x.refc9d315b6 = refc9d315b6
+ x.allocsc9d315b6 = allocsc9d315b6
+ return refc9d315b6, allocsc9d315b6
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x CommandBufferAllocateInfo) PassValue() (C.VkCommandBufferAllocateInfo, *cgoAllocMap) {
- if x.refd1a0a7c8 != nil {
- return *x.refd1a0a7c8, nil
+func (x PhysicalDeviceFloat16Int8Features) PassValue() (C.VkPhysicalDeviceShaderFloat16Int8Features, *cgoAllocMap) {
+ if x.refc9d315b6 != nil {
+ return *x.refc9d315b6, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -11065,112 +38005,91 @@ func (x CommandBufferAllocateInfo) PassValue() (C.VkCommandBufferAllocateInfo, *
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *CommandBufferAllocateInfo) Deref() {
- if x.refd1a0a7c8 == nil {
+func (x *PhysicalDeviceFloat16Int8Features) Deref() {
+ if x.refc9d315b6 == nil {
return
}
- x.SType = (StructureType)(x.refd1a0a7c8.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd1a0a7c8.pNext))
- x.CommandPool = *(*CommandPool)(unsafe.Pointer(&x.refd1a0a7c8.commandPool))
- x.Level = (CommandBufferLevel)(x.refd1a0a7c8.level)
- x.CommandBufferCount = (uint32)(x.refd1a0a7c8.commandBufferCount)
+ x.SType = (StructureType)(x.refc9d315b6.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc9d315b6.pNext))
+ x.ShaderFloat16 = (Bool32)(x.refc9d315b6.shaderFloat16)
+ x.ShaderInt8 = (Bool32)(x.refc9d315b6.shaderInt8)
}
-// allocCommandBufferInheritanceInfoMemory allocates memory for type C.VkCommandBufferInheritanceInfo in C.
+// allocRectLayerMemory allocates memory for type C.VkRectLayerKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocCommandBufferInheritanceInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCommandBufferInheritanceInfoValue))
+func allocRectLayerMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfRectLayerValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfCommandBufferInheritanceInfoValue = unsafe.Sizeof([1]C.VkCommandBufferInheritanceInfo{})
+const sizeOfRectLayerValue = unsafe.Sizeof([1]C.VkRectLayerKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *CommandBufferInheritanceInfo) Ref() *C.VkCommandBufferInheritanceInfo {
+func (x *RectLayer) Ref() *C.VkRectLayerKHR {
if x == nil {
return nil
}
- return x.ref737f8019
+ return x.refaf248476
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *CommandBufferInheritanceInfo) Free() {
- if x != nil && x.allocs737f8019 != nil {
- x.allocs737f8019.(*cgoAllocMap).Free()
- x.ref737f8019 = nil
+func (x *RectLayer) Free() {
+ if x != nil && x.allocsaf248476 != nil {
+ x.allocsaf248476.(*cgoAllocMap).Free()
+ x.refaf248476 = nil
}
}
-// NewCommandBufferInheritanceInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewRectLayerRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewCommandBufferInheritanceInfoRef(ref unsafe.Pointer) *CommandBufferInheritanceInfo {
+func NewRectLayerRef(ref unsafe.Pointer) *RectLayer {
if ref == nil {
return nil
}
- obj := new(CommandBufferInheritanceInfo)
- obj.ref737f8019 = (*C.VkCommandBufferInheritanceInfo)(unsafe.Pointer(ref))
+ obj := new(RectLayer)
+ obj.refaf248476 = (*C.VkRectLayerKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *CommandBufferInheritanceInfo) PassRef() (*C.VkCommandBufferInheritanceInfo, *cgoAllocMap) {
+func (x *RectLayer) PassRef() (*C.VkRectLayerKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref737f8019 != nil {
- return x.ref737f8019, nil
+ } else if x.refaf248476 != nil {
+ return x.refaf248476, nil
}
- mem737f8019 := allocCommandBufferInheritanceInfoMemory(1)
- ref737f8019 := (*C.VkCommandBufferInheritanceInfo)(mem737f8019)
- allocs737f8019 := new(cgoAllocMap)
- allocs737f8019.Add(mem737f8019)
-
- var csType_allocs *cgoAllocMap
- ref737f8019.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs737f8019.Borrow(csType_allocs)
-
- var cpNext_allocs *cgoAllocMap
- ref737f8019.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs737f8019.Borrow(cpNext_allocs)
-
- var crenderPass_allocs *cgoAllocMap
- ref737f8019.renderPass, crenderPass_allocs = *(*C.VkRenderPass)(unsafe.Pointer(&x.RenderPass)), cgoAllocsUnknown
- allocs737f8019.Borrow(crenderPass_allocs)
-
- var csubpass_allocs *cgoAllocMap
- ref737f8019.subpass, csubpass_allocs = (C.uint32_t)(x.Subpass), cgoAllocsUnknown
- allocs737f8019.Borrow(csubpass_allocs)
-
- var cframebuffer_allocs *cgoAllocMap
- ref737f8019.framebuffer, cframebuffer_allocs = *(*C.VkFramebuffer)(unsafe.Pointer(&x.Framebuffer)), cgoAllocsUnknown
- allocs737f8019.Borrow(cframebuffer_allocs)
+ memaf248476 := allocRectLayerMemory(1)
+ refaf248476 := (*C.VkRectLayerKHR)(memaf248476)
+ allocsaf248476 := new(cgoAllocMap)
+ allocsaf248476.Add(memaf248476)
- var cocclusionQueryEnable_allocs *cgoAllocMap
- ref737f8019.occlusionQueryEnable, cocclusionQueryEnable_allocs = (C.VkBool32)(x.OcclusionQueryEnable), cgoAllocsUnknown
- allocs737f8019.Borrow(cocclusionQueryEnable_allocs)
+ var coffset_allocs *cgoAllocMap
+ refaf248476.offset, coffset_allocs = x.Offset.PassValue()
+ allocsaf248476.Borrow(coffset_allocs)
- var cqueryFlags_allocs *cgoAllocMap
- ref737f8019.queryFlags, cqueryFlags_allocs = (C.VkQueryControlFlags)(x.QueryFlags), cgoAllocsUnknown
- allocs737f8019.Borrow(cqueryFlags_allocs)
+ var cextent_allocs *cgoAllocMap
+ refaf248476.extent, cextent_allocs = x.Extent.PassValue()
+ allocsaf248476.Borrow(cextent_allocs)
- var cpipelineStatistics_allocs *cgoAllocMap
- ref737f8019.pipelineStatistics, cpipelineStatistics_allocs = (C.VkQueryPipelineStatisticFlags)(x.PipelineStatistics), cgoAllocsUnknown
- allocs737f8019.Borrow(cpipelineStatistics_allocs)
+ var clayer_allocs *cgoAllocMap
+ refaf248476.layer, clayer_allocs = (C.uint32_t)(x.Layer), cgoAllocsUnknown
+ allocsaf248476.Borrow(clayer_allocs)
- x.ref737f8019 = ref737f8019
- x.allocs737f8019 = allocs737f8019
- return ref737f8019, allocs737f8019
+ x.refaf248476 = refaf248476
+ x.allocsaf248476 = allocsaf248476
+ return refaf248476, allocsaf248476
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x CommandBufferInheritanceInfo) PassValue() (C.VkCommandBufferInheritanceInfo, *cgoAllocMap) {
- if x.ref737f8019 != nil {
- return *x.ref737f8019, nil
+func (x RectLayer) PassValue() (C.VkRectLayerKHR, *cgoAllocMap) {
+ if x.refaf248476 != nil {
+ return *x.refaf248476, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -11178,137 +38097,124 @@ func (x CommandBufferInheritanceInfo) PassValue() (C.VkCommandBufferInheritanceI
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *CommandBufferInheritanceInfo) Deref() {
- if x.ref737f8019 == nil {
+func (x *RectLayer) Deref() {
+ if x.refaf248476 == nil {
return
}
- x.SType = (StructureType)(x.ref737f8019.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref737f8019.pNext))
- x.RenderPass = *(*RenderPass)(unsafe.Pointer(&x.ref737f8019.renderPass))
- x.Subpass = (uint32)(x.ref737f8019.subpass)
- x.Framebuffer = *(*Framebuffer)(unsafe.Pointer(&x.ref737f8019.framebuffer))
- x.OcclusionQueryEnable = (Bool32)(x.ref737f8019.occlusionQueryEnable)
- x.QueryFlags = (QueryControlFlags)(x.ref737f8019.queryFlags)
- x.PipelineStatistics = (QueryPipelineStatisticFlags)(x.ref737f8019.pipelineStatistics)
+ x.Offset = *NewOffset2DRef(unsafe.Pointer(&x.refaf248476.offset))
+ x.Extent = *NewExtent2DRef(unsafe.Pointer(&x.refaf248476.extent))
+ x.Layer = (uint32)(x.refaf248476.layer)
}
-// allocCommandBufferBeginInfoMemory allocates memory for type C.VkCommandBufferBeginInfo in C.
+// allocPresentRegionMemory allocates memory for type C.VkPresentRegionKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocCommandBufferBeginInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCommandBufferBeginInfoValue))
+func allocPresentRegionMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPresentRegionValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfCommandBufferBeginInfoValue = unsafe.Sizeof([1]C.VkCommandBufferBeginInfo{})
+const sizeOfPresentRegionValue = unsafe.Sizeof([1]C.VkPresentRegionKHR{})
-// unpackSCommandBufferInheritanceInfo transforms a sliced Go data structure into plain C format.
-func unpackSCommandBufferInheritanceInfo(x []CommandBufferInheritanceInfo) (unpacked *C.VkCommandBufferInheritanceInfo, allocs *cgoAllocMap) {
+// unpackSRectLayer transforms a sliced Go data structure into plain C format.
+func unpackSRectLayer(x []RectLayer) (unpacked *C.VkRectLayerKHR, allocs *cgoAllocMap) {
if x == nil {
return nil, nil
}
allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkCommandBufferInheritanceInfo) {
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkRectLayerKHR) {
go allocs.Free()
})
len0 := len(x)
- mem0 := allocCommandBufferInheritanceInfoMemory(len0)
+ mem0 := allocRectLayerMemory(len0)
allocs.Add(mem0)
h0 := &sliceHeader{
Data: mem0,
Cap: len0,
Len: len0,
}
- v0 := *(*[]C.VkCommandBufferInheritanceInfo)(unsafe.Pointer(h0))
+ v0 := *(*[]C.VkRectLayerKHR)(unsafe.Pointer(h0))
for i0 := range x {
allocs0 := new(cgoAllocMap)
v0[i0], allocs0 = x[i0].PassValue()
allocs.Borrow(allocs0)
}
h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkCommandBufferInheritanceInfo)(h.Data)
+ unpacked = (*C.VkRectLayerKHR)(h.Data)
return
}
-// packSCommandBufferInheritanceInfo reads sliced Go data structure out from plain C format.
-func packSCommandBufferInheritanceInfo(v []CommandBufferInheritanceInfo, ptr0 *C.VkCommandBufferInheritanceInfo) {
+// packSRectLayer reads sliced Go data structure out from plain C format.
+func packSRectLayer(v []RectLayer, ptr0 *C.VkRectLayerKHR) {
const m = 0x7fffffff
for i0 := range v {
- ptr1 := (*(*[m / sizeOfCommandBufferInheritanceInfoValue]C.VkCommandBufferInheritanceInfo)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewCommandBufferInheritanceInfoRef(unsafe.Pointer(&ptr1))
+ ptr1 := (*(*[m / sizeOfRectLayerValue]C.VkRectLayerKHR)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewRectLayerRef(unsafe.Pointer(&ptr1))
}
}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *CommandBufferBeginInfo) Ref() *C.VkCommandBufferBeginInfo {
+func (x *PresentRegion) Ref() *C.VkPresentRegionKHR {
if x == nil {
return nil
}
- return x.ref266762df
+ return x.refbbc0d1b9
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *CommandBufferBeginInfo) Free() {
- if x != nil && x.allocs266762df != nil {
- x.allocs266762df.(*cgoAllocMap).Free()
- x.ref266762df = nil
+func (x *PresentRegion) Free() {
+ if x != nil && x.allocsbbc0d1b9 != nil {
+ x.allocsbbc0d1b9.(*cgoAllocMap).Free()
+ x.refbbc0d1b9 = nil
}
}
-// NewCommandBufferBeginInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPresentRegionRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewCommandBufferBeginInfoRef(ref unsafe.Pointer) *CommandBufferBeginInfo {
+func NewPresentRegionRef(ref unsafe.Pointer) *PresentRegion {
if ref == nil {
return nil
}
- obj := new(CommandBufferBeginInfo)
- obj.ref266762df = (*C.VkCommandBufferBeginInfo)(unsafe.Pointer(ref))
+ obj := new(PresentRegion)
+ obj.refbbc0d1b9 = (*C.VkPresentRegionKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *CommandBufferBeginInfo) PassRef() (*C.VkCommandBufferBeginInfo, *cgoAllocMap) {
+func (x *PresentRegion) PassRef() (*C.VkPresentRegionKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref266762df != nil {
- return x.ref266762df, nil
+ } else if x.refbbc0d1b9 != nil {
+ return x.refbbc0d1b9, nil
}
- mem266762df := allocCommandBufferBeginInfoMemory(1)
- ref266762df := (*C.VkCommandBufferBeginInfo)(mem266762df)
- allocs266762df := new(cgoAllocMap)
- allocs266762df.Add(mem266762df)
-
- var csType_allocs *cgoAllocMap
- ref266762df.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs266762df.Borrow(csType_allocs)
-
- var cpNext_allocs *cgoAllocMap
- ref266762df.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs266762df.Borrow(cpNext_allocs)
+ membbc0d1b9 := allocPresentRegionMemory(1)
+ refbbc0d1b9 := (*C.VkPresentRegionKHR)(membbc0d1b9)
+ allocsbbc0d1b9 := new(cgoAllocMap)
+ allocsbbc0d1b9.Add(membbc0d1b9)
- var cflags_allocs *cgoAllocMap
- ref266762df.flags, cflags_allocs = (C.VkCommandBufferUsageFlags)(x.Flags), cgoAllocsUnknown
- allocs266762df.Borrow(cflags_allocs)
+ var crectangleCount_allocs *cgoAllocMap
+ refbbc0d1b9.rectangleCount, crectangleCount_allocs = (C.uint32_t)(x.RectangleCount), cgoAllocsUnknown
+ allocsbbc0d1b9.Borrow(crectangleCount_allocs)
- var cpInheritanceInfo_allocs *cgoAllocMap
- ref266762df.pInheritanceInfo, cpInheritanceInfo_allocs = unpackSCommandBufferInheritanceInfo(x.PInheritanceInfo)
- allocs266762df.Borrow(cpInheritanceInfo_allocs)
+ var cpRectangles_allocs *cgoAllocMap
+ refbbc0d1b9.pRectangles, cpRectangles_allocs = unpackSRectLayer(x.PRectangles)
+ allocsbbc0d1b9.Borrow(cpRectangles_allocs)
- x.ref266762df = ref266762df
- x.allocs266762df = allocs266762df
- return ref266762df, allocs266762df
+ x.refbbc0d1b9 = refbbc0d1b9
+ x.allocsbbc0d1b9 = allocsbbc0d1b9
+ return refbbc0d1b9, allocsbbc0d1b9
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x CommandBufferBeginInfo) PassValue() (C.VkCommandBufferBeginInfo, *cgoAllocMap) {
- if x.ref266762df != nil {
- return *x.ref266762df, nil
+func (x PresentRegion) PassValue() (C.VkPresentRegionKHR, *cgoAllocMap) {
+ if x.refbbc0d1b9 != nil {
+ return *x.refbbc0d1b9, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -11316,91 +38222,131 @@ func (x CommandBufferBeginInfo) PassValue() (C.VkCommandBufferBeginInfo, *cgoAll
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *CommandBufferBeginInfo) Deref() {
- if x.ref266762df == nil {
+func (x *PresentRegion) Deref() {
+ if x.refbbc0d1b9 == nil {
return
}
- x.SType = (StructureType)(x.ref266762df.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref266762df.pNext))
- x.Flags = (CommandBufferUsageFlags)(x.ref266762df.flags)
- packSCommandBufferInheritanceInfo(x.PInheritanceInfo, x.ref266762df.pInheritanceInfo)
+ x.RectangleCount = (uint32)(x.refbbc0d1b9.rectangleCount)
+ packSRectLayer(x.PRectangles, x.refbbc0d1b9.pRectangles)
}
-// allocBufferCopyMemory allocates memory for type C.VkBufferCopy in C.
+// allocPresentRegionsMemory allocates memory for type C.VkPresentRegionsKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocBufferCopyMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBufferCopyValue))
+func allocPresentRegionsMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPresentRegionsValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfBufferCopyValue = unsafe.Sizeof([1]C.VkBufferCopy{})
+const sizeOfPresentRegionsValue = unsafe.Sizeof([1]C.VkPresentRegionsKHR{})
+
+// unpackSPresentRegion transforms a sliced Go data structure into plain C format.
+func unpackSPresentRegion(x []PresentRegion) (unpacked *C.VkPresentRegionKHR, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkPresentRegionKHR) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocPresentRegionMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkPresentRegionKHR)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkPresentRegionKHR)(h.Data)
+ return
+}
+
+// packSPresentRegion reads sliced Go data structure out from plain C format.
+func packSPresentRegion(v []PresentRegion, ptr0 *C.VkPresentRegionKHR) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfPresentRegionValue]C.VkPresentRegionKHR)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewPresentRegionRef(unsafe.Pointer(&ptr1))
+ }
+}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *BufferCopy) Ref() *C.VkBufferCopy {
+func (x *PresentRegions) Ref() *C.VkPresentRegionsKHR {
if x == nil {
return nil
}
- return x.ref12184ffd
+ return x.ref62958060
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *BufferCopy) Free() {
- if x != nil && x.allocs12184ffd != nil {
- x.allocs12184ffd.(*cgoAllocMap).Free()
- x.ref12184ffd = nil
+func (x *PresentRegions) Free() {
+ if x != nil && x.allocs62958060 != nil {
+ x.allocs62958060.(*cgoAllocMap).Free()
+ x.ref62958060 = nil
}
}
-// NewBufferCopyRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPresentRegionsRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewBufferCopyRef(ref unsafe.Pointer) *BufferCopy {
+func NewPresentRegionsRef(ref unsafe.Pointer) *PresentRegions {
if ref == nil {
return nil
}
- obj := new(BufferCopy)
- obj.ref12184ffd = (*C.VkBufferCopy)(unsafe.Pointer(ref))
+ obj := new(PresentRegions)
+ obj.ref62958060 = (*C.VkPresentRegionsKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *BufferCopy) PassRef() (*C.VkBufferCopy, *cgoAllocMap) {
+func (x *PresentRegions) PassRef() (*C.VkPresentRegionsKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref12184ffd != nil {
- return x.ref12184ffd, nil
+ } else if x.ref62958060 != nil {
+ return x.ref62958060, nil
}
- mem12184ffd := allocBufferCopyMemory(1)
- ref12184ffd := (*C.VkBufferCopy)(mem12184ffd)
- allocs12184ffd := new(cgoAllocMap)
- allocs12184ffd.Add(mem12184ffd)
+ mem62958060 := allocPresentRegionsMemory(1)
+ ref62958060 := (*C.VkPresentRegionsKHR)(mem62958060)
+ allocs62958060 := new(cgoAllocMap)
+ allocs62958060.Add(mem62958060)
- var csrcOffset_allocs *cgoAllocMap
- ref12184ffd.srcOffset, csrcOffset_allocs = (C.VkDeviceSize)(x.SrcOffset), cgoAllocsUnknown
- allocs12184ffd.Borrow(csrcOffset_allocs)
+ var csType_allocs *cgoAllocMap
+ ref62958060.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs62958060.Borrow(csType_allocs)
- var cdstOffset_allocs *cgoAllocMap
- ref12184ffd.dstOffset, cdstOffset_allocs = (C.VkDeviceSize)(x.DstOffset), cgoAllocsUnknown
- allocs12184ffd.Borrow(cdstOffset_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref62958060.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs62958060.Borrow(cpNext_allocs)
- var csize_allocs *cgoAllocMap
- ref12184ffd.size, csize_allocs = (C.VkDeviceSize)(x.Size), cgoAllocsUnknown
- allocs12184ffd.Borrow(csize_allocs)
+ var cswapchainCount_allocs *cgoAllocMap
+ ref62958060.swapchainCount, cswapchainCount_allocs = (C.uint32_t)(x.SwapchainCount), cgoAllocsUnknown
+ allocs62958060.Borrow(cswapchainCount_allocs)
- x.ref12184ffd = ref12184ffd
- x.allocs12184ffd = allocs12184ffd
- return ref12184ffd, allocs12184ffd
+ var cpRegions_allocs *cgoAllocMap
+ ref62958060.pRegions, cpRegions_allocs = unpackSPresentRegion(x.PRegions)
+ allocs62958060.Borrow(cpRegions_allocs)
+
+ x.ref62958060 = ref62958060
+ x.allocs62958060 = allocs62958060
+ return ref62958060, allocs62958060
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x BufferCopy) PassValue() (C.VkBufferCopy, *cgoAllocMap) {
- if x.ref12184ffd != nil {
- return *x.ref12184ffd, nil
+func (x PresentRegions) PassValue() (C.VkPresentRegionsKHR, *cgoAllocMap) {
+ if x.ref62958060 != nil {
+ return *x.ref62958060, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -11408,94 +38354,91 @@ func (x BufferCopy) PassValue() (C.VkBufferCopy, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *BufferCopy) Deref() {
- if x.ref12184ffd == nil {
+func (x *PresentRegions) Deref() {
+ if x.ref62958060 == nil {
return
}
- x.SrcOffset = (DeviceSize)(x.ref12184ffd.srcOffset)
- x.DstOffset = (DeviceSize)(x.ref12184ffd.dstOffset)
- x.Size = (DeviceSize)(x.ref12184ffd.size)
+ x.SType = (StructureType)(x.ref62958060.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref62958060.pNext))
+ x.SwapchainCount = (uint32)(x.ref62958060.swapchainCount)
+ packSPresentRegion(x.PRegions, x.ref62958060.pRegions)
}
-// allocImageSubresourceLayersMemory allocates memory for type C.VkImageSubresourceLayers in C.
+// allocSharedPresentSurfaceCapabilitiesMemory allocates memory for type C.VkSharedPresentSurfaceCapabilitiesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocImageSubresourceLayersMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageSubresourceLayersValue))
+func allocSharedPresentSurfaceCapabilitiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSharedPresentSurfaceCapabilitiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfImageSubresourceLayersValue = unsafe.Sizeof([1]C.VkImageSubresourceLayers{})
+const sizeOfSharedPresentSurfaceCapabilitiesValue = unsafe.Sizeof([1]C.VkSharedPresentSurfaceCapabilitiesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ImageSubresourceLayers) Ref() *C.VkImageSubresourceLayers {
+func (x *SharedPresentSurfaceCapabilities) Ref() *C.VkSharedPresentSurfaceCapabilitiesKHR {
if x == nil {
return nil
}
- return x.ref3b13bcd2
+ return x.ref3f98a814
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ImageSubresourceLayers) Free() {
- if x != nil && x.allocs3b13bcd2 != nil {
- x.allocs3b13bcd2.(*cgoAllocMap).Free()
- x.ref3b13bcd2 = nil
+func (x *SharedPresentSurfaceCapabilities) Free() {
+ if x != nil && x.allocs3f98a814 != nil {
+ x.allocs3f98a814.(*cgoAllocMap).Free()
+ x.ref3f98a814 = nil
}
}
-// NewImageSubresourceLayersRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewSharedPresentSurfaceCapabilitiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewImageSubresourceLayersRef(ref unsafe.Pointer) *ImageSubresourceLayers {
+func NewSharedPresentSurfaceCapabilitiesRef(ref unsafe.Pointer) *SharedPresentSurfaceCapabilities {
if ref == nil {
return nil
}
- obj := new(ImageSubresourceLayers)
- obj.ref3b13bcd2 = (*C.VkImageSubresourceLayers)(unsafe.Pointer(ref))
+ obj := new(SharedPresentSurfaceCapabilities)
+ obj.ref3f98a814 = (*C.VkSharedPresentSurfaceCapabilitiesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ImageSubresourceLayers) PassRef() (*C.VkImageSubresourceLayers, *cgoAllocMap) {
+func (x *SharedPresentSurfaceCapabilities) PassRef() (*C.VkSharedPresentSurfaceCapabilitiesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref3b13bcd2 != nil {
- return x.ref3b13bcd2, nil
+ } else if x.ref3f98a814 != nil {
+ return x.ref3f98a814, nil
}
- mem3b13bcd2 := allocImageSubresourceLayersMemory(1)
- ref3b13bcd2 := (*C.VkImageSubresourceLayers)(mem3b13bcd2)
- allocs3b13bcd2 := new(cgoAllocMap)
- allocs3b13bcd2.Add(mem3b13bcd2)
-
- var caspectMask_allocs *cgoAllocMap
- ref3b13bcd2.aspectMask, caspectMask_allocs = (C.VkImageAspectFlags)(x.AspectMask), cgoAllocsUnknown
- allocs3b13bcd2.Borrow(caspectMask_allocs)
+ mem3f98a814 := allocSharedPresentSurfaceCapabilitiesMemory(1)
+ ref3f98a814 := (*C.VkSharedPresentSurfaceCapabilitiesKHR)(mem3f98a814)
+ allocs3f98a814 := new(cgoAllocMap)
+ allocs3f98a814.Add(mem3f98a814)
- var cmipLevel_allocs *cgoAllocMap
- ref3b13bcd2.mipLevel, cmipLevel_allocs = (C.uint32_t)(x.MipLevel), cgoAllocsUnknown
- allocs3b13bcd2.Borrow(cmipLevel_allocs)
+ var csType_allocs *cgoAllocMap
+ ref3f98a814.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs3f98a814.Borrow(csType_allocs)
- var cbaseArrayLayer_allocs *cgoAllocMap
- ref3b13bcd2.baseArrayLayer, cbaseArrayLayer_allocs = (C.uint32_t)(x.BaseArrayLayer), cgoAllocsUnknown
- allocs3b13bcd2.Borrow(cbaseArrayLayer_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref3f98a814.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs3f98a814.Borrow(cpNext_allocs)
- var clayerCount_allocs *cgoAllocMap
- ref3b13bcd2.layerCount, clayerCount_allocs = (C.uint32_t)(x.LayerCount), cgoAllocsUnknown
- allocs3b13bcd2.Borrow(clayerCount_allocs)
+ var csharedPresentSupportedUsageFlags_allocs *cgoAllocMap
+ ref3f98a814.sharedPresentSupportedUsageFlags, csharedPresentSupportedUsageFlags_allocs = (C.VkImageUsageFlags)(x.SharedPresentSupportedUsageFlags), cgoAllocsUnknown
+ allocs3f98a814.Borrow(csharedPresentSupportedUsageFlags_allocs)
- x.ref3b13bcd2 = ref3b13bcd2
- x.allocs3b13bcd2 = allocs3b13bcd2
- return ref3b13bcd2, allocs3b13bcd2
+ x.ref3f98a814 = ref3f98a814
+ x.allocs3f98a814 = allocs3f98a814
+ return ref3f98a814, allocs3f98a814
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ImageSubresourceLayers) PassValue() (C.VkImageSubresourceLayers, *cgoAllocMap) {
- if x.ref3b13bcd2 != nil {
- return *x.ref3b13bcd2, nil
+func (x SharedPresentSurfaceCapabilities) PassValue() (C.VkSharedPresentSurfaceCapabilitiesKHR, *cgoAllocMap) {
+ if x.ref3f98a814 != nil {
+ return *x.ref3f98a814, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -11503,99 +38446,102 @@ func (x ImageSubresourceLayers) PassValue() (C.VkImageSubresourceLayers, *cgoAll
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ImageSubresourceLayers) Deref() {
- if x.ref3b13bcd2 == nil {
+func (x *SharedPresentSurfaceCapabilities) Deref() {
+ if x.ref3f98a814 == nil {
return
}
- x.AspectMask = (ImageAspectFlags)(x.ref3b13bcd2.aspectMask)
- x.MipLevel = (uint32)(x.ref3b13bcd2.mipLevel)
- x.BaseArrayLayer = (uint32)(x.ref3b13bcd2.baseArrayLayer)
- x.LayerCount = (uint32)(x.ref3b13bcd2.layerCount)
+ x.SType = (StructureType)(x.ref3f98a814.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref3f98a814.pNext))
+ x.SharedPresentSupportedUsageFlags = (ImageUsageFlags)(x.ref3f98a814.sharedPresentSupportedUsageFlags)
}
-// allocImageCopyMemory allocates memory for type C.VkImageCopy in C.
+// allocImportFenceFdInfoMemory allocates memory for type C.VkImportFenceFdInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocImageCopyMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageCopyValue))
+func allocImportFenceFdInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImportFenceFdInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfImageCopyValue = unsafe.Sizeof([1]C.VkImageCopy{})
+const sizeOfImportFenceFdInfoValue = unsafe.Sizeof([1]C.VkImportFenceFdInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ImageCopy) Ref() *C.VkImageCopy {
+func (x *ImportFenceFdInfo) Ref() *C.VkImportFenceFdInfoKHR {
if x == nil {
return nil
}
- return x.ref4e7a1214
+ return x.ref86ebd28c
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ImageCopy) Free() {
- if x != nil && x.allocs4e7a1214 != nil {
- x.allocs4e7a1214.(*cgoAllocMap).Free()
- x.ref4e7a1214 = nil
+func (x *ImportFenceFdInfo) Free() {
+ if x != nil && x.allocs86ebd28c != nil {
+ x.allocs86ebd28c.(*cgoAllocMap).Free()
+ x.ref86ebd28c = nil
}
}
-// NewImageCopyRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewImportFenceFdInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewImageCopyRef(ref unsafe.Pointer) *ImageCopy {
+func NewImportFenceFdInfoRef(ref unsafe.Pointer) *ImportFenceFdInfo {
if ref == nil {
return nil
}
- obj := new(ImageCopy)
- obj.ref4e7a1214 = (*C.VkImageCopy)(unsafe.Pointer(ref))
+ obj := new(ImportFenceFdInfo)
+ obj.ref86ebd28c = (*C.VkImportFenceFdInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ImageCopy) PassRef() (*C.VkImageCopy, *cgoAllocMap) {
+func (x *ImportFenceFdInfo) PassRef() (*C.VkImportFenceFdInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref4e7a1214 != nil {
- return x.ref4e7a1214, nil
+ } else if x.ref86ebd28c != nil {
+ return x.ref86ebd28c, nil
}
- mem4e7a1214 := allocImageCopyMemory(1)
- ref4e7a1214 := (*C.VkImageCopy)(mem4e7a1214)
- allocs4e7a1214 := new(cgoAllocMap)
- allocs4e7a1214.Add(mem4e7a1214)
+ mem86ebd28c := allocImportFenceFdInfoMemory(1)
+ ref86ebd28c := (*C.VkImportFenceFdInfoKHR)(mem86ebd28c)
+ allocs86ebd28c := new(cgoAllocMap)
+ allocs86ebd28c.Add(mem86ebd28c)
- var csrcSubresource_allocs *cgoAllocMap
- ref4e7a1214.srcSubresource, csrcSubresource_allocs = x.SrcSubresource.PassValue()
- allocs4e7a1214.Borrow(csrcSubresource_allocs)
+ var csType_allocs *cgoAllocMap
+ ref86ebd28c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs86ebd28c.Borrow(csType_allocs)
- var csrcOffset_allocs *cgoAllocMap
- ref4e7a1214.srcOffset, csrcOffset_allocs = x.SrcOffset.PassValue()
- allocs4e7a1214.Borrow(csrcOffset_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref86ebd28c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs86ebd28c.Borrow(cpNext_allocs)
- var cdstSubresource_allocs *cgoAllocMap
- ref4e7a1214.dstSubresource, cdstSubresource_allocs = x.DstSubresource.PassValue()
- allocs4e7a1214.Borrow(cdstSubresource_allocs)
+ var cfence_allocs *cgoAllocMap
+ ref86ebd28c.fence, cfence_allocs = *(*C.VkFence)(unsafe.Pointer(&x.Fence)), cgoAllocsUnknown
+ allocs86ebd28c.Borrow(cfence_allocs)
- var cdstOffset_allocs *cgoAllocMap
- ref4e7a1214.dstOffset, cdstOffset_allocs = x.DstOffset.PassValue()
- allocs4e7a1214.Borrow(cdstOffset_allocs)
+ var cflags_allocs *cgoAllocMap
+ ref86ebd28c.flags, cflags_allocs = (C.VkFenceImportFlags)(x.Flags), cgoAllocsUnknown
+ allocs86ebd28c.Borrow(cflags_allocs)
- var cextent_allocs *cgoAllocMap
- ref4e7a1214.extent, cextent_allocs = x.Extent.PassValue()
- allocs4e7a1214.Borrow(cextent_allocs)
+ var chandleType_allocs *cgoAllocMap
+ ref86ebd28c.handleType, chandleType_allocs = (C.VkExternalFenceHandleTypeFlagBits)(x.HandleType), cgoAllocsUnknown
+ allocs86ebd28c.Borrow(chandleType_allocs)
- x.ref4e7a1214 = ref4e7a1214
- x.allocs4e7a1214 = allocs4e7a1214
- return ref4e7a1214, allocs4e7a1214
+ var cfd_allocs *cgoAllocMap
+ ref86ebd28c.fd, cfd_allocs = (C.int)(x.Fd), cgoAllocsUnknown
+ allocs86ebd28c.Borrow(cfd_allocs)
+
+ x.ref86ebd28c = ref86ebd28c
+ x.allocs86ebd28c = allocs86ebd28c
+ return ref86ebd28c, allocs86ebd28c
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ImageCopy) PassValue() (C.VkImageCopy, *cgoAllocMap) {
- if x.ref4e7a1214 != nil {
- return *x.ref4e7a1214, nil
+func (x ImportFenceFdInfo) PassValue() (C.VkImportFenceFdInfoKHR, *cgoAllocMap) {
+ if x.ref86ebd28c != nil {
+ return *x.ref86ebd28c, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -11603,135 +38549,97 @@ func (x ImageCopy) PassValue() (C.VkImageCopy, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ImageCopy) Deref() {
- if x.ref4e7a1214 == nil {
+func (x *ImportFenceFdInfo) Deref() {
+ if x.ref86ebd28c == nil {
return
}
- x.SrcSubresource = *NewImageSubresourceLayersRef(unsafe.Pointer(&x.ref4e7a1214.srcSubresource))
- x.SrcOffset = *NewOffset3DRef(unsafe.Pointer(&x.ref4e7a1214.srcOffset))
- x.DstSubresource = *NewImageSubresourceLayersRef(unsafe.Pointer(&x.ref4e7a1214.dstSubresource))
- x.DstOffset = *NewOffset3DRef(unsafe.Pointer(&x.ref4e7a1214.dstOffset))
- x.Extent = *NewExtent3DRef(unsafe.Pointer(&x.ref4e7a1214.extent))
-}
-
-// allocImageBlitMemory allocates memory for type C.VkImageBlit in C.
-// The caller is responsible for freeing the this memory via C.free.
-func allocImageBlitMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageBlitValue))
- if err != nil {
- panic("memory alloc error: " + err.Error())
- }
- return mem
+ x.SType = (StructureType)(x.ref86ebd28c.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref86ebd28c.pNext))
+ x.Fence = *(*Fence)(unsafe.Pointer(&x.ref86ebd28c.fence))
+ x.Flags = (FenceImportFlags)(x.ref86ebd28c.flags)
+ x.HandleType = (ExternalFenceHandleTypeFlagBits)(x.ref86ebd28c.handleType)
+ x.Fd = (int32)(x.ref86ebd28c.fd)
}
-const sizeOfImageBlitValue = unsafe.Sizeof([1]C.VkImageBlit{})
-
-// allocA2Offset3DMemory allocates memory for type [2]C.VkOffset3D in C.
+// allocFenceGetFdInfoMemory allocates memory for type C.VkFenceGetFdInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocA2Offset3DMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfA2Offset3DValue))
+func allocFenceGetFdInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfFenceGetFdInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfA2Offset3DValue = unsafe.Sizeof([1][2]C.VkOffset3D{})
-
-// unpackA2Offset3D transforms a sliced Go data structure into plain C format.
-func unpackA2Offset3D(x [2]Offset3D) (unpacked [2]C.VkOffset3D, allocs *cgoAllocMap) {
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(*[2]C.VkOffset3D) {
- go allocs.Free()
- })
-
- mem0 := allocA2Offset3DMemory(1)
- allocs.Add(mem0)
- v0 := (*[2]C.VkOffset3D)(mem0)
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- unpacked = *(*[2]C.VkOffset3D)(mem0)
- return
-}
-
-// packA2Offset3D reads sliced Go data structure out from plain C format.
-func packA2Offset3D(v *[2]Offset3D, ptr0 *[2]C.VkOffset3D) {
- for i0 := range v {
- ptr1 := ptr0[i0]
- v[i0] = *NewOffset3DRef(unsafe.Pointer(&ptr1))
- }
-}
-
+const sizeOfFenceGetFdInfoValue = unsafe.Sizeof([1]C.VkFenceGetFdInfoKHR{})
+
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ImageBlit) Ref() *C.VkImageBlit {
+func (x *FenceGetFdInfo) Ref() *C.VkFenceGetFdInfoKHR {
if x == nil {
return nil
}
- return x.ref11311e8d
+ return x.refc2668bc3
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ImageBlit) Free() {
- if x != nil && x.allocs11311e8d != nil {
- x.allocs11311e8d.(*cgoAllocMap).Free()
- x.ref11311e8d = nil
+func (x *FenceGetFdInfo) Free() {
+ if x != nil && x.allocsc2668bc3 != nil {
+ x.allocsc2668bc3.(*cgoAllocMap).Free()
+ x.refc2668bc3 = nil
}
}
-// NewImageBlitRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewFenceGetFdInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewImageBlitRef(ref unsafe.Pointer) *ImageBlit {
+func NewFenceGetFdInfoRef(ref unsafe.Pointer) *FenceGetFdInfo {
if ref == nil {
return nil
}
- obj := new(ImageBlit)
- obj.ref11311e8d = (*C.VkImageBlit)(unsafe.Pointer(ref))
+ obj := new(FenceGetFdInfo)
+ obj.refc2668bc3 = (*C.VkFenceGetFdInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ImageBlit) PassRef() (*C.VkImageBlit, *cgoAllocMap) {
+func (x *FenceGetFdInfo) PassRef() (*C.VkFenceGetFdInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref11311e8d != nil {
- return x.ref11311e8d, nil
+ } else if x.refc2668bc3 != nil {
+ return x.refc2668bc3, nil
}
- mem11311e8d := allocImageBlitMemory(1)
- ref11311e8d := (*C.VkImageBlit)(mem11311e8d)
- allocs11311e8d := new(cgoAllocMap)
- allocs11311e8d.Add(mem11311e8d)
+ memc2668bc3 := allocFenceGetFdInfoMemory(1)
+ refc2668bc3 := (*C.VkFenceGetFdInfoKHR)(memc2668bc3)
+ allocsc2668bc3 := new(cgoAllocMap)
+ allocsc2668bc3.Add(memc2668bc3)
- var csrcSubresource_allocs *cgoAllocMap
- ref11311e8d.srcSubresource, csrcSubresource_allocs = x.SrcSubresource.PassValue()
- allocs11311e8d.Borrow(csrcSubresource_allocs)
+ var csType_allocs *cgoAllocMap
+ refc2668bc3.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsc2668bc3.Borrow(csType_allocs)
- var csrcOffsets_allocs *cgoAllocMap
- ref11311e8d.srcOffsets, csrcOffsets_allocs = unpackA2Offset3D(x.SrcOffsets)
- allocs11311e8d.Borrow(csrcOffsets_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refc2668bc3.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsc2668bc3.Borrow(cpNext_allocs)
- var cdstSubresource_allocs *cgoAllocMap
- ref11311e8d.dstSubresource, cdstSubresource_allocs = x.DstSubresource.PassValue()
- allocs11311e8d.Borrow(cdstSubresource_allocs)
+ var cfence_allocs *cgoAllocMap
+ refc2668bc3.fence, cfence_allocs = *(*C.VkFence)(unsafe.Pointer(&x.Fence)), cgoAllocsUnknown
+ allocsc2668bc3.Borrow(cfence_allocs)
- var cdstOffsets_allocs *cgoAllocMap
- ref11311e8d.dstOffsets, cdstOffsets_allocs = unpackA2Offset3D(x.DstOffsets)
- allocs11311e8d.Borrow(cdstOffsets_allocs)
+ var chandleType_allocs *cgoAllocMap
+ refc2668bc3.handleType, chandleType_allocs = (C.VkExternalFenceHandleTypeFlagBits)(x.HandleType), cgoAllocsUnknown
+ allocsc2668bc3.Borrow(chandleType_allocs)
- x.ref11311e8d = ref11311e8d
- x.allocs11311e8d = allocs11311e8d
- return ref11311e8d, allocs11311e8d
+ x.refc2668bc3 = refc2668bc3
+ x.allocsc2668bc3 = allocsc2668bc3
+ return refc2668bc3, allocsc2668bc3
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ImageBlit) PassValue() (C.VkImageBlit, *cgoAllocMap) {
- if x.ref11311e8d != nil {
- return *x.ref11311e8d, nil
+func (x FenceGetFdInfo) PassValue() (C.VkFenceGetFdInfoKHR, *cgoAllocMap) {
+ if x.refc2668bc3 != nil {
+ return *x.refc2668bc3, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -11739,103 +38647,95 @@ func (x ImageBlit) PassValue() (C.VkImageBlit, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ImageBlit) Deref() {
- if x.ref11311e8d == nil {
+func (x *FenceGetFdInfo) Deref() {
+ if x.refc2668bc3 == nil {
return
}
- x.SrcSubresource = *NewImageSubresourceLayersRef(unsafe.Pointer(&x.ref11311e8d.srcSubresource))
- packA2Offset3D(&x.SrcOffsets, (*[2]C.VkOffset3D)(unsafe.Pointer(&x.ref11311e8d.srcOffsets)))
- x.DstSubresource = *NewImageSubresourceLayersRef(unsafe.Pointer(&x.ref11311e8d.dstSubresource))
- packA2Offset3D(&x.DstOffsets, (*[2]C.VkOffset3D)(unsafe.Pointer(&x.ref11311e8d.dstOffsets)))
+ x.SType = (StructureType)(x.refc2668bc3.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc2668bc3.pNext))
+ x.Fence = *(*Fence)(unsafe.Pointer(&x.refc2668bc3.fence))
+ x.HandleType = (ExternalFenceHandleTypeFlagBits)(x.refc2668bc3.handleType)
}
-// allocBufferImageCopyMemory allocates memory for type C.VkBufferImageCopy in C.
+// allocPhysicalDevicePerformanceQueryFeaturesMemory allocates memory for type C.VkPhysicalDevicePerformanceQueryFeaturesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocBufferImageCopyMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBufferImageCopyValue))
+func allocPhysicalDevicePerformanceQueryFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDevicePerformanceQueryFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfBufferImageCopyValue = unsafe.Sizeof([1]C.VkBufferImageCopy{})
+const sizeOfPhysicalDevicePerformanceQueryFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDevicePerformanceQueryFeaturesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *BufferImageCopy) Ref() *C.VkBufferImageCopy {
+func (x *PhysicalDevicePerformanceQueryFeatures) Ref() *C.VkPhysicalDevicePerformanceQueryFeaturesKHR {
if x == nil {
return nil
}
- return x.ref6d50e36e
+ return x.ref8e4527cb
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *BufferImageCopy) Free() {
- if x != nil && x.allocs6d50e36e != nil {
- x.allocs6d50e36e.(*cgoAllocMap).Free()
- x.ref6d50e36e = nil
+func (x *PhysicalDevicePerformanceQueryFeatures) Free() {
+ if x != nil && x.allocs8e4527cb != nil {
+ x.allocs8e4527cb.(*cgoAllocMap).Free()
+ x.ref8e4527cb = nil
}
}
-// NewBufferImageCopyRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDevicePerformanceQueryFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewBufferImageCopyRef(ref unsafe.Pointer) *BufferImageCopy {
+func NewPhysicalDevicePerformanceQueryFeaturesRef(ref unsafe.Pointer) *PhysicalDevicePerformanceQueryFeatures {
if ref == nil {
return nil
}
- obj := new(BufferImageCopy)
- obj.ref6d50e36e = (*C.VkBufferImageCopy)(unsafe.Pointer(ref))
+ obj := new(PhysicalDevicePerformanceQueryFeatures)
+ obj.ref8e4527cb = (*C.VkPhysicalDevicePerformanceQueryFeaturesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *BufferImageCopy) PassRef() (*C.VkBufferImageCopy, *cgoAllocMap) {
+func (x *PhysicalDevicePerformanceQueryFeatures) PassRef() (*C.VkPhysicalDevicePerformanceQueryFeaturesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref6d50e36e != nil {
- return x.ref6d50e36e, nil
+ } else if x.ref8e4527cb != nil {
+ return x.ref8e4527cb, nil
}
- mem6d50e36e := allocBufferImageCopyMemory(1)
- ref6d50e36e := (*C.VkBufferImageCopy)(mem6d50e36e)
- allocs6d50e36e := new(cgoAllocMap)
- allocs6d50e36e.Add(mem6d50e36e)
-
- var cbufferOffset_allocs *cgoAllocMap
- ref6d50e36e.bufferOffset, cbufferOffset_allocs = (C.VkDeviceSize)(x.BufferOffset), cgoAllocsUnknown
- allocs6d50e36e.Borrow(cbufferOffset_allocs)
-
- var cbufferRowLength_allocs *cgoAllocMap
- ref6d50e36e.bufferRowLength, cbufferRowLength_allocs = (C.uint32_t)(x.BufferRowLength), cgoAllocsUnknown
- allocs6d50e36e.Borrow(cbufferRowLength_allocs)
+ mem8e4527cb := allocPhysicalDevicePerformanceQueryFeaturesMemory(1)
+ ref8e4527cb := (*C.VkPhysicalDevicePerformanceQueryFeaturesKHR)(mem8e4527cb)
+ allocs8e4527cb := new(cgoAllocMap)
+ allocs8e4527cb.Add(mem8e4527cb)
- var cbufferImageHeight_allocs *cgoAllocMap
- ref6d50e36e.bufferImageHeight, cbufferImageHeight_allocs = (C.uint32_t)(x.BufferImageHeight), cgoAllocsUnknown
- allocs6d50e36e.Borrow(cbufferImageHeight_allocs)
+ var csType_allocs *cgoAllocMap
+ ref8e4527cb.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs8e4527cb.Borrow(csType_allocs)
- var cimageSubresource_allocs *cgoAllocMap
- ref6d50e36e.imageSubresource, cimageSubresource_allocs = x.ImageSubresource.PassValue()
- allocs6d50e36e.Borrow(cimageSubresource_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref8e4527cb.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs8e4527cb.Borrow(cpNext_allocs)
- var cimageOffset_allocs *cgoAllocMap
- ref6d50e36e.imageOffset, cimageOffset_allocs = x.ImageOffset.PassValue()
- allocs6d50e36e.Borrow(cimageOffset_allocs)
+ var cperformanceCounterQueryPools_allocs *cgoAllocMap
+ ref8e4527cb.performanceCounterQueryPools, cperformanceCounterQueryPools_allocs = (C.VkBool32)(x.PerformanceCounterQueryPools), cgoAllocsUnknown
+ allocs8e4527cb.Borrow(cperformanceCounterQueryPools_allocs)
- var cimageExtent_allocs *cgoAllocMap
- ref6d50e36e.imageExtent, cimageExtent_allocs = x.ImageExtent.PassValue()
- allocs6d50e36e.Borrow(cimageExtent_allocs)
+ var cperformanceCounterMultipleQueryPools_allocs *cgoAllocMap
+ ref8e4527cb.performanceCounterMultipleQueryPools, cperformanceCounterMultipleQueryPools_allocs = (C.VkBool32)(x.PerformanceCounterMultipleQueryPools), cgoAllocsUnknown
+ allocs8e4527cb.Borrow(cperformanceCounterMultipleQueryPools_allocs)
- x.ref6d50e36e = ref6d50e36e
- x.allocs6d50e36e = allocs6d50e36e
- return ref6d50e36e, allocs6d50e36e
+ x.ref8e4527cb = ref8e4527cb
+ x.allocs8e4527cb = allocs8e4527cb
+ return ref8e4527cb, allocs8e4527cb
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x BufferImageCopy) PassValue() (C.VkBufferImageCopy, *cgoAllocMap) {
- if x.ref6d50e36e != nil {
- return *x.ref6d50e36e, nil
+func (x PhysicalDevicePerformanceQueryFeatures) PassValue() (C.VkPhysicalDevicePerformanceQueryFeaturesKHR, *cgoAllocMap) {
+ if x.ref8e4527cb != nil {
+ return *x.ref8e4527cb, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -11843,89 +38743,91 @@ func (x BufferImageCopy) PassValue() (C.VkBufferImageCopy, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *BufferImageCopy) Deref() {
- if x.ref6d50e36e == nil {
+func (x *PhysicalDevicePerformanceQueryFeatures) Deref() {
+ if x.ref8e4527cb == nil {
return
}
- x.BufferOffset = (DeviceSize)(x.ref6d50e36e.bufferOffset)
- x.BufferRowLength = (uint32)(x.ref6d50e36e.bufferRowLength)
- x.BufferImageHeight = (uint32)(x.ref6d50e36e.bufferImageHeight)
- x.ImageSubresource = *NewImageSubresourceLayersRef(unsafe.Pointer(&x.ref6d50e36e.imageSubresource))
- x.ImageOffset = *NewOffset3DRef(unsafe.Pointer(&x.ref6d50e36e.imageOffset))
- x.ImageExtent = *NewExtent3DRef(unsafe.Pointer(&x.ref6d50e36e.imageExtent))
+ x.SType = (StructureType)(x.ref8e4527cb.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref8e4527cb.pNext))
+ x.PerformanceCounterQueryPools = (Bool32)(x.ref8e4527cb.performanceCounterQueryPools)
+ x.PerformanceCounterMultipleQueryPools = (Bool32)(x.ref8e4527cb.performanceCounterMultipleQueryPools)
}
-// allocClearDepthStencilValueMemory allocates memory for type C.VkClearDepthStencilValue in C.
+// allocPhysicalDevicePerformanceQueryPropertiesMemory allocates memory for type C.VkPhysicalDevicePerformanceQueryPropertiesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocClearDepthStencilValueMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfClearDepthStencilValueValue))
+func allocPhysicalDevicePerformanceQueryPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDevicePerformanceQueryPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfClearDepthStencilValueValue = unsafe.Sizeof([1]C.VkClearDepthStencilValue{})
+const sizeOfPhysicalDevicePerformanceQueryPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDevicePerformanceQueryPropertiesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ClearDepthStencilValue) Ref() *C.VkClearDepthStencilValue {
+func (x *PhysicalDevicePerformanceQueryProperties) Ref() *C.VkPhysicalDevicePerformanceQueryPropertiesKHR {
if x == nil {
return nil
}
- return x.refa7d07c03
+ return x.refc3efa645
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ClearDepthStencilValue) Free() {
- if x != nil && x.allocsa7d07c03 != nil {
- x.allocsa7d07c03.(*cgoAllocMap).Free()
- x.refa7d07c03 = nil
+func (x *PhysicalDevicePerformanceQueryProperties) Free() {
+ if x != nil && x.allocsc3efa645 != nil {
+ x.allocsc3efa645.(*cgoAllocMap).Free()
+ x.refc3efa645 = nil
}
}
-// NewClearDepthStencilValueRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDevicePerformanceQueryPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewClearDepthStencilValueRef(ref unsafe.Pointer) *ClearDepthStencilValue {
+func NewPhysicalDevicePerformanceQueryPropertiesRef(ref unsafe.Pointer) *PhysicalDevicePerformanceQueryProperties {
if ref == nil {
return nil
}
- obj := new(ClearDepthStencilValue)
- obj.refa7d07c03 = (*C.VkClearDepthStencilValue)(unsafe.Pointer(ref))
+ obj := new(PhysicalDevicePerformanceQueryProperties)
+ obj.refc3efa645 = (*C.VkPhysicalDevicePerformanceQueryPropertiesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ClearDepthStencilValue) PassRef() (*C.VkClearDepthStencilValue, *cgoAllocMap) {
+func (x *PhysicalDevicePerformanceQueryProperties) PassRef() (*C.VkPhysicalDevicePerformanceQueryPropertiesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refa7d07c03 != nil {
- return x.refa7d07c03, nil
+ } else if x.refc3efa645 != nil {
+ return x.refc3efa645, nil
}
- mema7d07c03 := allocClearDepthStencilValueMemory(1)
- refa7d07c03 := (*C.VkClearDepthStencilValue)(mema7d07c03)
- allocsa7d07c03 := new(cgoAllocMap)
- allocsa7d07c03.Add(mema7d07c03)
+ memc3efa645 := allocPhysicalDevicePerformanceQueryPropertiesMemory(1)
+ refc3efa645 := (*C.VkPhysicalDevicePerformanceQueryPropertiesKHR)(memc3efa645)
+ allocsc3efa645 := new(cgoAllocMap)
+ allocsc3efa645.Add(memc3efa645)
- var cdepth_allocs *cgoAllocMap
- refa7d07c03.depth, cdepth_allocs = (C.float)(x.Depth), cgoAllocsUnknown
- allocsa7d07c03.Borrow(cdepth_allocs)
+ var csType_allocs *cgoAllocMap
+ refc3efa645.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsc3efa645.Borrow(csType_allocs)
- var cstencil_allocs *cgoAllocMap
- refa7d07c03.stencil, cstencil_allocs = (C.uint32_t)(x.Stencil), cgoAllocsUnknown
- allocsa7d07c03.Borrow(cstencil_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refc3efa645.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsc3efa645.Borrow(cpNext_allocs)
- x.refa7d07c03 = refa7d07c03
- x.allocsa7d07c03 = allocsa7d07c03
- return refa7d07c03, allocsa7d07c03
+ var callowCommandBufferQueryCopies_allocs *cgoAllocMap
+ refc3efa645.allowCommandBufferQueryCopies, callowCommandBufferQueryCopies_allocs = (C.VkBool32)(x.AllowCommandBufferQueryCopies), cgoAllocsUnknown
+ allocsc3efa645.Borrow(callowCommandBufferQueryCopies_allocs)
+
+ x.refc3efa645 = refc3efa645
+ x.allocsc3efa645 = allocsc3efa645
+ return refc3efa645, allocsc3efa645
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ClearDepthStencilValue) PassValue() (C.VkClearDepthStencilValue, *cgoAllocMap) {
- if x.refa7d07c03 != nil {
- return *x.refa7d07c03, nil
+func (x PhysicalDevicePerformanceQueryProperties) PassValue() (C.VkPhysicalDevicePerformanceQueryPropertiesKHR, *cgoAllocMap) {
+ if x.refc3efa645 != nil {
+ return *x.refc3efa645, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -11933,89 +38835,102 @@ func (x ClearDepthStencilValue) PassValue() (C.VkClearDepthStencilValue, *cgoAll
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ClearDepthStencilValue) Deref() {
- if x.refa7d07c03 == nil {
+func (x *PhysicalDevicePerformanceQueryProperties) Deref() {
+ if x.refc3efa645 == nil {
return
}
- x.Depth = (float32)(x.refa7d07c03.depth)
- x.Stencil = (uint32)(x.refa7d07c03.stencil)
+ x.SType = (StructureType)(x.refc3efa645.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc3efa645.pNext))
+ x.AllowCommandBufferQueryCopies = (Bool32)(x.refc3efa645.allowCommandBufferQueryCopies)
}
-// allocClearAttachmentMemory allocates memory for type C.VkClearAttachment in C.
+// allocPerformanceCounterMemory allocates memory for type C.VkPerformanceCounterKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocClearAttachmentMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfClearAttachmentValue))
+func allocPerformanceCounterMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPerformanceCounterValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfClearAttachmentValue = unsafe.Sizeof([1]C.VkClearAttachment{})
+const sizeOfPerformanceCounterValue = unsafe.Sizeof([1]C.VkPerformanceCounterKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ClearAttachment) Ref() *C.VkClearAttachment {
+func (x *PerformanceCounter) Ref() *C.VkPerformanceCounterKHR {
if x == nil {
return nil
}
- return x.refe9150303
+ return x.refc754b4e5
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ClearAttachment) Free() {
- if x != nil && x.allocse9150303 != nil {
- x.allocse9150303.(*cgoAllocMap).Free()
- x.refe9150303 = nil
+func (x *PerformanceCounter) Free() {
+ if x != nil && x.allocsc754b4e5 != nil {
+ x.allocsc754b4e5.(*cgoAllocMap).Free()
+ x.refc754b4e5 = nil
}
}
-// NewClearAttachmentRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPerformanceCounterRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewClearAttachmentRef(ref unsafe.Pointer) *ClearAttachment {
+func NewPerformanceCounterRef(ref unsafe.Pointer) *PerformanceCounter {
if ref == nil {
return nil
}
- obj := new(ClearAttachment)
- obj.refe9150303 = (*C.VkClearAttachment)(unsafe.Pointer(ref))
+ obj := new(PerformanceCounter)
+ obj.refc754b4e5 = (*C.VkPerformanceCounterKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ClearAttachment) PassRef() (*C.VkClearAttachment, *cgoAllocMap) {
+func (x *PerformanceCounter) PassRef() (*C.VkPerformanceCounterKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refe9150303 != nil {
- return x.refe9150303, nil
+ } else if x.refc754b4e5 != nil {
+ return x.refc754b4e5, nil
}
- meme9150303 := allocClearAttachmentMemory(1)
- refe9150303 := (*C.VkClearAttachment)(meme9150303)
- allocse9150303 := new(cgoAllocMap)
- allocse9150303.Add(meme9150303)
+ memc754b4e5 := allocPerformanceCounterMemory(1)
+ refc754b4e5 := (*C.VkPerformanceCounterKHR)(memc754b4e5)
+ allocsc754b4e5 := new(cgoAllocMap)
+ allocsc754b4e5.Add(memc754b4e5)
- var caspectMask_allocs *cgoAllocMap
- refe9150303.aspectMask, caspectMask_allocs = (C.VkImageAspectFlags)(x.AspectMask), cgoAllocsUnknown
- allocse9150303.Borrow(caspectMask_allocs)
+ var csType_allocs *cgoAllocMap
+ refc754b4e5.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsc754b4e5.Borrow(csType_allocs)
- var ccolorAttachment_allocs *cgoAllocMap
- refe9150303.colorAttachment, ccolorAttachment_allocs = (C.uint32_t)(x.ColorAttachment), cgoAllocsUnknown
- allocse9150303.Borrow(ccolorAttachment_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refc754b4e5.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsc754b4e5.Borrow(cpNext_allocs)
- var cclearValue_allocs *cgoAllocMap
- refe9150303.clearValue, cclearValue_allocs = *(*C.VkClearValue)(unsafe.Pointer(&x.ClearValue)), cgoAllocsUnknown
- allocse9150303.Borrow(cclearValue_allocs)
+ var cunit_allocs *cgoAllocMap
+ refc754b4e5.unit, cunit_allocs = (C.VkPerformanceCounterUnitKHR)(x.Unit), cgoAllocsUnknown
+ allocsc754b4e5.Borrow(cunit_allocs)
- x.refe9150303 = refe9150303
- x.allocse9150303 = allocse9150303
- return refe9150303, allocse9150303
+ var cscope_allocs *cgoAllocMap
+ refc754b4e5.scope, cscope_allocs = (C.VkPerformanceCounterScopeKHR)(x.Scope), cgoAllocsUnknown
+ allocsc754b4e5.Borrow(cscope_allocs)
+
+ var cstorage_allocs *cgoAllocMap
+ refc754b4e5.storage, cstorage_allocs = (C.VkPerformanceCounterStorageKHR)(x.Storage), cgoAllocsUnknown
+ allocsc754b4e5.Borrow(cstorage_allocs)
+
+ var cuuid_allocs *cgoAllocMap
+ refc754b4e5.uuid, cuuid_allocs = *(*[16]C.uint8_t)(unsafe.Pointer(&x.Uuid)), cgoAllocsUnknown
+ allocsc754b4e5.Borrow(cuuid_allocs)
+
+ x.refc754b4e5 = refc754b4e5
+ x.allocsc754b4e5 = allocsc754b4e5
+ return refc754b4e5, allocsc754b4e5
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ClearAttachment) PassValue() (C.VkClearAttachment, *cgoAllocMap) {
- if x.refe9150303 != nil {
- return *x.refe9150303, nil
+func (x PerformanceCounter) PassValue() (C.VkPerformanceCounterKHR, *cgoAllocMap) {
+ if x.refc754b4e5 != nil {
+ return *x.refc754b4e5, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -12023,90 +38938,105 @@ func (x ClearAttachment) PassValue() (C.VkClearAttachment, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ClearAttachment) Deref() {
- if x.refe9150303 == nil {
+func (x *PerformanceCounter) Deref() {
+ if x.refc754b4e5 == nil {
return
}
- x.AspectMask = (ImageAspectFlags)(x.refe9150303.aspectMask)
- x.ColorAttachment = (uint32)(x.refe9150303.colorAttachment)
- x.ClearValue = *(*ClearValue)(unsafe.Pointer(&x.refe9150303.clearValue))
+ x.SType = (StructureType)(x.refc754b4e5.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc754b4e5.pNext))
+ x.Unit = (PerformanceCounterUnit)(x.refc754b4e5.unit)
+ x.Scope = (PerformanceCounterScope)(x.refc754b4e5.scope)
+ x.Storage = (PerformanceCounterStorage)(x.refc754b4e5.storage)
+ x.Uuid = *(*[16]byte)(unsafe.Pointer(&x.refc754b4e5.uuid))
}
-// allocClearRectMemory allocates memory for type C.VkClearRect in C.
+// allocPerformanceCounterDescriptionMemory allocates memory for type C.VkPerformanceCounterDescriptionKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocClearRectMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfClearRectValue))
+func allocPerformanceCounterDescriptionMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPerformanceCounterDescriptionValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfClearRectValue = unsafe.Sizeof([1]C.VkClearRect{})
+const sizeOfPerformanceCounterDescriptionValue = unsafe.Sizeof([1]C.VkPerformanceCounterDescriptionKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ClearRect) Ref() *C.VkClearRect {
+func (x *PerformanceCounterDescription) Ref() *C.VkPerformanceCounterDescriptionKHR {
if x == nil {
return nil
}
- return x.ref1d449c8b
+ return x.ref95209df5
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ClearRect) Free() {
- if x != nil && x.allocs1d449c8b != nil {
- x.allocs1d449c8b.(*cgoAllocMap).Free()
- x.ref1d449c8b = nil
+func (x *PerformanceCounterDescription) Free() {
+ if x != nil && x.allocs95209df5 != nil {
+ x.allocs95209df5.(*cgoAllocMap).Free()
+ x.ref95209df5 = nil
}
}
-// NewClearRectRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPerformanceCounterDescriptionRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewClearRectRef(ref unsafe.Pointer) *ClearRect {
+func NewPerformanceCounterDescriptionRef(ref unsafe.Pointer) *PerformanceCounterDescription {
if ref == nil {
return nil
}
- obj := new(ClearRect)
- obj.ref1d449c8b = (*C.VkClearRect)(unsafe.Pointer(ref))
+ obj := new(PerformanceCounterDescription)
+ obj.ref95209df5 = (*C.VkPerformanceCounterDescriptionKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ClearRect) PassRef() (*C.VkClearRect, *cgoAllocMap) {
+func (x *PerformanceCounterDescription) PassRef() (*C.VkPerformanceCounterDescriptionKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref1d449c8b != nil {
- return x.ref1d449c8b, nil
+ } else if x.ref95209df5 != nil {
+ return x.ref95209df5, nil
}
- mem1d449c8b := allocClearRectMemory(1)
- ref1d449c8b := (*C.VkClearRect)(mem1d449c8b)
- allocs1d449c8b := new(cgoAllocMap)
- allocs1d449c8b.Add(mem1d449c8b)
+ mem95209df5 := allocPerformanceCounterDescriptionMemory(1)
+ ref95209df5 := (*C.VkPerformanceCounterDescriptionKHR)(mem95209df5)
+ allocs95209df5 := new(cgoAllocMap)
+ allocs95209df5.Add(mem95209df5)
- var crect_allocs *cgoAllocMap
- ref1d449c8b.rect, crect_allocs = x.Rect.PassValue()
- allocs1d449c8b.Borrow(crect_allocs)
+ var csType_allocs *cgoAllocMap
+ ref95209df5.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs95209df5.Borrow(csType_allocs)
- var cbaseArrayLayer_allocs *cgoAllocMap
- ref1d449c8b.baseArrayLayer, cbaseArrayLayer_allocs = (C.uint32_t)(x.BaseArrayLayer), cgoAllocsUnknown
- allocs1d449c8b.Borrow(cbaseArrayLayer_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref95209df5.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs95209df5.Borrow(cpNext_allocs)
- var clayerCount_allocs *cgoAllocMap
- ref1d449c8b.layerCount, clayerCount_allocs = (C.uint32_t)(x.LayerCount), cgoAllocsUnknown
- allocs1d449c8b.Borrow(clayerCount_allocs)
+ var cflags_allocs *cgoAllocMap
+ ref95209df5.flags, cflags_allocs = (C.VkPerformanceCounterDescriptionFlagsKHR)(x.Flags), cgoAllocsUnknown
+ allocs95209df5.Borrow(cflags_allocs)
- x.ref1d449c8b = ref1d449c8b
- x.allocs1d449c8b = allocs1d449c8b
- return ref1d449c8b, allocs1d449c8b
+ var cname_allocs *cgoAllocMap
+ ref95209df5.name, cname_allocs = *(*[256]C.char)(unsafe.Pointer(&x.Name)), cgoAllocsUnknown
+ allocs95209df5.Borrow(cname_allocs)
+
+ var ccategory_allocs *cgoAllocMap
+ ref95209df5.category, ccategory_allocs = *(*[256]C.char)(unsafe.Pointer(&x.Category)), cgoAllocsUnknown
+ allocs95209df5.Borrow(ccategory_allocs)
+
+ var cdescription_allocs *cgoAllocMap
+ ref95209df5.description, cdescription_allocs = *(*[256]C.char)(unsafe.Pointer(&x.Description)), cgoAllocsUnknown
+ allocs95209df5.Borrow(cdescription_allocs)
+
+ x.ref95209df5 = ref95209df5
+ x.allocs95209df5 = allocs95209df5
+ return ref95209df5, allocs95209df5
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ClearRect) PassValue() (C.VkClearRect, *cgoAllocMap) {
- if x.ref1d449c8b != nil {
- return *x.ref1d449c8b, nil
+func (x PerformanceCounterDescription) PassValue() (C.VkPerformanceCounterDescriptionKHR, *cgoAllocMap) {
+ if x.ref95209df5 != nil {
+ return *x.ref95209df5, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -12114,98 +39044,101 @@ func (x ClearRect) PassValue() (C.VkClearRect, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ClearRect) Deref() {
- if x.ref1d449c8b == nil {
+func (x *PerformanceCounterDescription) Deref() {
+ if x.ref95209df5 == nil {
return
}
- x.Rect = *NewRect2DRef(unsafe.Pointer(&x.ref1d449c8b.rect))
- x.BaseArrayLayer = (uint32)(x.ref1d449c8b.baseArrayLayer)
- x.LayerCount = (uint32)(x.ref1d449c8b.layerCount)
+ x.SType = (StructureType)(x.ref95209df5.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref95209df5.pNext))
+ x.Flags = (PerformanceCounterDescriptionFlags)(x.ref95209df5.flags)
+ x.Name = *(*[256]byte)(unsafe.Pointer(&x.ref95209df5.name))
+ x.Category = *(*[256]byte)(unsafe.Pointer(&x.ref95209df5.category))
+ x.Description = *(*[256]byte)(unsafe.Pointer(&x.ref95209df5.description))
}
-// allocImageResolveMemory allocates memory for type C.VkImageResolve in C.
+// allocQueryPoolPerformanceCreateInfoMemory allocates memory for type C.VkQueryPoolPerformanceCreateInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocImageResolveMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageResolveValue))
+func allocQueryPoolPerformanceCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfQueryPoolPerformanceCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfImageResolveValue = unsafe.Sizeof([1]C.VkImageResolve{})
+const sizeOfQueryPoolPerformanceCreateInfoValue = unsafe.Sizeof([1]C.VkQueryPoolPerformanceCreateInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ImageResolve) Ref() *C.VkImageResolve {
+func (x *QueryPoolPerformanceCreateInfo) Ref() *C.VkQueryPoolPerformanceCreateInfoKHR {
if x == nil {
return nil
}
- return x.ref7bda856d
+ return x.ref55afa561
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ImageResolve) Free() {
- if x != nil && x.allocs7bda856d != nil {
- x.allocs7bda856d.(*cgoAllocMap).Free()
- x.ref7bda856d = nil
+func (x *QueryPoolPerformanceCreateInfo) Free() {
+ if x != nil && x.allocs55afa561 != nil {
+ x.allocs55afa561.(*cgoAllocMap).Free()
+ x.ref55afa561 = nil
}
}
-// NewImageResolveRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewQueryPoolPerformanceCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewImageResolveRef(ref unsafe.Pointer) *ImageResolve {
+func NewQueryPoolPerformanceCreateInfoRef(ref unsafe.Pointer) *QueryPoolPerformanceCreateInfo {
if ref == nil {
return nil
}
- obj := new(ImageResolve)
- obj.ref7bda856d = (*C.VkImageResolve)(unsafe.Pointer(ref))
+ obj := new(QueryPoolPerformanceCreateInfo)
+ obj.ref55afa561 = (*C.VkQueryPoolPerformanceCreateInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ImageResolve) PassRef() (*C.VkImageResolve, *cgoAllocMap) {
+func (x *QueryPoolPerformanceCreateInfo) PassRef() (*C.VkQueryPoolPerformanceCreateInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref7bda856d != nil {
- return x.ref7bda856d, nil
+ } else if x.ref55afa561 != nil {
+ return x.ref55afa561, nil
}
- mem7bda856d := allocImageResolveMemory(1)
- ref7bda856d := (*C.VkImageResolve)(mem7bda856d)
- allocs7bda856d := new(cgoAllocMap)
- allocs7bda856d.Add(mem7bda856d)
+ mem55afa561 := allocQueryPoolPerformanceCreateInfoMemory(1)
+ ref55afa561 := (*C.VkQueryPoolPerformanceCreateInfoKHR)(mem55afa561)
+ allocs55afa561 := new(cgoAllocMap)
+ allocs55afa561.Add(mem55afa561)
- var csrcSubresource_allocs *cgoAllocMap
- ref7bda856d.srcSubresource, csrcSubresource_allocs = x.SrcSubresource.PassValue()
- allocs7bda856d.Borrow(csrcSubresource_allocs)
+ var csType_allocs *cgoAllocMap
+ ref55afa561.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs55afa561.Borrow(csType_allocs)
- var csrcOffset_allocs *cgoAllocMap
- ref7bda856d.srcOffset, csrcOffset_allocs = x.SrcOffset.PassValue()
- allocs7bda856d.Borrow(csrcOffset_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref55afa561.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs55afa561.Borrow(cpNext_allocs)
- var cdstSubresource_allocs *cgoAllocMap
- ref7bda856d.dstSubresource, cdstSubresource_allocs = x.DstSubresource.PassValue()
- allocs7bda856d.Borrow(cdstSubresource_allocs)
+ var cqueueFamilyIndex_allocs *cgoAllocMap
+ ref55afa561.queueFamilyIndex, cqueueFamilyIndex_allocs = (C.uint32_t)(x.QueueFamilyIndex), cgoAllocsUnknown
+ allocs55afa561.Borrow(cqueueFamilyIndex_allocs)
- var cdstOffset_allocs *cgoAllocMap
- ref7bda856d.dstOffset, cdstOffset_allocs = x.DstOffset.PassValue()
- allocs7bda856d.Borrow(cdstOffset_allocs)
+ var ccounterIndexCount_allocs *cgoAllocMap
+ ref55afa561.counterIndexCount, ccounterIndexCount_allocs = (C.uint32_t)(x.CounterIndexCount), cgoAllocsUnknown
+ allocs55afa561.Borrow(ccounterIndexCount_allocs)
- var cextent_allocs *cgoAllocMap
- ref7bda856d.extent, cextent_allocs = x.Extent.PassValue()
- allocs7bda856d.Borrow(cextent_allocs)
+ var cpCounterIndices_allocs *cgoAllocMap
+ ref55afa561.pCounterIndices, cpCounterIndices_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PCounterIndices)).Data)), cgoAllocsUnknown
+ allocs55afa561.Borrow(cpCounterIndices_allocs)
- x.ref7bda856d = ref7bda856d
- x.allocs7bda856d = allocs7bda856d
- return ref7bda856d, allocs7bda856d
+ x.ref55afa561 = ref55afa561
+ x.allocs55afa561 = allocs55afa561
+ return ref55afa561, allocs55afa561
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ImageResolve) PassValue() (C.VkImageResolve, *cgoAllocMap) {
- if x.ref7bda856d != nil {
- return *x.ref7bda856d, nil
+func (x QueryPoolPerformanceCreateInfo) PassValue() (C.VkQueryPoolPerformanceCreateInfoKHR, *cgoAllocMap) {
+ if x.ref55afa561 != nil {
+ return *x.ref55afa561, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -12213,96 +39146,100 @@ func (x ImageResolve) PassValue() (C.VkImageResolve, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ImageResolve) Deref() {
- if x.ref7bda856d == nil {
+func (x *QueryPoolPerformanceCreateInfo) Deref() {
+ if x.ref55afa561 == nil {
return
}
- x.SrcSubresource = *NewImageSubresourceLayersRef(unsafe.Pointer(&x.ref7bda856d.srcSubresource))
- x.SrcOffset = *NewOffset3DRef(unsafe.Pointer(&x.ref7bda856d.srcOffset))
- x.DstSubresource = *NewImageSubresourceLayersRef(unsafe.Pointer(&x.ref7bda856d.dstSubresource))
- x.DstOffset = *NewOffset3DRef(unsafe.Pointer(&x.ref7bda856d.dstOffset))
- x.Extent = *NewExtent3DRef(unsafe.Pointer(&x.ref7bda856d.extent))
+ x.SType = (StructureType)(x.ref55afa561.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref55afa561.pNext))
+ x.QueueFamilyIndex = (uint32)(x.ref55afa561.queueFamilyIndex)
+ x.CounterIndexCount = (uint32)(x.ref55afa561.counterIndexCount)
+ hxf8959c2 := (*sliceHeader)(unsafe.Pointer(&x.PCounterIndices))
+ hxf8959c2.Data = unsafe.Pointer(x.ref55afa561.pCounterIndices)
+ hxf8959c2.Cap = 0x7fffffff
+ // hxf8959c2.Len = ?
+
}
-// allocMemoryBarrierMemory allocates memory for type C.VkMemoryBarrier in C.
+// allocAcquireProfilingLockInfoMemory allocates memory for type C.VkAcquireProfilingLockInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocMemoryBarrierMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMemoryBarrierValue))
+func allocAcquireProfilingLockInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfAcquireProfilingLockInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfMemoryBarrierValue = unsafe.Sizeof([1]C.VkMemoryBarrier{})
+const sizeOfAcquireProfilingLockInfoValue = unsafe.Sizeof([1]C.VkAcquireProfilingLockInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *MemoryBarrier) Ref() *C.VkMemoryBarrier {
+func (x *AcquireProfilingLockInfo) Ref() *C.VkAcquireProfilingLockInfoKHR {
if x == nil {
return nil
}
- return x.ref977c944e
+ return x.ref73cbb121
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *MemoryBarrier) Free() {
- if x != nil && x.allocs977c944e != nil {
- x.allocs977c944e.(*cgoAllocMap).Free()
- x.ref977c944e = nil
+func (x *AcquireProfilingLockInfo) Free() {
+ if x != nil && x.allocs73cbb121 != nil {
+ x.allocs73cbb121.(*cgoAllocMap).Free()
+ x.ref73cbb121 = nil
}
}
-// NewMemoryBarrierRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewAcquireProfilingLockInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewMemoryBarrierRef(ref unsafe.Pointer) *MemoryBarrier {
+func NewAcquireProfilingLockInfoRef(ref unsafe.Pointer) *AcquireProfilingLockInfo {
if ref == nil {
return nil
}
- obj := new(MemoryBarrier)
- obj.ref977c944e = (*C.VkMemoryBarrier)(unsafe.Pointer(ref))
+ obj := new(AcquireProfilingLockInfo)
+ obj.ref73cbb121 = (*C.VkAcquireProfilingLockInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *MemoryBarrier) PassRef() (*C.VkMemoryBarrier, *cgoAllocMap) {
+func (x *AcquireProfilingLockInfo) PassRef() (*C.VkAcquireProfilingLockInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref977c944e != nil {
- return x.ref977c944e, nil
+ } else if x.ref73cbb121 != nil {
+ return x.ref73cbb121, nil
}
- mem977c944e := allocMemoryBarrierMemory(1)
- ref977c944e := (*C.VkMemoryBarrier)(mem977c944e)
- allocs977c944e := new(cgoAllocMap)
- allocs977c944e.Add(mem977c944e)
+ mem73cbb121 := allocAcquireProfilingLockInfoMemory(1)
+ ref73cbb121 := (*C.VkAcquireProfilingLockInfoKHR)(mem73cbb121)
+ allocs73cbb121 := new(cgoAllocMap)
+ allocs73cbb121.Add(mem73cbb121)
var csType_allocs *cgoAllocMap
- ref977c944e.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs977c944e.Borrow(csType_allocs)
+ ref73cbb121.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs73cbb121.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref977c944e.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs977c944e.Borrow(cpNext_allocs)
+ ref73cbb121.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs73cbb121.Borrow(cpNext_allocs)
- var csrcAccessMask_allocs *cgoAllocMap
- ref977c944e.srcAccessMask, csrcAccessMask_allocs = (C.VkAccessFlags)(x.SrcAccessMask), cgoAllocsUnknown
- allocs977c944e.Borrow(csrcAccessMask_allocs)
+ var cflags_allocs *cgoAllocMap
+ ref73cbb121.flags, cflags_allocs = (C.VkAcquireProfilingLockFlagsKHR)(x.Flags), cgoAllocsUnknown
+ allocs73cbb121.Borrow(cflags_allocs)
- var cdstAccessMask_allocs *cgoAllocMap
- ref977c944e.dstAccessMask, cdstAccessMask_allocs = (C.VkAccessFlags)(x.DstAccessMask), cgoAllocsUnknown
- allocs977c944e.Borrow(cdstAccessMask_allocs)
+ var ctimeout_allocs *cgoAllocMap
+ ref73cbb121.timeout, ctimeout_allocs = (C.uint64_t)(x.Timeout), cgoAllocsUnknown
+ allocs73cbb121.Borrow(ctimeout_allocs)
- x.ref977c944e = ref977c944e
- x.allocs977c944e = allocs977c944e
- return ref977c944e, allocs977c944e
+ x.ref73cbb121 = ref73cbb121
+ x.allocs73cbb121 = allocs73cbb121
+ return ref73cbb121, allocs73cbb121
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x MemoryBarrier) PassValue() (C.VkMemoryBarrier, *cgoAllocMap) {
- if x.ref977c944e != nil {
- return *x.ref977c944e, nil
+func (x AcquireProfilingLockInfo) PassValue() (C.VkAcquireProfilingLockInfoKHR, *cgoAllocMap) {
+ if x.ref73cbb121 != nil {
+ return *x.ref73cbb121, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -12310,115 +39247,91 @@ func (x MemoryBarrier) PassValue() (C.VkMemoryBarrier, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *MemoryBarrier) Deref() {
- if x.ref977c944e == nil {
+func (x *AcquireProfilingLockInfo) Deref() {
+ if x.ref73cbb121 == nil {
return
}
- x.SType = (StructureType)(x.ref977c944e.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref977c944e.pNext))
- x.SrcAccessMask = (AccessFlags)(x.ref977c944e.srcAccessMask)
- x.DstAccessMask = (AccessFlags)(x.ref977c944e.dstAccessMask)
+ x.SType = (StructureType)(x.ref73cbb121.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref73cbb121.pNext))
+ x.Flags = (AcquireProfilingLockFlags)(x.ref73cbb121.flags)
+ x.Timeout = (uint64)(x.ref73cbb121.timeout)
}
-// allocBufferMemoryBarrierMemory allocates memory for type C.VkBufferMemoryBarrier in C.
+// allocPerformanceQuerySubmitInfoMemory allocates memory for type C.VkPerformanceQuerySubmitInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocBufferMemoryBarrierMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBufferMemoryBarrierValue))
+func allocPerformanceQuerySubmitInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPerformanceQuerySubmitInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfBufferMemoryBarrierValue = unsafe.Sizeof([1]C.VkBufferMemoryBarrier{})
+const sizeOfPerformanceQuerySubmitInfoValue = unsafe.Sizeof([1]C.VkPerformanceQuerySubmitInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *BufferMemoryBarrier) Ref() *C.VkBufferMemoryBarrier {
+func (x *PerformanceQuerySubmitInfo) Ref() *C.VkPerformanceQuerySubmitInfoKHR {
if x == nil {
return nil
}
- return x.refeaf4700b
+ return x.refbccd2736
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *BufferMemoryBarrier) Free() {
- if x != nil && x.allocseaf4700b != nil {
- x.allocseaf4700b.(*cgoAllocMap).Free()
- x.refeaf4700b = nil
+func (x *PerformanceQuerySubmitInfo) Free() {
+ if x != nil && x.allocsbccd2736 != nil {
+ x.allocsbccd2736.(*cgoAllocMap).Free()
+ x.refbccd2736 = nil
}
}
-// NewBufferMemoryBarrierRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPerformanceQuerySubmitInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewBufferMemoryBarrierRef(ref unsafe.Pointer) *BufferMemoryBarrier {
+func NewPerformanceQuerySubmitInfoRef(ref unsafe.Pointer) *PerformanceQuerySubmitInfo {
if ref == nil {
return nil
}
- obj := new(BufferMemoryBarrier)
- obj.refeaf4700b = (*C.VkBufferMemoryBarrier)(unsafe.Pointer(ref))
+ obj := new(PerformanceQuerySubmitInfo)
+ obj.refbccd2736 = (*C.VkPerformanceQuerySubmitInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *BufferMemoryBarrier) PassRef() (*C.VkBufferMemoryBarrier, *cgoAllocMap) {
+func (x *PerformanceQuerySubmitInfo) PassRef() (*C.VkPerformanceQuerySubmitInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refeaf4700b != nil {
- return x.refeaf4700b, nil
+ } else if x.refbccd2736 != nil {
+ return x.refbccd2736, nil
}
- memeaf4700b := allocBufferMemoryBarrierMemory(1)
- refeaf4700b := (*C.VkBufferMemoryBarrier)(memeaf4700b)
- allocseaf4700b := new(cgoAllocMap)
- allocseaf4700b.Add(memeaf4700b)
+ membccd2736 := allocPerformanceQuerySubmitInfoMemory(1)
+ refbccd2736 := (*C.VkPerformanceQuerySubmitInfoKHR)(membccd2736)
+ allocsbccd2736 := new(cgoAllocMap)
+ allocsbccd2736.Add(membccd2736)
var csType_allocs *cgoAllocMap
- refeaf4700b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocseaf4700b.Borrow(csType_allocs)
+ refbccd2736.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsbccd2736.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refeaf4700b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocseaf4700b.Borrow(cpNext_allocs)
-
- var csrcAccessMask_allocs *cgoAllocMap
- refeaf4700b.srcAccessMask, csrcAccessMask_allocs = (C.VkAccessFlags)(x.SrcAccessMask), cgoAllocsUnknown
- allocseaf4700b.Borrow(csrcAccessMask_allocs)
-
- var cdstAccessMask_allocs *cgoAllocMap
- refeaf4700b.dstAccessMask, cdstAccessMask_allocs = (C.VkAccessFlags)(x.DstAccessMask), cgoAllocsUnknown
- allocseaf4700b.Borrow(cdstAccessMask_allocs)
-
- var csrcQueueFamilyIndex_allocs *cgoAllocMap
- refeaf4700b.srcQueueFamilyIndex, csrcQueueFamilyIndex_allocs = (C.uint32_t)(x.SrcQueueFamilyIndex), cgoAllocsUnknown
- allocseaf4700b.Borrow(csrcQueueFamilyIndex_allocs)
-
- var cdstQueueFamilyIndex_allocs *cgoAllocMap
- refeaf4700b.dstQueueFamilyIndex, cdstQueueFamilyIndex_allocs = (C.uint32_t)(x.DstQueueFamilyIndex), cgoAllocsUnknown
- allocseaf4700b.Borrow(cdstQueueFamilyIndex_allocs)
+ refbccd2736.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsbccd2736.Borrow(cpNext_allocs)
- var cbuffer_allocs *cgoAllocMap
- refeaf4700b.buffer, cbuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.Buffer)), cgoAllocsUnknown
- allocseaf4700b.Borrow(cbuffer_allocs)
-
- var coffset_allocs *cgoAllocMap
- refeaf4700b.offset, coffset_allocs = (C.VkDeviceSize)(x.Offset), cgoAllocsUnknown
- allocseaf4700b.Borrow(coffset_allocs)
-
- var csize_allocs *cgoAllocMap
- refeaf4700b.size, csize_allocs = (C.VkDeviceSize)(x.Size), cgoAllocsUnknown
- allocseaf4700b.Borrow(csize_allocs)
+ var ccounterPassIndex_allocs *cgoAllocMap
+ refbccd2736.counterPassIndex, ccounterPassIndex_allocs = (C.uint32_t)(x.CounterPassIndex), cgoAllocsUnknown
+ allocsbccd2736.Borrow(ccounterPassIndex_allocs)
- x.refeaf4700b = refeaf4700b
- x.allocseaf4700b = allocseaf4700b
- return refeaf4700b, allocseaf4700b
+ x.refbccd2736 = refbccd2736
+ x.allocsbccd2736 = allocsbccd2736
+ return refbccd2736, allocsbccd2736
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x BufferMemoryBarrier) PassValue() (C.VkBufferMemoryBarrier, *cgoAllocMap) {
- if x.refeaf4700b != nil {
- return *x.refeaf4700b, nil
+func (x PerformanceQuerySubmitInfo) PassValue() (C.VkPerformanceQuerySubmitInfoKHR, *cgoAllocMap) {
+ if x.refbccd2736 != nil {
+ return *x.refbccd2736, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -12426,124 +39339,90 @@ func (x BufferMemoryBarrier) PassValue() (C.VkBufferMemoryBarrier, *cgoAllocMap)
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *BufferMemoryBarrier) Deref() {
- if x.refeaf4700b == nil {
+func (x *PerformanceQuerySubmitInfo) Deref() {
+ if x.refbccd2736 == nil {
return
}
- x.SType = (StructureType)(x.refeaf4700b.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refeaf4700b.pNext))
- x.SrcAccessMask = (AccessFlags)(x.refeaf4700b.srcAccessMask)
- x.DstAccessMask = (AccessFlags)(x.refeaf4700b.dstAccessMask)
- x.SrcQueueFamilyIndex = (uint32)(x.refeaf4700b.srcQueueFamilyIndex)
- x.DstQueueFamilyIndex = (uint32)(x.refeaf4700b.dstQueueFamilyIndex)
- x.Buffer = *(*Buffer)(unsafe.Pointer(&x.refeaf4700b.buffer))
- x.Offset = (DeviceSize)(x.refeaf4700b.offset)
- x.Size = (DeviceSize)(x.refeaf4700b.size)
+ x.SType = (StructureType)(x.refbccd2736.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refbccd2736.pNext))
+ x.CounterPassIndex = (uint32)(x.refbccd2736.counterPassIndex)
}
-// allocImageMemoryBarrierMemory allocates memory for type C.VkImageMemoryBarrier in C.
+// allocPhysicalDeviceSurfaceInfo2Memory allocates memory for type C.VkPhysicalDeviceSurfaceInfo2KHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocImageMemoryBarrierMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageMemoryBarrierValue))
+func allocPhysicalDeviceSurfaceInfo2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceSurfaceInfo2Value))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfImageMemoryBarrierValue = unsafe.Sizeof([1]C.VkImageMemoryBarrier{})
+const sizeOfPhysicalDeviceSurfaceInfo2Value = unsafe.Sizeof([1]C.VkPhysicalDeviceSurfaceInfo2KHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ImageMemoryBarrier) Ref() *C.VkImageMemoryBarrier {
+func (x *PhysicalDeviceSurfaceInfo2) Ref() *C.VkPhysicalDeviceSurfaceInfo2KHR {
if x == nil {
return nil
}
- return x.refd52734ec
+ return x.refd22370ae
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ImageMemoryBarrier) Free() {
- if x != nil && x.allocsd52734ec != nil {
- x.allocsd52734ec.(*cgoAllocMap).Free()
- x.refd52734ec = nil
+func (x *PhysicalDeviceSurfaceInfo2) Free() {
+ if x != nil && x.allocsd22370ae != nil {
+ x.allocsd22370ae.(*cgoAllocMap).Free()
+ x.refd22370ae = nil
}
}
-// NewImageMemoryBarrierRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceSurfaceInfo2Ref creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewImageMemoryBarrierRef(ref unsafe.Pointer) *ImageMemoryBarrier {
- if ref == nil {
- return nil
- }
- obj := new(ImageMemoryBarrier)
- obj.refd52734ec = (*C.VkImageMemoryBarrier)(unsafe.Pointer(ref))
- return obj
-}
-
-// PassRef returns the underlying C object, otherwise it will allocate one and set its values
-// from this wrapping struct, counting allocations into an allocation map.
-func (x *ImageMemoryBarrier) PassRef() (*C.VkImageMemoryBarrier, *cgoAllocMap) {
- if x == nil {
- return nil, nil
- } else if x.refd52734ec != nil {
- return x.refd52734ec, nil
- }
- memd52734ec := allocImageMemoryBarrierMemory(1)
- refd52734ec := (*C.VkImageMemoryBarrier)(memd52734ec)
- allocsd52734ec := new(cgoAllocMap)
- allocsd52734ec.Add(memd52734ec)
-
- var csType_allocs *cgoAllocMap
- refd52734ec.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsd52734ec.Borrow(csType_allocs)
-
- var cpNext_allocs *cgoAllocMap
- refd52734ec.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsd52734ec.Borrow(cpNext_allocs)
-
- var csrcAccessMask_allocs *cgoAllocMap
- refd52734ec.srcAccessMask, csrcAccessMask_allocs = (C.VkAccessFlags)(x.SrcAccessMask), cgoAllocsUnknown
- allocsd52734ec.Borrow(csrcAccessMask_allocs)
-
- var cdstAccessMask_allocs *cgoAllocMap
- refd52734ec.dstAccessMask, cdstAccessMask_allocs = (C.VkAccessFlags)(x.DstAccessMask), cgoAllocsUnknown
- allocsd52734ec.Borrow(cdstAccessMask_allocs)
-
- var coldLayout_allocs *cgoAllocMap
- refd52734ec.oldLayout, coldLayout_allocs = (C.VkImageLayout)(x.OldLayout), cgoAllocsUnknown
- allocsd52734ec.Borrow(coldLayout_allocs)
-
- var cnewLayout_allocs *cgoAllocMap
- refd52734ec.newLayout, cnewLayout_allocs = (C.VkImageLayout)(x.NewLayout), cgoAllocsUnknown
- allocsd52734ec.Borrow(cnewLayout_allocs)
+func NewPhysicalDeviceSurfaceInfo2Ref(ref unsafe.Pointer) *PhysicalDeviceSurfaceInfo2 {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceSurfaceInfo2)
+ obj.refd22370ae = (*C.VkPhysicalDeviceSurfaceInfo2KHR)(unsafe.Pointer(ref))
+ return obj
+}
- var csrcQueueFamilyIndex_allocs *cgoAllocMap
- refd52734ec.srcQueueFamilyIndex, csrcQueueFamilyIndex_allocs = (C.uint32_t)(x.SrcQueueFamilyIndex), cgoAllocsUnknown
- allocsd52734ec.Borrow(csrcQueueFamilyIndex_allocs)
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceSurfaceInfo2) PassRef() (*C.VkPhysicalDeviceSurfaceInfo2KHR, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.refd22370ae != nil {
+ return x.refd22370ae, nil
+ }
+ memd22370ae := allocPhysicalDeviceSurfaceInfo2Memory(1)
+ refd22370ae := (*C.VkPhysicalDeviceSurfaceInfo2KHR)(memd22370ae)
+ allocsd22370ae := new(cgoAllocMap)
+ allocsd22370ae.Add(memd22370ae)
- var cdstQueueFamilyIndex_allocs *cgoAllocMap
- refd52734ec.dstQueueFamilyIndex, cdstQueueFamilyIndex_allocs = (C.uint32_t)(x.DstQueueFamilyIndex), cgoAllocsUnknown
- allocsd52734ec.Borrow(cdstQueueFamilyIndex_allocs)
+ var csType_allocs *cgoAllocMap
+ refd22370ae.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd22370ae.Borrow(csType_allocs)
- var cimage_allocs *cgoAllocMap
- refd52734ec.image, cimage_allocs = *(*C.VkImage)(unsafe.Pointer(&x.Image)), cgoAllocsUnknown
- allocsd52734ec.Borrow(cimage_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refd22370ae.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsd22370ae.Borrow(cpNext_allocs)
- var csubresourceRange_allocs *cgoAllocMap
- refd52734ec.subresourceRange, csubresourceRange_allocs = x.SubresourceRange.PassValue()
- allocsd52734ec.Borrow(csubresourceRange_allocs)
+ var csurface_allocs *cgoAllocMap
+ refd22370ae.surface, csurface_allocs = *(*C.VkSurfaceKHR)(unsafe.Pointer(&x.Surface)), cgoAllocsUnknown
+ allocsd22370ae.Borrow(csurface_allocs)
- x.refd52734ec = refd52734ec
- x.allocsd52734ec = allocsd52734ec
- return refd52734ec, allocsd52734ec
+ x.refd22370ae = refd22370ae
+ x.allocsd22370ae = allocsd22370ae
+ return refd22370ae, allocsd22370ae
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ImageMemoryBarrier) PassValue() (C.VkImageMemoryBarrier, *cgoAllocMap) {
- if x.refd52734ec != nil {
- return *x.refd52734ec, nil
+func (x PhysicalDeviceSurfaceInfo2) PassValue() (C.VkPhysicalDeviceSurfaceInfo2KHR, *cgoAllocMap) {
+ if x.refd22370ae != nil {
+ return *x.refd22370ae, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -12551,113 +39430,90 @@ func (x ImageMemoryBarrier) PassValue() (C.VkImageMemoryBarrier, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ImageMemoryBarrier) Deref() {
- if x.refd52734ec == nil {
+func (x *PhysicalDeviceSurfaceInfo2) Deref() {
+ if x.refd22370ae == nil {
return
}
- x.SType = (StructureType)(x.refd52734ec.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd52734ec.pNext))
- x.SrcAccessMask = (AccessFlags)(x.refd52734ec.srcAccessMask)
- x.DstAccessMask = (AccessFlags)(x.refd52734ec.dstAccessMask)
- x.OldLayout = (ImageLayout)(x.refd52734ec.oldLayout)
- x.NewLayout = (ImageLayout)(x.refd52734ec.newLayout)
- x.SrcQueueFamilyIndex = (uint32)(x.refd52734ec.srcQueueFamilyIndex)
- x.DstQueueFamilyIndex = (uint32)(x.refd52734ec.dstQueueFamilyIndex)
- x.Image = *(*Image)(unsafe.Pointer(&x.refd52734ec.image))
- x.SubresourceRange = *NewImageSubresourceRangeRef(unsafe.Pointer(&x.refd52734ec.subresourceRange))
+ x.SType = (StructureType)(x.refd22370ae.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd22370ae.pNext))
+ x.Surface = *(*Surface)(unsafe.Pointer(&x.refd22370ae.surface))
}
-// allocRenderPassBeginInfoMemory allocates memory for type C.VkRenderPassBeginInfo in C.
+// allocSurfaceCapabilities2Memory allocates memory for type C.VkSurfaceCapabilities2KHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocRenderPassBeginInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfRenderPassBeginInfoValue))
+func allocSurfaceCapabilities2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSurfaceCapabilities2Value))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfRenderPassBeginInfoValue = unsafe.Sizeof([1]C.VkRenderPassBeginInfo{})
+const sizeOfSurfaceCapabilities2Value = unsafe.Sizeof([1]C.VkSurfaceCapabilities2KHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *RenderPassBeginInfo) Ref() *C.VkRenderPassBeginInfo {
+func (x *SurfaceCapabilities2) Ref() *C.VkSurfaceCapabilities2KHR {
if x == nil {
return nil
}
- return x.ref3c3752c8
+ return x.refea469745
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *RenderPassBeginInfo) Free() {
- if x != nil && x.allocs3c3752c8 != nil {
- x.allocs3c3752c8.(*cgoAllocMap).Free()
- x.ref3c3752c8 = nil
+func (x *SurfaceCapabilities2) Free() {
+ if x != nil && x.allocsea469745 != nil {
+ x.allocsea469745.(*cgoAllocMap).Free()
+ x.refea469745 = nil
}
}
-// NewRenderPassBeginInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewSurfaceCapabilities2Ref creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewRenderPassBeginInfoRef(ref unsafe.Pointer) *RenderPassBeginInfo {
+func NewSurfaceCapabilities2Ref(ref unsafe.Pointer) *SurfaceCapabilities2 {
if ref == nil {
return nil
}
- obj := new(RenderPassBeginInfo)
- obj.ref3c3752c8 = (*C.VkRenderPassBeginInfo)(unsafe.Pointer(ref))
+ obj := new(SurfaceCapabilities2)
+ obj.refea469745 = (*C.VkSurfaceCapabilities2KHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *RenderPassBeginInfo) PassRef() (*C.VkRenderPassBeginInfo, *cgoAllocMap) {
+func (x *SurfaceCapabilities2) PassRef() (*C.VkSurfaceCapabilities2KHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref3c3752c8 != nil {
- return x.ref3c3752c8, nil
+ } else if x.refea469745 != nil {
+ return x.refea469745, nil
}
- mem3c3752c8 := allocRenderPassBeginInfoMemory(1)
- ref3c3752c8 := (*C.VkRenderPassBeginInfo)(mem3c3752c8)
- allocs3c3752c8 := new(cgoAllocMap)
- allocs3c3752c8.Add(mem3c3752c8)
+ memea469745 := allocSurfaceCapabilities2Memory(1)
+ refea469745 := (*C.VkSurfaceCapabilities2KHR)(memea469745)
+ allocsea469745 := new(cgoAllocMap)
+ allocsea469745.Add(memea469745)
var csType_allocs *cgoAllocMap
- ref3c3752c8.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs3c3752c8.Borrow(csType_allocs)
+ refea469745.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsea469745.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref3c3752c8.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs3c3752c8.Borrow(cpNext_allocs)
-
- var crenderPass_allocs *cgoAllocMap
- ref3c3752c8.renderPass, crenderPass_allocs = *(*C.VkRenderPass)(unsafe.Pointer(&x.RenderPass)), cgoAllocsUnknown
- allocs3c3752c8.Borrow(crenderPass_allocs)
-
- var cframebuffer_allocs *cgoAllocMap
- ref3c3752c8.framebuffer, cframebuffer_allocs = *(*C.VkFramebuffer)(unsafe.Pointer(&x.Framebuffer)), cgoAllocsUnknown
- allocs3c3752c8.Borrow(cframebuffer_allocs)
-
- var crenderArea_allocs *cgoAllocMap
- ref3c3752c8.renderArea, crenderArea_allocs = x.RenderArea.PassValue()
- allocs3c3752c8.Borrow(crenderArea_allocs)
-
- var cclearValueCount_allocs *cgoAllocMap
- ref3c3752c8.clearValueCount, cclearValueCount_allocs = (C.uint32_t)(x.ClearValueCount), cgoAllocsUnknown
- allocs3c3752c8.Borrow(cclearValueCount_allocs)
+ refea469745.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsea469745.Borrow(cpNext_allocs)
- var cpClearValues_allocs *cgoAllocMap
- ref3c3752c8.pClearValues, cpClearValues_allocs = (*C.VkClearValue)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PClearValues)).Data)), cgoAllocsUnknown
- allocs3c3752c8.Borrow(cpClearValues_allocs)
+ var csurfaceCapabilities_allocs *cgoAllocMap
+ refea469745.surfaceCapabilities, csurfaceCapabilities_allocs = x.SurfaceCapabilities.PassValue()
+ allocsea469745.Borrow(csurfaceCapabilities_allocs)
- x.ref3c3752c8 = ref3c3752c8
- x.allocs3c3752c8 = allocs3c3752c8
- return ref3c3752c8, allocs3c3752c8
+ x.refea469745 = refea469745
+ x.allocsea469745 = allocsea469745
+ return refea469745, allocsea469745
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x RenderPassBeginInfo) PassValue() (C.VkRenderPassBeginInfo, *cgoAllocMap) {
- if x.ref3c3752c8 != nil {
- return *x.ref3c3752c8, nil
+func (x SurfaceCapabilities2) PassValue() (C.VkSurfaceCapabilities2KHR, *cgoAllocMap) {
+ if x.refea469745 != nil {
+ return *x.refea469745, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -12665,98 +39521,90 @@ func (x RenderPassBeginInfo) PassValue() (C.VkRenderPassBeginInfo, *cgoAllocMap)
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *RenderPassBeginInfo) Deref() {
- if x.ref3c3752c8 == nil {
+func (x *SurfaceCapabilities2) Deref() {
+ if x.refea469745 == nil {
return
}
- x.SType = (StructureType)(x.ref3c3752c8.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref3c3752c8.pNext))
- x.RenderPass = *(*RenderPass)(unsafe.Pointer(&x.ref3c3752c8.renderPass))
- x.Framebuffer = *(*Framebuffer)(unsafe.Pointer(&x.ref3c3752c8.framebuffer))
- x.RenderArea = *NewRect2DRef(unsafe.Pointer(&x.ref3c3752c8.renderArea))
- x.ClearValueCount = (uint32)(x.ref3c3752c8.clearValueCount)
- hxf1231c9 := (*sliceHeader)(unsafe.Pointer(&x.PClearValues))
- hxf1231c9.Data = unsafe.Pointer(x.ref3c3752c8.pClearValues)
- hxf1231c9.Cap = 0x7fffffff
- // hxf1231c9.Len = ?
-
+ x.SType = (StructureType)(x.refea469745.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refea469745.pNext))
+ x.SurfaceCapabilities = *NewSurfaceCapabilitiesRef(unsafe.Pointer(&x.refea469745.surfaceCapabilities))
}
-// allocDispatchIndirectCommandMemory allocates memory for type C.VkDispatchIndirectCommand in C.
+// allocSurfaceFormat2Memory allocates memory for type C.VkSurfaceFormat2KHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDispatchIndirectCommandMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDispatchIndirectCommandValue))
+func allocSurfaceFormat2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSurfaceFormat2Value))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDispatchIndirectCommandValue = unsafe.Sizeof([1]C.VkDispatchIndirectCommand{})
+const sizeOfSurfaceFormat2Value = unsafe.Sizeof([1]C.VkSurfaceFormat2KHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DispatchIndirectCommand) Ref() *C.VkDispatchIndirectCommand {
+func (x *SurfaceFormat2) Ref() *C.VkSurfaceFormat2KHR {
if x == nil {
return nil
}
- return x.refd298ba27
+ return x.ref8867f0ed
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DispatchIndirectCommand) Free() {
- if x != nil && x.allocsd298ba27 != nil {
- x.allocsd298ba27.(*cgoAllocMap).Free()
- x.refd298ba27 = nil
+func (x *SurfaceFormat2) Free() {
+ if x != nil && x.allocs8867f0ed != nil {
+ x.allocs8867f0ed.(*cgoAllocMap).Free()
+ x.ref8867f0ed = nil
}
}
-// NewDispatchIndirectCommandRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewSurfaceFormat2Ref creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDispatchIndirectCommandRef(ref unsafe.Pointer) *DispatchIndirectCommand {
+func NewSurfaceFormat2Ref(ref unsafe.Pointer) *SurfaceFormat2 {
if ref == nil {
return nil
}
- obj := new(DispatchIndirectCommand)
- obj.refd298ba27 = (*C.VkDispatchIndirectCommand)(unsafe.Pointer(ref))
+ obj := new(SurfaceFormat2)
+ obj.ref8867f0ed = (*C.VkSurfaceFormat2KHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DispatchIndirectCommand) PassRef() (*C.VkDispatchIndirectCommand, *cgoAllocMap) {
+func (x *SurfaceFormat2) PassRef() (*C.VkSurfaceFormat2KHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refd298ba27 != nil {
- return x.refd298ba27, nil
+ } else if x.ref8867f0ed != nil {
+ return x.ref8867f0ed, nil
}
- memd298ba27 := allocDispatchIndirectCommandMemory(1)
- refd298ba27 := (*C.VkDispatchIndirectCommand)(memd298ba27)
- allocsd298ba27 := new(cgoAllocMap)
- allocsd298ba27.Add(memd298ba27)
+ mem8867f0ed := allocSurfaceFormat2Memory(1)
+ ref8867f0ed := (*C.VkSurfaceFormat2KHR)(mem8867f0ed)
+ allocs8867f0ed := new(cgoAllocMap)
+ allocs8867f0ed.Add(mem8867f0ed)
- var cx_allocs *cgoAllocMap
- refd298ba27.x, cx_allocs = (C.uint32_t)(x.X), cgoAllocsUnknown
- allocsd298ba27.Borrow(cx_allocs)
+ var csType_allocs *cgoAllocMap
+ ref8867f0ed.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs8867f0ed.Borrow(csType_allocs)
- var cy_allocs *cgoAllocMap
- refd298ba27.y, cy_allocs = (C.uint32_t)(x.Y), cgoAllocsUnknown
- allocsd298ba27.Borrow(cy_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref8867f0ed.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs8867f0ed.Borrow(cpNext_allocs)
- var cz_allocs *cgoAllocMap
- refd298ba27.z, cz_allocs = (C.uint32_t)(x.Z), cgoAllocsUnknown
- allocsd298ba27.Borrow(cz_allocs)
+ var csurfaceFormat_allocs *cgoAllocMap
+ ref8867f0ed.surfaceFormat, csurfaceFormat_allocs = x.SurfaceFormat.PassValue()
+ allocs8867f0ed.Borrow(csurfaceFormat_allocs)
- x.refd298ba27 = refd298ba27
- x.allocsd298ba27 = allocsd298ba27
- return refd298ba27, allocsd298ba27
+ x.ref8867f0ed = ref8867f0ed
+ x.allocs8867f0ed = allocs8867f0ed
+ return ref8867f0ed, allocs8867f0ed
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DispatchIndirectCommand) PassValue() (C.VkDispatchIndirectCommand, *cgoAllocMap) {
- if x.refd298ba27 != nil {
- return *x.refd298ba27, nil
+func (x SurfaceFormat2) PassValue() (C.VkSurfaceFormat2KHR, *cgoAllocMap) {
+ if x.ref8867f0ed != nil {
+ return *x.ref8867f0ed, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -12764,98 +39612,90 @@ func (x DispatchIndirectCommand) PassValue() (C.VkDispatchIndirectCommand, *cgoA
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DispatchIndirectCommand) Deref() {
- if x.refd298ba27 == nil {
+func (x *SurfaceFormat2) Deref() {
+ if x.ref8867f0ed == nil {
return
}
- x.X = (uint32)(x.refd298ba27.x)
- x.Y = (uint32)(x.refd298ba27.y)
- x.Z = (uint32)(x.refd298ba27.z)
+ x.SType = (StructureType)(x.ref8867f0ed.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref8867f0ed.pNext))
+ x.SurfaceFormat = *NewSurfaceFormatRef(unsafe.Pointer(&x.ref8867f0ed.surfaceFormat))
}
-// allocDrawIndexedIndirectCommandMemory allocates memory for type C.VkDrawIndexedIndirectCommand in C.
+// allocDisplayProperties2Memory allocates memory for type C.VkDisplayProperties2KHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDrawIndexedIndirectCommandMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDrawIndexedIndirectCommandValue))
+func allocDisplayProperties2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplayProperties2Value))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDrawIndexedIndirectCommandValue = unsafe.Sizeof([1]C.VkDrawIndexedIndirectCommand{})
+const sizeOfDisplayProperties2Value = unsafe.Sizeof([1]C.VkDisplayProperties2KHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DrawIndexedIndirectCommand) Ref() *C.VkDrawIndexedIndirectCommand {
+func (x *DisplayProperties2) Ref() *C.VkDisplayProperties2KHR {
if x == nil {
return nil
}
- return x.ref4c78b5c3
+ return x.ref80194833
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DrawIndexedIndirectCommand) Free() {
- if x != nil && x.allocs4c78b5c3 != nil {
- x.allocs4c78b5c3.(*cgoAllocMap).Free()
- x.ref4c78b5c3 = nil
+func (x *DisplayProperties2) Free() {
+ if x != nil && x.allocs80194833 != nil {
+ x.allocs80194833.(*cgoAllocMap).Free()
+ x.ref80194833 = nil
}
}
-// NewDrawIndexedIndirectCommandRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDisplayProperties2Ref creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDrawIndexedIndirectCommandRef(ref unsafe.Pointer) *DrawIndexedIndirectCommand {
+func NewDisplayProperties2Ref(ref unsafe.Pointer) *DisplayProperties2 {
if ref == nil {
return nil
}
- obj := new(DrawIndexedIndirectCommand)
- obj.ref4c78b5c3 = (*C.VkDrawIndexedIndirectCommand)(unsafe.Pointer(ref))
+ obj := new(DisplayProperties2)
+ obj.ref80194833 = (*C.VkDisplayProperties2KHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DrawIndexedIndirectCommand) PassRef() (*C.VkDrawIndexedIndirectCommand, *cgoAllocMap) {
+func (x *DisplayProperties2) PassRef() (*C.VkDisplayProperties2KHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref4c78b5c3 != nil {
- return x.ref4c78b5c3, nil
+ } else if x.ref80194833 != nil {
+ return x.ref80194833, nil
}
- mem4c78b5c3 := allocDrawIndexedIndirectCommandMemory(1)
- ref4c78b5c3 := (*C.VkDrawIndexedIndirectCommand)(mem4c78b5c3)
- allocs4c78b5c3 := new(cgoAllocMap)
- allocs4c78b5c3.Add(mem4c78b5c3)
-
- var cindexCount_allocs *cgoAllocMap
- ref4c78b5c3.indexCount, cindexCount_allocs = (C.uint32_t)(x.IndexCount), cgoAllocsUnknown
- allocs4c78b5c3.Borrow(cindexCount_allocs)
-
- var cinstanceCount_allocs *cgoAllocMap
- ref4c78b5c3.instanceCount, cinstanceCount_allocs = (C.uint32_t)(x.InstanceCount), cgoAllocsUnknown
- allocs4c78b5c3.Borrow(cinstanceCount_allocs)
+ mem80194833 := allocDisplayProperties2Memory(1)
+ ref80194833 := (*C.VkDisplayProperties2KHR)(mem80194833)
+ allocs80194833 := new(cgoAllocMap)
+ allocs80194833.Add(mem80194833)
- var cfirstIndex_allocs *cgoAllocMap
- ref4c78b5c3.firstIndex, cfirstIndex_allocs = (C.uint32_t)(x.FirstIndex), cgoAllocsUnknown
- allocs4c78b5c3.Borrow(cfirstIndex_allocs)
+ var csType_allocs *cgoAllocMap
+ ref80194833.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs80194833.Borrow(csType_allocs)
- var cvertexOffset_allocs *cgoAllocMap
- ref4c78b5c3.vertexOffset, cvertexOffset_allocs = (C.int32_t)(x.VertexOffset), cgoAllocsUnknown
- allocs4c78b5c3.Borrow(cvertexOffset_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref80194833.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs80194833.Borrow(cpNext_allocs)
- var cfirstInstance_allocs *cgoAllocMap
- ref4c78b5c3.firstInstance, cfirstInstance_allocs = (C.uint32_t)(x.FirstInstance), cgoAllocsUnknown
- allocs4c78b5c3.Borrow(cfirstInstance_allocs)
+ var cdisplayProperties_allocs *cgoAllocMap
+ ref80194833.displayProperties, cdisplayProperties_allocs = x.DisplayProperties.PassValue()
+ allocs80194833.Borrow(cdisplayProperties_allocs)
- x.ref4c78b5c3 = ref4c78b5c3
- x.allocs4c78b5c3 = allocs4c78b5c3
- return ref4c78b5c3, allocs4c78b5c3
+ x.ref80194833 = ref80194833
+ x.allocs80194833 = allocs80194833
+ return ref80194833, allocs80194833
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DrawIndexedIndirectCommand) PassValue() (C.VkDrawIndexedIndirectCommand, *cgoAllocMap) {
- if x.ref4c78b5c3 != nil {
- return *x.ref4c78b5c3, nil
+func (x DisplayProperties2) PassValue() (C.VkDisplayProperties2KHR, *cgoAllocMap) {
+ if x.ref80194833 != nil {
+ return *x.ref80194833, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -12863,96 +39703,90 @@ func (x DrawIndexedIndirectCommand) PassValue() (C.VkDrawIndexedIndirectCommand,
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DrawIndexedIndirectCommand) Deref() {
- if x.ref4c78b5c3 == nil {
+func (x *DisplayProperties2) Deref() {
+ if x.ref80194833 == nil {
return
}
- x.IndexCount = (uint32)(x.ref4c78b5c3.indexCount)
- x.InstanceCount = (uint32)(x.ref4c78b5c3.instanceCount)
- x.FirstIndex = (uint32)(x.ref4c78b5c3.firstIndex)
- x.VertexOffset = (int32)(x.ref4c78b5c3.vertexOffset)
- x.FirstInstance = (uint32)(x.ref4c78b5c3.firstInstance)
+ x.SType = (StructureType)(x.ref80194833.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref80194833.pNext))
+ x.DisplayProperties = *NewDisplayPropertiesRef(unsafe.Pointer(&x.ref80194833.displayProperties))
}
-// allocDrawIndirectCommandMemory allocates memory for type C.VkDrawIndirectCommand in C.
+// allocDisplayPlaneProperties2Memory allocates memory for type C.VkDisplayPlaneProperties2KHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDrawIndirectCommandMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDrawIndirectCommandValue))
+func allocDisplayPlaneProperties2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplayPlaneProperties2Value))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDrawIndirectCommandValue = unsafe.Sizeof([1]C.VkDrawIndirectCommand{})
+const sizeOfDisplayPlaneProperties2Value = unsafe.Sizeof([1]C.VkDisplayPlaneProperties2KHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DrawIndirectCommand) Ref() *C.VkDrawIndirectCommand {
+func (x *DisplayPlaneProperties2) Ref() *C.VkDisplayPlaneProperties2KHR {
if x == nil {
return nil
}
- return x.ref2b5b67c4
+ return x.refa72b1e5b
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DrawIndirectCommand) Free() {
- if x != nil && x.allocs2b5b67c4 != nil {
- x.allocs2b5b67c4.(*cgoAllocMap).Free()
- x.ref2b5b67c4 = nil
+func (x *DisplayPlaneProperties2) Free() {
+ if x != nil && x.allocsa72b1e5b != nil {
+ x.allocsa72b1e5b.(*cgoAllocMap).Free()
+ x.refa72b1e5b = nil
}
}
-// NewDrawIndirectCommandRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDisplayPlaneProperties2Ref creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDrawIndirectCommandRef(ref unsafe.Pointer) *DrawIndirectCommand {
+func NewDisplayPlaneProperties2Ref(ref unsafe.Pointer) *DisplayPlaneProperties2 {
if ref == nil {
return nil
}
- obj := new(DrawIndirectCommand)
- obj.ref2b5b67c4 = (*C.VkDrawIndirectCommand)(unsafe.Pointer(ref))
+ obj := new(DisplayPlaneProperties2)
+ obj.refa72b1e5b = (*C.VkDisplayPlaneProperties2KHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DrawIndirectCommand) PassRef() (*C.VkDrawIndirectCommand, *cgoAllocMap) {
+func (x *DisplayPlaneProperties2) PassRef() (*C.VkDisplayPlaneProperties2KHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref2b5b67c4 != nil {
- return x.ref2b5b67c4, nil
+ } else if x.refa72b1e5b != nil {
+ return x.refa72b1e5b, nil
}
- mem2b5b67c4 := allocDrawIndirectCommandMemory(1)
- ref2b5b67c4 := (*C.VkDrawIndirectCommand)(mem2b5b67c4)
- allocs2b5b67c4 := new(cgoAllocMap)
- allocs2b5b67c4.Add(mem2b5b67c4)
-
- var cvertexCount_allocs *cgoAllocMap
- ref2b5b67c4.vertexCount, cvertexCount_allocs = (C.uint32_t)(x.VertexCount), cgoAllocsUnknown
- allocs2b5b67c4.Borrow(cvertexCount_allocs)
+ mema72b1e5b := allocDisplayPlaneProperties2Memory(1)
+ refa72b1e5b := (*C.VkDisplayPlaneProperties2KHR)(mema72b1e5b)
+ allocsa72b1e5b := new(cgoAllocMap)
+ allocsa72b1e5b.Add(mema72b1e5b)
- var cinstanceCount_allocs *cgoAllocMap
- ref2b5b67c4.instanceCount, cinstanceCount_allocs = (C.uint32_t)(x.InstanceCount), cgoAllocsUnknown
- allocs2b5b67c4.Borrow(cinstanceCount_allocs)
+ var csType_allocs *cgoAllocMap
+ refa72b1e5b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsa72b1e5b.Borrow(csType_allocs)
- var cfirstVertex_allocs *cgoAllocMap
- ref2b5b67c4.firstVertex, cfirstVertex_allocs = (C.uint32_t)(x.FirstVertex), cgoAllocsUnknown
- allocs2b5b67c4.Borrow(cfirstVertex_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refa72b1e5b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsa72b1e5b.Borrow(cpNext_allocs)
- var cfirstInstance_allocs *cgoAllocMap
- ref2b5b67c4.firstInstance, cfirstInstance_allocs = (C.uint32_t)(x.FirstInstance), cgoAllocsUnknown
- allocs2b5b67c4.Borrow(cfirstInstance_allocs)
+ var cdisplayPlaneProperties_allocs *cgoAllocMap
+ refa72b1e5b.displayPlaneProperties, cdisplayPlaneProperties_allocs = x.DisplayPlaneProperties.PassValue()
+ allocsa72b1e5b.Borrow(cdisplayPlaneProperties_allocs)
- x.ref2b5b67c4 = ref2b5b67c4
- x.allocs2b5b67c4 = allocs2b5b67c4
- return ref2b5b67c4, allocs2b5b67c4
+ x.refa72b1e5b = refa72b1e5b
+ x.allocsa72b1e5b = allocsa72b1e5b
+ return refa72b1e5b, allocsa72b1e5b
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DrawIndirectCommand) PassValue() (C.VkDrawIndirectCommand, *cgoAllocMap) {
- if x.ref2b5b67c4 != nil {
- return *x.ref2b5b67c4, nil
+func (x DisplayPlaneProperties2) PassValue() (C.VkDisplayPlaneProperties2KHR, *cgoAllocMap) {
+ if x.refa72b1e5b != nil {
+ return *x.refa72b1e5b, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -12960,137 +39794,185 @@ func (x DrawIndirectCommand) PassValue() (C.VkDrawIndirectCommand, *cgoAllocMap)
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DrawIndirectCommand) Deref() {
- if x.ref2b5b67c4 == nil {
+func (x *DisplayPlaneProperties2) Deref() {
+ if x.refa72b1e5b == nil {
return
}
- x.VertexCount = (uint32)(x.ref2b5b67c4.vertexCount)
- x.InstanceCount = (uint32)(x.ref2b5b67c4.instanceCount)
- x.FirstVertex = (uint32)(x.ref2b5b67c4.firstVertex)
- x.FirstInstance = (uint32)(x.ref2b5b67c4.firstInstance)
+ x.SType = (StructureType)(x.refa72b1e5b.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa72b1e5b.pNext))
+ x.DisplayPlaneProperties = *NewDisplayPlanePropertiesRef(unsafe.Pointer(&x.refa72b1e5b.displayPlaneProperties))
}
-// allocBaseOutStructureMemory allocates memory for type C.VkBaseOutStructure in C.
+// allocDisplayModeProperties2Memory allocates memory for type C.VkDisplayModeProperties2KHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocBaseOutStructureMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBaseOutStructureValue))
+func allocDisplayModeProperties2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplayModeProperties2Value))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfBaseOutStructureValue = unsafe.Sizeof([1]C.VkBaseOutStructure{})
+const sizeOfDisplayModeProperties2Value = unsafe.Sizeof([1]C.VkDisplayModeProperties2KHR{})
-// allocStruct_VkBaseOutStructureMemory allocates memory for type C.struct_VkBaseOutStructure in C.
-// The caller is responsible for freeing the this memory via C.free.
-func allocStruct_VkBaseOutStructureMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfStruct_VkBaseOutStructureValue))
- if err != nil {
- panic("memory alloc error: " + err.Error())
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *DisplayModeProperties2) Ref() *C.VkDisplayModeProperties2KHR {
+ if x == nil {
+ return nil
}
- return mem
+ return x.refc566048d
}
-const sizeOfStruct_VkBaseOutStructureValue = unsafe.Sizeof([1]C.struct_VkBaseOutStructure{})
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *DisplayModeProperties2) Free() {
+ if x != nil && x.allocsc566048d != nil {
+ x.allocsc566048d.(*cgoAllocMap).Free()
+ x.refc566048d = nil
+ }
+}
-// unpackSBaseOutStructure transforms a sliced Go data structure into plain C format.
-func unpackSBaseOutStructure(x []BaseOutStructure) (unpacked *C.struct_VkBaseOutStructure, allocs *cgoAllocMap) {
+// NewDisplayModeProperties2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewDisplayModeProperties2Ref(ref unsafe.Pointer) *DisplayModeProperties2 {
+ if ref == nil {
+ return nil
+ }
+ obj := new(DisplayModeProperties2)
+ obj.refc566048d = (*C.VkDisplayModeProperties2KHR)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DisplayModeProperties2) PassRef() (*C.VkDisplayModeProperties2KHR, *cgoAllocMap) {
if x == nil {
return nil, nil
+ } else if x.refc566048d != nil {
+ return x.refc566048d, nil
}
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.struct_VkBaseOutStructure) {
- go allocs.Free()
- })
+ memc566048d := allocDisplayModeProperties2Memory(1)
+ refc566048d := (*C.VkDisplayModeProperties2KHR)(memc566048d)
+ allocsc566048d := new(cgoAllocMap)
+ allocsc566048d.Add(memc566048d)
- len0 := len(x)
- mem0 := allocStruct_VkBaseOutStructureMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
+ var csType_allocs *cgoAllocMap
+ refc566048d.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsc566048d.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refc566048d.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsc566048d.Borrow(cpNext_allocs)
+
+ var cdisplayModeProperties_allocs *cgoAllocMap
+ refc566048d.displayModeProperties, cdisplayModeProperties_allocs = x.DisplayModeProperties.PassValue()
+ allocsc566048d.Borrow(cdisplayModeProperties_allocs)
+
+ x.refc566048d = refc566048d
+ x.allocsc566048d = allocsc566048d
+ return refc566048d, allocsc566048d
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DisplayModeProperties2) PassValue() (C.VkDisplayModeProperties2KHR, *cgoAllocMap) {
+ if x.refc566048d != nil {
+ return *x.refc566048d, nil
}
- v0 := *(*[]C.struct_VkBaseOutStructure)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *DisplayModeProperties2) Deref() {
+ if x.refc566048d == nil {
+ return
}
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.struct_VkBaseOutStructure)(h.Data)
- return
+ x.SType = (StructureType)(x.refc566048d.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc566048d.pNext))
+ x.DisplayModeProperties = *NewDisplayModePropertiesRef(unsafe.Pointer(&x.refc566048d.displayModeProperties))
}
-// packSBaseOutStructure reads sliced Go data structure out from plain C format.
-func packSBaseOutStructure(v []BaseOutStructure, ptr0 *C.struct_VkBaseOutStructure) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfStruct_VkBaseOutStructureValue]C.struct_VkBaseOutStructure)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewBaseOutStructureRef(unsafe.Pointer(&ptr1))
+// allocDisplayPlaneInfo2Memory allocates memory for type C.VkDisplayPlaneInfo2KHR in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocDisplayPlaneInfo2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplayPlaneInfo2Value))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
}
+ return mem
}
+const sizeOfDisplayPlaneInfo2Value = unsafe.Sizeof([1]C.VkDisplayPlaneInfo2KHR{})
+
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *BaseOutStructure) Ref() *C.VkBaseOutStructure {
+func (x *DisplayPlaneInfo2) Ref() *C.VkDisplayPlaneInfo2KHR {
if x == nil {
return nil
}
- return x.refd536fcd0
+ return x.reff355ccbf
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *BaseOutStructure) Free() {
- if x != nil && x.allocsd536fcd0 != nil {
- x.allocsd536fcd0.(*cgoAllocMap).Free()
- x.refd536fcd0 = nil
+func (x *DisplayPlaneInfo2) Free() {
+ if x != nil && x.allocsf355ccbf != nil {
+ x.allocsf355ccbf.(*cgoAllocMap).Free()
+ x.reff355ccbf = nil
}
}
-// NewBaseOutStructureRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDisplayPlaneInfo2Ref creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewBaseOutStructureRef(ref unsafe.Pointer) *BaseOutStructure {
+func NewDisplayPlaneInfo2Ref(ref unsafe.Pointer) *DisplayPlaneInfo2 {
if ref == nil {
return nil
}
- obj := new(BaseOutStructure)
- obj.refd536fcd0 = (*C.VkBaseOutStructure)(unsafe.Pointer(ref))
+ obj := new(DisplayPlaneInfo2)
+ obj.reff355ccbf = (*C.VkDisplayPlaneInfo2KHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *BaseOutStructure) PassRef() (*C.VkBaseOutStructure, *cgoAllocMap) {
+func (x *DisplayPlaneInfo2) PassRef() (*C.VkDisplayPlaneInfo2KHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refd536fcd0 != nil {
- return x.refd536fcd0, nil
+ } else if x.reff355ccbf != nil {
+ return x.reff355ccbf, nil
}
- memd536fcd0 := allocBaseOutStructureMemory(1)
- refd536fcd0 := (*C.VkBaseOutStructure)(memd536fcd0)
- allocsd536fcd0 := new(cgoAllocMap)
- allocsd536fcd0.Add(memd536fcd0)
+ memf355ccbf := allocDisplayPlaneInfo2Memory(1)
+ reff355ccbf := (*C.VkDisplayPlaneInfo2KHR)(memf355ccbf)
+ allocsf355ccbf := new(cgoAllocMap)
+ allocsf355ccbf.Add(memf355ccbf)
var csType_allocs *cgoAllocMap
- refd536fcd0.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsd536fcd0.Borrow(csType_allocs)
+ reff355ccbf.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsf355ccbf.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refd536fcd0.pNext, cpNext_allocs = unpackSBaseOutStructure(x.PNext)
- allocsd536fcd0.Borrow(cpNext_allocs)
+ reff355ccbf.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsf355ccbf.Borrow(cpNext_allocs)
- x.refd536fcd0 = refd536fcd0
- x.allocsd536fcd0 = allocsd536fcd0
- return refd536fcd0, allocsd536fcd0
+ var cmode_allocs *cgoAllocMap
+ reff355ccbf.mode, cmode_allocs = *(*C.VkDisplayModeKHR)(unsafe.Pointer(&x.Mode)), cgoAllocsUnknown
+ allocsf355ccbf.Borrow(cmode_allocs)
+
+ var cplaneIndex_allocs *cgoAllocMap
+ reff355ccbf.planeIndex, cplaneIndex_allocs = (C.uint32_t)(x.PlaneIndex), cgoAllocsUnknown
+ allocsf355ccbf.Borrow(cplaneIndex_allocs)
+
+ x.reff355ccbf = reff355ccbf
+ x.allocsf355ccbf = allocsf355ccbf
+ return reff355ccbf, allocsf355ccbf
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x BaseOutStructure) PassValue() (C.VkBaseOutStructure, *cgoAllocMap) {
- if x.refd536fcd0 != nil {
- return *x.refd536fcd0, nil
+func (x DisplayPlaneInfo2) PassValue() (C.VkDisplayPlaneInfo2KHR, *cgoAllocMap) {
+ if x.reff355ccbf != nil {
+ return *x.reff355ccbf, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -13098,135 +39980,91 @@ func (x BaseOutStructure) PassValue() (C.VkBaseOutStructure, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *BaseOutStructure) Deref() {
- if x.refd536fcd0 == nil {
+func (x *DisplayPlaneInfo2) Deref() {
+ if x.reff355ccbf == nil {
return
}
- x.SType = (StructureType)(x.refd536fcd0.sType)
- packSBaseOutStructure(x.PNext, x.refd536fcd0.pNext)
-}
-
-// allocBaseInStructureMemory allocates memory for type C.VkBaseInStructure in C.
-// The caller is responsible for freeing the this memory via C.free.
-func allocBaseInStructureMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBaseInStructureValue))
- if err != nil {
- panic("memory alloc error: " + err.Error())
- }
- return mem
+ x.SType = (StructureType)(x.reff355ccbf.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff355ccbf.pNext))
+ x.Mode = *(*DisplayMode)(unsafe.Pointer(&x.reff355ccbf.mode))
+ x.PlaneIndex = (uint32)(x.reff355ccbf.planeIndex)
}
-const sizeOfBaseInStructureValue = unsafe.Sizeof([1]C.VkBaseInStructure{})
-
-// allocStruct_VkBaseInStructureMemory allocates memory for type C.struct_VkBaseInStructure in C.
+// allocDisplayPlaneCapabilities2Memory allocates memory for type C.VkDisplayPlaneCapabilities2KHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocStruct_VkBaseInStructureMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfStruct_VkBaseInStructureValue))
+func allocDisplayPlaneCapabilities2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplayPlaneCapabilities2Value))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfStruct_VkBaseInStructureValue = unsafe.Sizeof([1]C.struct_VkBaseInStructure{})
-
-// unpackSBaseInStructure transforms a sliced Go data structure into plain C format.
-func unpackSBaseInStructure(x []BaseInStructure) (unpacked *C.struct_VkBaseInStructure, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.struct_VkBaseInStructure) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocStruct_VkBaseInStructureMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.struct_VkBaseInStructure)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.struct_VkBaseInStructure)(h.Data)
- return
-}
-
-// packSBaseInStructure reads sliced Go data structure out from plain C format.
-func packSBaseInStructure(v []BaseInStructure, ptr0 *C.struct_VkBaseInStructure) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfStruct_VkBaseInStructureValue]C.struct_VkBaseInStructure)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewBaseInStructureRef(unsafe.Pointer(&ptr1))
- }
-}
+const sizeOfDisplayPlaneCapabilities2Value = unsafe.Sizeof([1]C.VkDisplayPlaneCapabilities2KHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *BaseInStructure) Ref() *C.VkBaseInStructure {
+func (x *DisplayPlaneCapabilities2) Ref() *C.VkDisplayPlaneCapabilities2KHR {
if x == nil {
return nil
}
- return x.refeae401a9
+ return x.refb53dfb44
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *BaseInStructure) Free() {
- if x != nil && x.allocseae401a9 != nil {
- x.allocseae401a9.(*cgoAllocMap).Free()
- x.refeae401a9 = nil
+func (x *DisplayPlaneCapabilities2) Free() {
+ if x != nil && x.allocsb53dfb44 != nil {
+ x.allocsb53dfb44.(*cgoAllocMap).Free()
+ x.refb53dfb44 = nil
}
}
-// NewBaseInStructureRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDisplayPlaneCapabilities2Ref creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewBaseInStructureRef(ref unsafe.Pointer) *BaseInStructure {
+func NewDisplayPlaneCapabilities2Ref(ref unsafe.Pointer) *DisplayPlaneCapabilities2 {
if ref == nil {
return nil
}
- obj := new(BaseInStructure)
- obj.refeae401a9 = (*C.VkBaseInStructure)(unsafe.Pointer(ref))
+ obj := new(DisplayPlaneCapabilities2)
+ obj.refb53dfb44 = (*C.VkDisplayPlaneCapabilities2KHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *BaseInStructure) PassRef() (*C.VkBaseInStructure, *cgoAllocMap) {
+func (x *DisplayPlaneCapabilities2) PassRef() (*C.VkDisplayPlaneCapabilities2KHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refeae401a9 != nil {
- return x.refeae401a9, nil
+ } else if x.refb53dfb44 != nil {
+ return x.refb53dfb44, nil
}
- memeae401a9 := allocBaseInStructureMemory(1)
- refeae401a9 := (*C.VkBaseInStructure)(memeae401a9)
- allocseae401a9 := new(cgoAllocMap)
- allocseae401a9.Add(memeae401a9)
+ memb53dfb44 := allocDisplayPlaneCapabilities2Memory(1)
+ refb53dfb44 := (*C.VkDisplayPlaneCapabilities2KHR)(memb53dfb44)
+ allocsb53dfb44 := new(cgoAllocMap)
+ allocsb53dfb44.Add(memb53dfb44)
var csType_allocs *cgoAllocMap
- refeae401a9.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocseae401a9.Borrow(csType_allocs)
+ refb53dfb44.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsb53dfb44.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refeae401a9.pNext, cpNext_allocs = unpackSBaseInStructure(x.PNext)
- allocseae401a9.Borrow(cpNext_allocs)
+ refb53dfb44.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsb53dfb44.Borrow(cpNext_allocs)
- x.refeae401a9 = refeae401a9
- x.allocseae401a9 = allocseae401a9
- return refeae401a9, allocseae401a9
+ var ccapabilities_allocs *cgoAllocMap
+ refb53dfb44.capabilities, ccapabilities_allocs = x.Capabilities.PassValue()
+ allocsb53dfb44.Borrow(ccapabilities_allocs)
+
+ x.refb53dfb44 = refb53dfb44
+ x.allocsb53dfb44 = allocsb53dfb44
+ return refb53dfb44, allocsb53dfb44
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x BaseInStructure) PassValue() (C.VkBaseInStructure, *cgoAllocMap) {
- if x.refeae401a9 != nil {
- return *x.refeae401a9, nil
+func (x DisplayPlaneCapabilities2) PassValue() (C.VkDisplayPlaneCapabilities2KHR, *cgoAllocMap) {
+ if x.refb53dfb44 != nil {
+ return *x.refb53dfb44, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -13234,101 +40072,94 @@ func (x BaseInStructure) PassValue() (C.VkBaseInStructure, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *BaseInStructure) Deref() {
- if x.refeae401a9 == nil {
+func (x *DisplayPlaneCapabilities2) Deref() {
+ if x.refb53dfb44 == nil {
return
}
- x.SType = (StructureType)(x.refeae401a9.sType)
- packSBaseInStructure(x.PNext, x.refeae401a9.pNext)
+ x.SType = (StructureType)(x.refb53dfb44.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb53dfb44.pNext))
+ x.Capabilities = *NewDisplayPlaneCapabilitiesRef(unsafe.Pointer(&x.refb53dfb44.capabilities))
}
-// allocPhysicalDeviceSubgroupPropertiesMemory allocates memory for type C.VkPhysicalDeviceSubgroupProperties in C.
+// allocPhysicalDeviceShaderClockFeaturesMemory allocates memory for type C.VkPhysicalDeviceShaderClockFeaturesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceSubgroupPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceSubgroupPropertiesValue))
+func allocPhysicalDeviceShaderClockFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceShaderClockFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceSubgroupPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceSubgroupProperties{})
+const sizeOfPhysicalDeviceShaderClockFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceShaderClockFeaturesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceSubgroupProperties) Ref() *C.VkPhysicalDeviceSubgroupProperties {
+func (x *PhysicalDeviceShaderClockFeatures) Ref() *C.VkPhysicalDeviceShaderClockFeaturesKHR {
if x == nil {
return nil
}
- return x.refb019c29f
+ return x.refab512283
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceSubgroupProperties) Free() {
- if x != nil && x.allocsb019c29f != nil {
- x.allocsb019c29f.(*cgoAllocMap).Free()
- x.refb019c29f = nil
+func (x *PhysicalDeviceShaderClockFeatures) Free() {
+ if x != nil && x.allocsab512283 != nil {
+ x.allocsab512283.(*cgoAllocMap).Free()
+ x.refab512283 = nil
}
}
-// NewPhysicalDeviceSubgroupPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceShaderClockFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceSubgroupPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceSubgroupProperties {
+func NewPhysicalDeviceShaderClockFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceShaderClockFeatures {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceSubgroupProperties)
- obj.refb019c29f = (*C.VkPhysicalDeviceSubgroupProperties)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceShaderClockFeatures)
+ obj.refab512283 = (*C.VkPhysicalDeviceShaderClockFeaturesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceSubgroupProperties) PassRef() (*C.VkPhysicalDeviceSubgroupProperties, *cgoAllocMap) {
+func (x *PhysicalDeviceShaderClockFeatures) PassRef() (*C.VkPhysicalDeviceShaderClockFeaturesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refb019c29f != nil {
- return x.refb019c29f, nil
+ } else if x.refab512283 != nil {
+ return x.refab512283, nil
}
- memb019c29f := allocPhysicalDeviceSubgroupPropertiesMemory(1)
- refb019c29f := (*C.VkPhysicalDeviceSubgroupProperties)(memb019c29f)
- allocsb019c29f := new(cgoAllocMap)
- allocsb019c29f.Add(memb019c29f)
+ memab512283 := allocPhysicalDeviceShaderClockFeaturesMemory(1)
+ refab512283 := (*C.VkPhysicalDeviceShaderClockFeaturesKHR)(memab512283)
+ allocsab512283 := new(cgoAllocMap)
+ allocsab512283.Add(memab512283)
var csType_allocs *cgoAllocMap
- refb019c29f.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsb019c29f.Borrow(csType_allocs)
+ refab512283.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsab512283.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refb019c29f.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsb019c29f.Borrow(cpNext_allocs)
-
- var csubgroupSize_allocs *cgoAllocMap
- refb019c29f.subgroupSize, csubgroupSize_allocs = (C.uint32_t)(x.SubgroupSize), cgoAllocsUnknown
- allocsb019c29f.Borrow(csubgroupSize_allocs)
-
- var csupportedStages_allocs *cgoAllocMap
- refb019c29f.supportedStages, csupportedStages_allocs = (C.VkShaderStageFlags)(x.SupportedStages), cgoAllocsUnknown
- allocsb019c29f.Borrow(csupportedStages_allocs)
+ refab512283.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsab512283.Borrow(cpNext_allocs)
- var csupportedOperations_allocs *cgoAllocMap
- refb019c29f.supportedOperations, csupportedOperations_allocs = (C.VkSubgroupFeatureFlags)(x.SupportedOperations), cgoAllocsUnknown
- allocsb019c29f.Borrow(csupportedOperations_allocs)
+ var cshaderSubgroupClock_allocs *cgoAllocMap
+ refab512283.shaderSubgroupClock, cshaderSubgroupClock_allocs = (C.VkBool32)(x.ShaderSubgroupClock), cgoAllocsUnknown
+ allocsab512283.Borrow(cshaderSubgroupClock_allocs)
- var cquadOperationsInAllStages_allocs *cgoAllocMap
- refb019c29f.quadOperationsInAllStages, cquadOperationsInAllStages_allocs = (C.VkBool32)(x.QuadOperationsInAllStages), cgoAllocsUnknown
- allocsb019c29f.Borrow(cquadOperationsInAllStages_allocs)
+ var cshaderDeviceClock_allocs *cgoAllocMap
+ refab512283.shaderDeviceClock, cshaderDeviceClock_allocs = (C.VkBool32)(x.ShaderDeviceClock), cgoAllocsUnknown
+ allocsab512283.Borrow(cshaderDeviceClock_allocs)
- x.refb019c29f = refb019c29f
- x.allocsb019c29f = allocsb019c29f
- return refb019c29f, allocsb019c29f
+ x.refab512283 = refab512283
+ x.allocsab512283 = allocsab512283
+ return refab512283, allocsab512283
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceSubgroupProperties) PassValue() (C.VkPhysicalDeviceSubgroupProperties, *cgoAllocMap) {
- if x.refb019c29f != nil {
- return *x.refb019c29f, nil
+func (x PhysicalDeviceShaderClockFeatures) PassValue() (C.VkPhysicalDeviceShaderClockFeaturesKHR, *cgoAllocMap) {
+ if x.refab512283 != nil {
+ return *x.refab512283, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -13336,101 +40167,91 @@ func (x PhysicalDeviceSubgroupProperties) PassValue() (C.VkPhysicalDeviceSubgrou
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceSubgroupProperties) Deref() {
- if x.refb019c29f == nil {
+func (x *PhysicalDeviceShaderClockFeatures) Deref() {
+ if x.refab512283 == nil {
return
}
- x.SType = (StructureType)(x.refb019c29f.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb019c29f.pNext))
- x.SubgroupSize = (uint32)(x.refb019c29f.subgroupSize)
- x.SupportedStages = (ShaderStageFlags)(x.refb019c29f.supportedStages)
- x.SupportedOperations = (SubgroupFeatureFlags)(x.refb019c29f.supportedOperations)
- x.QuadOperationsInAllStages = (Bool32)(x.refb019c29f.quadOperationsInAllStages)
+ x.SType = (StructureType)(x.refab512283.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refab512283.pNext))
+ x.ShaderSubgroupClock = (Bool32)(x.refab512283.shaderSubgroupClock)
+ x.ShaderDeviceClock = (Bool32)(x.refab512283.shaderDeviceClock)
}
-// allocBindBufferMemoryInfoMemory allocates memory for type C.VkBindBufferMemoryInfo in C.
+// allocDeviceQueueGlobalPriorityCreateInfoMemory allocates memory for type C.VkDeviceQueueGlobalPriorityCreateInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocBindBufferMemoryInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBindBufferMemoryInfoValue))
+func allocDeviceQueueGlobalPriorityCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceQueueGlobalPriorityCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfBindBufferMemoryInfoValue = unsafe.Sizeof([1]C.VkBindBufferMemoryInfo{})
+const sizeOfDeviceQueueGlobalPriorityCreateInfoValue = unsafe.Sizeof([1]C.VkDeviceQueueGlobalPriorityCreateInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *BindBufferMemoryInfo) Ref() *C.VkBindBufferMemoryInfo {
+func (x *DeviceQueueGlobalPriorityCreateInfo) Ref() *C.VkDeviceQueueGlobalPriorityCreateInfoKHR {
if x == nil {
return nil
}
- return x.refd392322d
+ return x.refdf0afc28
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *BindBufferMemoryInfo) Free() {
- if x != nil && x.allocsd392322d != nil {
- x.allocsd392322d.(*cgoAllocMap).Free()
- x.refd392322d = nil
+func (x *DeviceQueueGlobalPriorityCreateInfo) Free() {
+ if x != nil && x.allocsdf0afc28 != nil {
+ x.allocsdf0afc28.(*cgoAllocMap).Free()
+ x.refdf0afc28 = nil
}
}
-// NewBindBufferMemoryInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDeviceQueueGlobalPriorityCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewBindBufferMemoryInfoRef(ref unsafe.Pointer) *BindBufferMemoryInfo {
+func NewDeviceQueueGlobalPriorityCreateInfoRef(ref unsafe.Pointer) *DeviceQueueGlobalPriorityCreateInfo {
if ref == nil {
return nil
}
- obj := new(BindBufferMemoryInfo)
- obj.refd392322d = (*C.VkBindBufferMemoryInfo)(unsafe.Pointer(ref))
+ obj := new(DeviceQueueGlobalPriorityCreateInfo)
+ obj.refdf0afc28 = (*C.VkDeviceQueueGlobalPriorityCreateInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *BindBufferMemoryInfo) PassRef() (*C.VkBindBufferMemoryInfo, *cgoAllocMap) {
+func (x *DeviceQueueGlobalPriorityCreateInfo) PassRef() (*C.VkDeviceQueueGlobalPriorityCreateInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refd392322d != nil {
- return x.refd392322d, nil
+ } else if x.refdf0afc28 != nil {
+ return x.refdf0afc28, nil
}
- memd392322d := allocBindBufferMemoryInfoMemory(1)
- refd392322d := (*C.VkBindBufferMemoryInfo)(memd392322d)
- allocsd392322d := new(cgoAllocMap)
- allocsd392322d.Add(memd392322d)
+ memdf0afc28 := allocDeviceQueueGlobalPriorityCreateInfoMemory(1)
+ refdf0afc28 := (*C.VkDeviceQueueGlobalPriorityCreateInfoKHR)(memdf0afc28)
+ allocsdf0afc28 := new(cgoAllocMap)
+ allocsdf0afc28.Add(memdf0afc28)
var csType_allocs *cgoAllocMap
- refd392322d.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsd392322d.Borrow(csType_allocs)
+ refdf0afc28.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsdf0afc28.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refd392322d.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsd392322d.Borrow(cpNext_allocs)
+ refdf0afc28.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsdf0afc28.Borrow(cpNext_allocs)
- var cbuffer_allocs *cgoAllocMap
- refd392322d.buffer, cbuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.Buffer)), cgoAllocsUnknown
- allocsd392322d.Borrow(cbuffer_allocs)
-
- var cmemory_allocs *cgoAllocMap
- refd392322d.memory, cmemory_allocs = *(*C.VkDeviceMemory)(unsafe.Pointer(&x.Memory)), cgoAllocsUnknown
- allocsd392322d.Borrow(cmemory_allocs)
-
- var cmemoryOffset_allocs *cgoAllocMap
- refd392322d.memoryOffset, cmemoryOffset_allocs = (C.VkDeviceSize)(x.MemoryOffset), cgoAllocsUnknown
- allocsd392322d.Borrow(cmemoryOffset_allocs)
+ var cglobalPriority_allocs *cgoAllocMap
+ refdf0afc28.globalPriority, cglobalPriority_allocs = (C.VkQueueGlobalPriorityKHR)(x.GlobalPriority), cgoAllocsUnknown
+ allocsdf0afc28.Borrow(cglobalPriority_allocs)
- x.refd392322d = refd392322d
- x.allocsd392322d = allocsd392322d
- return refd392322d, allocsd392322d
+ x.refdf0afc28 = refdf0afc28
+ x.allocsdf0afc28 = allocsdf0afc28
+ return refdf0afc28, allocsdf0afc28
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x BindBufferMemoryInfo) PassValue() (C.VkBindBufferMemoryInfo, *cgoAllocMap) {
- if x.refd392322d != nil {
- return *x.refd392322d, nil
+func (x DeviceQueueGlobalPriorityCreateInfo) PassValue() (C.VkDeviceQueueGlobalPriorityCreateInfoKHR, *cgoAllocMap) {
+ if x.refdf0afc28 != nil {
+ return *x.refdf0afc28, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -13438,100 +40259,90 @@ func (x BindBufferMemoryInfo) PassValue() (C.VkBindBufferMemoryInfo, *cgoAllocMa
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *BindBufferMemoryInfo) Deref() {
- if x.refd392322d == nil {
+func (x *DeviceQueueGlobalPriorityCreateInfo) Deref() {
+ if x.refdf0afc28 == nil {
return
}
- x.SType = (StructureType)(x.refd392322d.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd392322d.pNext))
- x.Buffer = *(*Buffer)(unsafe.Pointer(&x.refd392322d.buffer))
- x.Memory = *(*DeviceMemory)(unsafe.Pointer(&x.refd392322d.memory))
- x.MemoryOffset = (DeviceSize)(x.refd392322d.memoryOffset)
+ x.SType = (StructureType)(x.refdf0afc28.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refdf0afc28.pNext))
+ x.GlobalPriority = (QueueGlobalPriority)(x.refdf0afc28.globalPriority)
}
-// allocBindImageMemoryInfoMemory allocates memory for type C.VkBindImageMemoryInfo in C.
+// allocPhysicalDeviceGlobalPriorityQueryFeaturesMemory allocates memory for type C.VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocBindImageMemoryInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBindImageMemoryInfoValue))
+func allocPhysicalDeviceGlobalPriorityQueryFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceGlobalPriorityQueryFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfBindImageMemoryInfoValue = unsafe.Sizeof([1]C.VkBindImageMemoryInfo{})
+const sizeOfPhysicalDeviceGlobalPriorityQueryFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *BindImageMemoryInfo) Ref() *C.VkBindImageMemoryInfo {
+func (x *PhysicalDeviceGlobalPriorityQueryFeatures) Ref() *C.VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR {
if x == nil {
return nil
}
- return x.ref767a2113
+ return x.refa6f56699
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *BindImageMemoryInfo) Free() {
- if x != nil && x.allocs767a2113 != nil {
- x.allocs767a2113.(*cgoAllocMap).Free()
- x.ref767a2113 = nil
+func (x *PhysicalDeviceGlobalPriorityQueryFeatures) Free() {
+ if x != nil && x.allocsa6f56699 != nil {
+ x.allocsa6f56699.(*cgoAllocMap).Free()
+ x.refa6f56699 = nil
}
}
-// NewBindImageMemoryInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceGlobalPriorityQueryFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewBindImageMemoryInfoRef(ref unsafe.Pointer) *BindImageMemoryInfo {
+func NewPhysicalDeviceGlobalPriorityQueryFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceGlobalPriorityQueryFeatures {
if ref == nil {
return nil
}
- obj := new(BindImageMemoryInfo)
- obj.ref767a2113 = (*C.VkBindImageMemoryInfo)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceGlobalPriorityQueryFeatures)
+ obj.refa6f56699 = (*C.VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *BindImageMemoryInfo) PassRef() (*C.VkBindImageMemoryInfo, *cgoAllocMap) {
+func (x *PhysicalDeviceGlobalPriorityQueryFeatures) PassRef() (*C.VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref767a2113 != nil {
- return x.ref767a2113, nil
+ } else if x.refa6f56699 != nil {
+ return x.refa6f56699, nil
}
- mem767a2113 := allocBindImageMemoryInfoMemory(1)
- ref767a2113 := (*C.VkBindImageMemoryInfo)(mem767a2113)
- allocs767a2113 := new(cgoAllocMap)
- allocs767a2113.Add(mem767a2113)
+ mema6f56699 := allocPhysicalDeviceGlobalPriorityQueryFeaturesMemory(1)
+ refa6f56699 := (*C.VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR)(mema6f56699)
+ allocsa6f56699 := new(cgoAllocMap)
+ allocsa6f56699.Add(mema6f56699)
var csType_allocs *cgoAllocMap
- ref767a2113.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs767a2113.Borrow(csType_allocs)
+ refa6f56699.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsa6f56699.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref767a2113.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs767a2113.Borrow(cpNext_allocs)
-
- var cimage_allocs *cgoAllocMap
- ref767a2113.image, cimage_allocs = *(*C.VkImage)(unsafe.Pointer(&x.Image)), cgoAllocsUnknown
- allocs767a2113.Borrow(cimage_allocs)
-
- var cmemory_allocs *cgoAllocMap
- ref767a2113.memory, cmemory_allocs = *(*C.VkDeviceMemory)(unsafe.Pointer(&x.Memory)), cgoAllocsUnknown
- allocs767a2113.Borrow(cmemory_allocs)
+ refa6f56699.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsa6f56699.Borrow(cpNext_allocs)
- var cmemoryOffset_allocs *cgoAllocMap
- ref767a2113.memoryOffset, cmemoryOffset_allocs = (C.VkDeviceSize)(x.MemoryOffset), cgoAllocsUnknown
- allocs767a2113.Borrow(cmemoryOffset_allocs)
+ var cglobalPriorityQuery_allocs *cgoAllocMap
+ refa6f56699.globalPriorityQuery, cglobalPriorityQuery_allocs = (C.VkBool32)(x.GlobalPriorityQuery), cgoAllocsUnknown
+ allocsa6f56699.Borrow(cglobalPriorityQuery_allocs)
- x.ref767a2113 = ref767a2113
- x.allocs767a2113 = allocs767a2113
- return ref767a2113, allocs767a2113
+ x.refa6f56699 = refa6f56699
+ x.allocsa6f56699 = allocsa6f56699
+ return refa6f56699, allocsa6f56699
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x BindImageMemoryInfo) PassValue() (C.VkBindImageMemoryInfo, *cgoAllocMap) {
- if x.ref767a2113 != nil {
- return *x.ref767a2113, nil
+func (x PhysicalDeviceGlobalPriorityQueryFeatures) PassValue() (C.VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR, *cgoAllocMap) {
+ if x.refa6f56699 != nil {
+ return *x.refa6f56699, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -13539,104 +40350,94 @@ func (x BindImageMemoryInfo) PassValue() (C.VkBindImageMemoryInfo, *cgoAllocMap)
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *BindImageMemoryInfo) Deref() {
- if x.ref767a2113 == nil {
+func (x *PhysicalDeviceGlobalPriorityQueryFeatures) Deref() {
+ if x.refa6f56699 == nil {
return
}
- x.SType = (StructureType)(x.ref767a2113.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref767a2113.pNext))
- x.Image = *(*Image)(unsafe.Pointer(&x.ref767a2113.image))
- x.Memory = *(*DeviceMemory)(unsafe.Pointer(&x.ref767a2113.memory))
- x.MemoryOffset = (DeviceSize)(x.ref767a2113.memoryOffset)
+ x.SType = (StructureType)(x.refa6f56699.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa6f56699.pNext))
+ x.GlobalPriorityQuery = (Bool32)(x.refa6f56699.globalPriorityQuery)
}
-// allocPhysicalDevice16BitStorageFeaturesMemory allocates memory for type C.VkPhysicalDevice16BitStorageFeatures in C.
+// allocQueueFamilyGlobalPriorityPropertiesMemory allocates memory for type C.VkQueueFamilyGlobalPriorityPropertiesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDevice16BitStorageFeaturesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDevice16BitStorageFeaturesValue))
+func allocQueueFamilyGlobalPriorityPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfQueueFamilyGlobalPriorityPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDevice16BitStorageFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDevice16BitStorageFeatures{})
+const sizeOfQueueFamilyGlobalPriorityPropertiesValue = unsafe.Sizeof([1]C.VkQueueFamilyGlobalPriorityPropertiesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDevice16BitStorageFeatures) Ref() *C.VkPhysicalDevice16BitStorageFeatures {
+func (x *QueueFamilyGlobalPriorityProperties) Ref() *C.VkQueueFamilyGlobalPriorityPropertiesKHR {
if x == nil {
return nil
}
- return x.refa90fed14
+ return x.reff5bb6c4d
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDevice16BitStorageFeatures) Free() {
- if x != nil && x.allocsa90fed14 != nil {
- x.allocsa90fed14.(*cgoAllocMap).Free()
- x.refa90fed14 = nil
+func (x *QueueFamilyGlobalPriorityProperties) Free() {
+ if x != nil && x.allocsf5bb6c4d != nil {
+ x.allocsf5bb6c4d.(*cgoAllocMap).Free()
+ x.reff5bb6c4d = nil
}
}
-// NewPhysicalDevice16BitStorageFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewQueueFamilyGlobalPriorityPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDevice16BitStorageFeaturesRef(ref unsafe.Pointer) *PhysicalDevice16BitStorageFeatures {
+func NewQueueFamilyGlobalPriorityPropertiesRef(ref unsafe.Pointer) *QueueFamilyGlobalPriorityProperties {
if ref == nil {
return nil
}
- obj := new(PhysicalDevice16BitStorageFeatures)
- obj.refa90fed14 = (*C.VkPhysicalDevice16BitStorageFeatures)(unsafe.Pointer(ref))
+ obj := new(QueueFamilyGlobalPriorityProperties)
+ obj.reff5bb6c4d = (*C.VkQueueFamilyGlobalPriorityPropertiesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDevice16BitStorageFeatures) PassRef() (*C.VkPhysicalDevice16BitStorageFeatures, *cgoAllocMap) {
+func (x *QueueFamilyGlobalPriorityProperties) PassRef() (*C.VkQueueFamilyGlobalPriorityPropertiesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refa90fed14 != nil {
- return x.refa90fed14, nil
+ } else if x.reff5bb6c4d != nil {
+ return x.reff5bb6c4d, nil
}
- mema90fed14 := allocPhysicalDevice16BitStorageFeaturesMemory(1)
- refa90fed14 := (*C.VkPhysicalDevice16BitStorageFeatures)(mema90fed14)
- allocsa90fed14 := new(cgoAllocMap)
- allocsa90fed14.Add(mema90fed14)
+ memf5bb6c4d := allocQueueFamilyGlobalPriorityPropertiesMemory(1)
+ reff5bb6c4d := (*C.VkQueueFamilyGlobalPriorityPropertiesKHR)(memf5bb6c4d)
+ allocsf5bb6c4d := new(cgoAllocMap)
+ allocsf5bb6c4d.Add(memf5bb6c4d)
var csType_allocs *cgoAllocMap
- refa90fed14.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsa90fed14.Borrow(csType_allocs)
+ reff5bb6c4d.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsf5bb6c4d.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refa90fed14.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsa90fed14.Borrow(cpNext_allocs)
-
- var cstorageBuffer16BitAccess_allocs *cgoAllocMap
- refa90fed14.storageBuffer16BitAccess, cstorageBuffer16BitAccess_allocs = (C.VkBool32)(x.StorageBuffer16BitAccess), cgoAllocsUnknown
- allocsa90fed14.Borrow(cstorageBuffer16BitAccess_allocs)
+ reff5bb6c4d.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsf5bb6c4d.Borrow(cpNext_allocs)
- var cuniformAndStorageBuffer16BitAccess_allocs *cgoAllocMap
- refa90fed14.uniformAndStorageBuffer16BitAccess, cuniformAndStorageBuffer16BitAccess_allocs = (C.VkBool32)(x.UniformAndStorageBuffer16BitAccess), cgoAllocsUnknown
- allocsa90fed14.Borrow(cuniformAndStorageBuffer16BitAccess_allocs)
-
- var cstoragePushConstant16_allocs *cgoAllocMap
- refa90fed14.storagePushConstant16, cstoragePushConstant16_allocs = (C.VkBool32)(x.StoragePushConstant16), cgoAllocsUnknown
- allocsa90fed14.Borrow(cstoragePushConstant16_allocs)
+ var cpriorityCount_allocs *cgoAllocMap
+ reff5bb6c4d.priorityCount, cpriorityCount_allocs = (C.uint32_t)(x.PriorityCount), cgoAllocsUnknown
+ allocsf5bb6c4d.Borrow(cpriorityCount_allocs)
- var cstorageInputOutput16_allocs *cgoAllocMap
- refa90fed14.storageInputOutput16, cstorageInputOutput16_allocs = (C.VkBool32)(x.StorageInputOutput16), cgoAllocsUnknown
- allocsa90fed14.Borrow(cstorageInputOutput16_allocs)
+ var cpriorities_allocs *cgoAllocMap
+ reff5bb6c4d.priorities, cpriorities_allocs = *(*[16]C.VkQueueGlobalPriorityKHR)(unsafe.Pointer(&x.Priorities)), cgoAllocsUnknown
+ allocsf5bb6c4d.Borrow(cpriorities_allocs)
- x.refa90fed14 = refa90fed14
- x.allocsa90fed14 = allocsa90fed14
- return refa90fed14, allocsa90fed14
+ x.reff5bb6c4d = reff5bb6c4d
+ x.allocsf5bb6c4d = allocsf5bb6c4d
+ return reff5bb6c4d, allocsf5bb6c4d
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDevice16BitStorageFeatures) PassValue() (C.VkPhysicalDevice16BitStorageFeatures, *cgoAllocMap) {
- if x.refa90fed14 != nil {
- return *x.refa90fed14, nil
+func (x QueueFamilyGlobalPriorityProperties) PassValue() (C.VkQueueFamilyGlobalPriorityPropertiesKHR, *cgoAllocMap) {
+ if x.reff5bb6c4d != nil {
+ return *x.reff5bb6c4d, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -13644,97 +40445,95 @@ func (x PhysicalDevice16BitStorageFeatures) PassValue() (C.VkPhysicalDevice16Bit
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDevice16BitStorageFeatures) Deref() {
- if x.refa90fed14 == nil {
+func (x *QueueFamilyGlobalPriorityProperties) Deref() {
+ if x.reff5bb6c4d == nil {
return
}
- x.SType = (StructureType)(x.refa90fed14.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa90fed14.pNext))
- x.StorageBuffer16BitAccess = (Bool32)(x.refa90fed14.storageBuffer16BitAccess)
- x.UniformAndStorageBuffer16BitAccess = (Bool32)(x.refa90fed14.uniformAndStorageBuffer16BitAccess)
- x.StoragePushConstant16 = (Bool32)(x.refa90fed14.storagePushConstant16)
- x.StorageInputOutput16 = (Bool32)(x.refa90fed14.storageInputOutput16)
+ x.SType = (StructureType)(x.reff5bb6c4d.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff5bb6c4d.pNext))
+ x.PriorityCount = (uint32)(x.reff5bb6c4d.priorityCount)
+ x.Priorities = *(*[16]QueueGlobalPriority)(unsafe.Pointer(&x.reff5bb6c4d.priorities))
}
-// allocMemoryDedicatedRequirementsMemory allocates memory for type C.VkMemoryDedicatedRequirements in C.
+// allocFragmentShadingRateAttachmentInfoMemory allocates memory for type C.VkFragmentShadingRateAttachmentInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocMemoryDedicatedRequirementsMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMemoryDedicatedRequirementsValue))
+func allocFragmentShadingRateAttachmentInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfFragmentShadingRateAttachmentInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfMemoryDedicatedRequirementsValue = unsafe.Sizeof([1]C.VkMemoryDedicatedRequirements{})
+const sizeOfFragmentShadingRateAttachmentInfoValue = unsafe.Sizeof([1]C.VkFragmentShadingRateAttachmentInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *MemoryDedicatedRequirements) Ref() *C.VkMemoryDedicatedRequirements {
+func (x *FragmentShadingRateAttachmentInfo) Ref() *C.VkFragmentShadingRateAttachmentInfoKHR {
if x == nil {
return nil
}
- return x.refaa924122
+ return x.refd9f9d390
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *MemoryDedicatedRequirements) Free() {
- if x != nil && x.allocsaa924122 != nil {
- x.allocsaa924122.(*cgoAllocMap).Free()
- x.refaa924122 = nil
+func (x *FragmentShadingRateAttachmentInfo) Free() {
+ if x != nil && x.allocsd9f9d390 != nil {
+ x.allocsd9f9d390.(*cgoAllocMap).Free()
+ x.refd9f9d390 = nil
}
}
-// NewMemoryDedicatedRequirementsRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewFragmentShadingRateAttachmentInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewMemoryDedicatedRequirementsRef(ref unsafe.Pointer) *MemoryDedicatedRequirements {
+func NewFragmentShadingRateAttachmentInfoRef(ref unsafe.Pointer) *FragmentShadingRateAttachmentInfo {
if ref == nil {
return nil
}
- obj := new(MemoryDedicatedRequirements)
- obj.refaa924122 = (*C.VkMemoryDedicatedRequirements)(unsafe.Pointer(ref))
+ obj := new(FragmentShadingRateAttachmentInfo)
+ obj.refd9f9d390 = (*C.VkFragmentShadingRateAttachmentInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *MemoryDedicatedRequirements) PassRef() (*C.VkMemoryDedicatedRequirements, *cgoAllocMap) {
+func (x *FragmentShadingRateAttachmentInfo) PassRef() (*C.VkFragmentShadingRateAttachmentInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refaa924122 != nil {
- return x.refaa924122, nil
+ } else if x.refd9f9d390 != nil {
+ return x.refd9f9d390, nil
}
- memaa924122 := allocMemoryDedicatedRequirementsMemory(1)
- refaa924122 := (*C.VkMemoryDedicatedRequirements)(memaa924122)
- allocsaa924122 := new(cgoAllocMap)
- allocsaa924122.Add(memaa924122)
+ memd9f9d390 := allocFragmentShadingRateAttachmentInfoMemory(1)
+ refd9f9d390 := (*C.VkFragmentShadingRateAttachmentInfoKHR)(memd9f9d390)
+ allocsd9f9d390 := new(cgoAllocMap)
+ allocsd9f9d390.Add(memd9f9d390)
var csType_allocs *cgoAllocMap
- refaa924122.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsaa924122.Borrow(csType_allocs)
+ refd9f9d390.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd9f9d390.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refaa924122.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsaa924122.Borrow(cpNext_allocs)
+ refd9f9d390.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsd9f9d390.Borrow(cpNext_allocs)
- var cprefersDedicatedAllocation_allocs *cgoAllocMap
- refaa924122.prefersDedicatedAllocation, cprefersDedicatedAllocation_allocs = (C.VkBool32)(x.PrefersDedicatedAllocation), cgoAllocsUnknown
- allocsaa924122.Borrow(cprefersDedicatedAllocation_allocs)
+ var cpFragmentShadingRateAttachment_allocs *cgoAllocMap
+ refd9f9d390.pFragmentShadingRateAttachment, cpFragmentShadingRateAttachment_allocs = unpackSAttachmentReference2(x.PFragmentShadingRateAttachment)
+ allocsd9f9d390.Borrow(cpFragmentShadingRateAttachment_allocs)
- var crequiresDedicatedAllocation_allocs *cgoAllocMap
- refaa924122.requiresDedicatedAllocation, crequiresDedicatedAllocation_allocs = (C.VkBool32)(x.RequiresDedicatedAllocation), cgoAllocsUnknown
- allocsaa924122.Borrow(crequiresDedicatedAllocation_allocs)
+ var cshadingRateAttachmentTexelSize_allocs *cgoAllocMap
+ refd9f9d390.shadingRateAttachmentTexelSize, cshadingRateAttachmentTexelSize_allocs = x.ShadingRateAttachmentTexelSize.PassValue()
+ allocsd9f9d390.Borrow(cshadingRateAttachmentTexelSize_allocs)
- x.refaa924122 = refaa924122
- x.allocsaa924122 = allocsaa924122
- return refaa924122, allocsaa924122
+ x.refd9f9d390 = refd9f9d390
+ x.allocsd9f9d390 = allocsd9f9d390
+ return refd9f9d390, allocsd9f9d390
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x MemoryDedicatedRequirements) PassValue() (C.VkMemoryDedicatedRequirements, *cgoAllocMap) {
- if x.refaa924122 != nil {
- return *x.refaa924122, nil
+func (x FragmentShadingRateAttachmentInfo) PassValue() (C.VkFragmentShadingRateAttachmentInfoKHR, *cgoAllocMap) {
+ if x.refd9f9d390 != nil {
+ return *x.refd9f9d390, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -13742,95 +40541,95 @@ func (x MemoryDedicatedRequirements) PassValue() (C.VkMemoryDedicatedRequirement
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *MemoryDedicatedRequirements) Deref() {
- if x.refaa924122 == nil {
+func (x *FragmentShadingRateAttachmentInfo) Deref() {
+ if x.refd9f9d390 == nil {
return
}
- x.SType = (StructureType)(x.refaa924122.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refaa924122.pNext))
- x.PrefersDedicatedAllocation = (Bool32)(x.refaa924122.prefersDedicatedAllocation)
- x.RequiresDedicatedAllocation = (Bool32)(x.refaa924122.requiresDedicatedAllocation)
+ x.SType = (StructureType)(x.refd9f9d390.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd9f9d390.pNext))
+ packSAttachmentReference2(x.PFragmentShadingRateAttachment, x.refd9f9d390.pFragmentShadingRateAttachment)
+ x.ShadingRateAttachmentTexelSize = *NewExtent2DRef(unsafe.Pointer(&x.refd9f9d390.shadingRateAttachmentTexelSize))
}
-// allocMemoryDedicatedAllocateInfoMemory allocates memory for type C.VkMemoryDedicatedAllocateInfo in C.
+// allocPipelineFragmentShadingRateStateCreateInfoMemory allocates memory for type C.VkPipelineFragmentShadingRateStateCreateInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocMemoryDedicatedAllocateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMemoryDedicatedAllocateInfoValue))
+func allocPipelineFragmentShadingRateStateCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineFragmentShadingRateStateCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfMemoryDedicatedAllocateInfoValue = unsafe.Sizeof([1]C.VkMemoryDedicatedAllocateInfo{})
+const sizeOfPipelineFragmentShadingRateStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineFragmentShadingRateStateCreateInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *MemoryDedicatedAllocateInfo) Ref() *C.VkMemoryDedicatedAllocateInfo {
+func (x *PipelineFragmentShadingRateStateCreateInfo) Ref() *C.VkPipelineFragmentShadingRateStateCreateInfoKHR {
if x == nil {
return nil
}
- return x.reff8fabe62
+ return x.ref47a79f27
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *MemoryDedicatedAllocateInfo) Free() {
- if x != nil && x.allocsf8fabe62 != nil {
- x.allocsf8fabe62.(*cgoAllocMap).Free()
- x.reff8fabe62 = nil
+func (x *PipelineFragmentShadingRateStateCreateInfo) Free() {
+ if x != nil && x.allocs47a79f27 != nil {
+ x.allocs47a79f27.(*cgoAllocMap).Free()
+ x.ref47a79f27 = nil
}
}
-// NewMemoryDedicatedAllocateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineFragmentShadingRateStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewMemoryDedicatedAllocateInfoRef(ref unsafe.Pointer) *MemoryDedicatedAllocateInfo {
+func NewPipelineFragmentShadingRateStateCreateInfoRef(ref unsafe.Pointer) *PipelineFragmentShadingRateStateCreateInfo {
if ref == nil {
return nil
}
- obj := new(MemoryDedicatedAllocateInfo)
- obj.reff8fabe62 = (*C.VkMemoryDedicatedAllocateInfo)(unsafe.Pointer(ref))
+ obj := new(PipelineFragmentShadingRateStateCreateInfo)
+ obj.ref47a79f27 = (*C.VkPipelineFragmentShadingRateStateCreateInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *MemoryDedicatedAllocateInfo) PassRef() (*C.VkMemoryDedicatedAllocateInfo, *cgoAllocMap) {
+func (x *PipelineFragmentShadingRateStateCreateInfo) PassRef() (*C.VkPipelineFragmentShadingRateStateCreateInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.reff8fabe62 != nil {
- return x.reff8fabe62, nil
+ } else if x.ref47a79f27 != nil {
+ return x.ref47a79f27, nil
}
- memf8fabe62 := allocMemoryDedicatedAllocateInfoMemory(1)
- reff8fabe62 := (*C.VkMemoryDedicatedAllocateInfo)(memf8fabe62)
- allocsf8fabe62 := new(cgoAllocMap)
- allocsf8fabe62.Add(memf8fabe62)
+ mem47a79f27 := allocPipelineFragmentShadingRateStateCreateInfoMemory(1)
+ ref47a79f27 := (*C.VkPipelineFragmentShadingRateStateCreateInfoKHR)(mem47a79f27)
+ allocs47a79f27 := new(cgoAllocMap)
+ allocs47a79f27.Add(mem47a79f27)
var csType_allocs *cgoAllocMap
- reff8fabe62.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsf8fabe62.Borrow(csType_allocs)
+ ref47a79f27.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs47a79f27.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- reff8fabe62.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsf8fabe62.Borrow(cpNext_allocs)
+ ref47a79f27.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs47a79f27.Borrow(cpNext_allocs)
- var cimage_allocs *cgoAllocMap
- reff8fabe62.image, cimage_allocs = *(*C.VkImage)(unsafe.Pointer(&x.Image)), cgoAllocsUnknown
- allocsf8fabe62.Borrow(cimage_allocs)
+ var cfragmentSize_allocs *cgoAllocMap
+ ref47a79f27.fragmentSize, cfragmentSize_allocs = x.FragmentSize.PassValue()
+ allocs47a79f27.Borrow(cfragmentSize_allocs)
- var cbuffer_allocs *cgoAllocMap
- reff8fabe62.buffer, cbuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.Buffer)), cgoAllocsUnknown
- allocsf8fabe62.Borrow(cbuffer_allocs)
+ var ccombinerOps_allocs *cgoAllocMap
+ ref47a79f27.combinerOps, ccombinerOps_allocs = *(*[2]C.VkFragmentShadingRateCombinerOpKHR)(unsafe.Pointer(&x.CombinerOps)), cgoAllocsUnknown
+ allocs47a79f27.Borrow(ccombinerOps_allocs)
- x.reff8fabe62 = reff8fabe62
- x.allocsf8fabe62 = allocsf8fabe62
- return reff8fabe62, allocsf8fabe62
+ x.ref47a79f27 = ref47a79f27
+ x.allocs47a79f27 = allocs47a79f27
+ return ref47a79f27, allocs47a79f27
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x MemoryDedicatedAllocateInfo) PassValue() (C.VkMemoryDedicatedAllocateInfo, *cgoAllocMap) {
- if x.reff8fabe62 != nil {
- return *x.reff8fabe62, nil
+func (x PipelineFragmentShadingRateStateCreateInfo) PassValue() (C.VkPipelineFragmentShadingRateStateCreateInfoKHR, *cgoAllocMap) {
+ if x.ref47a79f27 != nil {
+ return *x.ref47a79f27, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -13838,95 +40637,99 @@ func (x MemoryDedicatedAllocateInfo) PassValue() (C.VkMemoryDedicatedAllocateInf
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *MemoryDedicatedAllocateInfo) Deref() {
- if x.reff8fabe62 == nil {
+func (x *PipelineFragmentShadingRateStateCreateInfo) Deref() {
+ if x.ref47a79f27 == nil {
return
}
- x.SType = (StructureType)(x.reff8fabe62.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff8fabe62.pNext))
- x.Image = *(*Image)(unsafe.Pointer(&x.reff8fabe62.image))
- x.Buffer = *(*Buffer)(unsafe.Pointer(&x.reff8fabe62.buffer))
+ x.SType = (StructureType)(x.ref47a79f27.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref47a79f27.pNext))
+ x.FragmentSize = *NewExtent2DRef(unsafe.Pointer(&x.ref47a79f27.fragmentSize))
+ x.CombinerOps = *(*[2]FragmentShadingRateCombinerOp)(unsafe.Pointer(&x.ref47a79f27.combinerOps))
}
-// allocMemoryAllocateFlagsInfoMemory allocates memory for type C.VkMemoryAllocateFlagsInfo in C.
+// allocPhysicalDeviceFragmentShadingRateFeaturesMemory allocates memory for type C.VkPhysicalDeviceFragmentShadingRateFeaturesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocMemoryAllocateFlagsInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMemoryAllocateFlagsInfoValue))
+func allocPhysicalDeviceFragmentShadingRateFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceFragmentShadingRateFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfMemoryAllocateFlagsInfoValue = unsafe.Sizeof([1]C.VkMemoryAllocateFlagsInfo{})
+const sizeOfPhysicalDeviceFragmentShadingRateFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceFragmentShadingRateFeaturesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *MemoryAllocateFlagsInfo) Ref() *C.VkMemoryAllocateFlagsInfo {
+func (x *PhysicalDeviceFragmentShadingRateFeatures) Ref() *C.VkPhysicalDeviceFragmentShadingRateFeaturesKHR {
if x == nil {
return nil
}
- return x.ref7ca6664
+ return x.ref9041f272
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *MemoryAllocateFlagsInfo) Free() {
- if x != nil && x.allocs7ca6664 != nil {
- x.allocs7ca6664.(*cgoAllocMap).Free()
- x.ref7ca6664 = nil
+func (x *PhysicalDeviceFragmentShadingRateFeatures) Free() {
+ if x != nil && x.allocs9041f272 != nil {
+ x.allocs9041f272.(*cgoAllocMap).Free()
+ x.ref9041f272 = nil
}
}
-// NewMemoryAllocateFlagsInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceFragmentShadingRateFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewMemoryAllocateFlagsInfoRef(ref unsafe.Pointer) *MemoryAllocateFlagsInfo {
+func NewPhysicalDeviceFragmentShadingRateFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceFragmentShadingRateFeatures {
if ref == nil {
return nil
}
- obj := new(MemoryAllocateFlagsInfo)
- obj.ref7ca6664 = (*C.VkMemoryAllocateFlagsInfo)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceFragmentShadingRateFeatures)
+ obj.ref9041f272 = (*C.VkPhysicalDeviceFragmentShadingRateFeaturesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *MemoryAllocateFlagsInfo) PassRef() (*C.VkMemoryAllocateFlagsInfo, *cgoAllocMap) {
+func (x *PhysicalDeviceFragmentShadingRateFeatures) PassRef() (*C.VkPhysicalDeviceFragmentShadingRateFeaturesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref7ca6664 != nil {
- return x.ref7ca6664, nil
+ } else if x.ref9041f272 != nil {
+ return x.ref9041f272, nil
}
- mem7ca6664 := allocMemoryAllocateFlagsInfoMemory(1)
- ref7ca6664 := (*C.VkMemoryAllocateFlagsInfo)(mem7ca6664)
- allocs7ca6664 := new(cgoAllocMap)
- allocs7ca6664.Add(mem7ca6664)
+ mem9041f272 := allocPhysicalDeviceFragmentShadingRateFeaturesMemory(1)
+ ref9041f272 := (*C.VkPhysicalDeviceFragmentShadingRateFeaturesKHR)(mem9041f272)
+ allocs9041f272 := new(cgoAllocMap)
+ allocs9041f272.Add(mem9041f272)
var csType_allocs *cgoAllocMap
- ref7ca6664.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs7ca6664.Borrow(csType_allocs)
+ ref9041f272.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs9041f272.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref7ca6664.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs7ca6664.Borrow(cpNext_allocs)
+ ref9041f272.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs9041f272.Borrow(cpNext_allocs)
- var cflags_allocs *cgoAllocMap
- ref7ca6664.flags, cflags_allocs = (C.VkMemoryAllocateFlags)(x.Flags), cgoAllocsUnknown
- allocs7ca6664.Borrow(cflags_allocs)
+ var cpipelineFragmentShadingRate_allocs *cgoAllocMap
+ ref9041f272.pipelineFragmentShadingRate, cpipelineFragmentShadingRate_allocs = (C.VkBool32)(x.PipelineFragmentShadingRate), cgoAllocsUnknown
+ allocs9041f272.Borrow(cpipelineFragmentShadingRate_allocs)
- var cdeviceMask_allocs *cgoAllocMap
- ref7ca6664.deviceMask, cdeviceMask_allocs = (C.uint32_t)(x.DeviceMask), cgoAllocsUnknown
- allocs7ca6664.Borrow(cdeviceMask_allocs)
+ var cprimitiveFragmentShadingRate_allocs *cgoAllocMap
+ ref9041f272.primitiveFragmentShadingRate, cprimitiveFragmentShadingRate_allocs = (C.VkBool32)(x.PrimitiveFragmentShadingRate), cgoAllocsUnknown
+ allocs9041f272.Borrow(cprimitiveFragmentShadingRate_allocs)
- x.ref7ca6664 = ref7ca6664
- x.allocs7ca6664 = allocs7ca6664
- return ref7ca6664, allocs7ca6664
+ var cattachmentFragmentShadingRate_allocs *cgoAllocMap
+ ref9041f272.attachmentFragmentShadingRate, cattachmentFragmentShadingRate_allocs = (C.VkBool32)(x.AttachmentFragmentShadingRate), cgoAllocsUnknown
+ allocs9041f272.Borrow(cattachmentFragmentShadingRate_allocs)
+
+ x.ref9041f272 = ref9041f272
+ x.allocs9041f272 = allocs9041f272
+ return ref9041f272, allocs9041f272
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x MemoryAllocateFlagsInfo) PassValue() (C.VkMemoryAllocateFlagsInfo, *cgoAllocMap) {
- if x.ref7ca6664 != nil {
- return *x.ref7ca6664, nil
+func (x PhysicalDeviceFragmentShadingRateFeatures) PassValue() (C.VkPhysicalDeviceFragmentShadingRateFeaturesKHR, *cgoAllocMap) {
+ if x.ref9041f272 != nil {
+ return *x.ref9041f272, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -13934,99 +40737,156 @@ func (x MemoryAllocateFlagsInfo) PassValue() (C.VkMemoryAllocateFlagsInfo, *cgoA
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *MemoryAllocateFlagsInfo) Deref() {
- if x.ref7ca6664 == nil {
+func (x *PhysicalDeviceFragmentShadingRateFeatures) Deref() {
+ if x.ref9041f272 == nil {
return
}
- x.SType = (StructureType)(x.ref7ca6664.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref7ca6664.pNext))
- x.Flags = (MemoryAllocateFlags)(x.ref7ca6664.flags)
- x.DeviceMask = (uint32)(x.ref7ca6664.deviceMask)
+ x.SType = (StructureType)(x.ref9041f272.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref9041f272.pNext))
+ x.PipelineFragmentShadingRate = (Bool32)(x.ref9041f272.pipelineFragmentShadingRate)
+ x.PrimitiveFragmentShadingRate = (Bool32)(x.ref9041f272.primitiveFragmentShadingRate)
+ x.AttachmentFragmentShadingRate = (Bool32)(x.ref9041f272.attachmentFragmentShadingRate)
}
-// allocDeviceGroupRenderPassBeginInfoMemory allocates memory for type C.VkDeviceGroupRenderPassBeginInfo in C.
+// allocPhysicalDeviceFragmentShadingRatePropertiesMemory allocates memory for type C.VkPhysicalDeviceFragmentShadingRatePropertiesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDeviceGroupRenderPassBeginInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceGroupRenderPassBeginInfoValue))
+func allocPhysicalDeviceFragmentShadingRatePropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceFragmentShadingRatePropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDeviceGroupRenderPassBeginInfoValue = unsafe.Sizeof([1]C.VkDeviceGroupRenderPassBeginInfo{})
+const sizeOfPhysicalDeviceFragmentShadingRatePropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceFragmentShadingRatePropertiesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DeviceGroupRenderPassBeginInfo) Ref() *C.VkDeviceGroupRenderPassBeginInfo {
+func (x *PhysicalDeviceFragmentShadingRateProperties) Ref() *C.VkPhysicalDeviceFragmentShadingRatePropertiesKHR {
if x == nil {
return nil
}
- return x.ref139f3599
+ return x.ref518beb
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DeviceGroupRenderPassBeginInfo) Free() {
- if x != nil && x.allocs139f3599 != nil {
- x.allocs139f3599.(*cgoAllocMap).Free()
- x.ref139f3599 = nil
+func (x *PhysicalDeviceFragmentShadingRateProperties) Free() {
+ if x != nil && x.allocs518beb != nil {
+ x.allocs518beb.(*cgoAllocMap).Free()
+ x.ref518beb = nil
}
}
-// NewDeviceGroupRenderPassBeginInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceFragmentShadingRatePropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDeviceGroupRenderPassBeginInfoRef(ref unsafe.Pointer) *DeviceGroupRenderPassBeginInfo {
+func NewPhysicalDeviceFragmentShadingRatePropertiesRef(ref unsafe.Pointer) *PhysicalDeviceFragmentShadingRateProperties {
if ref == nil {
return nil
}
- obj := new(DeviceGroupRenderPassBeginInfo)
- obj.ref139f3599 = (*C.VkDeviceGroupRenderPassBeginInfo)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceFragmentShadingRateProperties)
+ obj.ref518beb = (*C.VkPhysicalDeviceFragmentShadingRatePropertiesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DeviceGroupRenderPassBeginInfo) PassRef() (*C.VkDeviceGroupRenderPassBeginInfo, *cgoAllocMap) {
+func (x *PhysicalDeviceFragmentShadingRateProperties) PassRef() (*C.VkPhysicalDeviceFragmentShadingRatePropertiesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref139f3599 != nil {
- return x.ref139f3599, nil
+ } else if x.ref518beb != nil {
+ return x.ref518beb, nil
}
- mem139f3599 := allocDeviceGroupRenderPassBeginInfoMemory(1)
- ref139f3599 := (*C.VkDeviceGroupRenderPassBeginInfo)(mem139f3599)
- allocs139f3599 := new(cgoAllocMap)
- allocs139f3599.Add(mem139f3599)
+ mem518beb := allocPhysicalDeviceFragmentShadingRatePropertiesMemory(1)
+ ref518beb := (*C.VkPhysicalDeviceFragmentShadingRatePropertiesKHR)(mem518beb)
+ allocs518beb := new(cgoAllocMap)
+ allocs518beb.Add(mem518beb)
var csType_allocs *cgoAllocMap
- ref139f3599.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs139f3599.Borrow(csType_allocs)
+ ref518beb.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs518beb.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref139f3599.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs139f3599.Borrow(cpNext_allocs)
+ ref518beb.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs518beb.Borrow(cpNext_allocs)
- var cdeviceMask_allocs *cgoAllocMap
- ref139f3599.deviceMask, cdeviceMask_allocs = (C.uint32_t)(x.DeviceMask), cgoAllocsUnknown
- allocs139f3599.Borrow(cdeviceMask_allocs)
+ var cminFragmentShadingRateAttachmentTexelSize_allocs *cgoAllocMap
+ ref518beb.minFragmentShadingRateAttachmentTexelSize, cminFragmentShadingRateAttachmentTexelSize_allocs = x.MinFragmentShadingRateAttachmentTexelSize.PassValue()
+ allocs518beb.Borrow(cminFragmentShadingRateAttachmentTexelSize_allocs)
- var cdeviceRenderAreaCount_allocs *cgoAllocMap
- ref139f3599.deviceRenderAreaCount, cdeviceRenderAreaCount_allocs = (C.uint32_t)(x.DeviceRenderAreaCount), cgoAllocsUnknown
- allocs139f3599.Borrow(cdeviceRenderAreaCount_allocs)
+ var cmaxFragmentShadingRateAttachmentTexelSize_allocs *cgoAllocMap
+ ref518beb.maxFragmentShadingRateAttachmentTexelSize, cmaxFragmentShadingRateAttachmentTexelSize_allocs = x.MaxFragmentShadingRateAttachmentTexelSize.PassValue()
+ allocs518beb.Borrow(cmaxFragmentShadingRateAttachmentTexelSize_allocs)
- var cpDeviceRenderAreas_allocs *cgoAllocMap
- ref139f3599.pDeviceRenderAreas, cpDeviceRenderAreas_allocs = unpackSRect2D(x.PDeviceRenderAreas)
- allocs139f3599.Borrow(cpDeviceRenderAreas_allocs)
+ var cmaxFragmentShadingRateAttachmentTexelSizeAspectRatio_allocs *cgoAllocMap
+ ref518beb.maxFragmentShadingRateAttachmentTexelSizeAspectRatio, cmaxFragmentShadingRateAttachmentTexelSizeAspectRatio_allocs = (C.uint32_t)(x.MaxFragmentShadingRateAttachmentTexelSizeAspectRatio), cgoAllocsUnknown
+ allocs518beb.Borrow(cmaxFragmentShadingRateAttachmentTexelSizeAspectRatio_allocs)
- x.ref139f3599 = ref139f3599
- x.allocs139f3599 = allocs139f3599
- return ref139f3599, allocs139f3599
+ var cprimitiveFragmentShadingRateWithMultipleViewports_allocs *cgoAllocMap
+ ref518beb.primitiveFragmentShadingRateWithMultipleViewports, cprimitiveFragmentShadingRateWithMultipleViewports_allocs = (C.VkBool32)(x.PrimitiveFragmentShadingRateWithMultipleViewports), cgoAllocsUnknown
+ allocs518beb.Borrow(cprimitiveFragmentShadingRateWithMultipleViewports_allocs)
+
+ var clayeredShadingRateAttachments_allocs *cgoAllocMap
+ ref518beb.layeredShadingRateAttachments, clayeredShadingRateAttachments_allocs = (C.VkBool32)(x.LayeredShadingRateAttachments), cgoAllocsUnknown
+ allocs518beb.Borrow(clayeredShadingRateAttachments_allocs)
+
+ var cfragmentShadingRateNonTrivialCombinerOps_allocs *cgoAllocMap
+ ref518beb.fragmentShadingRateNonTrivialCombinerOps, cfragmentShadingRateNonTrivialCombinerOps_allocs = (C.VkBool32)(x.FragmentShadingRateNonTrivialCombinerOps), cgoAllocsUnknown
+ allocs518beb.Borrow(cfragmentShadingRateNonTrivialCombinerOps_allocs)
+
+ var cmaxFragmentSize_allocs *cgoAllocMap
+ ref518beb.maxFragmentSize, cmaxFragmentSize_allocs = x.MaxFragmentSize.PassValue()
+ allocs518beb.Borrow(cmaxFragmentSize_allocs)
+
+ var cmaxFragmentSizeAspectRatio_allocs *cgoAllocMap
+ ref518beb.maxFragmentSizeAspectRatio, cmaxFragmentSizeAspectRatio_allocs = (C.uint32_t)(x.MaxFragmentSizeAspectRatio), cgoAllocsUnknown
+ allocs518beb.Borrow(cmaxFragmentSizeAspectRatio_allocs)
+
+ var cmaxFragmentShadingRateCoverageSamples_allocs *cgoAllocMap
+ ref518beb.maxFragmentShadingRateCoverageSamples, cmaxFragmentShadingRateCoverageSamples_allocs = (C.uint32_t)(x.MaxFragmentShadingRateCoverageSamples), cgoAllocsUnknown
+ allocs518beb.Borrow(cmaxFragmentShadingRateCoverageSamples_allocs)
+
+ var cmaxFragmentShadingRateRasterizationSamples_allocs *cgoAllocMap
+ ref518beb.maxFragmentShadingRateRasterizationSamples, cmaxFragmentShadingRateRasterizationSamples_allocs = (C.VkSampleCountFlagBits)(x.MaxFragmentShadingRateRasterizationSamples), cgoAllocsUnknown
+ allocs518beb.Borrow(cmaxFragmentShadingRateRasterizationSamples_allocs)
+
+ var cfragmentShadingRateWithShaderDepthStencilWrites_allocs *cgoAllocMap
+ ref518beb.fragmentShadingRateWithShaderDepthStencilWrites, cfragmentShadingRateWithShaderDepthStencilWrites_allocs = (C.VkBool32)(x.FragmentShadingRateWithShaderDepthStencilWrites), cgoAllocsUnknown
+ allocs518beb.Borrow(cfragmentShadingRateWithShaderDepthStencilWrites_allocs)
+
+ var cfragmentShadingRateWithSampleMask_allocs *cgoAllocMap
+ ref518beb.fragmentShadingRateWithSampleMask, cfragmentShadingRateWithSampleMask_allocs = (C.VkBool32)(x.FragmentShadingRateWithSampleMask), cgoAllocsUnknown
+ allocs518beb.Borrow(cfragmentShadingRateWithSampleMask_allocs)
+
+ var cfragmentShadingRateWithShaderSampleMask_allocs *cgoAllocMap
+ ref518beb.fragmentShadingRateWithShaderSampleMask, cfragmentShadingRateWithShaderSampleMask_allocs = (C.VkBool32)(x.FragmentShadingRateWithShaderSampleMask), cgoAllocsUnknown
+ allocs518beb.Borrow(cfragmentShadingRateWithShaderSampleMask_allocs)
+
+ var cfragmentShadingRateWithConservativeRasterization_allocs *cgoAllocMap
+ ref518beb.fragmentShadingRateWithConservativeRasterization, cfragmentShadingRateWithConservativeRasterization_allocs = (C.VkBool32)(x.FragmentShadingRateWithConservativeRasterization), cgoAllocsUnknown
+ allocs518beb.Borrow(cfragmentShadingRateWithConservativeRasterization_allocs)
+
+ var cfragmentShadingRateWithFragmentShaderInterlock_allocs *cgoAllocMap
+ ref518beb.fragmentShadingRateWithFragmentShaderInterlock, cfragmentShadingRateWithFragmentShaderInterlock_allocs = (C.VkBool32)(x.FragmentShadingRateWithFragmentShaderInterlock), cgoAllocsUnknown
+ allocs518beb.Borrow(cfragmentShadingRateWithFragmentShaderInterlock_allocs)
+
+ var cfragmentShadingRateWithCustomSampleLocations_allocs *cgoAllocMap
+ ref518beb.fragmentShadingRateWithCustomSampleLocations, cfragmentShadingRateWithCustomSampleLocations_allocs = (C.VkBool32)(x.FragmentShadingRateWithCustomSampleLocations), cgoAllocsUnknown
+ allocs518beb.Borrow(cfragmentShadingRateWithCustomSampleLocations_allocs)
+
+ var cfragmentShadingRateStrictMultiplyCombiner_allocs *cgoAllocMap
+ ref518beb.fragmentShadingRateStrictMultiplyCombiner, cfragmentShadingRateStrictMultiplyCombiner_allocs = (C.VkBool32)(x.FragmentShadingRateStrictMultiplyCombiner), cgoAllocsUnknown
+ allocs518beb.Borrow(cfragmentShadingRateStrictMultiplyCombiner_allocs)
+
+ x.ref518beb = ref518beb
+ x.allocs518beb = allocs518beb
+ return ref518beb, allocs518beb
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DeviceGroupRenderPassBeginInfo) PassValue() (C.VkDeviceGroupRenderPassBeginInfo, *cgoAllocMap) {
- if x.ref139f3599 != nil {
- return *x.ref139f3599, nil
+func (x PhysicalDeviceFragmentShadingRateProperties) PassValue() (C.VkPhysicalDeviceFragmentShadingRatePropertiesKHR, *cgoAllocMap) {
+ if x.ref518beb != nil {
+ return *x.ref518beb, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -14034,92 +40894,110 @@ func (x DeviceGroupRenderPassBeginInfo) PassValue() (C.VkDeviceGroupRenderPassBe
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DeviceGroupRenderPassBeginInfo) Deref() {
- if x.ref139f3599 == nil {
+func (x *PhysicalDeviceFragmentShadingRateProperties) Deref() {
+ if x.ref518beb == nil {
return
}
- x.SType = (StructureType)(x.ref139f3599.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref139f3599.pNext))
- x.DeviceMask = (uint32)(x.ref139f3599.deviceMask)
- x.DeviceRenderAreaCount = (uint32)(x.ref139f3599.deviceRenderAreaCount)
- packSRect2D(x.PDeviceRenderAreas, x.ref139f3599.pDeviceRenderAreas)
-}
-
-// allocDeviceGroupCommandBufferBeginInfoMemory allocates memory for type C.VkDeviceGroupCommandBufferBeginInfo in C.
+ x.SType = (StructureType)(x.ref518beb.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref518beb.pNext))
+ x.MinFragmentShadingRateAttachmentTexelSize = *NewExtent2DRef(unsafe.Pointer(&x.ref518beb.minFragmentShadingRateAttachmentTexelSize))
+ x.MaxFragmentShadingRateAttachmentTexelSize = *NewExtent2DRef(unsafe.Pointer(&x.ref518beb.maxFragmentShadingRateAttachmentTexelSize))
+ x.MaxFragmentShadingRateAttachmentTexelSizeAspectRatio = (uint32)(x.ref518beb.maxFragmentShadingRateAttachmentTexelSizeAspectRatio)
+ x.PrimitiveFragmentShadingRateWithMultipleViewports = (Bool32)(x.ref518beb.primitiveFragmentShadingRateWithMultipleViewports)
+ x.LayeredShadingRateAttachments = (Bool32)(x.ref518beb.layeredShadingRateAttachments)
+ x.FragmentShadingRateNonTrivialCombinerOps = (Bool32)(x.ref518beb.fragmentShadingRateNonTrivialCombinerOps)
+ x.MaxFragmentSize = *NewExtent2DRef(unsafe.Pointer(&x.ref518beb.maxFragmentSize))
+ x.MaxFragmentSizeAspectRatio = (uint32)(x.ref518beb.maxFragmentSizeAspectRatio)
+ x.MaxFragmentShadingRateCoverageSamples = (uint32)(x.ref518beb.maxFragmentShadingRateCoverageSamples)
+ x.MaxFragmentShadingRateRasterizationSamples = (SampleCountFlagBits)(x.ref518beb.maxFragmentShadingRateRasterizationSamples)
+ x.FragmentShadingRateWithShaderDepthStencilWrites = (Bool32)(x.ref518beb.fragmentShadingRateWithShaderDepthStencilWrites)
+ x.FragmentShadingRateWithSampleMask = (Bool32)(x.ref518beb.fragmentShadingRateWithSampleMask)
+ x.FragmentShadingRateWithShaderSampleMask = (Bool32)(x.ref518beb.fragmentShadingRateWithShaderSampleMask)
+ x.FragmentShadingRateWithConservativeRasterization = (Bool32)(x.ref518beb.fragmentShadingRateWithConservativeRasterization)
+ x.FragmentShadingRateWithFragmentShaderInterlock = (Bool32)(x.ref518beb.fragmentShadingRateWithFragmentShaderInterlock)
+ x.FragmentShadingRateWithCustomSampleLocations = (Bool32)(x.ref518beb.fragmentShadingRateWithCustomSampleLocations)
+ x.FragmentShadingRateStrictMultiplyCombiner = (Bool32)(x.ref518beb.fragmentShadingRateStrictMultiplyCombiner)
+}
+
+// allocPhysicalDeviceFragmentShadingRateMemory allocates memory for type C.VkPhysicalDeviceFragmentShadingRateKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDeviceGroupCommandBufferBeginInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceGroupCommandBufferBeginInfoValue))
+func allocPhysicalDeviceFragmentShadingRateMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceFragmentShadingRateValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDeviceGroupCommandBufferBeginInfoValue = unsafe.Sizeof([1]C.VkDeviceGroupCommandBufferBeginInfo{})
+const sizeOfPhysicalDeviceFragmentShadingRateValue = unsafe.Sizeof([1]C.VkPhysicalDeviceFragmentShadingRateKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DeviceGroupCommandBufferBeginInfo) Ref() *C.VkDeviceGroupCommandBufferBeginInfo {
+func (x *PhysicalDeviceFragmentShadingRate) Ref() *C.VkPhysicalDeviceFragmentShadingRateKHR {
if x == nil {
return nil
}
- return x.refb9a8f0cd
+ return x.ref17914e16
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DeviceGroupCommandBufferBeginInfo) Free() {
- if x != nil && x.allocsb9a8f0cd != nil {
- x.allocsb9a8f0cd.(*cgoAllocMap).Free()
- x.refb9a8f0cd = nil
+func (x *PhysicalDeviceFragmentShadingRate) Free() {
+ if x != nil && x.allocs17914e16 != nil {
+ x.allocs17914e16.(*cgoAllocMap).Free()
+ x.ref17914e16 = nil
}
}
-// NewDeviceGroupCommandBufferBeginInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceFragmentShadingRateRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDeviceGroupCommandBufferBeginInfoRef(ref unsafe.Pointer) *DeviceGroupCommandBufferBeginInfo {
+func NewPhysicalDeviceFragmentShadingRateRef(ref unsafe.Pointer) *PhysicalDeviceFragmentShadingRate {
if ref == nil {
return nil
}
- obj := new(DeviceGroupCommandBufferBeginInfo)
- obj.refb9a8f0cd = (*C.VkDeviceGroupCommandBufferBeginInfo)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceFragmentShadingRate)
+ obj.ref17914e16 = (*C.VkPhysicalDeviceFragmentShadingRateKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DeviceGroupCommandBufferBeginInfo) PassRef() (*C.VkDeviceGroupCommandBufferBeginInfo, *cgoAllocMap) {
+func (x *PhysicalDeviceFragmentShadingRate) PassRef() (*C.VkPhysicalDeviceFragmentShadingRateKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refb9a8f0cd != nil {
- return x.refb9a8f0cd, nil
+ } else if x.ref17914e16 != nil {
+ return x.ref17914e16, nil
}
- memb9a8f0cd := allocDeviceGroupCommandBufferBeginInfoMemory(1)
- refb9a8f0cd := (*C.VkDeviceGroupCommandBufferBeginInfo)(memb9a8f0cd)
- allocsb9a8f0cd := new(cgoAllocMap)
- allocsb9a8f0cd.Add(memb9a8f0cd)
+ mem17914e16 := allocPhysicalDeviceFragmentShadingRateMemory(1)
+ ref17914e16 := (*C.VkPhysicalDeviceFragmentShadingRateKHR)(mem17914e16)
+ allocs17914e16 := new(cgoAllocMap)
+ allocs17914e16.Add(mem17914e16)
var csType_allocs *cgoAllocMap
- refb9a8f0cd.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsb9a8f0cd.Borrow(csType_allocs)
+ ref17914e16.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs17914e16.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refb9a8f0cd.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsb9a8f0cd.Borrow(cpNext_allocs)
+ ref17914e16.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs17914e16.Borrow(cpNext_allocs)
- var cdeviceMask_allocs *cgoAllocMap
- refb9a8f0cd.deviceMask, cdeviceMask_allocs = (C.uint32_t)(x.DeviceMask), cgoAllocsUnknown
- allocsb9a8f0cd.Borrow(cdeviceMask_allocs)
+ var csampleCounts_allocs *cgoAllocMap
+ ref17914e16.sampleCounts, csampleCounts_allocs = (C.VkSampleCountFlags)(x.SampleCounts), cgoAllocsUnknown
+ allocs17914e16.Borrow(csampleCounts_allocs)
- x.refb9a8f0cd = refb9a8f0cd
- x.allocsb9a8f0cd = allocsb9a8f0cd
- return refb9a8f0cd, allocsb9a8f0cd
+ var cfragmentSize_allocs *cgoAllocMap
+ ref17914e16.fragmentSize, cfragmentSize_allocs = x.FragmentSize.PassValue()
+ allocs17914e16.Borrow(cfragmentSize_allocs)
+
+ x.ref17914e16 = ref17914e16
+ x.allocs17914e16 = allocs17914e16
+ return ref17914e16, allocs17914e16
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DeviceGroupCommandBufferBeginInfo) PassValue() (C.VkDeviceGroupCommandBufferBeginInfo, *cgoAllocMap) {
- if x.refb9a8f0cd != nil {
- return *x.refb9a8f0cd, nil
+func (x PhysicalDeviceFragmentShadingRate) PassValue() (C.VkPhysicalDeviceFragmentShadingRateKHR, *cgoAllocMap) {
+ if x.ref17914e16 != nil {
+ return *x.ref17914e16, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -14127,110 +41005,91 @@ func (x DeviceGroupCommandBufferBeginInfo) PassValue() (C.VkDeviceGroupCommandBu
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DeviceGroupCommandBufferBeginInfo) Deref() {
- if x.refb9a8f0cd == nil {
+func (x *PhysicalDeviceFragmentShadingRate) Deref() {
+ if x.ref17914e16 == nil {
return
}
- x.SType = (StructureType)(x.refb9a8f0cd.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb9a8f0cd.pNext))
- x.DeviceMask = (uint32)(x.refb9a8f0cd.deviceMask)
+ x.SType = (StructureType)(x.ref17914e16.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref17914e16.pNext))
+ x.SampleCounts = (SampleCountFlags)(x.ref17914e16.sampleCounts)
+ x.FragmentSize = *NewExtent2DRef(unsafe.Pointer(&x.ref17914e16.fragmentSize))
}
-// allocDeviceGroupSubmitInfoMemory allocates memory for type C.VkDeviceGroupSubmitInfo in C.
+// allocSurfaceProtectedCapabilitiesMemory allocates memory for type C.VkSurfaceProtectedCapabilitiesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDeviceGroupSubmitInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceGroupSubmitInfoValue))
+func allocSurfaceProtectedCapabilitiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSurfaceProtectedCapabilitiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDeviceGroupSubmitInfoValue = unsafe.Sizeof([1]C.VkDeviceGroupSubmitInfo{})
+const sizeOfSurfaceProtectedCapabilitiesValue = unsafe.Sizeof([1]C.VkSurfaceProtectedCapabilitiesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DeviceGroupSubmitInfo) Ref() *C.VkDeviceGroupSubmitInfo {
+func (x *SurfaceProtectedCapabilities) Ref() *C.VkSurfaceProtectedCapabilitiesKHR {
if x == nil {
return nil
}
- return x.refea4e7ce4
+ return x.refa5f4111
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DeviceGroupSubmitInfo) Free() {
- if x != nil && x.allocsea4e7ce4 != nil {
- x.allocsea4e7ce4.(*cgoAllocMap).Free()
- x.refea4e7ce4 = nil
+func (x *SurfaceProtectedCapabilities) Free() {
+ if x != nil && x.allocsa5f4111 != nil {
+ x.allocsa5f4111.(*cgoAllocMap).Free()
+ x.refa5f4111 = nil
}
}
-// NewDeviceGroupSubmitInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewSurfaceProtectedCapabilitiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDeviceGroupSubmitInfoRef(ref unsafe.Pointer) *DeviceGroupSubmitInfo {
+func NewSurfaceProtectedCapabilitiesRef(ref unsafe.Pointer) *SurfaceProtectedCapabilities {
if ref == nil {
return nil
}
- obj := new(DeviceGroupSubmitInfo)
- obj.refea4e7ce4 = (*C.VkDeviceGroupSubmitInfo)(unsafe.Pointer(ref))
+ obj := new(SurfaceProtectedCapabilities)
+ obj.refa5f4111 = (*C.VkSurfaceProtectedCapabilitiesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DeviceGroupSubmitInfo) PassRef() (*C.VkDeviceGroupSubmitInfo, *cgoAllocMap) {
+func (x *SurfaceProtectedCapabilities) PassRef() (*C.VkSurfaceProtectedCapabilitiesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refea4e7ce4 != nil {
- return x.refea4e7ce4, nil
+ } else if x.refa5f4111 != nil {
+ return x.refa5f4111, nil
}
- memea4e7ce4 := allocDeviceGroupSubmitInfoMemory(1)
- refea4e7ce4 := (*C.VkDeviceGroupSubmitInfo)(memea4e7ce4)
- allocsea4e7ce4 := new(cgoAllocMap)
- allocsea4e7ce4.Add(memea4e7ce4)
+ mema5f4111 := allocSurfaceProtectedCapabilitiesMemory(1)
+ refa5f4111 := (*C.VkSurfaceProtectedCapabilitiesKHR)(mema5f4111)
+ allocsa5f4111 := new(cgoAllocMap)
+ allocsa5f4111.Add(mema5f4111)
var csType_allocs *cgoAllocMap
- refea4e7ce4.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsea4e7ce4.Borrow(csType_allocs)
+ refa5f4111.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsa5f4111.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refea4e7ce4.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsea4e7ce4.Borrow(cpNext_allocs)
-
- var cwaitSemaphoreCount_allocs *cgoAllocMap
- refea4e7ce4.waitSemaphoreCount, cwaitSemaphoreCount_allocs = (C.uint32_t)(x.WaitSemaphoreCount), cgoAllocsUnknown
- allocsea4e7ce4.Borrow(cwaitSemaphoreCount_allocs)
-
- var cpWaitSemaphoreDeviceIndices_allocs *cgoAllocMap
- refea4e7ce4.pWaitSemaphoreDeviceIndices, cpWaitSemaphoreDeviceIndices_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PWaitSemaphoreDeviceIndices)).Data)), cgoAllocsUnknown
- allocsea4e7ce4.Borrow(cpWaitSemaphoreDeviceIndices_allocs)
-
- var ccommandBufferCount_allocs *cgoAllocMap
- refea4e7ce4.commandBufferCount, ccommandBufferCount_allocs = (C.uint32_t)(x.CommandBufferCount), cgoAllocsUnknown
- allocsea4e7ce4.Borrow(ccommandBufferCount_allocs)
-
- var cpCommandBufferDeviceMasks_allocs *cgoAllocMap
- refea4e7ce4.pCommandBufferDeviceMasks, cpCommandBufferDeviceMasks_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PCommandBufferDeviceMasks)).Data)), cgoAllocsUnknown
- allocsea4e7ce4.Borrow(cpCommandBufferDeviceMasks_allocs)
-
- var csignalSemaphoreCount_allocs *cgoAllocMap
- refea4e7ce4.signalSemaphoreCount, csignalSemaphoreCount_allocs = (C.uint32_t)(x.SignalSemaphoreCount), cgoAllocsUnknown
- allocsea4e7ce4.Borrow(csignalSemaphoreCount_allocs)
+ refa5f4111.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsa5f4111.Borrow(cpNext_allocs)
- var cpSignalSemaphoreDeviceIndices_allocs *cgoAllocMap
- refea4e7ce4.pSignalSemaphoreDeviceIndices, cpSignalSemaphoreDeviceIndices_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PSignalSemaphoreDeviceIndices)).Data)), cgoAllocsUnknown
- allocsea4e7ce4.Borrow(cpSignalSemaphoreDeviceIndices_allocs)
+ var csupportsProtected_allocs *cgoAllocMap
+ refa5f4111.supportsProtected, csupportsProtected_allocs = (C.VkBool32)(x.SupportsProtected), cgoAllocsUnknown
+ allocsa5f4111.Borrow(csupportsProtected_allocs)
- x.refea4e7ce4 = refea4e7ce4
- x.allocsea4e7ce4 = allocsea4e7ce4
- return refea4e7ce4, allocsea4e7ce4
+ x.refa5f4111 = refa5f4111
+ x.allocsa5f4111 = allocsa5f4111
+ return refa5f4111, allocsa5f4111
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DeviceGroupSubmitInfo) PassValue() (C.VkDeviceGroupSubmitInfo, *cgoAllocMap) {
- if x.refea4e7ce4 != nil {
- return *x.refea4e7ce4, nil
+func (x SurfaceProtectedCapabilities) PassValue() (C.VkSurfaceProtectedCapabilitiesKHR, *cgoAllocMap) {
+ if x.refa5f4111 != nil {
+ return *x.refa5f4111, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -14238,111 +41097,90 @@ func (x DeviceGroupSubmitInfo) PassValue() (C.VkDeviceGroupSubmitInfo, *cgoAlloc
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DeviceGroupSubmitInfo) Deref() {
- if x.refea4e7ce4 == nil {
+func (x *SurfaceProtectedCapabilities) Deref() {
+ if x.refa5f4111 == nil {
return
}
- x.SType = (StructureType)(x.refea4e7ce4.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refea4e7ce4.pNext))
- x.WaitSemaphoreCount = (uint32)(x.refea4e7ce4.waitSemaphoreCount)
- hxf04b15b := (*sliceHeader)(unsafe.Pointer(&x.PWaitSemaphoreDeviceIndices))
- hxf04b15b.Data = unsafe.Pointer(x.refea4e7ce4.pWaitSemaphoreDeviceIndices)
- hxf04b15b.Cap = 0x7fffffff
- // hxf04b15b.Len = ?
-
- x.CommandBufferCount = (uint32)(x.refea4e7ce4.commandBufferCount)
- hxf2f888b := (*sliceHeader)(unsafe.Pointer(&x.PCommandBufferDeviceMasks))
- hxf2f888b.Data = unsafe.Pointer(x.refea4e7ce4.pCommandBufferDeviceMasks)
- hxf2f888b.Cap = 0x7fffffff
- // hxf2f888b.Len = ?
-
- x.SignalSemaphoreCount = (uint32)(x.refea4e7ce4.signalSemaphoreCount)
- hxf5d1de2 := (*sliceHeader)(unsafe.Pointer(&x.PSignalSemaphoreDeviceIndices))
- hxf5d1de2.Data = unsafe.Pointer(x.refea4e7ce4.pSignalSemaphoreDeviceIndices)
- hxf5d1de2.Cap = 0x7fffffff
- // hxf5d1de2.Len = ?
-
+ x.SType = (StructureType)(x.refa5f4111.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa5f4111.pNext))
+ x.SupportsProtected = (Bool32)(x.refa5f4111.supportsProtected)
}
-// allocDeviceGroupBindSparseInfoMemory allocates memory for type C.VkDeviceGroupBindSparseInfo in C.
+// allocPhysicalDevicePresentWaitFeaturesMemory allocates memory for type C.VkPhysicalDevicePresentWaitFeaturesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDeviceGroupBindSparseInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceGroupBindSparseInfoValue))
+func allocPhysicalDevicePresentWaitFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDevicePresentWaitFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDeviceGroupBindSparseInfoValue = unsafe.Sizeof([1]C.VkDeviceGroupBindSparseInfo{})
+const sizeOfPhysicalDevicePresentWaitFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDevicePresentWaitFeaturesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DeviceGroupBindSparseInfo) Ref() *C.VkDeviceGroupBindSparseInfo {
+func (x *PhysicalDevicePresentWaitFeatures) Ref() *C.VkPhysicalDevicePresentWaitFeaturesKHR {
if x == nil {
return nil
}
- return x.ref5b5446cd
+ return x.ref1cd9c482
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DeviceGroupBindSparseInfo) Free() {
- if x != nil && x.allocs5b5446cd != nil {
- x.allocs5b5446cd.(*cgoAllocMap).Free()
- x.ref5b5446cd = nil
+func (x *PhysicalDevicePresentWaitFeatures) Free() {
+ if x != nil && x.allocs1cd9c482 != nil {
+ x.allocs1cd9c482.(*cgoAllocMap).Free()
+ x.ref1cd9c482 = nil
}
}
-// NewDeviceGroupBindSparseInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDevicePresentWaitFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDeviceGroupBindSparseInfoRef(ref unsafe.Pointer) *DeviceGroupBindSparseInfo {
+func NewPhysicalDevicePresentWaitFeaturesRef(ref unsafe.Pointer) *PhysicalDevicePresentWaitFeatures {
if ref == nil {
return nil
}
- obj := new(DeviceGroupBindSparseInfo)
- obj.ref5b5446cd = (*C.VkDeviceGroupBindSparseInfo)(unsafe.Pointer(ref))
+ obj := new(PhysicalDevicePresentWaitFeatures)
+ obj.ref1cd9c482 = (*C.VkPhysicalDevicePresentWaitFeaturesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DeviceGroupBindSparseInfo) PassRef() (*C.VkDeviceGroupBindSparseInfo, *cgoAllocMap) {
+func (x *PhysicalDevicePresentWaitFeatures) PassRef() (*C.VkPhysicalDevicePresentWaitFeaturesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref5b5446cd != nil {
- return x.ref5b5446cd, nil
+ } else if x.ref1cd9c482 != nil {
+ return x.ref1cd9c482, nil
}
- mem5b5446cd := allocDeviceGroupBindSparseInfoMemory(1)
- ref5b5446cd := (*C.VkDeviceGroupBindSparseInfo)(mem5b5446cd)
- allocs5b5446cd := new(cgoAllocMap)
- allocs5b5446cd.Add(mem5b5446cd)
+ mem1cd9c482 := allocPhysicalDevicePresentWaitFeaturesMemory(1)
+ ref1cd9c482 := (*C.VkPhysicalDevicePresentWaitFeaturesKHR)(mem1cd9c482)
+ allocs1cd9c482 := new(cgoAllocMap)
+ allocs1cd9c482.Add(mem1cd9c482)
var csType_allocs *cgoAllocMap
- ref5b5446cd.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs5b5446cd.Borrow(csType_allocs)
+ ref1cd9c482.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs1cd9c482.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref5b5446cd.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs5b5446cd.Borrow(cpNext_allocs)
-
- var cresourceDeviceIndex_allocs *cgoAllocMap
- ref5b5446cd.resourceDeviceIndex, cresourceDeviceIndex_allocs = (C.uint32_t)(x.ResourceDeviceIndex), cgoAllocsUnknown
- allocs5b5446cd.Borrow(cresourceDeviceIndex_allocs)
+ ref1cd9c482.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs1cd9c482.Borrow(cpNext_allocs)
- var cmemoryDeviceIndex_allocs *cgoAllocMap
- ref5b5446cd.memoryDeviceIndex, cmemoryDeviceIndex_allocs = (C.uint32_t)(x.MemoryDeviceIndex), cgoAllocsUnknown
- allocs5b5446cd.Borrow(cmemoryDeviceIndex_allocs)
+ var cpresentWait_allocs *cgoAllocMap
+ ref1cd9c482.presentWait, cpresentWait_allocs = (C.VkBool32)(x.PresentWait), cgoAllocsUnknown
+ allocs1cd9c482.Borrow(cpresentWait_allocs)
- x.ref5b5446cd = ref5b5446cd
- x.allocs5b5446cd = allocs5b5446cd
- return ref5b5446cd, allocs5b5446cd
+ x.ref1cd9c482 = ref1cd9c482
+ x.allocs1cd9c482 = allocs1cd9c482
+ return ref1cd9c482, allocs1cd9c482
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DeviceGroupBindSparseInfo) PassValue() (C.VkDeviceGroupBindSparseInfo, *cgoAllocMap) {
- if x.ref5b5446cd != nil {
- return *x.ref5b5446cd, nil
+func (x PhysicalDevicePresentWaitFeatures) PassValue() (C.VkPhysicalDevicePresentWaitFeaturesKHR, *cgoAllocMap) {
+ if x.ref1cd9c482 != nil {
+ return *x.ref1cd9c482, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -14350,95 +41188,90 @@ func (x DeviceGroupBindSparseInfo) PassValue() (C.VkDeviceGroupBindSparseInfo, *
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DeviceGroupBindSparseInfo) Deref() {
- if x.ref5b5446cd == nil {
+func (x *PhysicalDevicePresentWaitFeatures) Deref() {
+ if x.ref1cd9c482 == nil {
return
}
- x.SType = (StructureType)(x.ref5b5446cd.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5b5446cd.pNext))
- x.ResourceDeviceIndex = (uint32)(x.ref5b5446cd.resourceDeviceIndex)
- x.MemoryDeviceIndex = (uint32)(x.ref5b5446cd.memoryDeviceIndex)
+ x.SType = (StructureType)(x.ref1cd9c482.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref1cd9c482.pNext))
+ x.PresentWait = (Bool32)(x.ref1cd9c482.presentWait)
}
-// allocBindBufferMemoryDeviceGroupInfoMemory allocates memory for type C.VkBindBufferMemoryDeviceGroupInfo in C.
+// allocPhysicalDevicePipelineExecutablePropertiesFeaturesMemory allocates memory for type C.VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocBindBufferMemoryDeviceGroupInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBindBufferMemoryDeviceGroupInfoValue))
+func allocPhysicalDevicePipelineExecutablePropertiesFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDevicePipelineExecutablePropertiesFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfBindBufferMemoryDeviceGroupInfoValue = unsafe.Sizeof([1]C.VkBindBufferMemoryDeviceGroupInfo{})
+const sizeOfPhysicalDevicePipelineExecutablePropertiesFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *BindBufferMemoryDeviceGroupInfo) Ref() *C.VkBindBufferMemoryDeviceGroupInfo {
+func (x *PhysicalDevicePipelineExecutablePropertiesFeatures) Ref() *C.VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR {
if x == nil {
return nil
}
- return x.reff136b64f
+ return x.ref84acf0e1
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *BindBufferMemoryDeviceGroupInfo) Free() {
- if x != nil && x.allocsf136b64f != nil {
- x.allocsf136b64f.(*cgoAllocMap).Free()
- x.reff136b64f = nil
+func (x *PhysicalDevicePipelineExecutablePropertiesFeatures) Free() {
+ if x != nil && x.allocs84acf0e1 != nil {
+ x.allocs84acf0e1.(*cgoAllocMap).Free()
+ x.ref84acf0e1 = nil
}
}
-// NewBindBufferMemoryDeviceGroupInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDevicePipelineExecutablePropertiesFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewBindBufferMemoryDeviceGroupInfoRef(ref unsafe.Pointer) *BindBufferMemoryDeviceGroupInfo {
+func NewPhysicalDevicePipelineExecutablePropertiesFeaturesRef(ref unsafe.Pointer) *PhysicalDevicePipelineExecutablePropertiesFeatures {
if ref == nil {
return nil
}
- obj := new(BindBufferMemoryDeviceGroupInfo)
- obj.reff136b64f = (*C.VkBindBufferMemoryDeviceGroupInfo)(unsafe.Pointer(ref))
+ obj := new(PhysicalDevicePipelineExecutablePropertiesFeatures)
+ obj.ref84acf0e1 = (*C.VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *BindBufferMemoryDeviceGroupInfo) PassRef() (*C.VkBindBufferMemoryDeviceGroupInfo, *cgoAllocMap) {
+func (x *PhysicalDevicePipelineExecutablePropertiesFeatures) PassRef() (*C.VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.reff136b64f != nil {
- return x.reff136b64f, nil
+ } else if x.ref84acf0e1 != nil {
+ return x.ref84acf0e1, nil
}
- memf136b64f := allocBindBufferMemoryDeviceGroupInfoMemory(1)
- reff136b64f := (*C.VkBindBufferMemoryDeviceGroupInfo)(memf136b64f)
- allocsf136b64f := new(cgoAllocMap)
- allocsf136b64f.Add(memf136b64f)
+ mem84acf0e1 := allocPhysicalDevicePipelineExecutablePropertiesFeaturesMemory(1)
+ ref84acf0e1 := (*C.VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR)(mem84acf0e1)
+ allocs84acf0e1 := new(cgoAllocMap)
+ allocs84acf0e1.Add(mem84acf0e1)
var csType_allocs *cgoAllocMap
- reff136b64f.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsf136b64f.Borrow(csType_allocs)
+ ref84acf0e1.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs84acf0e1.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- reff136b64f.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsf136b64f.Borrow(cpNext_allocs)
-
- var cdeviceIndexCount_allocs *cgoAllocMap
- reff136b64f.deviceIndexCount, cdeviceIndexCount_allocs = (C.uint32_t)(x.DeviceIndexCount), cgoAllocsUnknown
- allocsf136b64f.Borrow(cdeviceIndexCount_allocs)
+ ref84acf0e1.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs84acf0e1.Borrow(cpNext_allocs)
- var cpDeviceIndices_allocs *cgoAllocMap
- reff136b64f.pDeviceIndices, cpDeviceIndices_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PDeviceIndices)).Data)), cgoAllocsUnknown
- allocsf136b64f.Borrow(cpDeviceIndices_allocs)
+ var cpipelineExecutableInfo_allocs *cgoAllocMap
+ ref84acf0e1.pipelineExecutableInfo, cpipelineExecutableInfo_allocs = (C.VkBool32)(x.PipelineExecutableInfo), cgoAllocsUnknown
+ allocs84acf0e1.Borrow(cpipelineExecutableInfo_allocs)
- x.reff136b64f = reff136b64f
- x.allocsf136b64f = allocsf136b64f
- return reff136b64f, allocsf136b64f
+ x.ref84acf0e1 = ref84acf0e1
+ x.allocs84acf0e1 = allocs84acf0e1
+ return ref84acf0e1, allocs84acf0e1
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x BindBufferMemoryDeviceGroupInfo) PassValue() (C.VkBindBufferMemoryDeviceGroupInfo, *cgoAllocMap) {
- if x.reff136b64f != nil {
- return *x.reff136b64f, nil
+func (x PhysicalDevicePipelineExecutablePropertiesFeatures) PassValue() (C.VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR, *cgoAllocMap) {
+ if x.ref84acf0e1 != nil {
+ return *x.ref84acf0e1, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -14446,107 +41279,90 @@ func (x BindBufferMemoryDeviceGroupInfo) PassValue() (C.VkBindBufferMemoryDevice
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *BindBufferMemoryDeviceGroupInfo) Deref() {
- if x.reff136b64f == nil {
+func (x *PhysicalDevicePipelineExecutablePropertiesFeatures) Deref() {
+ if x.ref84acf0e1 == nil {
return
}
- x.SType = (StructureType)(x.reff136b64f.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff136b64f.pNext))
- x.DeviceIndexCount = (uint32)(x.reff136b64f.deviceIndexCount)
- hxfe53d34 := (*sliceHeader)(unsafe.Pointer(&x.PDeviceIndices))
- hxfe53d34.Data = unsafe.Pointer(x.reff136b64f.pDeviceIndices)
- hxfe53d34.Cap = 0x7fffffff
- // hxfe53d34.Len = ?
-
+ x.SType = (StructureType)(x.ref84acf0e1.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref84acf0e1.pNext))
+ x.PipelineExecutableInfo = (Bool32)(x.ref84acf0e1.pipelineExecutableInfo)
}
-// allocBindImageMemoryDeviceGroupInfoMemory allocates memory for type C.VkBindImageMemoryDeviceGroupInfo in C.
+// allocPipelineInfoMemory allocates memory for type C.VkPipelineInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocBindImageMemoryDeviceGroupInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBindImageMemoryDeviceGroupInfoValue))
+func allocPipelineInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfBindImageMemoryDeviceGroupInfoValue = unsafe.Sizeof([1]C.VkBindImageMemoryDeviceGroupInfo{})
+const sizeOfPipelineInfoValue = unsafe.Sizeof([1]C.VkPipelineInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *BindImageMemoryDeviceGroupInfo) Ref() *C.VkBindImageMemoryDeviceGroupInfo {
+func (x *PipelineInfo) Ref() *C.VkPipelineInfoKHR {
if x == nil {
return nil
}
- return x.ref24f026a5
+ return x.refcd879ca1
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *BindImageMemoryDeviceGroupInfo) Free() {
- if x != nil && x.allocs24f026a5 != nil {
- x.allocs24f026a5.(*cgoAllocMap).Free()
- x.ref24f026a5 = nil
+func (x *PipelineInfo) Free() {
+ if x != nil && x.allocscd879ca1 != nil {
+ x.allocscd879ca1.(*cgoAllocMap).Free()
+ x.refcd879ca1 = nil
}
}
-// NewBindImageMemoryDeviceGroupInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewBindImageMemoryDeviceGroupInfoRef(ref unsafe.Pointer) *BindImageMemoryDeviceGroupInfo {
+func NewPipelineInfoRef(ref unsafe.Pointer) *PipelineInfo {
if ref == nil {
return nil
}
- obj := new(BindImageMemoryDeviceGroupInfo)
- obj.ref24f026a5 = (*C.VkBindImageMemoryDeviceGroupInfo)(unsafe.Pointer(ref))
+ obj := new(PipelineInfo)
+ obj.refcd879ca1 = (*C.VkPipelineInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *BindImageMemoryDeviceGroupInfo) PassRef() (*C.VkBindImageMemoryDeviceGroupInfo, *cgoAllocMap) {
+func (x *PipelineInfo) PassRef() (*C.VkPipelineInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref24f026a5 != nil {
- return x.ref24f026a5, nil
+ } else if x.refcd879ca1 != nil {
+ return x.refcd879ca1, nil
}
- mem24f026a5 := allocBindImageMemoryDeviceGroupInfoMemory(1)
- ref24f026a5 := (*C.VkBindImageMemoryDeviceGroupInfo)(mem24f026a5)
- allocs24f026a5 := new(cgoAllocMap)
- allocs24f026a5.Add(mem24f026a5)
+ memcd879ca1 := allocPipelineInfoMemory(1)
+ refcd879ca1 := (*C.VkPipelineInfoKHR)(memcd879ca1)
+ allocscd879ca1 := new(cgoAllocMap)
+ allocscd879ca1.Add(memcd879ca1)
var csType_allocs *cgoAllocMap
- ref24f026a5.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs24f026a5.Borrow(csType_allocs)
+ refcd879ca1.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocscd879ca1.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref24f026a5.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs24f026a5.Borrow(cpNext_allocs)
-
- var cdeviceIndexCount_allocs *cgoAllocMap
- ref24f026a5.deviceIndexCount, cdeviceIndexCount_allocs = (C.uint32_t)(x.DeviceIndexCount), cgoAllocsUnknown
- allocs24f026a5.Borrow(cdeviceIndexCount_allocs)
-
- var cpDeviceIndices_allocs *cgoAllocMap
- ref24f026a5.pDeviceIndices, cpDeviceIndices_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PDeviceIndices)).Data)), cgoAllocsUnknown
- allocs24f026a5.Borrow(cpDeviceIndices_allocs)
-
- var csplitInstanceBindRegionCount_allocs *cgoAllocMap
- ref24f026a5.splitInstanceBindRegionCount, csplitInstanceBindRegionCount_allocs = (C.uint32_t)(x.SplitInstanceBindRegionCount), cgoAllocsUnknown
- allocs24f026a5.Borrow(csplitInstanceBindRegionCount_allocs)
+ refcd879ca1.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocscd879ca1.Borrow(cpNext_allocs)
- var cpSplitInstanceBindRegions_allocs *cgoAllocMap
- ref24f026a5.pSplitInstanceBindRegions, cpSplitInstanceBindRegions_allocs = unpackSRect2D(x.PSplitInstanceBindRegions)
- allocs24f026a5.Borrow(cpSplitInstanceBindRegions_allocs)
+ var cpipeline_allocs *cgoAllocMap
+ refcd879ca1.pipeline, cpipeline_allocs = *(*C.VkPipeline)(unsafe.Pointer(&x.Pipeline)), cgoAllocsUnknown
+ allocscd879ca1.Borrow(cpipeline_allocs)
- x.ref24f026a5 = ref24f026a5
- x.allocs24f026a5 = allocs24f026a5
- return ref24f026a5, allocs24f026a5
+ x.refcd879ca1 = refcd879ca1
+ x.allocscd879ca1 = allocscd879ca1
+ return refcd879ca1, allocscd879ca1
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x BindImageMemoryDeviceGroupInfo) PassValue() (C.VkBindImageMemoryDeviceGroupInfo, *cgoAllocMap) {
- if x.ref24f026a5 != nil {
- return *x.ref24f026a5, nil
+func (x PipelineInfo) PassValue() (C.VkPipelineInfoKHR, *cgoAllocMap) {
+ if x.refcd879ca1 != nil {
+ return *x.refcd879ca1, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -14554,105 +41370,102 @@ func (x BindImageMemoryDeviceGroupInfo) PassValue() (C.VkBindImageMemoryDeviceGr
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *BindImageMemoryDeviceGroupInfo) Deref() {
- if x.ref24f026a5 == nil {
+func (x *PipelineInfo) Deref() {
+ if x.refcd879ca1 == nil {
return
}
- x.SType = (StructureType)(x.ref24f026a5.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref24f026a5.pNext))
- x.DeviceIndexCount = (uint32)(x.ref24f026a5.deviceIndexCount)
- hxf547023 := (*sliceHeader)(unsafe.Pointer(&x.PDeviceIndices))
- hxf547023.Data = unsafe.Pointer(x.ref24f026a5.pDeviceIndices)
- hxf547023.Cap = 0x7fffffff
- // hxf547023.Len = ?
-
- x.SplitInstanceBindRegionCount = (uint32)(x.ref24f026a5.splitInstanceBindRegionCount)
- packSRect2D(x.PSplitInstanceBindRegions, x.ref24f026a5.pSplitInstanceBindRegions)
+ x.SType = (StructureType)(x.refcd879ca1.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refcd879ca1.pNext))
+ x.Pipeline = *(*Pipeline)(unsafe.Pointer(&x.refcd879ca1.pipeline))
}
-// allocPhysicalDeviceGroupPropertiesMemory allocates memory for type C.VkPhysicalDeviceGroupProperties in C.
+// allocPipelineExecutablePropertiesMemory allocates memory for type C.VkPipelineExecutablePropertiesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceGroupPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceGroupPropertiesValue))
+func allocPipelineExecutablePropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineExecutablePropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceGroupPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceGroupProperties{})
+const sizeOfPipelineExecutablePropertiesValue = unsafe.Sizeof([1]C.VkPipelineExecutablePropertiesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceGroupProperties) Ref() *C.VkPhysicalDeviceGroupProperties {
+func (x *PipelineExecutableProperties) Ref() *C.VkPipelineExecutablePropertiesKHR {
if x == nil {
return nil
}
- return x.ref2aa9a663
+ return x.ref4eb592a4
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceGroupProperties) Free() {
- if x != nil && x.allocs2aa9a663 != nil {
- x.allocs2aa9a663.(*cgoAllocMap).Free()
- x.ref2aa9a663 = nil
+func (x *PipelineExecutableProperties) Free() {
+ if x != nil && x.allocs4eb592a4 != nil {
+ x.allocs4eb592a4.(*cgoAllocMap).Free()
+ x.ref4eb592a4 = nil
}
}
-// NewPhysicalDeviceGroupPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineExecutablePropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceGroupPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceGroupProperties {
+func NewPipelineExecutablePropertiesRef(ref unsafe.Pointer) *PipelineExecutableProperties {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceGroupProperties)
- obj.ref2aa9a663 = (*C.VkPhysicalDeviceGroupProperties)(unsafe.Pointer(ref))
+ obj := new(PipelineExecutableProperties)
+ obj.ref4eb592a4 = (*C.VkPipelineExecutablePropertiesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceGroupProperties) PassRef() (*C.VkPhysicalDeviceGroupProperties, *cgoAllocMap) {
+func (x *PipelineExecutableProperties) PassRef() (*C.VkPipelineExecutablePropertiesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref2aa9a663 != nil {
- return x.ref2aa9a663, nil
+ } else if x.ref4eb592a4 != nil {
+ return x.ref4eb592a4, nil
}
- mem2aa9a663 := allocPhysicalDeviceGroupPropertiesMemory(1)
- ref2aa9a663 := (*C.VkPhysicalDeviceGroupProperties)(mem2aa9a663)
- allocs2aa9a663 := new(cgoAllocMap)
- allocs2aa9a663.Add(mem2aa9a663)
+ mem4eb592a4 := allocPipelineExecutablePropertiesMemory(1)
+ ref4eb592a4 := (*C.VkPipelineExecutablePropertiesKHR)(mem4eb592a4)
+ allocs4eb592a4 := new(cgoAllocMap)
+ allocs4eb592a4.Add(mem4eb592a4)
var csType_allocs *cgoAllocMap
- ref2aa9a663.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs2aa9a663.Borrow(csType_allocs)
+ ref4eb592a4.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs4eb592a4.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref2aa9a663.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs2aa9a663.Borrow(cpNext_allocs)
+ ref4eb592a4.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs4eb592a4.Borrow(cpNext_allocs)
- var cphysicalDeviceCount_allocs *cgoAllocMap
- ref2aa9a663.physicalDeviceCount, cphysicalDeviceCount_allocs = (C.uint32_t)(x.PhysicalDeviceCount), cgoAllocsUnknown
- allocs2aa9a663.Borrow(cphysicalDeviceCount_allocs)
+ var cstages_allocs *cgoAllocMap
+ ref4eb592a4.stages, cstages_allocs = (C.VkShaderStageFlags)(x.Stages), cgoAllocsUnknown
+ allocs4eb592a4.Borrow(cstages_allocs)
- var cphysicalDevices_allocs *cgoAllocMap
- ref2aa9a663.physicalDevices, cphysicalDevices_allocs = *(*[32]C.VkPhysicalDevice)(unsafe.Pointer(&x.PhysicalDevices)), cgoAllocsUnknown
- allocs2aa9a663.Borrow(cphysicalDevices_allocs)
+ var cname_allocs *cgoAllocMap
+ ref4eb592a4.name, cname_allocs = *(*[256]C.char)(unsafe.Pointer(&x.Name)), cgoAllocsUnknown
+ allocs4eb592a4.Borrow(cname_allocs)
- var csubsetAllocation_allocs *cgoAllocMap
- ref2aa9a663.subsetAllocation, csubsetAllocation_allocs = (C.VkBool32)(x.SubsetAllocation), cgoAllocsUnknown
- allocs2aa9a663.Borrow(csubsetAllocation_allocs)
+ var cdescription_allocs *cgoAllocMap
+ ref4eb592a4.description, cdescription_allocs = *(*[256]C.char)(unsafe.Pointer(&x.Description)), cgoAllocsUnknown
+ allocs4eb592a4.Borrow(cdescription_allocs)
- x.ref2aa9a663 = ref2aa9a663
- x.allocs2aa9a663 = allocs2aa9a663
- return ref2aa9a663, allocs2aa9a663
+ var csubgroupSize_allocs *cgoAllocMap
+ ref4eb592a4.subgroupSize, csubgroupSize_allocs = (C.uint32_t)(x.SubgroupSize), cgoAllocsUnknown
+ allocs4eb592a4.Borrow(csubgroupSize_allocs)
+
+ x.ref4eb592a4 = ref4eb592a4
+ x.allocs4eb592a4 = allocs4eb592a4
+ return ref4eb592a4, allocs4eb592a4
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceGroupProperties) PassValue() (C.VkPhysicalDeviceGroupProperties, *cgoAllocMap) {
- if x.ref2aa9a663 != nil {
- return *x.ref2aa9a663, nil
+func (x PipelineExecutableProperties) PassValue() (C.VkPipelineExecutablePropertiesKHR, *cgoAllocMap) {
+ if x.ref4eb592a4 != nil {
+ return *x.ref4eb592a4, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -14660,96 +41473,97 @@ func (x PhysicalDeviceGroupProperties) PassValue() (C.VkPhysicalDeviceGroupPrope
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceGroupProperties) Deref() {
- if x.ref2aa9a663 == nil {
+func (x *PipelineExecutableProperties) Deref() {
+ if x.ref4eb592a4 == nil {
return
}
- x.SType = (StructureType)(x.ref2aa9a663.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref2aa9a663.pNext))
- x.PhysicalDeviceCount = (uint32)(x.ref2aa9a663.physicalDeviceCount)
- x.PhysicalDevices = *(*[32]PhysicalDevice)(unsafe.Pointer(&x.ref2aa9a663.physicalDevices))
- x.SubsetAllocation = (Bool32)(x.ref2aa9a663.subsetAllocation)
+ x.SType = (StructureType)(x.ref4eb592a4.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref4eb592a4.pNext))
+ x.Stages = (ShaderStageFlags)(x.ref4eb592a4.stages)
+ x.Name = *(*[256]byte)(unsafe.Pointer(&x.ref4eb592a4.name))
+ x.Description = *(*[256]byte)(unsafe.Pointer(&x.ref4eb592a4.description))
+ x.SubgroupSize = (uint32)(x.ref4eb592a4.subgroupSize)
}
-// allocDeviceGroupDeviceCreateInfoMemory allocates memory for type C.VkDeviceGroupDeviceCreateInfo in C.
+// allocPipelineExecutableInfoMemory allocates memory for type C.VkPipelineExecutableInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDeviceGroupDeviceCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceGroupDeviceCreateInfoValue))
+func allocPipelineExecutableInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineExecutableInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDeviceGroupDeviceCreateInfoValue = unsafe.Sizeof([1]C.VkDeviceGroupDeviceCreateInfo{})
+const sizeOfPipelineExecutableInfoValue = unsafe.Sizeof([1]C.VkPipelineExecutableInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DeviceGroupDeviceCreateInfo) Ref() *C.VkDeviceGroupDeviceCreateInfo {
+func (x *PipelineExecutableInfo) Ref() *C.VkPipelineExecutableInfoKHR {
if x == nil {
return nil
}
- return x.refb2275723
+ return x.ref9b891dad
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DeviceGroupDeviceCreateInfo) Free() {
- if x != nil && x.allocsb2275723 != nil {
- x.allocsb2275723.(*cgoAllocMap).Free()
- x.refb2275723 = nil
+func (x *PipelineExecutableInfo) Free() {
+ if x != nil && x.allocs9b891dad != nil {
+ x.allocs9b891dad.(*cgoAllocMap).Free()
+ x.ref9b891dad = nil
}
}
-// NewDeviceGroupDeviceCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineExecutableInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDeviceGroupDeviceCreateInfoRef(ref unsafe.Pointer) *DeviceGroupDeviceCreateInfo {
+func NewPipelineExecutableInfoRef(ref unsafe.Pointer) *PipelineExecutableInfo {
if ref == nil {
return nil
}
- obj := new(DeviceGroupDeviceCreateInfo)
- obj.refb2275723 = (*C.VkDeviceGroupDeviceCreateInfo)(unsafe.Pointer(ref))
+ obj := new(PipelineExecutableInfo)
+ obj.ref9b891dad = (*C.VkPipelineExecutableInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DeviceGroupDeviceCreateInfo) PassRef() (*C.VkDeviceGroupDeviceCreateInfo, *cgoAllocMap) {
+func (x *PipelineExecutableInfo) PassRef() (*C.VkPipelineExecutableInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refb2275723 != nil {
- return x.refb2275723, nil
+ } else if x.ref9b891dad != nil {
+ return x.ref9b891dad, nil
}
- memb2275723 := allocDeviceGroupDeviceCreateInfoMemory(1)
- refb2275723 := (*C.VkDeviceGroupDeviceCreateInfo)(memb2275723)
- allocsb2275723 := new(cgoAllocMap)
- allocsb2275723.Add(memb2275723)
+ mem9b891dad := allocPipelineExecutableInfoMemory(1)
+ ref9b891dad := (*C.VkPipelineExecutableInfoKHR)(mem9b891dad)
+ allocs9b891dad := new(cgoAllocMap)
+ allocs9b891dad.Add(mem9b891dad)
var csType_allocs *cgoAllocMap
- refb2275723.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsb2275723.Borrow(csType_allocs)
+ ref9b891dad.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs9b891dad.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refb2275723.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsb2275723.Borrow(cpNext_allocs)
+ ref9b891dad.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs9b891dad.Borrow(cpNext_allocs)
- var cphysicalDeviceCount_allocs *cgoAllocMap
- refb2275723.physicalDeviceCount, cphysicalDeviceCount_allocs = (C.uint32_t)(x.PhysicalDeviceCount), cgoAllocsUnknown
- allocsb2275723.Borrow(cphysicalDeviceCount_allocs)
+ var cpipeline_allocs *cgoAllocMap
+ ref9b891dad.pipeline, cpipeline_allocs = *(*C.VkPipeline)(unsafe.Pointer(&x.Pipeline)), cgoAllocsUnknown
+ allocs9b891dad.Borrow(cpipeline_allocs)
- var cpPhysicalDevices_allocs *cgoAllocMap
- refb2275723.pPhysicalDevices, cpPhysicalDevices_allocs = (*C.VkPhysicalDevice)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PPhysicalDevices)).Data)), cgoAllocsUnknown
- allocsb2275723.Borrow(cpPhysicalDevices_allocs)
+ var cexecutableIndex_allocs *cgoAllocMap
+ ref9b891dad.executableIndex, cexecutableIndex_allocs = (C.uint32_t)(x.ExecutableIndex), cgoAllocsUnknown
+ allocs9b891dad.Borrow(cexecutableIndex_allocs)
- x.refb2275723 = refb2275723
- x.allocsb2275723 = allocsb2275723
- return refb2275723, allocsb2275723
+ x.ref9b891dad = ref9b891dad
+ x.allocs9b891dad = allocs9b891dad
+ return ref9b891dad, allocs9b891dad
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DeviceGroupDeviceCreateInfo) PassValue() (C.VkDeviceGroupDeviceCreateInfo, *cgoAllocMap) {
- if x.refb2275723 != nil {
- return *x.refb2275723, nil
+func (x PipelineExecutableInfo) PassValue() (C.VkPipelineExecutableInfoKHR, *cgoAllocMap) {
+ if x.ref9b891dad != nil {
+ return *x.ref9b891dad, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -14757,95 +41571,103 @@ func (x DeviceGroupDeviceCreateInfo) PassValue() (C.VkDeviceGroupDeviceCreateInf
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DeviceGroupDeviceCreateInfo) Deref() {
- if x.refb2275723 == nil {
+func (x *PipelineExecutableInfo) Deref() {
+ if x.ref9b891dad == nil {
return
}
- x.SType = (StructureType)(x.refb2275723.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb2275723.pNext))
- x.PhysicalDeviceCount = (uint32)(x.refb2275723.physicalDeviceCount)
- hxf5ebb88 := (*sliceHeader)(unsafe.Pointer(&x.PPhysicalDevices))
- hxf5ebb88.Data = unsafe.Pointer(x.refb2275723.pPhysicalDevices)
- hxf5ebb88.Cap = 0x7fffffff
- // hxf5ebb88.Len = ?
-
+ x.SType = (StructureType)(x.ref9b891dad.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref9b891dad.pNext))
+ x.Pipeline = *(*Pipeline)(unsafe.Pointer(&x.ref9b891dad.pipeline))
+ x.ExecutableIndex = (uint32)(x.ref9b891dad.executableIndex)
}
-// allocBufferMemoryRequirementsInfo2Memory allocates memory for type C.VkBufferMemoryRequirementsInfo2 in C.
+// allocPipelineExecutableStatisticMemory allocates memory for type C.VkPipelineExecutableStatisticKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocBufferMemoryRequirementsInfo2Memory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBufferMemoryRequirementsInfo2Value))
+func allocPipelineExecutableStatisticMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineExecutableStatisticValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfBufferMemoryRequirementsInfo2Value = unsafe.Sizeof([1]C.VkBufferMemoryRequirementsInfo2{})
+const sizeOfPipelineExecutableStatisticValue = unsafe.Sizeof([1]C.VkPipelineExecutableStatisticKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *BufferMemoryRequirementsInfo2) Ref() *C.VkBufferMemoryRequirementsInfo2 {
+func (x *PipelineExecutableStatistic) Ref() *C.VkPipelineExecutableStatisticKHR {
if x == nil {
return nil
}
- return x.reff54a2a42
+ return x.ref4af1a62c
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *BufferMemoryRequirementsInfo2) Free() {
- if x != nil && x.allocsf54a2a42 != nil {
- x.allocsf54a2a42.(*cgoAllocMap).Free()
- x.reff54a2a42 = nil
+func (x *PipelineExecutableStatistic) Free() {
+ if x != nil && x.allocs4af1a62c != nil {
+ x.allocs4af1a62c.(*cgoAllocMap).Free()
+ x.ref4af1a62c = nil
}
}
-// NewBufferMemoryRequirementsInfo2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineExecutableStatisticRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewBufferMemoryRequirementsInfo2Ref(ref unsafe.Pointer) *BufferMemoryRequirementsInfo2 {
+func NewPipelineExecutableStatisticRef(ref unsafe.Pointer) *PipelineExecutableStatistic {
if ref == nil {
return nil
}
- obj := new(BufferMemoryRequirementsInfo2)
- obj.reff54a2a42 = (*C.VkBufferMemoryRequirementsInfo2)(unsafe.Pointer(ref))
+ obj := new(PipelineExecutableStatistic)
+ obj.ref4af1a62c = (*C.VkPipelineExecutableStatisticKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *BufferMemoryRequirementsInfo2) PassRef() (*C.VkBufferMemoryRequirementsInfo2, *cgoAllocMap) {
+func (x *PipelineExecutableStatistic) PassRef() (*C.VkPipelineExecutableStatisticKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.reff54a2a42 != nil {
- return x.reff54a2a42, nil
+ } else if x.ref4af1a62c != nil {
+ return x.ref4af1a62c, nil
}
- memf54a2a42 := allocBufferMemoryRequirementsInfo2Memory(1)
- reff54a2a42 := (*C.VkBufferMemoryRequirementsInfo2)(memf54a2a42)
- allocsf54a2a42 := new(cgoAllocMap)
- allocsf54a2a42.Add(memf54a2a42)
+ mem4af1a62c := allocPipelineExecutableStatisticMemory(1)
+ ref4af1a62c := (*C.VkPipelineExecutableStatisticKHR)(mem4af1a62c)
+ allocs4af1a62c := new(cgoAllocMap)
+ allocs4af1a62c.Add(mem4af1a62c)
var csType_allocs *cgoAllocMap
- reff54a2a42.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsf54a2a42.Borrow(csType_allocs)
+ ref4af1a62c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs4af1a62c.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- reff54a2a42.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsf54a2a42.Borrow(cpNext_allocs)
+ ref4af1a62c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs4af1a62c.Borrow(cpNext_allocs)
- var cbuffer_allocs *cgoAllocMap
- reff54a2a42.buffer, cbuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.Buffer)), cgoAllocsUnknown
- allocsf54a2a42.Borrow(cbuffer_allocs)
+ var cname_allocs *cgoAllocMap
+ ref4af1a62c.name, cname_allocs = *(*[256]C.char)(unsafe.Pointer(&x.Name)), cgoAllocsUnknown
+ allocs4af1a62c.Borrow(cname_allocs)
- x.reff54a2a42 = reff54a2a42
- x.allocsf54a2a42 = allocsf54a2a42
- return reff54a2a42, allocsf54a2a42
+ var cdescription_allocs *cgoAllocMap
+ ref4af1a62c.description, cdescription_allocs = *(*[256]C.char)(unsafe.Pointer(&x.Description)), cgoAllocsUnknown
+ allocs4af1a62c.Borrow(cdescription_allocs)
+
+ var cformat_allocs *cgoAllocMap
+ ref4af1a62c.format, cformat_allocs = (C.VkPipelineExecutableStatisticFormatKHR)(x.Format), cgoAllocsUnknown
+ allocs4af1a62c.Borrow(cformat_allocs)
+
+ var cvalue_allocs *cgoAllocMap
+ ref4af1a62c.value, cvalue_allocs = *(*C.VkPipelineExecutableStatisticValueKHR)(unsafe.Pointer(&x.Value)), cgoAllocsUnknown
+ allocs4af1a62c.Borrow(cvalue_allocs)
+
+ x.ref4af1a62c = ref4af1a62c
+ x.allocs4af1a62c = allocs4af1a62c
+ return ref4af1a62c, allocs4af1a62c
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x BufferMemoryRequirementsInfo2) PassValue() (C.VkBufferMemoryRequirementsInfo2, *cgoAllocMap) {
- if x.reff54a2a42 != nil {
- return *x.reff54a2a42, nil
+func (x PipelineExecutableStatistic) PassValue() (C.VkPipelineExecutableStatisticKHR, *cgoAllocMap) {
+ if x.ref4af1a62c != nil {
+ return *x.ref4af1a62c, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -14853,90 +41675,109 @@ func (x BufferMemoryRequirementsInfo2) PassValue() (C.VkBufferMemoryRequirements
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *BufferMemoryRequirementsInfo2) Deref() {
- if x.reff54a2a42 == nil {
+func (x *PipelineExecutableStatistic) Deref() {
+ if x.ref4af1a62c == nil {
return
}
- x.SType = (StructureType)(x.reff54a2a42.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff54a2a42.pNext))
- x.Buffer = *(*Buffer)(unsafe.Pointer(&x.reff54a2a42.buffer))
+ x.SType = (StructureType)(x.ref4af1a62c.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref4af1a62c.pNext))
+ x.Name = *(*[256]byte)(unsafe.Pointer(&x.ref4af1a62c.name))
+ x.Description = *(*[256]byte)(unsafe.Pointer(&x.ref4af1a62c.description))
+ x.Format = (PipelineExecutableStatisticFormat)(x.ref4af1a62c.format)
+ x.Value = *(*PipelineExecutableStatisticValue)(unsafe.Pointer(&x.ref4af1a62c.value))
}
-// allocImageMemoryRequirementsInfo2Memory allocates memory for type C.VkImageMemoryRequirementsInfo2 in C.
+// allocPipelineExecutableInternalRepresentationMemory allocates memory for type C.VkPipelineExecutableInternalRepresentationKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocImageMemoryRequirementsInfo2Memory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageMemoryRequirementsInfo2Value))
+func allocPipelineExecutableInternalRepresentationMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineExecutableInternalRepresentationValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfImageMemoryRequirementsInfo2Value = unsafe.Sizeof([1]C.VkImageMemoryRequirementsInfo2{})
+const sizeOfPipelineExecutableInternalRepresentationValue = unsafe.Sizeof([1]C.VkPipelineExecutableInternalRepresentationKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ImageMemoryRequirementsInfo2) Ref() *C.VkImageMemoryRequirementsInfo2 {
+func (x *PipelineExecutableInternalRepresentation) Ref() *C.VkPipelineExecutableInternalRepresentationKHR {
if x == nil {
return nil
}
- return x.ref75b3ca05
+ return x.ref20e334f7
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ImageMemoryRequirementsInfo2) Free() {
- if x != nil && x.allocs75b3ca05 != nil {
- x.allocs75b3ca05.(*cgoAllocMap).Free()
- x.ref75b3ca05 = nil
+func (x *PipelineExecutableInternalRepresentation) Free() {
+ if x != nil && x.allocs20e334f7 != nil {
+ x.allocs20e334f7.(*cgoAllocMap).Free()
+ x.ref20e334f7 = nil
}
}
-// NewImageMemoryRequirementsInfo2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineExecutableInternalRepresentationRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewImageMemoryRequirementsInfo2Ref(ref unsafe.Pointer) *ImageMemoryRequirementsInfo2 {
+func NewPipelineExecutableInternalRepresentationRef(ref unsafe.Pointer) *PipelineExecutableInternalRepresentation {
if ref == nil {
return nil
}
- obj := new(ImageMemoryRequirementsInfo2)
- obj.ref75b3ca05 = (*C.VkImageMemoryRequirementsInfo2)(unsafe.Pointer(ref))
+ obj := new(PipelineExecutableInternalRepresentation)
+ obj.ref20e334f7 = (*C.VkPipelineExecutableInternalRepresentationKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ImageMemoryRequirementsInfo2) PassRef() (*C.VkImageMemoryRequirementsInfo2, *cgoAllocMap) {
+func (x *PipelineExecutableInternalRepresentation) PassRef() (*C.VkPipelineExecutableInternalRepresentationKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref75b3ca05 != nil {
- return x.ref75b3ca05, nil
+ } else if x.ref20e334f7 != nil {
+ return x.ref20e334f7, nil
}
- mem75b3ca05 := allocImageMemoryRequirementsInfo2Memory(1)
- ref75b3ca05 := (*C.VkImageMemoryRequirementsInfo2)(mem75b3ca05)
- allocs75b3ca05 := new(cgoAllocMap)
- allocs75b3ca05.Add(mem75b3ca05)
+ mem20e334f7 := allocPipelineExecutableInternalRepresentationMemory(1)
+ ref20e334f7 := (*C.VkPipelineExecutableInternalRepresentationKHR)(mem20e334f7)
+ allocs20e334f7 := new(cgoAllocMap)
+ allocs20e334f7.Add(mem20e334f7)
var csType_allocs *cgoAllocMap
- ref75b3ca05.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs75b3ca05.Borrow(csType_allocs)
+ ref20e334f7.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs20e334f7.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref75b3ca05.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs75b3ca05.Borrow(cpNext_allocs)
+ ref20e334f7.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs20e334f7.Borrow(cpNext_allocs)
- var cimage_allocs *cgoAllocMap
- ref75b3ca05.image, cimage_allocs = *(*C.VkImage)(unsafe.Pointer(&x.Image)), cgoAllocsUnknown
- allocs75b3ca05.Borrow(cimage_allocs)
+ var cname_allocs *cgoAllocMap
+ ref20e334f7.name, cname_allocs = *(*[256]C.char)(unsafe.Pointer(&x.Name)), cgoAllocsUnknown
+ allocs20e334f7.Borrow(cname_allocs)
- x.ref75b3ca05 = ref75b3ca05
- x.allocs75b3ca05 = allocs75b3ca05
- return ref75b3ca05, allocs75b3ca05
+ var cdescription_allocs *cgoAllocMap
+ ref20e334f7.description, cdescription_allocs = *(*[256]C.char)(unsafe.Pointer(&x.Description)), cgoAllocsUnknown
+ allocs20e334f7.Borrow(cdescription_allocs)
+
+ var cisText_allocs *cgoAllocMap
+ ref20e334f7.isText, cisText_allocs = (C.VkBool32)(x.IsText), cgoAllocsUnknown
+ allocs20e334f7.Borrow(cisText_allocs)
+
+ var cdataSize_allocs *cgoAllocMap
+ ref20e334f7.dataSize, cdataSize_allocs = (C.size_t)(x.DataSize), cgoAllocsUnknown
+ allocs20e334f7.Borrow(cdataSize_allocs)
+
+ var cpData_allocs *cgoAllocMap
+ ref20e334f7.pData, cpData_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PData)), cgoAllocsUnknown
+ allocs20e334f7.Borrow(cpData_allocs)
+
+ x.ref20e334f7 = ref20e334f7
+ x.allocs20e334f7 = allocs20e334f7
+ return ref20e334f7, allocs20e334f7
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ImageMemoryRequirementsInfo2) PassValue() (C.VkImageMemoryRequirementsInfo2, *cgoAllocMap) {
- if x.ref75b3ca05 != nil {
- return *x.ref75b3ca05, nil
+func (x PipelineExecutableInternalRepresentation) PassValue() (C.VkPipelineExecutableInternalRepresentationKHR, *cgoAllocMap) {
+ if x.ref20e334f7 != nil {
+ return *x.ref20e334f7, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -14944,90 +41785,98 @@ func (x ImageMemoryRequirementsInfo2) PassValue() (C.VkImageMemoryRequirementsIn
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ImageMemoryRequirementsInfo2) Deref() {
- if x.ref75b3ca05 == nil {
+func (x *PipelineExecutableInternalRepresentation) Deref() {
+ if x.ref20e334f7 == nil {
return
}
- x.SType = (StructureType)(x.ref75b3ca05.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref75b3ca05.pNext))
- x.Image = *(*Image)(unsafe.Pointer(&x.ref75b3ca05.image))
+ x.SType = (StructureType)(x.ref20e334f7.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref20e334f7.pNext))
+ x.Name = *(*[256]byte)(unsafe.Pointer(&x.ref20e334f7.name))
+ x.Description = *(*[256]byte)(unsafe.Pointer(&x.ref20e334f7.description))
+ x.IsText = (Bool32)(x.ref20e334f7.isText)
+ x.DataSize = (uint64)(x.ref20e334f7.dataSize)
+ x.PData = (unsafe.Pointer)(unsafe.Pointer(x.ref20e334f7.pData))
}
-// allocImageSparseMemoryRequirementsInfo2Memory allocates memory for type C.VkImageSparseMemoryRequirementsInfo2 in C.
+// allocPipelineLibraryCreateInfoMemory allocates memory for type C.VkPipelineLibraryCreateInfoKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocImageSparseMemoryRequirementsInfo2Memory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageSparseMemoryRequirementsInfo2Value))
+func allocPipelineLibraryCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineLibraryCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfImageSparseMemoryRequirementsInfo2Value = unsafe.Sizeof([1]C.VkImageSparseMemoryRequirementsInfo2{})
+const sizeOfPipelineLibraryCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineLibraryCreateInfoKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ImageSparseMemoryRequirementsInfo2) Ref() *C.VkImageSparseMemoryRequirementsInfo2 {
+func (x *PipelineLibraryCreateInfo) Ref() *C.VkPipelineLibraryCreateInfoKHR {
if x == nil {
return nil
}
- return x.ref878956f7
+ return x.ref6bb7541b
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ImageSparseMemoryRequirementsInfo2) Free() {
- if x != nil && x.allocs878956f7 != nil {
- x.allocs878956f7.(*cgoAllocMap).Free()
- x.ref878956f7 = nil
+func (x *PipelineLibraryCreateInfo) Free() {
+ if x != nil && x.allocs6bb7541b != nil {
+ x.allocs6bb7541b.(*cgoAllocMap).Free()
+ x.ref6bb7541b = nil
}
}
-// NewImageSparseMemoryRequirementsInfo2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineLibraryCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewImageSparseMemoryRequirementsInfo2Ref(ref unsafe.Pointer) *ImageSparseMemoryRequirementsInfo2 {
+func NewPipelineLibraryCreateInfoRef(ref unsafe.Pointer) *PipelineLibraryCreateInfo {
if ref == nil {
return nil
}
- obj := new(ImageSparseMemoryRequirementsInfo2)
- obj.ref878956f7 = (*C.VkImageSparseMemoryRequirementsInfo2)(unsafe.Pointer(ref))
+ obj := new(PipelineLibraryCreateInfo)
+ obj.ref6bb7541b = (*C.VkPipelineLibraryCreateInfoKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ImageSparseMemoryRequirementsInfo2) PassRef() (*C.VkImageSparseMemoryRequirementsInfo2, *cgoAllocMap) {
+func (x *PipelineLibraryCreateInfo) PassRef() (*C.VkPipelineLibraryCreateInfoKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref878956f7 != nil {
- return x.ref878956f7, nil
+ } else if x.ref6bb7541b != nil {
+ return x.ref6bb7541b, nil
}
- mem878956f7 := allocImageSparseMemoryRequirementsInfo2Memory(1)
- ref878956f7 := (*C.VkImageSparseMemoryRequirementsInfo2)(mem878956f7)
- allocs878956f7 := new(cgoAllocMap)
- allocs878956f7.Add(mem878956f7)
+ mem6bb7541b := allocPipelineLibraryCreateInfoMemory(1)
+ ref6bb7541b := (*C.VkPipelineLibraryCreateInfoKHR)(mem6bb7541b)
+ allocs6bb7541b := new(cgoAllocMap)
+ allocs6bb7541b.Add(mem6bb7541b)
var csType_allocs *cgoAllocMap
- ref878956f7.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs878956f7.Borrow(csType_allocs)
+ ref6bb7541b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs6bb7541b.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref878956f7.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs878956f7.Borrow(cpNext_allocs)
+ ref6bb7541b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs6bb7541b.Borrow(cpNext_allocs)
- var cimage_allocs *cgoAllocMap
- ref878956f7.image, cimage_allocs = *(*C.VkImage)(unsafe.Pointer(&x.Image)), cgoAllocsUnknown
- allocs878956f7.Borrow(cimage_allocs)
+ var clibraryCount_allocs *cgoAllocMap
+ ref6bb7541b.libraryCount, clibraryCount_allocs = (C.uint32_t)(x.LibraryCount), cgoAllocsUnknown
+ allocs6bb7541b.Borrow(clibraryCount_allocs)
- x.ref878956f7 = ref878956f7
- x.allocs878956f7 = allocs878956f7
- return ref878956f7, allocs878956f7
+ var cpLibraries_allocs *cgoAllocMap
+ ref6bb7541b.pLibraries, cpLibraries_allocs = (*C.VkPipeline)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PLibraries)).Data)), cgoAllocsUnknown
+ allocs6bb7541b.Borrow(cpLibraries_allocs)
+
+ x.ref6bb7541b = ref6bb7541b
+ x.allocs6bb7541b = allocs6bb7541b
+ return ref6bb7541b, allocs6bb7541b
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ImageSparseMemoryRequirementsInfo2) PassValue() (C.VkImageSparseMemoryRequirementsInfo2, *cgoAllocMap) {
- if x.ref878956f7 != nil {
- return *x.ref878956f7, nil
+func (x PipelineLibraryCreateInfo) PassValue() (C.VkPipelineLibraryCreateInfoKHR, *cgoAllocMap) {
+ if x.ref6bb7541b != nil {
+ return *x.ref6bb7541b, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -15035,90 +41884,99 @@ func (x ImageSparseMemoryRequirementsInfo2) PassValue() (C.VkImageSparseMemoryRe
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ImageSparseMemoryRequirementsInfo2) Deref() {
- if x.ref878956f7 == nil {
+func (x *PipelineLibraryCreateInfo) Deref() {
+ if x.ref6bb7541b == nil {
return
}
- x.SType = (StructureType)(x.ref878956f7.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref878956f7.pNext))
- x.Image = *(*Image)(unsafe.Pointer(&x.ref878956f7.image))
+ x.SType = (StructureType)(x.ref6bb7541b.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref6bb7541b.pNext))
+ x.LibraryCount = (uint32)(x.ref6bb7541b.libraryCount)
+ hxfb029a7 := (*sliceHeader)(unsafe.Pointer(&x.PLibraries))
+ hxfb029a7.Data = unsafe.Pointer(x.ref6bb7541b.pLibraries)
+ hxfb029a7.Cap = 0x7fffffff
+ // hxfb029a7.Len = ?
+
}
-// allocMemoryRequirements2Memory allocates memory for type C.VkMemoryRequirements2 in C.
+// allocPresentIdMemory allocates memory for type C.VkPresentIdKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocMemoryRequirements2Memory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMemoryRequirements2Value))
+func allocPresentIdMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPresentIdValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfMemoryRequirements2Value = unsafe.Sizeof([1]C.VkMemoryRequirements2{})
+const sizeOfPresentIdValue = unsafe.Sizeof([1]C.VkPresentIdKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *MemoryRequirements2) Ref() *C.VkMemoryRequirements2 {
+func (x *PresentId) Ref() *C.VkPresentIdKHR {
if x == nil {
return nil
}
- return x.refc0e75f21
+ return x.ref70010623
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *MemoryRequirements2) Free() {
- if x != nil && x.allocsc0e75f21 != nil {
- x.allocsc0e75f21.(*cgoAllocMap).Free()
- x.refc0e75f21 = nil
+func (x *PresentId) Free() {
+ if x != nil && x.allocs70010623 != nil {
+ x.allocs70010623.(*cgoAllocMap).Free()
+ x.ref70010623 = nil
}
}
-// NewMemoryRequirements2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// NewPresentIdRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewMemoryRequirements2Ref(ref unsafe.Pointer) *MemoryRequirements2 {
+func NewPresentIdRef(ref unsafe.Pointer) *PresentId {
if ref == nil {
return nil
}
- obj := new(MemoryRequirements2)
- obj.refc0e75f21 = (*C.VkMemoryRequirements2)(unsafe.Pointer(ref))
+ obj := new(PresentId)
+ obj.ref70010623 = (*C.VkPresentIdKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *MemoryRequirements2) PassRef() (*C.VkMemoryRequirements2, *cgoAllocMap) {
+func (x *PresentId) PassRef() (*C.VkPresentIdKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refc0e75f21 != nil {
- return x.refc0e75f21, nil
+ } else if x.ref70010623 != nil {
+ return x.ref70010623, nil
}
- memc0e75f21 := allocMemoryRequirements2Memory(1)
- refc0e75f21 := (*C.VkMemoryRequirements2)(memc0e75f21)
- allocsc0e75f21 := new(cgoAllocMap)
- allocsc0e75f21.Add(memc0e75f21)
+ mem70010623 := allocPresentIdMemory(1)
+ ref70010623 := (*C.VkPresentIdKHR)(mem70010623)
+ allocs70010623 := new(cgoAllocMap)
+ allocs70010623.Add(mem70010623)
var csType_allocs *cgoAllocMap
- refc0e75f21.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsc0e75f21.Borrow(csType_allocs)
+ ref70010623.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs70010623.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refc0e75f21.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsc0e75f21.Borrow(cpNext_allocs)
+ ref70010623.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs70010623.Borrow(cpNext_allocs)
- var cmemoryRequirements_allocs *cgoAllocMap
- refc0e75f21.memoryRequirements, cmemoryRequirements_allocs = x.MemoryRequirements.PassValue()
- allocsc0e75f21.Borrow(cmemoryRequirements_allocs)
+ var cswapchainCount_allocs *cgoAllocMap
+ ref70010623.swapchainCount, cswapchainCount_allocs = (C.uint32_t)(x.SwapchainCount), cgoAllocsUnknown
+ allocs70010623.Borrow(cswapchainCount_allocs)
- x.refc0e75f21 = refc0e75f21
- x.allocsc0e75f21 = allocsc0e75f21
- return refc0e75f21, allocsc0e75f21
+ var cpPresentIds_allocs *cgoAllocMap
+ ref70010623.pPresentIds, cpPresentIds_allocs = (*C.uint64_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PPresentIds)).Data)), cgoAllocsUnknown
+ allocs70010623.Borrow(cpPresentIds_allocs)
+
+ x.ref70010623 = ref70010623
+ x.allocs70010623 = allocs70010623
+ return ref70010623, allocs70010623
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x MemoryRequirements2) PassValue() (C.VkMemoryRequirements2, *cgoAllocMap) {
- if x.refc0e75f21 != nil {
- return *x.refc0e75f21, nil
+func (x PresentId) PassValue() (C.VkPresentIdKHR, *cgoAllocMap) {
+ if x.ref70010623 != nil {
+ return *x.ref70010623, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -15126,90 +41984,95 @@ func (x MemoryRequirements2) PassValue() (C.VkMemoryRequirements2, *cgoAllocMap)
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *MemoryRequirements2) Deref() {
- if x.refc0e75f21 == nil {
+func (x *PresentId) Deref() {
+ if x.ref70010623 == nil {
return
}
- x.SType = (StructureType)(x.refc0e75f21.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc0e75f21.pNext))
- x.MemoryRequirements = *NewMemoryRequirementsRef(unsafe.Pointer(&x.refc0e75f21.memoryRequirements))
+ x.SType = (StructureType)(x.ref70010623.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref70010623.pNext))
+ x.SwapchainCount = (uint32)(x.ref70010623.swapchainCount)
+ hxf7d15a2 := (*sliceHeader)(unsafe.Pointer(&x.PPresentIds))
+ hxf7d15a2.Data = unsafe.Pointer(x.ref70010623.pPresentIds)
+ hxf7d15a2.Cap = 0x7fffffff
+ // hxf7d15a2.Len = ?
+
}
-// allocSparseImageMemoryRequirements2Memory allocates memory for type C.VkSparseImageMemoryRequirements2 in C.
+// allocPhysicalDevicePresentIdFeaturesMemory allocates memory for type C.VkPhysicalDevicePresentIdFeaturesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSparseImageMemoryRequirements2Memory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSparseImageMemoryRequirements2Value))
+func allocPhysicalDevicePresentIdFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDevicePresentIdFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSparseImageMemoryRequirements2Value = unsafe.Sizeof([1]C.VkSparseImageMemoryRequirements2{})
+const sizeOfPhysicalDevicePresentIdFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDevicePresentIdFeaturesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SparseImageMemoryRequirements2) Ref() *C.VkSparseImageMemoryRequirements2 {
+func (x *PhysicalDevicePresentIdFeatures) Ref() *C.VkPhysicalDevicePresentIdFeaturesKHR {
if x == nil {
return nil
}
- return x.refb8da955c
+ return x.refba9945cd
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SparseImageMemoryRequirements2) Free() {
- if x != nil && x.allocsb8da955c != nil {
- x.allocsb8da955c.(*cgoAllocMap).Free()
- x.refb8da955c = nil
+func (x *PhysicalDevicePresentIdFeatures) Free() {
+ if x != nil && x.allocsba9945cd != nil {
+ x.allocsba9945cd.(*cgoAllocMap).Free()
+ x.refba9945cd = nil
}
}
-// NewSparseImageMemoryRequirements2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDevicePresentIdFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSparseImageMemoryRequirements2Ref(ref unsafe.Pointer) *SparseImageMemoryRequirements2 {
+func NewPhysicalDevicePresentIdFeaturesRef(ref unsafe.Pointer) *PhysicalDevicePresentIdFeatures {
if ref == nil {
return nil
}
- obj := new(SparseImageMemoryRequirements2)
- obj.refb8da955c = (*C.VkSparseImageMemoryRequirements2)(unsafe.Pointer(ref))
+ obj := new(PhysicalDevicePresentIdFeatures)
+ obj.refba9945cd = (*C.VkPhysicalDevicePresentIdFeaturesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SparseImageMemoryRequirements2) PassRef() (*C.VkSparseImageMemoryRequirements2, *cgoAllocMap) {
+func (x *PhysicalDevicePresentIdFeatures) PassRef() (*C.VkPhysicalDevicePresentIdFeaturesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refb8da955c != nil {
- return x.refb8da955c, nil
+ } else if x.refba9945cd != nil {
+ return x.refba9945cd, nil
}
- memb8da955c := allocSparseImageMemoryRequirements2Memory(1)
- refb8da955c := (*C.VkSparseImageMemoryRequirements2)(memb8da955c)
- allocsb8da955c := new(cgoAllocMap)
- allocsb8da955c.Add(memb8da955c)
+ memba9945cd := allocPhysicalDevicePresentIdFeaturesMemory(1)
+ refba9945cd := (*C.VkPhysicalDevicePresentIdFeaturesKHR)(memba9945cd)
+ allocsba9945cd := new(cgoAllocMap)
+ allocsba9945cd.Add(memba9945cd)
var csType_allocs *cgoAllocMap
- refb8da955c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsb8da955c.Borrow(csType_allocs)
+ refba9945cd.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsba9945cd.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refb8da955c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsb8da955c.Borrow(cpNext_allocs)
+ refba9945cd.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsba9945cd.Borrow(cpNext_allocs)
- var cmemoryRequirements_allocs *cgoAllocMap
- refb8da955c.memoryRequirements, cmemoryRequirements_allocs = x.MemoryRequirements.PassValue()
- allocsb8da955c.Borrow(cmemoryRequirements_allocs)
+ var cpresentId_allocs *cgoAllocMap
+ refba9945cd.presentId, cpresentId_allocs = (C.VkBool32)(x.PresentId), cgoAllocsUnknown
+ allocsba9945cd.Borrow(cpresentId_allocs)
- x.refb8da955c = refb8da955c
- x.allocsb8da955c = allocsb8da955c
- return refb8da955c, allocsb8da955c
+ x.refba9945cd = refba9945cd
+ x.allocsba9945cd = allocsba9945cd
+ return refba9945cd, allocsba9945cd
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SparseImageMemoryRequirements2) PassValue() (C.VkSparseImageMemoryRequirements2, *cgoAllocMap) {
- if x.refb8da955c != nil {
- return *x.refb8da955c, nil
+func (x PhysicalDevicePresentIdFeatures) PassValue() (C.VkPhysicalDevicePresentIdFeaturesKHR, *cgoAllocMap) {
+ if x.refba9945cd != nil {
+ return *x.refba9945cd, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -15217,90 +42080,90 @@ func (x SparseImageMemoryRequirements2) PassValue() (C.VkSparseImageMemoryRequir
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SparseImageMemoryRequirements2) Deref() {
- if x.refb8da955c == nil {
+func (x *PhysicalDevicePresentIdFeatures) Deref() {
+ if x.refba9945cd == nil {
return
}
- x.SType = (StructureType)(x.refb8da955c.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb8da955c.pNext))
- x.MemoryRequirements = *NewSparseImageMemoryRequirementsRef(unsafe.Pointer(&x.refb8da955c.memoryRequirements))
+ x.SType = (StructureType)(x.refba9945cd.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refba9945cd.pNext))
+ x.PresentId = (Bool32)(x.refba9945cd.presentId)
}
-// allocPhysicalDeviceFeatures2Memory allocates memory for type C.VkPhysicalDeviceFeatures2 in C.
+// allocQueueFamilyCheckpointProperties2NVMemory allocates memory for type C.VkQueueFamilyCheckpointProperties2NV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceFeatures2Memory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceFeatures2Value))
+func allocQueueFamilyCheckpointProperties2NVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfQueueFamilyCheckpointProperties2NVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceFeatures2Value = unsafe.Sizeof([1]C.VkPhysicalDeviceFeatures2{})
+const sizeOfQueueFamilyCheckpointProperties2NVValue = unsafe.Sizeof([1]C.VkQueueFamilyCheckpointProperties2NV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceFeatures2) Ref() *C.VkPhysicalDeviceFeatures2 {
+func (x *QueueFamilyCheckpointProperties2NV) Ref() *C.VkQueueFamilyCheckpointProperties2NV {
if x == nil {
return nil
}
- return x.refff6ed04
+ return x.reffdc86afc
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceFeatures2) Free() {
- if x != nil && x.allocsff6ed04 != nil {
- x.allocsff6ed04.(*cgoAllocMap).Free()
- x.refff6ed04 = nil
+func (x *QueueFamilyCheckpointProperties2NV) Free() {
+ if x != nil && x.allocsfdc86afc != nil {
+ x.allocsfdc86afc.(*cgoAllocMap).Free()
+ x.reffdc86afc = nil
}
}
-// NewPhysicalDeviceFeatures2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// NewQueueFamilyCheckpointProperties2NVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceFeatures2Ref(ref unsafe.Pointer) *PhysicalDeviceFeatures2 {
+func NewQueueFamilyCheckpointProperties2NVRef(ref unsafe.Pointer) *QueueFamilyCheckpointProperties2NV {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceFeatures2)
- obj.refff6ed04 = (*C.VkPhysicalDeviceFeatures2)(unsafe.Pointer(ref))
+ obj := new(QueueFamilyCheckpointProperties2NV)
+ obj.reffdc86afc = (*C.VkQueueFamilyCheckpointProperties2NV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceFeatures2) PassRef() (*C.VkPhysicalDeviceFeatures2, *cgoAllocMap) {
+func (x *QueueFamilyCheckpointProperties2NV) PassRef() (*C.VkQueueFamilyCheckpointProperties2NV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refff6ed04 != nil {
- return x.refff6ed04, nil
+ } else if x.reffdc86afc != nil {
+ return x.reffdc86afc, nil
}
- memff6ed04 := allocPhysicalDeviceFeatures2Memory(1)
- refff6ed04 := (*C.VkPhysicalDeviceFeatures2)(memff6ed04)
- allocsff6ed04 := new(cgoAllocMap)
- allocsff6ed04.Add(memff6ed04)
+ memfdc86afc := allocQueueFamilyCheckpointProperties2NVMemory(1)
+ reffdc86afc := (*C.VkQueueFamilyCheckpointProperties2NV)(memfdc86afc)
+ allocsfdc86afc := new(cgoAllocMap)
+ allocsfdc86afc.Add(memfdc86afc)
var csType_allocs *cgoAllocMap
- refff6ed04.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsff6ed04.Borrow(csType_allocs)
+ reffdc86afc.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsfdc86afc.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refff6ed04.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsff6ed04.Borrow(cpNext_allocs)
+ reffdc86afc.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsfdc86afc.Borrow(cpNext_allocs)
- var cfeatures_allocs *cgoAllocMap
- refff6ed04.features, cfeatures_allocs = x.Features.PassValue()
- allocsff6ed04.Borrow(cfeatures_allocs)
+ var ccheckpointExecutionStageMask_allocs *cgoAllocMap
+ reffdc86afc.checkpointExecutionStageMask, ccheckpointExecutionStageMask_allocs = (C.VkPipelineStageFlags2)(x.CheckpointExecutionStageMask), cgoAllocsUnknown
+ allocsfdc86afc.Borrow(ccheckpointExecutionStageMask_allocs)
- x.refff6ed04 = refff6ed04
- x.allocsff6ed04 = allocsff6ed04
- return refff6ed04, allocsff6ed04
+ x.reffdc86afc = reffdc86afc
+ x.allocsfdc86afc = allocsfdc86afc
+ return reffdc86afc, allocsfdc86afc
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceFeatures2) PassValue() (C.VkPhysicalDeviceFeatures2, *cgoAllocMap) {
- if x.refff6ed04 != nil {
- return *x.refff6ed04, nil
+func (x QueueFamilyCheckpointProperties2NV) PassValue() (C.VkQueueFamilyCheckpointProperties2NV, *cgoAllocMap) {
+ if x.reffdc86afc != nil {
+ return *x.reffdc86afc, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -15308,90 +42171,94 @@ func (x PhysicalDeviceFeatures2) PassValue() (C.VkPhysicalDeviceFeatures2, *cgoA
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceFeatures2) Deref() {
- if x.refff6ed04 == nil {
+func (x *QueueFamilyCheckpointProperties2NV) Deref() {
+ if x.reffdc86afc == nil {
return
}
- x.SType = (StructureType)(x.refff6ed04.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refff6ed04.pNext))
- x.Features = *NewPhysicalDeviceFeaturesRef(unsafe.Pointer(&x.refff6ed04.features))
+ x.SType = (StructureType)(x.reffdc86afc.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reffdc86afc.pNext))
+ x.CheckpointExecutionStageMask = (PipelineStageFlags2)(x.reffdc86afc.checkpointExecutionStageMask)
}
-// allocPhysicalDeviceProperties2Memory allocates memory for type C.VkPhysicalDeviceProperties2 in C.
+// allocCheckpointData2NVMemory allocates memory for type C.VkCheckpointData2NV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceProperties2Memory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceProperties2Value))
+func allocCheckpointData2NVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCheckpointData2NVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceProperties2Value = unsafe.Sizeof([1]C.VkPhysicalDeviceProperties2{})
+const sizeOfCheckpointData2NVValue = unsafe.Sizeof([1]C.VkCheckpointData2NV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceProperties2) Ref() *C.VkPhysicalDeviceProperties2 {
+func (x *CheckpointData2NV) Ref() *C.VkCheckpointData2NV {
if x == nil {
return nil
}
- return x.ref947bd13e
+ return x.ref6e25431b
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceProperties2) Free() {
- if x != nil && x.allocs947bd13e != nil {
- x.allocs947bd13e.(*cgoAllocMap).Free()
- x.ref947bd13e = nil
+func (x *CheckpointData2NV) Free() {
+ if x != nil && x.allocs6e25431b != nil {
+ x.allocs6e25431b.(*cgoAllocMap).Free()
+ x.ref6e25431b = nil
}
}
-// NewPhysicalDeviceProperties2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// NewCheckpointData2NVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceProperties2Ref(ref unsafe.Pointer) *PhysicalDeviceProperties2 {
+func NewCheckpointData2NVRef(ref unsafe.Pointer) *CheckpointData2NV {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceProperties2)
- obj.ref947bd13e = (*C.VkPhysicalDeviceProperties2)(unsafe.Pointer(ref))
+ obj := new(CheckpointData2NV)
+ obj.ref6e25431b = (*C.VkCheckpointData2NV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceProperties2) PassRef() (*C.VkPhysicalDeviceProperties2, *cgoAllocMap) {
+func (x *CheckpointData2NV) PassRef() (*C.VkCheckpointData2NV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref947bd13e != nil {
- return x.ref947bd13e, nil
+ } else if x.ref6e25431b != nil {
+ return x.ref6e25431b, nil
}
- mem947bd13e := allocPhysicalDeviceProperties2Memory(1)
- ref947bd13e := (*C.VkPhysicalDeviceProperties2)(mem947bd13e)
- allocs947bd13e := new(cgoAllocMap)
- allocs947bd13e.Add(mem947bd13e)
+ mem6e25431b := allocCheckpointData2NVMemory(1)
+ ref6e25431b := (*C.VkCheckpointData2NV)(mem6e25431b)
+ allocs6e25431b := new(cgoAllocMap)
+ allocs6e25431b.Add(mem6e25431b)
var csType_allocs *cgoAllocMap
- ref947bd13e.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs947bd13e.Borrow(csType_allocs)
+ ref6e25431b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs6e25431b.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref947bd13e.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs947bd13e.Borrow(cpNext_allocs)
+ ref6e25431b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs6e25431b.Borrow(cpNext_allocs)
- var cproperties_allocs *cgoAllocMap
- ref947bd13e.properties, cproperties_allocs = x.Properties.PassValue()
- allocs947bd13e.Borrow(cproperties_allocs)
+ var cstage_allocs *cgoAllocMap
+ ref6e25431b.stage, cstage_allocs = (C.VkPipelineStageFlags2)(x.Stage), cgoAllocsUnknown
+ allocs6e25431b.Borrow(cstage_allocs)
- x.ref947bd13e = ref947bd13e
- x.allocs947bd13e = allocs947bd13e
- return ref947bd13e, allocs947bd13e
+ var cpCheckpointMarker_allocs *cgoAllocMap
+ ref6e25431b.pCheckpointMarker, cpCheckpointMarker_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PCheckpointMarker)), cgoAllocsUnknown
+ allocs6e25431b.Borrow(cpCheckpointMarker_allocs)
+
+ x.ref6e25431b = ref6e25431b
+ x.allocs6e25431b = allocs6e25431b
+ return ref6e25431b, allocs6e25431b
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceProperties2) PassValue() (C.VkPhysicalDeviceProperties2, *cgoAllocMap) {
- if x.ref947bd13e != nil {
- return *x.ref947bd13e, nil
+func (x CheckpointData2NV) PassValue() (C.VkCheckpointData2NV, *cgoAllocMap) {
+ if x.ref6e25431b != nil {
+ return *x.ref6e25431b, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -15399,90 +42266,91 @@ func (x PhysicalDeviceProperties2) PassValue() (C.VkPhysicalDeviceProperties2, *
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceProperties2) Deref() {
- if x.ref947bd13e == nil {
+func (x *CheckpointData2NV) Deref() {
+ if x.ref6e25431b == nil {
return
}
- x.SType = (StructureType)(x.ref947bd13e.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref947bd13e.pNext))
- x.Properties = *NewPhysicalDevicePropertiesRef(unsafe.Pointer(&x.ref947bd13e.properties))
+ x.SType = (StructureType)(x.ref6e25431b.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref6e25431b.pNext))
+ x.Stage = (PipelineStageFlags2)(x.ref6e25431b.stage)
+ x.PCheckpointMarker = (unsafe.Pointer)(unsafe.Pointer(x.ref6e25431b.pCheckpointMarker))
}
-// allocFormatProperties2Memory allocates memory for type C.VkFormatProperties2 in C.
+// allocPhysicalDeviceFragmentShaderBarycentricFeaturesMemory allocates memory for type C.VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocFormatProperties2Memory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfFormatProperties2Value))
+func allocPhysicalDeviceFragmentShaderBarycentricFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceFragmentShaderBarycentricFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfFormatProperties2Value = unsafe.Sizeof([1]C.VkFormatProperties2{})
+const sizeOfPhysicalDeviceFragmentShaderBarycentricFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *FormatProperties2) Ref() *C.VkFormatProperties2 {
+func (x *PhysicalDeviceFragmentShaderBarycentricFeatures) Ref() *C.VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR {
if x == nil {
return nil
}
- return x.refddc6af2a
+ return x.reff7f35e73
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *FormatProperties2) Free() {
- if x != nil && x.allocsddc6af2a != nil {
- x.allocsddc6af2a.(*cgoAllocMap).Free()
- x.refddc6af2a = nil
+func (x *PhysicalDeviceFragmentShaderBarycentricFeatures) Free() {
+ if x != nil && x.allocsf7f35e73 != nil {
+ x.allocsf7f35e73.(*cgoAllocMap).Free()
+ x.reff7f35e73 = nil
}
}
-// NewFormatProperties2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceFragmentShaderBarycentricFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewFormatProperties2Ref(ref unsafe.Pointer) *FormatProperties2 {
+func NewPhysicalDeviceFragmentShaderBarycentricFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceFragmentShaderBarycentricFeatures {
if ref == nil {
return nil
}
- obj := new(FormatProperties2)
- obj.refddc6af2a = (*C.VkFormatProperties2)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceFragmentShaderBarycentricFeatures)
+ obj.reff7f35e73 = (*C.VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *FormatProperties2) PassRef() (*C.VkFormatProperties2, *cgoAllocMap) {
+func (x *PhysicalDeviceFragmentShaderBarycentricFeatures) PassRef() (*C.VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refddc6af2a != nil {
- return x.refddc6af2a, nil
+ } else if x.reff7f35e73 != nil {
+ return x.reff7f35e73, nil
}
- memddc6af2a := allocFormatProperties2Memory(1)
- refddc6af2a := (*C.VkFormatProperties2)(memddc6af2a)
- allocsddc6af2a := new(cgoAllocMap)
- allocsddc6af2a.Add(memddc6af2a)
+ memf7f35e73 := allocPhysicalDeviceFragmentShaderBarycentricFeaturesMemory(1)
+ reff7f35e73 := (*C.VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR)(memf7f35e73)
+ allocsf7f35e73 := new(cgoAllocMap)
+ allocsf7f35e73.Add(memf7f35e73)
var csType_allocs *cgoAllocMap
- refddc6af2a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsddc6af2a.Borrow(csType_allocs)
+ reff7f35e73.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsf7f35e73.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refddc6af2a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsddc6af2a.Borrow(cpNext_allocs)
+ reff7f35e73.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsf7f35e73.Borrow(cpNext_allocs)
- var cformatProperties_allocs *cgoAllocMap
- refddc6af2a.formatProperties, cformatProperties_allocs = x.FormatProperties.PassValue()
- allocsddc6af2a.Borrow(cformatProperties_allocs)
+ var cfragmentShaderBarycentric_allocs *cgoAllocMap
+ reff7f35e73.fragmentShaderBarycentric, cfragmentShaderBarycentric_allocs = (C.VkBool32)(x.FragmentShaderBarycentric), cgoAllocsUnknown
+ allocsf7f35e73.Borrow(cfragmentShaderBarycentric_allocs)
- x.refddc6af2a = refddc6af2a
- x.allocsddc6af2a = allocsddc6af2a
- return refddc6af2a, allocsddc6af2a
+ x.reff7f35e73 = reff7f35e73
+ x.allocsf7f35e73 = allocsf7f35e73
+ return reff7f35e73, allocsf7f35e73
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x FormatProperties2) PassValue() (C.VkFormatProperties2, *cgoAllocMap) {
- if x.refddc6af2a != nil {
- return *x.refddc6af2a, nil
+func (x PhysicalDeviceFragmentShaderBarycentricFeatures) PassValue() (C.VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR, *cgoAllocMap) {
+ if x.reff7f35e73 != nil {
+ return *x.reff7f35e73, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -15490,90 +42358,90 @@ func (x FormatProperties2) PassValue() (C.VkFormatProperties2, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *FormatProperties2) Deref() {
- if x.refddc6af2a == nil {
+func (x *PhysicalDeviceFragmentShaderBarycentricFeatures) Deref() {
+ if x.reff7f35e73 == nil {
return
}
- x.SType = (StructureType)(x.refddc6af2a.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refddc6af2a.pNext))
- x.FormatProperties = *NewFormatPropertiesRef(unsafe.Pointer(&x.refddc6af2a.formatProperties))
+ x.SType = (StructureType)(x.reff7f35e73.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff7f35e73.pNext))
+ x.FragmentShaderBarycentric = (Bool32)(x.reff7f35e73.fragmentShaderBarycentric)
}
-// allocImageFormatProperties2Memory allocates memory for type C.VkImageFormatProperties2 in C.
+// allocPhysicalDeviceFragmentShaderBarycentricPropertiesMemory allocates memory for type C.VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocImageFormatProperties2Memory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageFormatProperties2Value))
+func allocPhysicalDeviceFragmentShaderBarycentricPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceFragmentShaderBarycentricPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfImageFormatProperties2Value = unsafe.Sizeof([1]C.VkImageFormatProperties2{})
+const sizeOfPhysicalDeviceFragmentShaderBarycentricPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ImageFormatProperties2) Ref() *C.VkImageFormatProperties2 {
+func (x *PhysicalDeviceFragmentShaderBarycentricProperties) Ref() *C.VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR {
if x == nil {
return nil
}
- return x.ref224187e7
+ return x.refc62a32db
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ImageFormatProperties2) Free() {
- if x != nil && x.allocs224187e7 != nil {
- x.allocs224187e7.(*cgoAllocMap).Free()
- x.ref224187e7 = nil
+func (x *PhysicalDeviceFragmentShaderBarycentricProperties) Free() {
+ if x != nil && x.allocsc62a32db != nil {
+ x.allocsc62a32db.(*cgoAllocMap).Free()
+ x.refc62a32db = nil
}
}
-// NewImageFormatProperties2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceFragmentShaderBarycentricPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewImageFormatProperties2Ref(ref unsafe.Pointer) *ImageFormatProperties2 {
+func NewPhysicalDeviceFragmentShaderBarycentricPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceFragmentShaderBarycentricProperties {
if ref == nil {
return nil
}
- obj := new(ImageFormatProperties2)
- obj.ref224187e7 = (*C.VkImageFormatProperties2)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceFragmentShaderBarycentricProperties)
+ obj.refc62a32db = (*C.VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ImageFormatProperties2) PassRef() (*C.VkImageFormatProperties2, *cgoAllocMap) {
+func (x *PhysicalDeviceFragmentShaderBarycentricProperties) PassRef() (*C.VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref224187e7 != nil {
- return x.ref224187e7, nil
+ } else if x.refc62a32db != nil {
+ return x.refc62a32db, nil
}
- mem224187e7 := allocImageFormatProperties2Memory(1)
- ref224187e7 := (*C.VkImageFormatProperties2)(mem224187e7)
- allocs224187e7 := new(cgoAllocMap)
- allocs224187e7.Add(mem224187e7)
+ memc62a32db := allocPhysicalDeviceFragmentShaderBarycentricPropertiesMemory(1)
+ refc62a32db := (*C.VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR)(memc62a32db)
+ allocsc62a32db := new(cgoAllocMap)
+ allocsc62a32db.Add(memc62a32db)
var csType_allocs *cgoAllocMap
- ref224187e7.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs224187e7.Borrow(csType_allocs)
+ refc62a32db.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsc62a32db.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref224187e7.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs224187e7.Borrow(cpNext_allocs)
+ refc62a32db.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsc62a32db.Borrow(cpNext_allocs)
- var cimageFormatProperties_allocs *cgoAllocMap
- ref224187e7.imageFormatProperties, cimageFormatProperties_allocs = x.ImageFormatProperties.PassValue()
- allocs224187e7.Borrow(cimageFormatProperties_allocs)
+ var ctriStripVertexOrderIndependentOfProvokingVertex_allocs *cgoAllocMap
+ refc62a32db.triStripVertexOrderIndependentOfProvokingVertex, ctriStripVertexOrderIndependentOfProvokingVertex_allocs = (C.VkBool32)(x.TriStripVertexOrderIndependentOfProvokingVertex), cgoAllocsUnknown
+ allocsc62a32db.Borrow(ctriStripVertexOrderIndependentOfProvokingVertex_allocs)
- x.ref224187e7 = ref224187e7
- x.allocs224187e7 = allocs224187e7
- return ref224187e7, allocs224187e7
+ x.refc62a32db = refc62a32db
+ x.allocsc62a32db = allocsc62a32db
+ return refc62a32db, allocsc62a32db
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ImageFormatProperties2) PassValue() (C.VkImageFormatProperties2, *cgoAllocMap) {
- if x.ref224187e7 != nil {
- return *x.ref224187e7, nil
+func (x PhysicalDeviceFragmentShaderBarycentricProperties) PassValue() (C.VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR, *cgoAllocMap) {
+ if x.refc62a32db != nil {
+ return *x.refc62a32db, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -15581,106 +42449,90 @@ func (x ImageFormatProperties2) PassValue() (C.VkImageFormatProperties2, *cgoAll
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ImageFormatProperties2) Deref() {
- if x.ref224187e7 == nil {
+func (x *PhysicalDeviceFragmentShaderBarycentricProperties) Deref() {
+ if x.refc62a32db == nil {
return
}
- x.SType = (StructureType)(x.ref224187e7.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref224187e7.pNext))
- x.ImageFormatProperties = *NewImageFormatPropertiesRef(unsafe.Pointer(&x.ref224187e7.imageFormatProperties))
+ x.SType = (StructureType)(x.refc62a32db.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc62a32db.pNext))
+ x.TriStripVertexOrderIndependentOfProvokingVertex = (Bool32)(x.refc62a32db.triStripVertexOrderIndependentOfProvokingVertex)
}
-// allocPhysicalDeviceImageFormatInfo2Memory allocates memory for type C.VkPhysicalDeviceImageFormatInfo2 in C.
+// allocPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesMemory allocates memory for type C.VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceImageFormatInfo2Memory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceImageFormatInfo2Value))
+func allocPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceImageFormatInfo2Value = unsafe.Sizeof([1]C.VkPhysicalDeviceImageFormatInfo2{})
+const sizeOfPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceImageFormatInfo2) Ref() *C.VkPhysicalDeviceImageFormatInfo2 {
+func (x *PhysicalDeviceShaderSubgroupUniformControlFlowFeatures) Ref() *C.VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR {
if x == nil {
return nil
}
- return x.ref5934b445
+ return x.refadc1f19
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceImageFormatInfo2) Free() {
- if x != nil && x.allocs5934b445 != nil {
- x.allocs5934b445.(*cgoAllocMap).Free()
- x.ref5934b445 = nil
+func (x *PhysicalDeviceShaderSubgroupUniformControlFlowFeatures) Free() {
+ if x != nil && x.allocsadc1f19 != nil {
+ x.allocsadc1f19.(*cgoAllocMap).Free()
+ x.refadc1f19 = nil
}
}
-// NewPhysicalDeviceImageFormatInfo2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceImageFormatInfo2Ref(ref unsafe.Pointer) *PhysicalDeviceImageFormatInfo2 {
+func NewPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceShaderSubgroupUniformControlFlowFeatures {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceImageFormatInfo2)
- obj.ref5934b445 = (*C.VkPhysicalDeviceImageFormatInfo2)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceShaderSubgroupUniformControlFlowFeatures)
+ obj.refadc1f19 = (*C.VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceImageFormatInfo2) PassRef() (*C.VkPhysicalDeviceImageFormatInfo2, *cgoAllocMap) {
+func (x *PhysicalDeviceShaderSubgroupUniformControlFlowFeatures) PassRef() (*C.VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref5934b445 != nil {
- return x.ref5934b445, nil
+ } else if x.refadc1f19 != nil {
+ return x.refadc1f19, nil
}
- mem5934b445 := allocPhysicalDeviceImageFormatInfo2Memory(1)
- ref5934b445 := (*C.VkPhysicalDeviceImageFormatInfo2)(mem5934b445)
- allocs5934b445 := new(cgoAllocMap)
- allocs5934b445.Add(mem5934b445)
+ memadc1f19 := allocPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesMemory(1)
+ refadc1f19 := (*C.VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR)(memadc1f19)
+ allocsadc1f19 := new(cgoAllocMap)
+ allocsadc1f19.Add(memadc1f19)
var csType_allocs *cgoAllocMap
- ref5934b445.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs5934b445.Borrow(csType_allocs)
+ refadc1f19.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsadc1f19.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref5934b445.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs5934b445.Borrow(cpNext_allocs)
-
- var cformat_allocs *cgoAllocMap
- ref5934b445.format, cformat_allocs = (C.VkFormat)(x.Format), cgoAllocsUnknown
- allocs5934b445.Borrow(cformat_allocs)
-
- var c_type_allocs *cgoAllocMap
- ref5934b445._type, c_type_allocs = (C.VkImageType)(x.Type), cgoAllocsUnknown
- allocs5934b445.Borrow(c_type_allocs)
-
- var ctiling_allocs *cgoAllocMap
- ref5934b445.tiling, ctiling_allocs = (C.VkImageTiling)(x.Tiling), cgoAllocsUnknown
- allocs5934b445.Borrow(ctiling_allocs)
-
- var cusage_allocs *cgoAllocMap
- ref5934b445.usage, cusage_allocs = (C.VkImageUsageFlags)(x.Usage), cgoAllocsUnknown
- allocs5934b445.Borrow(cusage_allocs)
+ refadc1f19.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsadc1f19.Borrow(cpNext_allocs)
- var cflags_allocs *cgoAllocMap
- ref5934b445.flags, cflags_allocs = (C.VkImageCreateFlags)(x.Flags), cgoAllocsUnknown
- allocs5934b445.Borrow(cflags_allocs)
+ var cshaderSubgroupUniformControlFlow_allocs *cgoAllocMap
+ refadc1f19.shaderSubgroupUniformControlFlow, cshaderSubgroupUniformControlFlow_allocs = (C.VkBool32)(x.ShaderSubgroupUniformControlFlow), cgoAllocsUnknown
+ allocsadc1f19.Borrow(cshaderSubgroupUniformControlFlow_allocs)
- x.ref5934b445 = ref5934b445
- x.allocs5934b445 = allocs5934b445
- return ref5934b445, allocs5934b445
+ x.refadc1f19 = refadc1f19
+ x.allocsadc1f19 = allocsadc1f19
+ return refadc1f19, allocsadc1f19
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceImageFormatInfo2) PassValue() (C.VkPhysicalDeviceImageFormatInfo2, *cgoAllocMap) {
- if x.ref5934b445 != nil {
- return *x.ref5934b445, nil
+func (x PhysicalDeviceShaderSubgroupUniformControlFlowFeatures) PassValue() (C.VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR, *cgoAllocMap) {
+ if x.refadc1f19 != nil {
+ return *x.refadc1f19, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -15688,94 +42540,102 @@ func (x PhysicalDeviceImageFormatInfo2) PassValue() (C.VkPhysicalDeviceImageForm
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceImageFormatInfo2) Deref() {
- if x.ref5934b445 == nil {
+func (x *PhysicalDeviceShaderSubgroupUniformControlFlowFeatures) Deref() {
+ if x.refadc1f19 == nil {
return
}
- x.SType = (StructureType)(x.ref5934b445.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5934b445.pNext))
- x.Format = (Format)(x.ref5934b445.format)
- x.Type = (ImageType)(x.ref5934b445._type)
- x.Tiling = (ImageTiling)(x.ref5934b445.tiling)
- x.Usage = (ImageUsageFlags)(x.ref5934b445.usage)
- x.Flags = (ImageCreateFlags)(x.ref5934b445.flags)
+ x.SType = (StructureType)(x.refadc1f19.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refadc1f19.pNext))
+ x.ShaderSubgroupUniformControlFlow = (Bool32)(x.refadc1f19.shaderSubgroupUniformControlFlow)
}
-// allocQueueFamilyProperties2Memory allocates memory for type C.VkQueueFamilyProperties2 in C.
+// allocPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesMemory allocates memory for type C.VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocQueueFamilyProperties2Memory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfQueueFamilyProperties2Value))
+func allocPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfQueueFamilyProperties2Value = unsafe.Sizeof([1]C.VkQueueFamilyProperties2{})
+const sizeOfPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *QueueFamilyProperties2) Ref() *C.VkQueueFamilyProperties2 {
+func (x *PhysicalDeviceWorkgroupMemoryExplicitLayoutFeatures) Ref() *C.VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR {
if x == nil {
return nil
}
- return x.ref85bf626c
+ return x.ref288a691
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *QueueFamilyProperties2) Free() {
- if x != nil && x.allocs85bf626c != nil {
- x.allocs85bf626c.(*cgoAllocMap).Free()
- x.ref85bf626c = nil
+func (x *PhysicalDeviceWorkgroupMemoryExplicitLayoutFeatures) Free() {
+ if x != nil && x.allocs288a691 != nil {
+ x.allocs288a691.(*cgoAllocMap).Free()
+ x.ref288a691 = nil
}
}
-// NewQueueFamilyProperties2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewQueueFamilyProperties2Ref(ref unsafe.Pointer) *QueueFamilyProperties2 {
+func NewPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceWorkgroupMemoryExplicitLayoutFeatures {
if ref == nil {
return nil
}
- obj := new(QueueFamilyProperties2)
- obj.ref85bf626c = (*C.VkQueueFamilyProperties2)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceWorkgroupMemoryExplicitLayoutFeatures)
+ obj.ref288a691 = (*C.VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *QueueFamilyProperties2) PassRef() (*C.VkQueueFamilyProperties2, *cgoAllocMap) {
+func (x *PhysicalDeviceWorkgroupMemoryExplicitLayoutFeatures) PassRef() (*C.VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref85bf626c != nil {
- return x.ref85bf626c, nil
+ } else if x.ref288a691 != nil {
+ return x.ref288a691, nil
}
- mem85bf626c := allocQueueFamilyProperties2Memory(1)
- ref85bf626c := (*C.VkQueueFamilyProperties2)(mem85bf626c)
- allocs85bf626c := new(cgoAllocMap)
- allocs85bf626c.Add(mem85bf626c)
+ mem288a691 := allocPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesMemory(1)
+ ref288a691 := (*C.VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR)(mem288a691)
+ allocs288a691 := new(cgoAllocMap)
+ allocs288a691.Add(mem288a691)
var csType_allocs *cgoAllocMap
- ref85bf626c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs85bf626c.Borrow(csType_allocs)
+ ref288a691.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs288a691.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref85bf626c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs85bf626c.Borrow(cpNext_allocs)
+ ref288a691.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs288a691.Borrow(cpNext_allocs)
- var cqueueFamilyProperties_allocs *cgoAllocMap
- ref85bf626c.queueFamilyProperties, cqueueFamilyProperties_allocs = x.QueueFamilyProperties.PassValue()
- allocs85bf626c.Borrow(cqueueFamilyProperties_allocs)
+ var cworkgroupMemoryExplicitLayout_allocs *cgoAllocMap
+ ref288a691.workgroupMemoryExplicitLayout, cworkgroupMemoryExplicitLayout_allocs = (C.VkBool32)(x.WorkgroupMemoryExplicitLayout), cgoAllocsUnknown
+ allocs288a691.Borrow(cworkgroupMemoryExplicitLayout_allocs)
- x.ref85bf626c = ref85bf626c
- x.allocs85bf626c = allocs85bf626c
- return ref85bf626c, allocs85bf626c
+ var cworkgroupMemoryExplicitLayoutScalarBlockLayout_allocs *cgoAllocMap
+ ref288a691.workgroupMemoryExplicitLayoutScalarBlockLayout, cworkgroupMemoryExplicitLayoutScalarBlockLayout_allocs = (C.VkBool32)(x.WorkgroupMemoryExplicitLayoutScalarBlockLayout), cgoAllocsUnknown
+ allocs288a691.Borrow(cworkgroupMemoryExplicitLayoutScalarBlockLayout_allocs)
+
+ var cworkgroupMemoryExplicitLayout8BitAccess_allocs *cgoAllocMap
+ ref288a691.workgroupMemoryExplicitLayout8BitAccess, cworkgroupMemoryExplicitLayout8BitAccess_allocs = (C.VkBool32)(x.WorkgroupMemoryExplicitLayout8BitAccess), cgoAllocsUnknown
+ allocs288a691.Borrow(cworkgroupMemoryExplicitLayout8BitAccess_allocs)
+
+ var cworkgroupMemoryExplicitLayout16BitAccess_allocs *cgoAllocMap
+ ref288a691.workgroupMemoryExplicitLayout16BitAccess, cworkgroupMemoryExplicitLayout16BitAccess_allocs = (C.VkBool32)(x.WorkgroupMemoryExplicitLayout16BitAccess), cgoAllocsUnknown
+ allocs288a691.Borrow(cworkgroupMemoryExplicitLayout16BitAccess_allocs)
+
+ x.ref288a691 = ref288a691
+ x.allocs288a691 = allocs288a691
+ return ref288a691, allocs288a691
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x QueueFamilyProperties2) PassValue() (C.VkQueueFamilyProperties2, *cgoAllocMap) {
- if x.ref85bf626c != nil {
- return *x.ref85bf626c, nil
+func (x PhysicalDeviceWorkgroupMemoryExplicitLayoutFeatures) PassValue() (C.VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR, *cgoAllocMap) {
+ if x.ref288a691 != nil {
+ return *x.ref288a691, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -15783,90 +42643,97 @@ func (x QueueFamilyProperties2) PassValue() (C.VkQueueFamilyProperties2, *cgoAll
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *QueueFamilyProperties2) Deref() {
- if x.ref85bf626c == nil {
+func (x *PhysicalDeviceWorkgroupMemoryExplicitLayoutFeatures) Deref() {
+ if x.ref288a691 == nil {
return
}
- x.SType = (StructureType)(x.ref85bf626c.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref85bf626c.pNext))
- x.QueueFamilyProperties = *NewQueueFamilyPropertiesRef(unsafe.Pointer(&x.ref85bf626c.queueFamilyProperties))
+ x.SType = (StructureType)(x.ref288a691.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref288a691.pNext))
+ x.WorkgroupMemoryExplicitLayout = (Bool32)(x.ref288a691.workgroupMemoryExplicitLayout)
+ x.WorkgroupMemoryExplicitLayoutScalarBlockLayout = (Bool32)(x.ref288a691.workgroupMemoryExplicitLayoutScalarBlockLayout)
+ x.WorkgroupMemoryExplicitLayout8BitAccess = (Bool32)(x.ref288a691.workgroupMemoryExplicitLayout8BitAccess)
+ x.WorkgroupMemoryExplicitLayout16BitAccess = (Bool32)(x.ref288a691.workgroupMemoryExplicitLayout16BitAccess)
}
-// allocPhysicalDeviceMemoryProperties2Memory allocates memory for type C.VkPhysicalDeviceMemoryProperties2 in C.
+// allocPhysicalDeviceRayTracingMaintenance1FeaturesMemory allocates memory for type C.VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceMemoryProperties2Memory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceMemoryProperties2Value))
+func allocPhysicalDeviceRayTracingMaintenance1FeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceRayTracingMaintenance1FeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceMemoryProperties2Value = unsafe.Sizeof([1]C.VkPhysicalDeviceMemoryProperties2{})
+const sizeOfPhysicalDeviceRayTracingMaintenance1FeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceMemoryProperties2) Ref() *C.VkPhysicalDeviceMemoryProperties2 {
+func (x *PhysicalDeviceRayTracingMaintenance1Features) Ref() *C.VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR {
if x == nil {
return nil
}
- return x.refd9e39b19
+ return x.ref799fe16
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceMemoryProperties2) Free() {
- if x != nil && x.allocsd9e39b19 != nil {
- x.allocsd9e39b19.(*cgoAllocMap).Free()
- x.refd9e39b19 = nil
+func (x *PhysicalDeviceRayTracingMaintenance1Features) Free() {
+ if x != nil && x.allocs799fe16 != nil {
+ x.allocs799fe16.(*cgoAllocMap).Free()
+ x.ref799fe16 = nil
}
}
-// NewPhysicalDeviceMemoryProperties2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceRayTracingMaintenance1FeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceMemoryProperties2Ref(ref unsafe.Pointer) *PhysicalDeviceMemoryProperties2 {
+func NewPhysicalDeviceRayTracingMaintenance1FeaturesRef(ref unsafe.Pointer) *PhysicalDeviceRayTracingMaintenance1Features {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceMemoryProperties2)
- obj.refd9e39b19 = (*C.VkPhysicalDeviceMemoryProperties2)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceRayTracingMaintenance1Features)
+ obj.ref799fe16 = (*C.VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceMemoryProperties2) PassRef() (*C.VkPhysicalDeviceMemoryProperties2, *cgoAllocMap) {
+func (x *PhysicalDeviceRayTracingMaintenance1Features) PassRef() (*C.VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refd9e39b19 != nil {
- return x.refd9e39b19, nil
+ } else if x.ref799fe16 != nil {
+ return x.ref799fe16, nil
}
- memd9e39b19 := allocPhysicalDeviceMemoryProperties2Memory(1)
- refd9e39b19 := (*C.VkPhysicalDeviceMemoryProperties2)(memd9e39b19)
- allocsd9e39b19 := new(cgoAllocMap)
- allocsd9e39b19.Add(memd9e39b19)
+ mem799fe16 := allocPhysicalDeviceRayTracingMaintenance1FeaturesMemory(1)
+ ref799fe16 := (*C.VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR)(mem799fe16)
+ allocs799fe16 := new(cgoAllocMap)
+ allocs799fe16.Add(mem799fe16)
var csType_allocs *cgoAllocMap
- refd9e39b19.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsd9e39b19.Borrow(csType_allocs)
+ ref799fe16.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs799fe16.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refd9e39b19.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsd9e39b19.Borrow(cpNext_allocs)
+ ref799fe16.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs799fe16.Borrow(cpNext_allocs)
- var cmemoryProperties_allocs *cgoAllocMap
- refd9e39b19.memoryProperties, cmemoryProperties_allocs = x.MemoryProperties.PassValue()
- allocsd9e39b19.Borrow(cmemoryProperties_allocs)
+ var crayTracingMaintenance1_allocs *cgoAllocMap
+ ref799fe16.rayTracingMaintenance1, crayTracingMaintenance1_allocs = (C.VkBool32)(x.RayTracingMaintenance1), cgoAllocsUnknown
+ allocs799fe16.Borrow(crayTracingMaintenance1_allocs)
- x.refd9e39b19 = refd9e39b19
- x.allocsd9e39b19 = allocsd9e39b19
- return refd9e39b19, allocsd9e39b19
+ var crayTracingPipelineTraceRaysIndirect2_allocs *cgoAllocMap
+ ref799fe16.rayTracingPipelineTraceRaysIndirect2, crayTracingPipelineTraceRaysIndirect2_allocs = (C.VkBool32)(x.RayTracingPipelineTraceRaysIndirect2), cgoAllocsUnknown
+ allocs799fe16.Borrow(crayTracingPipelineTraceRaysIndirect2_allocs)
+
+ x.ref799fe16 = ref799fe16
+ x.allocs799fe16 = allocs799fe16
+ return ref799fe16, allocs799fe16
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceMemoryProperties2) PassValue() (C.VkPhysicalDeviceMemoryProperties2, *cgoAllocMap) {
- if x.refd9e39b19 != nil {
- return *x.refd9e39b19, nil
+func (x PhysicalDeviceRayTracingMaintenance1Features) PassValue() (C.VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR, *cgoAllocMap) {
+ if x.ref799fe16 != nil {
+ return *x.ref799fe16, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -15874,90 +42741,135 @@ func (x PhysicalDeviceMemoryProperties2) PassValue() (C.VkPhysicalDeviceMemoryPr
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceMemoryProperties2) Deref() {
- if x.refd9e39b19 == nil {
+func (x *PhysicalDeviceRayTracingMaintenance1Features) Deref() {
+ if x.ref799fe16 == nil {
return
}
- x.SType = (StructureType)(x.refd9e39b19.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd9e39b19.pNext))
- x.MemoryProperties = *NewPhysicalDeviceMemoryPropertiesRef(unsafe.Pointer(&x.refd9e39b19.memoryProperties))
+ x.SType = (StructureType)(x.ref799fe16.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref799fe16.pNext))
+ x.RayTracingMaintenance1 = (Bool32)(x.ref799fe16.rayTracingMaintenance1)
+ x.RayTracingPipelineTraceRaysIndirect2 = (Bool32)(x.ref799fe16.rayTracingPipelineTraceRaysIndirect2)
}
-// allocSparseImageFormatProperties2Memory allocates memory for type C.VkSparseImageFormatProperties2 in C.
+// allocTraceRaysIndirectCommand2Memory allocates memory for type C.VkTraceRaysIndirectCommand2KHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSparseImageFormatProperties2Memory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSparseImageFormatProperties2Value))
+func allocTraceRaysIndirectCommand2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfTraceRaysIndirectCommand2Value))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSparseImageFormatProperties2Value = unsafe.Sizeof([1]C.VkSparseImageFormatProperties2{})
+const sizeOfTraceRaysIndirectCommand2Value = unsafe.Sizeof([1]C.VkTraceRaysIndirectCommand2KHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SparseImageFormatProperties2) Ref() *C.VkSparseImageFormatProperties2 {
+func (x *TraceRaysIndirectCommand2) Ref() *C.VkTraceRaysIndirectCommand2KHR {
if x == nil {
return nil
}
- return x.ref6b48294b
+ return x.ref9139d02e
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SparseImageFormatProperties2) Free() {
- if x != nil && x.allocs6b48294b != nil {
- x.allocs6b48294b.(*cgoAllocMap).Free()
- x.ref6b48294b = nil
+func (x *TraceRaysIndirectCommand2) Free() {
+ if x != nil && x.allocs9139d02e != nil {
+ x.allocs9139d02e.(*cgoAllocMap).Free()
+ x.ref9139d02e = nil
}
}
-// NewSparseImageFormatProperties2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// NewTraceRaysIndirectCommand2Ref creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSparseImageFormatProperties2Ref(ref unsafe.Pointer) *SparseImageFormatProperties2 {
+func NewTraceRaysIndirectCommand2Ref(ref unsafe.Pointer) *TraceRaysIndirectCommand2 {
if ref == nil {
return nil
}
- obj := new(SparseImageFormatProperties2)
- obj.ref6b48294b = (*C.VkSparseImageFormatProperties2)(unsafe.Pointer(ref))
+ obj := new(TraceRaysIndirectCommand2)
+ obj.ref9139d02e = (*C.VkTraceRaysIndirectCommand2KHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SparseImageFormatProperties2) PassRef() (*C.VkSparseImageFormatProperties2, *cgoAllocMap) {
+func (x *TraceRaysIndirectCommand2) PassRef() (*C.VkTraceRaysIndirectCommand2KHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref6b48294b != nil {
- return x.ref6b48294b, nil
+ } else if x.ref9139d02e != nil {
+ return x.ref9139d02e, nil
}
- mem6b48294b := allocSparseImageFormatProperties2Memory(1)
- ref6b48294b := (*C.VkSparseImageFormatProperties2)(mem6b48294b)
- allocs6b48294b := new(cgoAllocMap)
- allocs6b48294b.Add(mem6b48294b)
+ mem9139d02e := allocTraceRaysIndirectCommand2Memory(1)
+ ref9139d02e := (*C.VkTraceRaysIndirectCommand2KHR)(mem9139d02e)
+ allocs9139d02e := new(cgoAllocMap)
+ allocs9139d02e.Add(mem9139d02e)
- var csType_allocs *cgoAllocMap
- ref6b48294b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs6b48294b.Borrow(csType_allocs)
+ var craygenShaderRecordAddress_allocs *cgoAllocMap
+ ref9139d02e.raygenShaderRecordAddress, craygenShaderRecordAddress_allocs = (C.VkDeviceAddress)(x.RaygenShaderRecordAddress), cgoAllocsUnknown
+ allocs9139d02e.Borrow(craygenShaderRecordAddress_allocs)
- var cpNext_allocs *cgoAllocMap
- ref6b48294b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs6b48294b.Borrow(cpNext_allocs)
+ var craygenShaderRecordSize_allocs *cgoAllocMap
+ ref9139d02e.raygenShaderRecordSize, craygenShaderRecordSize_allocs = (C.VkDeviceSize)(x.RaygenShaderRecordSize), cgoAllocsUnknown
+ allocs9139d02e.Borrow(craygenShaderRecordSize_allocs)
- var cproperties_allocs *cgoAllocMap
- ref6b48294b.properties, cproperties_allocs = x.Properties.PassValue()
- allocs6b48294b.Borrow(cproperties_allocs)
+ var cmissShaderBindingTableAddress_allocs *cgoAllocMap
+ ref9139d02e.missShaderBindingTableAddress, cmissShaderBindingTableAddress_allocs = (C.VkDeviceAddress)(x.MissShaderBindingTableAddress), cgoAllocsUnknown
+ allocs9139d02e.Borrow(cmissShaderBindingTableAddress_allocs)
- x.ref6b48294b = ref6b48294b
- x.allocs6b48294b = allocs6b48294b
- return ref6b48294b, allocs6b48294b
+ var cmissShaderBindingTableSize_allocs *cgoAllocMap
+ ref9139d02e.missShaderBindingTableSize, cmissShaderBindingTableSize_allocs = (C.VkDeviceSize)(x.MissShaderBindingTableSize), cgoAllocsUnknown
+ allocs9139d02e.Borrow(cmissShaderBindingTableSize_allocs)
+
+ var cmissShaderBindingTableStride_allocs *cgoAllocMap
+ ref9139d02e.missShaderBindingTableStride, cmissShaderBindingTableStride_allocs = (C.VkDeviceSize)(x.MissShaderBindingTableStride), cgoAllocsUnknown
+ allocs9139d02e.Borrow(cmissShaderBindingTableStride_allocs)
+
+ var chitShaderBindingTableAddress_allocs *cgoAllocMap
+ ref9139d02e.hitShaderBindingTableAddress, chitShaderBindingTableAddress_allocs = (C.VkDeviceAddress)(x.HitShaderBindingTableAddress), cgoAllocsUnknown
+ allocs9139d02e.Borrow(chitShaderBindingTableAddress_allocs)
+
+ var chitShaderBindingTableSize_allocs *cgoAllocMap
+ ref9139d02e.hitShaderBindingTableSize, chitShaderBindingTableSize_allocs = (C.VkDeviceSize)(x.HitShaderBindingTableSize), cgoAllocsUnknown
+ allocs9139d02e.Borrow(chitShaderBindingTableSize_allocs)
+
+ var chitShaderBindingTableStride_allocs *cgoAllocMap
+ ref9139d02e.hitShaderBindingTableStride, chitShaderBindingTableStride_allocs = (C.VkDeviceSize)(x.HitShaderBindingTableStride), cgoAllocsUnknown
+ allocs9139d02e.Borrow(chitShaderBindingTableStride_allocs)
+
+ var ccallableShaderBindingTableAddress_allocs *cgoAllocMap
+ ref9139d02e.callableShaderBindingTableAddress, ccallableShaderBindingTableAddress_allocs = (C.VkDeviceAddress)(x.CallableShaderBindingTableAddress), cgoAllocsUnknown
+ allocs9139d02e.Borrow(ccallableShaderBindingTableAddress_allocs)
+
+ var ccallableShaderBindingTableSize_allocs *cgoAllocMap
+ ref9139d02e.callableShaderBindingTableSize, ccallableShaderBindingTableSize_allocs = (C.VkDeviceSize)(x.CallableShaderBindingTableSize), cgoAllocsUnknown
+ allocs9139d02e.Borrow(ccallableShaderBindingTableSize_allocs)
+
+ var ccallableShaderBindingTableStride_allocs *cgoAllocMap
+ ref9139d02e.callableShaderBindingTableStride, ccallableShaderBindingTableStride_allocs = (C.VkDeviceSize)(x.CallableShaderBindingTableStride), cgoAllocsUnknown
+ allocs9139d02e.Borrow(ccallableShaderBindingTableStride_allocs)
+
+ var cwidth_allocs *cgoAllocMap
+ ref9139d02e.width, cwidth_allocs = (C.uint32_t)(x.Width), cgoAllocsUnknown
+ allocs9139d02e.Borrow(cwidth_allocs)
+
+ var cheight_allocs *cgoAllocMap
+ ref9139d02e.height, cheight_allocs = (C.uint32_t)(x.Height), cgoAllocsUnknown
+ allocs9139d02e.Borrow(cheight_allocs)
+
+ var cdepth_allocs *cgoAllocMap
+ ref9139d02e.depth, cdepth_allocs = (C.uint32_t)(x.Depth), cgoAllocsUnknown
+ allocs9139d02e.Borrow(cdepth_allocs)
+
+ x.ref9139d02e = ref9139d02e
+ x.allocs9139d02e = allocs9139d02e
+ return ref9139d02e, allocs9139d02e
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SparseImageFormatProperties2) PassValue() (C.VkSparseImageFormatProperties2, *cgoAllocMap) {
- if x.ref6b48294b != nil {
- return *x.ref6b48294b, nil
+func (x TraceRaysIndirectCommand2) PassValue() (C.VkTraceRaysIndirectCommand2KHR, *cgoAllocMap) {
+ if x.ref9139d02e != nil {
+ return *x.ref9139d02e, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -15965,106 +42877,153 @@ func (x SparseImageFormatProperties2) PassValue() (C.VkSparseImageFormatProperti
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SparseImageFormatProperties2) Deref() {
- if x.ref6b48294b == nil {
+func (x *TraceRaysIndirectCommand2) Deref() {
+ if x.ref9139d02e == nil {
return
}
- x.SType = (StructureType)(x.ref6b48294b.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref6b48294b.pNext))
- x.Properties = *NewSparseImageFormatPropertiesRef(unsafe.Pointer(&x.ref6b48294b.properties))
+ x.RaygenShaderRecordAddress = (DeviceAddress)(x.ref9139d02e.raygenShaderRecordAddress)
+ x.RaygenShaderRecordSize = (DeviceSize)(x.ref9139d02e.raygenShaderRecordSize)
+ x.MissShaderBindingTableAddress = (DeviceAddress)(x.ref9139d02e.missShaderBindingTableAddress)
+ x.MissShaderBindingTableSize = (DeviceSize)(x.ref9139d02e.missShaderBindingTableSize)
+ x.MissShaderBindingTableStride = (DeviceSize)(x.ref9139d02e.missShaderBindingTableStride)
+ x.HitShaderBindingTableAddress = (DeviceAddress)(x.ref9139d02e.hitShaderBindingTableAddress)
+ x.HitShaderBindingTableSize = (DeviceSize)(x.ref9139d02e.hitShaderBindingTableSize)
+ x.HitShaderBindingTableStride = (DeviceSize)(x.ref9139d02e.hitShaderBindingTableStride)
+ x.CallableShaderBindingTableAddress = (DeviceAddress)(x.ref9139d02e.callableShaderBindingTableAddress)
+ x.CallableShaderBindingTableSize = (DeviceSize)(x.ref9139d02e.callableShaderBindingTableSize)
+ x.CallableShaderBindingTableStride = (DeviceSize)(x.ref9139d02e.callableShaderBindingTableStride)
+ x.Width = (uint32)(x.ref9139d02e.width)
+ x.Height = (uint32)(x.ref9139d02e.height)
+ x.Depth = (uint32)(x.ref9139d02e.depth)
}
-// allocPhysicalDeviceSparseImageFormatInfo2Memory allocates memory for type C.VkPhysicalDeviceSparseImageFormatInfo2 in C.
+func (x DebugReportCallbackFunc) PassRef() (ref *C.PFN_vkDebugReportCallbackEXT, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ if debugReportCallbackFuncC918AAC4Func == nil {
+ debugReportCallbackFuncC918AAC4Func = x
+ }
+ return (*C.PFN_vkDebugReportCallbackEXT)(C.PFN_vkDebugReportCallbackEXT_c918aac4), nil
+}
+
+func (x DebugReportCallbackFunc) PassValue() (ref C.PFN_vkDebugReportCallbackEXT, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ if debugReportCallbackFuncC918AAC4Func == nil {
+ debugReportCallbackFuncC918AAC4Func = x
+ }
+ return (C.PFN_vkDebugReportCallbackEXT)(C.PFN_vkDebugReportCallbackEXT_c918aac4), nil
+}
+
+func NewDebugReportCallbackFuncRef(ref unsafe.Pointer) *DebugReportCallbackFunc {
+ return (*DebugReportCallbackFunc)(ref)
+}
+
+//export debugReportCallbackFuncC918AAC4
+func debugReportCallbackFuncC918AAC4(cflags C.VkDebugReportFlagsEXT, cobjectType C.VkDebugReportObjectTypeEXT, cobject C.uint64_t, clocation C.size_t, cmessageCode C.int32_t, cpLayerPrefix *C.char, cpMessage *C.char, cpUserData unsafe.Pointer) C.VkBool32 {
+ if debugReportCallbackFuncC918AAC4Func != nil {
+ flagsc918aac4 := (DebugReportFlags)(cflags)
+ objectTypec918aac4 := (DebugReportObjectType)(cobjectType)
+ objectc918aac4 := (uint64)(cobject)
+ locationc918aac4 := (uint64)(clocation)
+ messageCodec918aac4 := (int32)(cmessageCode)
+ pLayerPrefixc918aac4 := packPCharString(cpLayerPrefix)
+ pMessagec918aac4 := packPCharString(cpMessage)
+ pUserDatac918aac4 := (unsafe.Pointer)(unsafe.Pointer(cpUserData))
+ retc918aac4 := debugReportCallbackFuncC918AAC4Func(flagsc918aac4, objectTypec918aac4, objectc918aac4, locationc918aac4, messageCodec918aac4, pLayerPrefixc918aac4, pMessagec918aac4, pUserDatac918aac4)
+ ret, _ := (C.VkBool32)(retc918aac4), cgoAllocsUnknown
+ return ret
+ }
+ panic("callback func has not been set (race?)")
+}
+
+var debugReportCallbackFuncC918AAC4Func DebugReportCallbackFunc
+
+// allocDebugReportCallbackCreateInfoMemory allocates memory for type C.VkDebugReportCallbackCreateInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceSparseImageFormatInfo2Memory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceSparseImageFormatInfo2Value))
+func allocDebugReportCallbackCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDebugReportCallbackCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceSparseImageFormatInfo2Value = unsafe.Sizeof([1]C.VkPhysicalDeviceSparseImageFormatInfo2{})
+const sizeOfDebugReportCallbackCreateInfoValue = unsafe.Sizeof([1]C.VkDebugReportCallbackCreateInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceSparseImageFormatInfo2) Ref() *C.VkPhysicalDeviceSparseImageFormatInfo2 {
+func (x *DebugReportCallbackCreateInfo) Ref() *C.VkDebugReportCallbackCreateInfoEXT {
if x == nil {
return nil
}
- return x.ref566d5513
+ return x.refc8238563
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceSparseImageFormatInfo2) Free() {
- if x != nil && x.allocs566d5513 != nil {
- x.allocs566d5513.(*cgoAllocMap).Free()
- x.ref566d5513 = nil
+func (x *DebugReportCallbackCreateInfo) Free() {
+ if x != nil && x.allocsc8238563 != nil {
+ x.allocsc8238563.(*cgoAllocMap).Free()
+ x.refc8238563 = nil
}
}
-// NewPhysicalDeviceSparseImageFormatInfo2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// NewDebugReportCallbackCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceSparseImageFormatInfo2Ref(ref unsafe.Pointer) *PhysicalDeviceSparseImageFormatInfo2 {
+func NewDebugReportCallbackCreateInfoRef(ref unsafe.Pointer) *DebugReportCallbackCreateInfo {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceSparseImageFormatInfo2)
- obj.ref566d5513 = (*C.VkPhysicalDeviceSparseImageFormatInfo2)(unsafe.Pointer(ref))
+ obj := new(DebugReportCallbackCreateInfo)
+ obj.refc8238563 = (*C.VkDebugReportCallbackCreateInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceSparseImageFormatInfo2) PassRef() (*C.VkPhysicalDeviceSparseImageFormatInfo2, *cgoAllocMap) {
+func (x *DebugReportCallbackCreateInfo) PassRef() (*C.VkDebugReportCallbackCreateInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref566d5513 != nil {
- return x.ref566d5513, nil
+ } else if x.refc8238563 != nil {
+ return x.refc8238563, nil
}
- mem566d5513 := allocPhysicalDeviceSparseImageFormatInfo2Memory(1)
- ref566d5513 := (*C.VkPhysicalDeviceSparseImageFormatInfo2)(mem566d5513)
- allocs566d5513 := new(cgoAllocMap)
- allocs566d5513.Add(mem566d5513)
+ memc8238563 := allocDebugReportCallbackCreateInfoMemory(1)
+ refc8238563 := (*C.VkDebugReportCallbackCreateInfoEXT)(memc8238563)
+ allocsc8238563 := new(cgoAllocMap)
+ allocsc8238563.Add(memc8238563)
var csType_allocs *cgoAllocMap
- ref566d5513.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs566d5513.Borrow(csType_allocs)
+ refc8238563.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsc8238563.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref566d5513.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs566d5513.Borrow(cpNext_allocs)
-
- var cformat_allocs *cgoAllocMap
- ref566d5513.format, cformat_allocs = (C.VkFormat)(x.Format), cgoAllocsUnknown
- allocs566d5513.Borrow(cformat_allocs)
-
- var c_type_allocs *cgoAllocMap
- ref566d5513._type, c_type_allocs = (C.VkImageType)(x.Type), cgoAllocsUnknown
- allocs566d5513.Borrow(c_type_allocs)
+ refc8238563.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsc8238563.Borrow(cpNext_allocs)
- var csamples_allocs *cgoAllocMap
- ref566d5513.samples, csamples_allocs = (C.VkSampleCountFlagBits)(x.Samples), cgoAllocsUnknown
- allocs566d5513.Borrow(csamples_allocs)
+ var cflags_allocs *cgoAllocMap
+ refc8238563.flags, cflags_allocs = (C.VkDebugReportFlagsEXT)(x.Flags), cgoAllocsUnknown
+ allocsc8238563.Borrow(cflags_allocs)
- var cusage_allocs *cgoAllocMap
- ref566d5513.usage, cusage_allocs = (C.VkImageUsageFlags)(x.Usage), cgoAllocsUnknown
- allocs566d5513.Borrow(cusage_allocs)
+ var cpfnCallback_allocs *cgoAllocMap
+ refc8238563.pfnCallback, cpfnCallback_allocs = x.PfnCallback.PassValue()
+ allocsc8238563.Borrow(cpfnCallback_allocs)
- var ctiling_allocs *cgoAllocMap
- ref566d5513.tiling, ctiling_allocs = (C.VkImageTiling)(x.Tiling), cgoAllocsUnknown
- allocs566d5513.Borrow(ctiling_allocs)
+ var cpUserData_allocs *cgoAllocMap
+ refc8238563.pUserData, cpUserData_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PUserData)), cgoAllocsUnknown
+ allocsc8238563.Borrow(cpUserData_allocs)
- x.ref566d5513 = ref566d5513
- x.allocs566d5513 = allocs566d5513
- return ref566d5513, allocs566d5513
+ x.refc8238563 = refc8238563
+ x.allocsc8238563 = allocsc8238563
+ return refc8238563, allocsc8238563
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceSparseImageFormatInfo2) PassValue() (C.VkPhysicalDeviceSparseImageFormatInfo2, *cgoAllocMap) {
- if x.ref566d5513 != nil {
- return *x.ref566d5513, nil
+func (x DebugReportCallbackCreateInfo) PassValue() (C.VkDebugReportCallbackCreateInfoEXT, *cgoAllocMap) {
+ if x.refc8238563 != nil {
+ return *x.refc8238563, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -16072,94 +43031,92 @@ func (x PhysicalDeviceSparseImageFormatInfo2) PassValue() (C.VkPhysicalDeviceSpa
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceSparseImageFormatInfo2) Deref() {
- if x.ref566d5513 == nil {
+func (x *DebugReportCallbackCreateInfo) Deref() {
+ if x.refc8238563 == nil {
return
}
- x.SType = (StructureType)(x.ref566d5513.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref566d5513.pNext))
- x.Format = (Format)(x.ref566d5513.format)
- x.Type = (ImageType)(x.ref566d5513._type)
- x.Samples = (SampleCountFlagBits)(x.ref566d5513.samples)
- x.Usage = (ImageUsageFlags)(x.ref566d5513.usage)
- x.Tiling = (ImageTiling)(x.ref566d5513.tiling)
+ x.SType = (StructureType)(x.refc8238563.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc8238563.pNext))
+ x.Flags = (DebugReportFlags)(x.refc8238563.flags)
+ x.PfnCallback = *NewDebugReportCallbackFuncRef(unsafe.Pointer(&x.refc8238563.pfnCallback))
+ x.PUserData = (unsafe.Pointer)(unsafe.Pointer(x.refc8238563.pUserData))
}
-// allocPhysicalDevicePointClippingPropertiesMemory allocates memory for type C.VkPhysicalDevicePointClippingProperties in C.
+// allocPipelineRasterizationStateRasterizationOrderAMDMemory allocates memory for type C.VkPipelineRasterizationStateRasterizationOrderAMD in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDevicePointClippingPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDevicePointClippingPropertiesValue))
+func allocPipelineRasterizationStateRasterizationOrderAMDMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineRasterizationStateRasterizationOrderAMDValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDevicePointClippingPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDevicePointClippingProperties{})
+const sizeOfPipelineRasterizationStateRasterizationOrderAMDValue = unsafe.Sizeof([1]C.VkPipelineRasterizationStateRasterizationOrderAMD{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDevicePointClippingProperties) Ref() *C.VkPhysicalDevicePointClippingProperties {
+func (x *PipelineRasterizationStateRasterizationOrderAMD) Ref() *C.VkPipelineRasterizationStateRasterizationOrderAMD {
if x == nil {
return nil
}
- return x.ref5afbd22f
+ return x.ref5098cf82
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDevicePointClippingProperties) Free() {
- if x != nil && x.allocs5afbd22f != nil {
- x.allocs5afbd22f.(*cgoAllocMap).Free()
- x.ref5afbd22f = nil
+func (x *PipelineRasterizationStateRasterizationOrderAMD) Free() {
+ if x != nil && x.allocs5098cf82 != nil {
+ x.allocs5098cf82.(*cgoAllocMap).Free()
+ x.ref5098cf82 = nil
}
}
-// NewPhysicalDevicePointClippingPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineRasterizationStateRasterizationOrderAMDRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDevicePointClippingPropertiesRef(ref unsafe.Pointer) *PhysicalDevicePointClippingProperties {
+func NewPipelineRasterizationStateRasterizationOrderAMDRef(ref unsafe.Pointer) *PipelineRasterizationStateRasterizationOrderAMD {
if ref == nil {
return nil
}
- obj := new(PhysicalDevicePointClippingProperties)
- obj.ref5afbd22f = (*C.VkPhysicalDevicePointClippingProperties)(unsafe.Pointer(ref))
+ obj := new(PipelineRasterizationStateRasterizationOrderAMD)
+ obj.ref5098cf82 = (*C.VkPipelineRasterizationStateRasterizationOrderAMD)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDevicePointClippingProperties) PassRef() (*C.VkPhysicalDevicePointClippingProperties, *cgoAllocMap) {
+func (x *PipelineRasterizationStateRasterizationOrderAMD) PassRef() (*C.VkPipelineRasterizationStateRasterizationOrderAMD, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref5afbd22f != nil {
- return x.ref5afbd22f, nil
+ } else if x.ref5098cf82 != nil {
+ return x.ref5098cf82, nil
}
- mem5afbd22f := allocPhysicalDevicePointClippingPropertiesMemory(1)
- ref5afbd22f := (*C.VkPhysicalDevicePointClippingProperties)(mem5afbd22f)
- allocs5afbd22f := new(cgoAllocMap)
- allocs5afbd22f.Add(mem5afbd22f)
+ mem5098cf82 := allocPipelineRasterizationStateRasterizationOrderAMDMemory(1)
+ ref5098cf82 := (*C.VkPipelineRasterizationStateRasterizationOrderAMD)(mem5098cf82)
+ allocs5098cf82 := new(cgoAllocMap)
+ allocs5098cf82.Add(mem5098cf82)
var csType_allocs *cgoAllocMap
- ref5afbd22f.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs5afbd22f.Borrow(csType_allocs)
+ ref5098cf82.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs5098cf82.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref5afbd22f.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs5afbd22f.Borrow(cpNext_allocs)
+ ref5098cf82.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs5098cf82.Borrow(cpNext_allocs)
- var cpointClippingBehavior_allocs *cgoAllocMap
- ref5afbd22f.pointClippingBehavior, cpointClippingBehavior_allocs = (C.VkPointClippingBehavior)(x.PointClippingBehavior), cgoAllocsUnknown
- allocs5afbd22f.Borrow(cpointClippingBehavior_allocs)
+ var crasterizationOrder_allocs *cgoAllocMap
+ ref5098cf82.rasterizationOrder, crasterizationOrder_allocs = (C.VkRasterizationOrderAMD)(x.RasterizationOrder), cgoAllocsUnknown
+ allocs5098cf82.Borrow(crasterizationOrder_allocs)
- x.ref5afbd22f = ref5afbd22f
- x.allocs5afbd22f = allocs5afbd22f
- return ref5afbd22f, allocs5afbd22f
+ x.ref5098cf82 = ref5098cf82
+ x.allocs5098cf82 = allocs5098cf82
+ return ref5098cf82, allocs5098cf82
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDevicePointClippingProperties) PassValue() (C.VkPhysicalDevicePointClippingProperties, *cgoAllocMap) {
- if x.ref5afbd22f != nil {
- return *x.ref5afbd22f, nil
+func (x PipelineRasterizationStateRasterizationOrderAMD) PassValue() (C.VkPipelineRasterizationStateRasterizationOrderAMD, *cgoAllocMap) {
+ if x.ref5098cf82 != nil {
+ return *x.ref5098cf82, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -16167,90 +43124,98 @@ func (x PhysicalDevicePointClippingProperties) PassValue() (C.VkPhysicalDevicePo
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDevicePointClippingProperties) Deref() {
- if x.ref5afbd22f == nil {
+func (x *PipelineRasterizationStateRasterizationOrderAMD) Deref() {
+ if x.ref5098cf82 == nil {
return
}
- x.SType = (StructureType)(x.ref5afbd22f.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5afbd22f.pNext))
- x.PointClippingBehavior = (PointClippingBehavior)(x.ref5afbd22f.pointClippingBehavior)
+ x.SType = (StructureType)(x.ref5098cf82.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5098cf82.pNext))
+ x.RasterizationOrder = (RasterizationOrderAMD)(x.ref5098cf82.rasterizationOrder)
}
-// allocInputAttachmentAspectReferenceMemory allocates memory for type C.VkInputAttachmentAspectReference in C.
+// allocDebugMarkerObjectNameInfoMemory allocates memory for type C.VkDebugMarkerObjectNameInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocInputAttachmentAspectReferenceMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfInputAttachmentAspectReferenceValue))
+func allocDebugMarkerObjectNameInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDebugMarkerObjectNameInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfInputAttachmentAspectReferenceValue = unsafe.Sizeof([1]C.VkInputAttachmentAspectReference{})
+const sizeOfDebugMarkerObjectNameInfoValue = unsafe.Sizeof([1]C.VkDebugMarkerObjectNameInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *InputAttachmentAspectReference) Ref() *C.VkInputAttachmentAspectReference {
+func (x *DebugMarkerObjectNameInfo) Ref() *C.VkDebugMarkerObjectNameInfoEXT {
if x == nil {
return nil
}
- return x.ref4f7194e6
+ return x.refe4983fab
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *InputAttachmentAspectReference) Free() {
- if x != nil && x.allocs4f7194e6 != nil {
- x.allocs4f7194e6.(*cgoAllocMap).Free()
- x.ref4f7194e6 = nil
+func (x *DebugMarkerObjectNameInfo) Free() {
+ if x != nil && x.allocse4983fab != nil {
+ x.allocse4983fab.(*cgoAllocMap).Free()
+ x.refe4983fab = nil
}
}
-// NewInputAttachmentAspectReferenceRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDebugMarkerObjectNameInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewInputAttachmentAspectReferenceRef(ref unsafe.Pointer) *InputAttachmentAspectReference {
+func NewDebugMarkerObjectNameInfoRef(ref unsafe.Pointer) *DebugMarkerObjectNameInfo {
if ref == nil {
return nil
}
- obj := new(InputAttachmentAspectReference)
- obj.ref4f7194e6 = (*C.VkInputAttachmentAspectReference)(unsafe.Pointer(ref))
+ obj := new(DebugMarkerObjectNameInfo)
+ obj.refe4983fab = (*C.VkDebugMarkerObjectNameInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *InputAttachmentAspectReference) PassRef() (*C.VkInputAttachmentAspectReference, *cgoAllocMap) {
+func (x *DebugMarkerObjectNameInfo) PassRef() (*C.VkDebugMarkerObjectNameInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref4f7194e6 != nil {
- return x.ref4f7194e6, nil
+ } else if x.refe4983fab != nil {
+ return x.refe4983fab, nil
}
- mem4f7194e6 := allocInputAttachmentAspectReferenceMemory(1)
- ref4f7194e6 := (*C.VkInputAttachmentAspectReference)(mem4f7194e6)
- allocs4f7194e6 := new(cgoAllocMap)
- allocs4f7194e6.Add(mem4f7194e6)
+ meme4983fab := allocDebugMarkerObjectNameInfoMemory(1)
+ refe4983fab := (*C.VkDebugMarkerObjectNameInfoEXT)(meme4983fab)
+ allocse4983fab := new(cgoAllocMap)
+ allocse4983fab.Add(meme4983fab)
- var csubpass_allocs *cgoAllocMap
- ref4f7194e6.subpass, csubpass_allocs = (C.uint32_t)(x.Subpass), cgoAllocsUnknown
- allocs4f7194e6.Borrow(csubpass_allocs)
+ var csType_allocs *cgoAllocMap
+ refe4983fab.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocse4983fab.Borrow(csType_allocs)
- var cinputAttachmentIndex_allocs *cgoAllocMap
- ref4f7194e6.inputAttachmentIndex, cinputAttachmentIndex_allocs = (C.uint32_t)(x.InputAttachmentIndex), cgoAllocsUnknown
- allocs4f7194e6.Borrow(cinputAttachmentIndex_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refe4983fab.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocse4983fab.Borrow(cpNext_allocs)
- var caspectMask_allocs *cgoAllocMap
- ref4f7194e6.aspectMask, caspectMask_allocs = (C.VkImageAspectFlags)(x.AspectMask), cgoAllocsUnknown
- allocs4f7194e6.Borrow(caspectMask_allocs)
+ var cobjectType_allocs *cgoAllocMap
+ refe4983fab.objectType, cobjectType_allocs = (C.VkDebugReportObjectTypeEXT)(x.ObjectType), cgoAllocsUnknown
+ allocse4983fab.Borrow(cobjectType_allocs)
- x.ref4f7194e6 = ref4f7194e6
- x.allocs4f7194e6 = allocs4f7194e6
- return ref4f7194e6, allocs4f7194e6
+ var cobject_allocs *cgoAllocMap
+ refe4983fab.object, cobject_allocs = (C.uint64_t)(x.Object), cgoAllocsUnknown
+ allocse4983fab.Borrow(cobject_allocs)
+
+ var cpObjectName_allocs *cgoAllocMap
+ refe4983fab.pObjectName, cpObjectName_allocs = unpackPCharString(x.PObjectName)
+ allocse4983fab.Borrow(cpObjectName_allocs)
+
+ x.refe4983fab = refe4983fab
+ x.allocse4983fab = allocse4983fab
+ return refe4983fab, allocse4983fab
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x InputAttachmentAspectReference) PassValue() (C.VkInputAttachmentAspectReference, *cgoAllocMap) {
- if x.ref4f7194e6 != nil {
- return *x.ref4f7194e6, nil
+func (x DebugMarkerObjectNameInfo) PassValue() (C.VkDebugMarkerObjectNameInfoEXT, *cgoAllocMap) {
+ if x.refe4983fab != nil {
+ return *x.refe4983fab, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -16258,132 +43223,108 @@ func (x InputAttachmentAspectReference) PassValue() (C.VkInputAttachmentAspectRe
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *InputAttachmentAspectReference) Deref() {
- if x.ref4f7194e6 == nil {
+func (x *DebugMarkerObjectNameInfo) Deref() {
+ if x.refe4983fab == nil {
return
}
- x.Subpass = (uint32)(x.ref4f7194e6.subpass)
- x.InputAttachmentIndex = (uint32)(x.ref4f7194e6.inputAttachmentIndex)
- x.AspectMask = (ImageAspectFlags)(x.ref4f7194e6.aspectMask)
+ x.SType = (StructureType)(x.refe4983fab.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refe4983fab.pNext))
+ x.ObjectType = (DebugReportObjectType)(x.refe4983fab.objectType)
+ x.Object = (uint64)(x.refe4983fab.object)
+ x.PObjectName = packPCharString(x.refe4983fab.pObjectName)
}
-// allocRenderPassInputAttachmentAspectCreateInfoMemory allocates memory for type C.VkRenderPassInputAttachmentAspectCreateInfo in C.
+// allocDebugMarkerObjectTagInfoMemory allocates memory for type C.VkDebugMarkerObjectTagInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocRenderPassInputAttachmentAspectCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfRenderPassInputAttachmentAspectCreateInfoValue))
+func allocDebugMarkerObjectTagInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDebugMarkerObjectTagInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfRenderPassInputAttachmentAspectCreateInfoValue = unsafe.Sizeof([1]C.VkRenderPassInputAttachmentAspectCreateInfo{})
-
-// unpackSInputAttachmentAspectReference transforms a sliced Go data structure into plain C format.
-func unpackSInputAttachmentAspectReference(x []InputAttachmentAspectReference) (unpacked *C.VkInputAttachmentAspectReference, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkInputAttachmentAspectReference) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocInputAttachmentAspectReferenceMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkInputAttachmentAspectReference)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkInputAttachmentAspectReference)(h.Data)
- return
-}
-
-// packSInputAttachmentAspectReference reads sliced Go data structure out from plain C format.
-func packSInputAttachmentAspectReference(v []InputAttachmentAspectReference, ptr0 *C.VkInputAttachmentAspectReference) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfInputAttachmentAspectReferenceValue]C.VkInputAttachmentAspectReference)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewInputAttachmentAspectReferenceRef(unsafe.Pointer(&ptr1))
- }
-}
+const sizeOfDebugMarkerObjectTagInfoValue = unsafe.Sizeof([1]C.VkDebugMarkerObjectTagInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *RenderPassInputAttachmentAspectCreateInfo) Ref() *C.VkRenderPassInputAttachmentAspectCreateInfo {
+func (x *DebugMarkerObjectTagInfo) Ref() *C.VkDebugMarkerObjectTagInfoEXT {
if x == nil {
return nil
}
- return x.ref34eaa5c7
+ return x.refa41a5c3b
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *RenderPassInputAttachmentAspectCreateInfo) Free() {
- if x != nil && x.allocs34eaa5c7 != nil {
- x.allocs34eaa5c7.(*cgoAllocMap).Free()
- x.ref34eaa5c7 = nil
+func (x *DebugMarkerObjectTagInfo) Free() {
+ if x != nil && x.allocsa41a5c3b != nil {
+ x.allocsa41a5c3b.(*cgoAllocMap).Free()
+ x.refa41a5c3b = nil
}
}
-// NewRenderPassInputAttachmentAspectCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDebugMarkerObjectTagInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewRenderPassInputAttachmentAspectCreateInfoRef(ref unsafe.Pointer) *RenderPassInputAttachmentAspectCreateInfo {
+func NewDebugMarkerObjectTagInfoRef(ref unsafe.Pointer) *DebugMarkerObjectTagInfo {
if ref == nil {
return nil
}
- obj := new(RenderPassInputAttachmentAspectCreateInfo)
- obj.ref34eaa5c7 = (*C.VkRenderPassInputAttachmentAspectCreateInfo)(unsafe.Pointer(ref))
+ obj := new(DebugMarkerObjectTagInfo)
+ obj.refa41a5c3b = (*C.VkDebugMarkerObjectTagInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *RenderPassInputAttachmentAspectCreateInfo) PassRef() (*C.VkRenderPassInputAttachmentAspectCreateInfo, *cgoAllocMap) {
+func (x *DebugMarkerObjectTagInfo) PassRef() (*C.VkDebugMarkerObjectTagInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref34eaa5c7 != nil {
- return x.ref34eaa5c7, nil
+ } else if x.refa41a5c3b != nil {
+ return x.refa41a5c3b, nil
}
- mem34eaa5c7 := allocRenderPassInputAttachmentAspectCreateInfoMemory(1)
- ref34eaa5c7 := (*C.VkRenderPassInputAttachmentAspectCreateInfo)(mem34eaa5c7)
- allocs34eaa5c7 := new(cgoAllocMap)
- allocs34eaa5c7.Add(mem34eaa5c7)
+ mema41a5c3b := allocDebugMarkerObjectTagInfoMemory(1)
+ refa41a5c3b := (*C.VkDebugMarkerObjectTagInfoEXT)(mema41a5c3b)
+ allocsa41a5c3b := new(cgoAllocMap)
+ allocsa41a5c3b.Add(mema41a5c3b)
var csType_allocs *cgoAllocMap
- ref34eaa5c7.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs34eaa5c7.Borrow(csType_allocs)
+ refa41a5c3b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsa41a5c3b.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref34eaa5c7.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs34eaa5c7.Borrow(cpNext_allocs)
+ refa41a5c3b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsa41a5c3b.Borrow(cpNext_allocs)
- var caspectReferenceCount_allocs *cgoAllocMap
- ref34eaa5c7.aspectReferenceCount, caspectReferenceCount_allocs = (C.uint32_t)(x.AspectReferenceCount), cgoAllocsUnknown
- allocs34eaa5c7.Borrow(caspectReferenceCount_allocs)
+ var cobjectType_allocs *cgoAllocMap
+ refa41a5c3b.objectType, cobjectType_allocs = (C.VkDebugReportObjectTypeEXT)(x.ObjectType), cgoAllocsUnknown
+ allocsa41a5c3b.Borrow(cobjectType_allocs)
- var cpAspectReferences_allocs *cgoAllocMap
- ref34eaa5c7.pAspectReferences, cpAspectReferences_allocs = unpackSInputAttachmentAspectReference(x.PAspectReferences)
- allocs34eaa5c7.Borrow(cpAspectReferences_allocs)
+ var cobject_allocs *cgoAllocMap
+ refa41a5c3b.object, cobject_allocs = (C.uint64_t)(x.Object), cgoAllocsUnknown
+ allocsa41a5c3b.Borrow(cobject_allocs)
- x.ref34eaa5c7 = ref34eaa5c7
- x.allocs34eaa5c7 = allocs34eaa5c7
- return ref34eaa5c7, allocs34eaa5c7
+ var ctagName_allocs *cgoAllocMap
+ refa41a5c3b.tagName, ctagName_allocs = (C.uint64_t)(x.TagName), cgoAllocsUnknown
+ allocsa41a5c3b.Borrow(ctagName_allocs)
+
+ var ctagSize_allocs *cgoAllocMap
+ refa41a5c3b.tagSize, ctagSize_allocs = (C.size_t)(x.TagSize), cgoAllocsUnknown
+ allocsa41a5c3b.Borrow(ctagSize_allocs)
+
+ var cpTag_allocs *cgoAllocMap
+ refa41a5c3b.pTag, cpTag_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PTag)), cgoAllocsUnknown
+ allocsa41a5c3b.Borrow(cpTag_allocs)
+
+ x.refa41a5c3b = refa41a5c3b
+ x.allocsa41a5c3b = allocsa41a5c3b
+ return refa41a5c3b, allocsa41a5c3b
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x RenderPassInputAttachmentAspectCreateInfo) PassValue() (C.VkRenderPassInputAttachmentAspectCreateInfo, *cgoAllocMap) {
- if x.ref34eaa5c7 != nil {
- return *x.ref34eaa5c7, nil
+func (x DebugMarkerObjectTagInfo) PassValue() (C.VkDebugMarkerObjectTagInfoEXT, *cgoAllocMap) {
+ if x.refa41a5c3b != nil {
+ return *x.refa41a5c3b, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -16391,91 +43332,98 @@ func (x RenderPassInputAttachmentAspectCreateInfo) PassValue() (C.VkRenderPassIn
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *RenderPassInputAttachmentAspectCreateInfo) Deref() {
- if x.ref34eaa5c7 == nil {
+func (x *DebugMarkerObjectTagInfo) Deref() {
+ if x.refa41a5c3b == nil {
return
}
- x.SType = (StructureType)(x.ref34eaa5c7.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref34eaa5c7.pNext))
- x.AspectReferenceCount = (uint32)(x.ref34eaa5c7.aspectReferenceCount)
- packSInputAttachmentAspectReference(x.PAspectReferences, x.ref34eaa5c7.pAspectReferences)
+ x.SType = (StructureType)(x.refa41a5c3b.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa41a5c3b.pNext))
+ x.ObjectType = (DebugReportObjectType)(x.refa41a5c3b.objectType)
+ x.Object = (uint64)(x.refa41a5c3b.object)
+ x.TagName = (uint64)(x.refa41a5c3b.tagName)
+ x.TagSize = (uint64)(x.refa41a5c3b.tagSize)
+ x.PTag = (unsafe.Pointer)(unsafe.Pointer(x.refa41a5c3b.pTag))
}
-// allocImageViewUsageCreateInfoMemory allocates memory for type C.VkImageViewUsageCreateInfo in C.
+// allocDebugMarkerMarkerInfoMemory allocates memory for type C.VkDebugMarkerMarkerInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocImageViewUsageCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageViewUsageCreateInfoValue))
+func allocDebugMarkerMarkerInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDebugMarkerMarkerInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfImageViewUsageCreateInfoValue = unsafe.Sizeof([1]C.VkImageViewUsageCreateInfo{})
+const sizeOfDebugMarkerMarkerInfoValue = unsafe.Sizeof([1]C.VkDebugMarkerMarkerInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ImageViewUsageCreateInfo) Ref() *C.VkImageViewUsageCreateInfo {
+func (x *DebugMarkerMarkerInfo) Ref() *C.VkDebugMarkerMarkerInfoEXT {
if x == nil {
return nil
}
- return x.ref3791cec9
+ return x.ref234b91fd
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ImageViewUsageCreateInfo) Free() {
- if x != nil && x.allocs3791cec9 != nil {
- x.allocs3791cec9.(*cgoAllocMap).Free()
- x.ref3791cec9 = nil
+func (x *DebugMarkerMarkerInfo) Free() {
+ if x != nil && x.allocs234b91fd != nil {
+ x.allocs234b91fd.(*cgoAllocMap).Free()
+ x.ref234b91fd = nil
}
}
-// NewImageViewUsageCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDebugMarkerMarkerInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewImageViewUsageCreateInfoRef(ref unsafe.Pointer) *ImageViewUsageCreateInfo {
+func NewDebugMarkerMarkerInfoRef(ref unsafe.Pointer) *DebugMarkerMarkerInfo {
if ref == nil {
return nil
}
- obj := new(ImageViewUsageCreateInfo)
- obj.ref3791cec9 = (*C.VkImageViewUsageCreateInfo)(unsafe.Pointer(ref))
+ obj := new(DebugMarkerMarkerInfo)
+ obj.ref234b91fd = (*C.VkDebugMarkerMarkerInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ImageViewUsageCreateInfo) PassRef() (*C.VkImageViewUsageCreateInfo, *cgoAllocMap) {
+func (x *DebugMarkerMarkerInfo) PassRef() (*C.VkDebugMarkerMarkerInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref3791cec9 != nil {
- return x.ref3791cec9, nil
+ } else if x.ref234b91fd != nil {
+ return x.ref234b91fd, nil
}
- mem3791cec9 := allocImageViewUsageCreateInfoMemory(1)
- ref3791cec9 := (*C.VkImageViewUsageCreateInfo)(mem3791cec9)
- allocs3791cec9 := new(cgoAllocMap)
- allocs3791cec9.Add(mem3791cec9)
+ mem234b91fd := allocDebugMarkerMarkerInfoMemory(1)
+ ref234b91fd := (*C.VkDebugMarkerMarkerInfoEXT)(mem234b91fd)
+ allocs234b91fd := new(cgoAllocMap)
+ allocs234b91fd.Add(mem234b91fd)
var csType_allocs *cgoAllocMap
- ref3791cec9.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs3791cec9.Borrow(csType_allocs)
+ ref234b91fd.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs234b91fd.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref3791cec9.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs3791cec9.Borrow(cpNext_allocs)
+ ref234b91fd.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs234b91fd.Borrow(cpNext_allocs)
- var cusage_allocs *cgoAllocMap
- ref3791cec9.usage, cusage_allocs = (C.VkImageUsageFlags)(x.Usage), cgoAllocsUnknown
- allocs3791cec9.Borrow(cusage_allocs)
+ var cpMarkerName_allocs *cgoAllocMap
+ ref234b91fd.pMarkerName, cpMarkerName_allocs = unpackPCharString(x.PMarkerName)
+ allocs234b91fd.Borrow(cpMarkerName_allocs)
- x.ref3791cec9 = ref3791cec9
- x.allocs3791cec9 = allocs3791cec9
- return ref3791cec9, allocs3791cec9
+ var ccolor_allocs *cgoAllocMap
+ ref234b91fd.color, ccolor_allocs = *(*[4]C.float)(unsafe.Pointer(&x.Color)), cgoAllocsUnknown
+ allocs234b91fd.Borrow(ccolor_allocs)
+
+ x.ref234b91fd = ref234b91fd
+ x.allocs234b91fd = allocs234b91fd
+ return ref234b91fd, allocs234b91fd
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ImageViewUsageCreateInfo) PassValue() (C.VkImageViewUsageCreateInfo, *cgoAllocMap) {
- if x.ref3791cec9 != nil {
- return *x.ref3791cec9, nil
+func (x DebugMarkerMarkerInfo) PassValue() (C.VkDebugMarkerMarkerInfoEXT, *cgoAllocMap) {
+ if x.ref234b91fd != nil {
+ return *x.ref234b91fd, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -16483,90 +43431,91 @@ func (x ImageViewUsageCreateInfo) PassValue() (C.VkImageViewUsageCreateInfo, *cg
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ImageViewUsageCreateInfo) Deref() {
- if x.ref3791cec9 == nil {
+func (x *DebugMarkerMarkerInfo) Deref() {
+ if x.ref234b91fd == nil {
return
}
- x.SType = (StructureType)(x.ref3791cec9.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref3791cec9.pNext))
- x.Usage = (ImageUsageFlags)(x.ref3791cec9.usage)
+ x.SType = (StructureType)(x.ref234b91fd.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref234b91fd.pNext))
+ x.PMarkerName = packPCharString(x.ref234b91fd.pMarkerName)
+ x.Color = *(*[4]float32)(unsafe.Pointer(&x.ref234b91fd.color))
}
-// allocPipelineTessellationDomainOriginStateCreateInfoMemory allocates memory for type C.VkPipelineTessellationDomainOriginStateCreateInfo in C.
+// allocDedicatedAllocationImageCreateInfoNVMemory allocates memory for type C.VkDedicatedAllocationImageCreateInfoNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPipelineTessellationDomainOriginStateCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineTessellationDomainOriginStateCreateInfoValue))
+func allocDedicatedAllocationImageCreateInfoNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDedicatedAllocationImageCreateInfoNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPipelineTessellationDomainOriginStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineTessellationDomainOriginStateCreateInfo{})
+const sizeOfDedicatedAllocationImageCreateInfoNVValue = unsafe.Sizeof([1]C.VkDedicatedAllocationImageCreateInfoNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PipelineTessellationDomainOriginStateCreateInfo) Ref() *C.VkPipelineTessellationDomainOriginStateCreateInfo {
+func (x *DedicatedAllocationImageCreateInfoNV) Ref() *C.VkDedicatedAllocationImageCreateInfoNV {
if x == nil {
return nil
}
- return x.ref58ef29bf
+ return x.ref685d878b
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PipelineTessellationDomainOriginStateCreateInfo) Free() {
- if x != nil && x.allocs58ef29bf != nil {
- x.allocs58ef29bf.(*cgoAllocMap).Free()
- x.ref58ef29bf = nil
+func (x *DedicatedAllocationImageCreateInfoNV) Free() {
+ if x != nil && x.allocs685d878b != nil {
+ x.allocs685d878b.(*cgoAllocMap).Free()
+ x.ref685d878b = nil
}
}
-// NewPipelineTessellationDomainOriginStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDedicatedAllocationImageCreateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPipelineTessellationDomainOriginStateCreateInfoRef(ref unsafe.Pointer) *PipelineTessellationDomainOriginStateCreateInfo {
+func NewDedicatedAllocationImageCreateInfoNVRef(ref unsafe.Pointer) *DedicatedAllocationImageCreateInfoNV {
if ref == nil {
return nil
}
- obj := new(PipelineTessellationDomainOriginStateCreateInfo)
- obj.ref58ef29bf = (*C.VkPipelineTessellationDomainOriginStateCreateInfo)(unsafe.Pointer(ref))
+ obj := new(DedicatedAllocationImageCreateInfoNV)
+ obj.ref685d878b = (*C.VkDedicatedAllocationImageCreateInfoNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PipelineTessellationDomainOriginStateCreateInfo) PassRef() (*C.VkPipelineTessellationDomainOriginStateCreateInfo, *cgoAllocMap) {
+func (x *DedicatedAllocationImageCreateInfoNV) PassRef() (*C.VkDedicatedAllocationImageCreateInfoNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref58ef29bf != nil {
- return x.ref58ef29bf, nil
+ } else if x.ref685d878b != nil {
+ return x.ref685d878b, nil
}
- mem58ef29bf := allocPipelineTessellationDomainOriginStateCreateInfoMemory(1)
- ref58ef29bf := (*C.VkPipelineTessellationDomainOriginStateCreateInfo)(mem58ef29bf)
- allocs58ef29bf := new(cgoAllocMap)
- allocs58ef29bf.Add(mem58ef29bf)
+ mem685d878b := allocDedicatedAllocationImageCreateInfoNVMemory(1)
+ ref685d878b := (*C.VkDedicatedAllocationImageCreateInfoNV)(mem685d878b)
+ allocs685d878b := new(cgoAllocMap)
+ allocs685d878b.Add(mem685d878b)
var csType_allocs *cgoAllocMap
- ref58ef29bf.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs58ef29bf.Borrow(csType_allocs)
+ ref685d878b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs685d878b.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref58ef29bf.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs58ef29bf.Borrow(cpNext_allocs)
+ ref685d878b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs685d878b.Borrow(cpNext_allocs)
- var cdomainOrigin_allocs *cgoAllocMap
- ref58ef29bf.domainOrigin, cdomainOrigin_allocs = (C.VkTessellationDomainOrigin)(x.DomainOrigin), cgoAllocsUnknown
- allocs58ef29bf.Borrow(cdomainOrigin_allocs)
+ var cdedicatedAllocation_allocs *cgoAllocMap
+ ref685d878b.dedicatedAllocation, cdedicatedAllocation_allocs = (C.VkBool32)(x.DedicatedAllocation), cgoAllocsUnknown
+ allocs685d878b.Borrow(cdedicatedAllocation_allocs)
- x.ref58ef29bf = ref58ef29bf
- x.allocs58ef29bf = allocs58ef29bf
- return ref58ef29bf, allocs58ef29bf
+ x.ref685d878b = ref685d878b
+ x.allocs685d878b = allocs685d878b
+ return ref685d878b, allocs685d878b
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PipelineTessellationDomainOriginStateCreateInfo) PassValue() (C.VkPipelineTessellationDomainOriginStateCreateInfo, *cgoAllocMap) {
- if x.ref58ef29bf != nil {
- return *x.ref58ef29bf, nil
+func (x DedicatedAllocationImageCreateInfoNV) PassValue() (C.VkDedicatedAllocationImageCreateInfoNV, *cgoAllocMap) {
+ if x.ref685d878b != nil {
+ return *x.ref685d878b, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -16574,110 +43523,90 @@ func (x PipelineTessellationDomainOriginStateCreateInfo) PassValue() (C.VkPipeli
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PipelineTessellationDomainOriginStateCreateInfo) Deref() {
- if x.ref58ef29bf == nil {
+func (x *DedicatedAllocationImageCreateInfoNV) Deref() {
+ if x.ref685d878b == nil {
return
}
- x.SType = (StructureType)(x.ref58ef29bf.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref58ef29bf.pNext))
- x.DomainOrigin = (TessellationDomainOrigin)(x.ref58ef29bf.domainOrigin)
+ x.SType = (StructureType)(x.ref685d878b.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref685d878b.pNext))
+ x.DedicatedAllocation = (Bool32)(x.ref685d878b.dedicatedAllocation)
}
-// allocRenderPassMultiviewCreateInfoMemory allocates memory for type C.VkRenderPassMultiviewCreateInfo in C.
+// allocDedicatedAllocationBufferCreateInfoNVMemory allocates memory for type C.VkDedicatedAllocationBufferCreateInfoNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocRenderPassMultiviewCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfRenderPassMultiviewCreateInfoValue))
+func allocDedicatedAllocationBufferCreateInfoNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDedicatedAllocationBufferCreateInfoNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfRenderPassMultiviewCreateInfoValue = unsafe.Sizeof([1]C.VkRenderPassMultiviewCreateInfo{})
+const sizeOfDedicatedAllocationBufferCreateInfoNVValue = unsafe.Sizeof([1]C.VkDedicatedAllocationBufferCreateInfoNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *RenderPassMultiviewCreateInfo) Ref() *C.VkRenderPassMultiviewCreateInfo {
+func (x *DedicatedAllocationBufferCreateInfoNV) Ref() *C.VkDedicatedAllocationBufferCreateInfoNV {
if x == nil {
return nil
}
- return x.refee413e05
+ return x.refbc745a8
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *RenderPassMultiviewCreateInfo) Free() {
- if x != nil && x.allocsee413e05 != nil {
- x.allocsee413e05.(*cgoAllocMap).Free()
- x.refee413e05 = nil
+func (x *DedicatedAllocationBufferCreateInfoNV) Free() {
+ if x != nil && x.allocsbc745a8 != nil {
+ x.allocsbc745a8.(*cgoAllocMap).Free()
+ x.refbc745a8 = nil
}
}
-// NewRenderPassMultiviewCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDedicatedAllocationBufferCreateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewRenderPassMultiviewCreateInfoRef(ref unsafe.Pointer) *RenderPassMultiviewCreateInfo {
+func NewDedicatedAllocationBufferCreateInfoNVRef(ref unsafe.Pointer) *DedicatedAllocationBufferCreateInfoNV {
if ref == nil {
return nil
}
- obj := new(RenderPassMultiviewCreateInfo)
- obj.refee413e05 = (*C.VkRenderPassMultiviewCreateInfo)(unsafe.Pointer(ref))
+ obj := new(DedicatedAllocationBufferCreateInfoNV)
+ obj.refbc745a8 = (*C.VkDedicatedAllocationBufferCreateInfoNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *RenderPassMultiviewCreateInfo) PassRef() (*C.VkRenderPassMultiviewCreateInfo, *cgoAllocMap) {
+func (x *DedicatedAllocationBufferCreateInfoNV) PassRef() (*C.VkDedicatedAllocationBufferCreateInfoNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refee413e05 != nil {
- return x.refee413e05, nil
+ } else if x.refbc745a8 != nil {
+ return x.refbc745a8, nil
}
- memee413e05 := allocRenderPassMultiviewCreateInfoMemory(1)
- refee413e05 := (*C.VkRenderPassMultiviewCreateInfo)(memee413e05)
- allocsee413e05 := new(cgoAllocMap)
- allocsee413e05.Add(memee413e05)
+ membc745a8 := allocDedicatedAllocationBufferCreateInfoNVMemory(1)
+ refbc745a8 := (*C.VkDedicatedAllocationBufferCreateInfoNV)(membc745a8)
+ allocsbc745a8 := new(cgoAllocMap)
+ allocsbc745a8.Add(membc745a8)
var csType_allocs *cgoAllocMap
- refee413e05.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsee413e05.Borrow(csType_allocs)
+ refbc745a8.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsbc745a8.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refee413e05.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsee413e05.Borrow(cpNext_allocs)
-
- var csubpassCount_allocs *cgoAllocMap
- refee413e05.subpassCount, csubpassCount_allocs = (C.uint32_t)(x.SubpassCount), cgoAllocsUnknown
- allocsee413e05.Borrow(csubpassCount_allocs)
-
- var cpViewMasks_allocs *cgoAllocMap
- refee413e05.pViewMasks, cpViewMasks_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PViewMasks)).Data)), cgoAllocsUnknown
- allocsee413e05.Borrow(cpViewMasks_allocs)
-
- var cdependencyCount_allocs *cgoAllocMap
- refee413e05.dependencyCount, cdependencyCount_allocs = (C.uint32_t)(x.DependencyCount), cgoAllocsUnknown
- allocsee413e05.Borrow(cdependencyCount_allocs)
-
- var cpViewOffsets_allocs *cgoAllocMap
- refee413e05.pViewOffsets, cpViewOffsets_allocs = (*C.int32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PViewOffsets)).Data)), cgoAllocsUnknown
- allocsee413e05.Borrow(cpViewOffsets_allocs)
-
- var ccorrelationMaskCount_allocs *cgoAllocMap
- refee413e05.correlationMaskCount, ccorrelationMaskCount_allocs = (C.uint32_t)(x.CorrelationMaskCount), cgoAllocsUnknown
- allocsee413e05.Borrow(ccorrelationMaskCount_allocs)
+ refbc745a8.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsbc745a8.Borrow(cpNext_allocs)
- var cpCorrelationMasks_allocs *cgoAllocMap
- refee413e05.pCorrelationMasks, cpCorrelationMasks_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PCorrelationMasks)).Data)), cgoAllocsUnknown
- allocsee413e05.Borrow(cpCorrelationMasks_allocs)
+ var cdedicatedAllocation_allocs *cgoAllocMap
+ refbc745a8.dedicatedAllocation, cdedicatedAllocation_allocs = (C.VkBool32)(x.DedicatedAllocation), cgoAllocsUnknown
+ allocsbc745a8.Borrow(cdedicatedAllocation_allocs)
- x.refee413e05 = refee413e05
- x.allocsee413e05 = allocsee413e05
- return refee413e05, allocsee413e05
+ x.refbc745a8 = refbc745a8
+ x.allocsbc745a8 = allocsbc745a8
+ return refbc745a8, allocsbc745a8
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x RenderPassMultiviewCreateInfo) PassValue() (C.VkRenderPassMultiviewCreateInfo, *cgoAllocMap) {
- if x.refee413e05 != nil {
- return *x.refee413e05, nil
+func (x DedicatedAllocationBufferCreateInfoNV) PassValue() (C.VkDedicatedAllocationBufferCreateInfoNV, *cgoAllocMap) {
+ if x.refbc745a8 != nil {
+ return *x.refbc745a8, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -16685,115 +43614,94 @@ func (x RenderPassMultiviewCreateInfo) PassValue() (C.VkRenderPassMultiviewCreat
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *RenderPassMultiviewCreateInfo) Deref() {
- if x.refee413e05 == nil {
+func (x *DedicatedAllocationBufferCreateInfoNV) Deref() {
+ if x.refbc745a8 == nil {
return
}
- x.SType = (StructureType)(x.refee413e05.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refee413e05.pNext))
- x.SubpassCount = (uint32)(x.refee413e05.subpassCount)
- hxff20e84 := (*sliceHeader)(unsafe.Pointer(&x.PViewMasks))
- hxff20e84.Data = unsafe.Pointer(x.refee413e05.pViewMasks)
- hxff20e84.Cap = 0x7fffffff
- // hxff20e84.Len = ?
-
- x.DependencyCount = (uint32)(x.refee413e05.dependencyCount)
- hxfa26a4d := (*sliceHeader)(unsafe.Pointer(&x.PViewOffsets))
- hxfa26a4d.Data = unsafe.Pointer(x.refee413e05.pViewOffsets)
- hxfa26a4d.Cap = 0x7fffffff
- // hxfa26a4d.Len = ?
-
- x.CorrelationMaskCount = (uint32)(x.refee413e05.correlationMaskCount)
- hxfe48098 := (*sliceHeader)(unsafe.Pointer(&x.PCorrelationMasks))
- hxfe48098.Data = unsafe.Pointer(x.refee413e05.pCorrelationMasks)
- hxfe48098.Cap = 0x7fffffff
- // hxfe48098.Len = ?
-
+ x.SType = (StructureType)(x.refbc745a8.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refbc745a8.pNext))
+ x.DedicatedAllocation = (Bool32)(x.refbc745a8.dedicatedAllocation)
}
-// allocPhysicalDeviceMultiviewFeaturesMemory allocates memory for type C.VkPhysicalDeviceMultiviewFeatures in C.
+// allocDedicatedAllocationMemoryAllocateInfoNVMemory allocates memory for type C.VkDedicatedAllocationMemoryAllocateInfoNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceMultiviewFeaturesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceMultiviewFeaturesValue))
+func allocDedicatedAllocationMemoryAllocateInfoNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDedicatedAllocationMemoryAllocateInfoNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceMultiviewFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceMultiviewFeatures{})
+const sizeOfDedicatedAllocationMemoryAllocateInfoNVValue = unsafe.Sizeof([1]C.VkDedicatedAllocationMemoryAllocateInfoNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceMultiviewFeatures) Ref() *C.VkPhysicalDeviceMultiviewFeatures {
+func (x *DedicatedAllocationMemoryAllocateInfoNV) Ref() *C.VkDedicatedAllocationMemoryAllocateInfoNV {
if x == nil {
return nil
}
- return x.refd7a7434b
+ return x.ref9a72b107
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceMultiviewFeatures) Free() {
- if x != nil && x.allocsd7a7434b != nil {
- x.allocsd7a7434b.(*cgoAllocMap).Free()
- x.refd7a7434b = nil
+func (x *DedicatedAllocationMemoryAllocateInfoNV) Free() {
+ if x != nil && x.allocs9a72b107 != nil {
+ x.allocs9a72b107.(*cgoAllocMap).Free()
+ x.ref9a72b107 = nil
}
}
-// NewPhysicalDeviceMultiviewFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDedicatedAllocationMemoryAllocateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceMultiviewFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceMultiviewFeatures {
+func NewDedicatedAllocationMemoryAllocateInfoNVRef(ref unsafe.Pointer) *DedicatedAllocationMemoryAllocateInfoNV {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceMultiviewFeatures)
- obj.refd7a7434b = (*C.VkPhysicalDeviceMultiviewFeatures)(unsafe.Pointer(ref))
+ obj := new(DedicatedAllocationMemoryAllocateInfoNV)
+ obj.ref9a72b107 = (*C.VkDedicatedAllocationMemoryAllocateInfoNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceMultiviewFeatures) PassRef() (*C.VkPhysicalDeviceMultiviewFeatures, *cgoAllocMap) {
+func (x *DedicatedAllocationMemoryAllocateInfoNV) PassRef() (*C.VkDedicatedAllocationMemoryAllocateInfoNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refd7a7434b != nil {
- return x.refd7a7434b, nil
+ } else if x.ref9a72b107 != nil {
+ return x.ref9a72b107, nil
}
- memd7a7434b := allocPhysicalDeviceMultiviewFeaturesMemory(1)
- refd7a7434b := (*C.VkPhysicalDeviceMultiviewFeatures)(memd7a7434b)
- allocsd7a7434b := new(cgoAllocMap)
- allocsd7a7434b.Add(memd7a7434b)
+ mem9a72b107 := allocDedicatedAllocationMemoryAllocateInfoNVMemory(1)
+ ref9a72b107 := (*C.VkDedicatedAllocationMemoryAllocateInfoNV)(mem9a72b107)
+ allocs9a72b107 := new(cgoAllocMap)
+ allocs9a72b107.Add(mem9a72b107)
var csType_allocs *cgoAllocMap
- refd7a7434b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsd7a7434b.Borrow(csType_allocs)
+ ref9a72b107.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs9a72b107.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refd7a7434b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsd7a7434b.Borrow(cpNext_allocs)
-
- var cmultiview_allocs *cgoAllocMap
- refd7a7434b.multiview, cmultiview_allocs = (C.VkBool32)(x.Multiview), cgoAllocsUnknown
- allocsd7a7434b.Borrow(cmultiview_allocs)
+ ref9a72b107.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs9a72b107.Borrow(cpNext_allocs)
- var cmultiviewGeometryShader_allocs *cgoAllocMap
- refd7a7434b.multiviewGeometryShader, cmultiviewGeometryShader_allocs = (C.VkBool32)(x.MultiviewGeometryShader), cgoAllocsUnknown
- allocsd7a7434b.Borrow(cmultiviewGeometryShader_allocs)
+ var cimage_allocs *cgoAllocMap
+ ref9a72b107.image, cimage_allocs = *(*C.VkImage)(unsafe.Pointer(&x.Image)), cgoAllocsUnknown
+ allocs9a72b107.Borrow(cimage_allocs)
- var cmultiviewTessellationShader_allocs *cgoAllocMap
- refd7a7434b.multiviewTessellationShader, cmultiviewTessellationShader_allocs = (C.VkBool32)(x.MultiviewTessellationShader), cgoAllocsUnknown
- allocsd7a7434b.Borrow(cmultiviewTessellationShader_allocs)
+ var cbuffer_allocs *cgoAllocMap
+ ref9a72b107.buffer, cbuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.Buffer)), cgoAllocsUnknown
+ allocs9a72b107.Borrow(cbuffer_allocs)
- x.refd7a7434b = refd7a7434b
- x.allocsd7a7434b = allocsd7a7434b
- return refd7a7434b, allocsd7a7434b
+ x.ref9a72b107 = ref9a72b107
+ x.allocs9a72b107 = allocs9a72b107
+ return ref9a72b107, allocs9a72b107
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceMultiviewFeatures) PassValue() (C.VkPhysicalDeviceMultiviewFeatures, *cgoAllocMap) {
- if x.refd7a7434b != nil {
- return *x.refd7a7434b, nil
+func (x DedicatedAllocationMemoryAllocateInfoNV) PassValue() (C.VkDedicatedAllocationMemoryAllocateInfoNV, *cgoAllocMap) {
+ if x.ref9a72b107 != nil {
+ return *x.ref9a72b107, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -16801,96 +43709,95 @@ func (x PhysicalDeviceMultiviewFeatures) PassValue() (C.VkPhysicalDeviceMultivie
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceMultiviewFeatures) Deref() {
- if x.refd7a7434b == nil {
+func (x *DedicatedAllocationMemoryAllocateInfoNV) Deref() {
+ if x.ref9a72b107 == nil {
return
}
- x.SType = (StructureType)(x.refd7a7434b.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd7a7434b.pNext))
- x.Multiview = (Bool32)(x.refd7a7434b.multiview)
- x.MultiviewGeometryShader = (Bool32)(x.refd7a7434b.multiviewGeometryShader)
- x.MultiviewTessellationShader = (Bool32)(x.refd7a7434b.multiviewTessellationShader)
+ x.SType = (StructureType)(x.ref9a72b107.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref9a72b107.pNext))
+ x.Image = *(*Image)(unsafe.Pointer(&x.ref9a72b107.image))
+ x.Buffer = *(*Buffer)(unsafe.Pointer(&x.ref9a72b107.buffer))
}
-// allocPhysicalDeviceMultiviewPropertiesMemory allocates memory for type C.VkPhysicalDeviceMultiviewProperties in C.
+// allocPhysicalDeviceTransformFeedbackFeaturesMemory allocates memory for type C.VkPhysicalDeviceTransformFeedbackFeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceMultiviewPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceMultiviewPropertiesValue))
+func allocPhysicalDeviceTransformFeedbackFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceTransformFeedbackFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceMultiviewPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceMultiviewProperties{})
+const sizeOfPhysicalDeviceTransformFeedbackFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceTransformFeedbackFeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceMultiviewProperties) Ref() *C.VkPhysicalDeviceMultiviewProperties {
+func (x *PhysicalDeviceTransformFeedbackFeatures) Ref() *C.VkPhysicalDeviceTransformFeedbackFeaturesEXT {
if x == nil {
return nil
}
- return x.ref95110029
+ return x.ref64b2a913
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceMultiviewProperties) Free() {
- if x != nil && x.allocs95110029 != nil {
- x.allocs95110029.(*cgoAllocMap).Free()
- x.ref95110029 = nil
+func (x *PhysicalDeviceTransformFeedbackFeatures) Free() {
+ if x != nil && x.allocs64b2a913 != nil {
+ x.allocs64b2a913.(*cgoAllocMap).Free()
+ x.ref64b2a913 = nil
}
}
-// NewPhysicalDeviceMultiviewPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceTransformFeedbackFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceMultiviewPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceMultiviewProperties {
+func NewPhysicalDeviceTransformFeedbackFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceTransformFeedbackFeatures {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceMultiviewProperties)
- obj.ref95110029 = (*C.VkPhysicalDeviceMultiviewProperties)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceTransformFeedbackFeatures)
+ obj.ref64b2a913 = (*C.VkPhysicalDeviceTransformFeedbackFeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceMultiviewProperties) PassRef() (*C.VkPhysicalDeviceMultiviewProperties, *cgoAllocMap) {
+func (x *PhysicalDeviceTransformFeedbackFeatures) PassRef() (*C.VkPhysicalDeviceTransformFeedbackFeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref95110029 != nil {
- return x.ref95110029, nil
+ } else if x.ref64b2a913 != nil {
+ return x.ref64b2a913, nil
}
- mem95110029 := allocPhysicalDeviceMultiviewPropertiesMemory(1)
- ref95110029 := (*C.VkPhysicalDeviceMultiviewProperties)(mem95110029)
- allocs95110029 := new(cgoAllocMap)
- allocs95110029.Add(mem95110029)
+ mem64b2a913 := allocPhysicalDeviceTransformFeedbackFeaturesMemory(1)
+ ref64b2a913 := (*C.VkPhysicalDeviceTransformFeedbackFeaturesEXT)(mem64b2a913)
+ allocs64b2a913 := new(cgoAllocMap)
+ allocs64b2a913.Add(mem64b2a913)
var csType_allocs *cgoAllocMap
- ref95110029.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs95110029.Borrow(csType_allocs)
+ ref64b2a913.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs64b2a913.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref95110029.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs95110029.Borrow(cpNext_allocs)
+ ref64b2a913.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs64b2a913.Borrow(cpNext_allocs)
- var cmaxMultiviewViewCount_allocs *cgoAllocMap
- ref95110029.maxMultiviewViewCount, cmaxMultiviewViewCount_allocs = (C.uint32_t)(x.MaxMultiviewViewCount), cgoAllocsUnknown
- allocs95110029.Borrow(cmaxMultiviewViewCount_allocs)
+ var ctransformFeedback_allocs *cgoAllocMap
+ ref64b2a913.transformFeedback, ctransformFeedback_allocs = (C.VkBool32)(x.TransformFeedback), cgoAllocsUnknown
+ allocs64b2a913.Borrow(ctransformFeedback_allocs)
- var cmaxMultiviewInstanceIndex_allocs *cgoAllocMap
- ref95110029.maxMultiviewInstanceIndex, cmaxMultiviewInstanceIndex_allocs = (C.uint32_t)(x.MaxMultiviewInstanceIndex), cgoAllocsUnknown
- allocs95110029.Borrow(cmaxMultiviewInstanceIndex_allocs)
+ var cgeometryStreams_allocs *cgoAllocMap
+ ref64b2a913.geometryStreams, cgeometryStreams_allocs = (C.VkBool32)(x.GeometryStreams), cgoAllocsUnknown
+ allocs64b2a913.Borrow(cgeometryStreams_allocs)
- x.ref95110029 = ref95110029
- x.allocs95110029 = allocs95110029
- return ref95110029, allocs95110029
+ x.ref64b2a913 = ref64b2a913
+ x.allocs64b2a913 = allocs64b2a913
+ return ref64b2a913, allocs64b2a913
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceMultiviewProperties) PassValue() (C.VkPhysicalDeviceMultiviewProperties, *cgoAllocMap) {
- if x.ref95110029 != nil {
- return *x.ref95110029, nil
+func (x PhysicalDeviceTransformFeedbackFeatures) PassValue() (C.VkPhysicalDeviceTransformFeedbackFeaturesEXT, *cgoAllocMap) {
+ if x.ref64b2a913 != nil {
+ return *x.ref64b2a913, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -16898,95 +43805,127 @@ func (x PhysicalDeviceMultiviewProperties) PassValue() (C.VkPhysicalDeviceMultiv
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceMultiviewProperties) Deref() {
- if x.ref95110029 == nil {
+func (x *PhysicalDeviceTransformFeedbackFeatures) Deref() {
+ if x.ref64b2a913 == nil {
return
}
- x.SType = (StructureType)(x.ref95110029.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref95110029.pNext))
- x.MaxMultiviewViewCount = (uint32)(x.ref95110029.maxMultiviewViewCount)
- x.MaxMultiviewInstanceIndex = (uint32)(x.ref95110029.maxMultiviewInstanceIndex)
+ x.SType = (StructureType)(x.ref64b2a913.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref64b2a913.pNext))
+ x.TransformFeedback = (Bool32)(x.ref64b2a913.transformFeedback)
+ x.GeometryStreams = (Bool32)(x.ref64b2a913.geometryStreams)
}
-// allocPhysicalDeviceVariablePointerFeaturesMemory allocates memory for type C.VkPhysicalDeviceVariablePointerFeatures in C.
+// allocPhysicalDeviceTransformFeedbackPropertiesMemory allocates memory for type C.VkPhysicalDeviceTransformFeedbackPropertiesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceVariablePointerFeaturesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceVariablePointerFeaturesValue))
+func allocPhysicalDeviceTransformFeedbackPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceTransformFeedbackPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceVariablePointerFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceVariablePointerFeatures{})
+const sizeOfPhysicalDeviceTransformFeedbackPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceTransformFeedbackPropertiesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceVariablePointerFeatures) Ref() *C.VkPhysicalDeviceVariablePointerFeatures {
+func (x *PhysicalDeviceTransformFeedbackProperties) Ref() *C.VkPhysicalDeviceTransformFeedbackPropertiesEXT {
if x == nil {
return nil
}
- return x.refdedd8372
+ return x.refc295a2a0
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceVariablePointerFeatures) Free() {
- if x != nil && x.allocsdedd8372 != nil {
- x.allocsdedd8372.(*cgoAllocMap).Free()
- x.refdedd8372 = nil
+func (x *PhysicalDeviceTransformFeedbackProperties) Free() {
+ if x != nil && x.allocsc295a2a0 != nil {
+ x.allocsc295a2a0.(*cgoAllocMap).Free()
+ x.refc295a2a0 = nil
}
}
-// NewPhysicalDeviceVariablePointerFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceTransformFeedbackPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceVariablePointerFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceVariablePointerFeatures {
+func NewPhysicalDeviceTransformFeedbackPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceTransformFeedbackProperties {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceVariablePointerFeatures)
- obj.refdedd8372 = (*C.VkPhysicalDeviceVariablePointerFeatures)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceTransformFeedbackProperties)
+ obj.refc295a2a0 = (*C.VkPhysicalDeviceTransformFeedbackPropertiesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceVariablePointerFeatures) PassRef() (*C.VkPhysicalDeviceVariablePointerFeatures, *cgoAllocMap) {
+func (x *PhysicalDeviceTransformFeedbackProperties) PassRef() (*C.VkPhysicalDeviceTransformFeedbackPropertiesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refdedd8372 != nil {
- return x.refdedd8372, nil
+ } else if x.refc295a2a0 != nil {
+ return x.refc295a2a0, nil
}
- memdedd8372 := allocPhysicalDeviceVariablePointerFeaturesMemory(1)
- refdedd8372 := (*C.VkPhysicalDeviceVariablePointerFeatures)(memdedd8372)
- allocsdedd8372 := new(cgoAllocMap)
- allocsdedd8372.Add(memdedd8372)
+ memc295a2a0 := allocPhysicalDeviceTransformFeedbackPropertiesMemory(1)
+ refc295a2a0 := (*C.VkPhysicalDeviceTransformFeedbackPropertiesEXT)(memc295a2a0)
+ allocsc295a2a0 := new(cgoAllocMap)
+ allocsc295a2a0.Add(memc295a2a0)
var csType_allocs *cgoAllocMap
- refdedd8372.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsdedd8372.Borrow(csType_allocs)
+ refc295a2a0.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsc295a2a0.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refdedd8372.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsdedd8372.Borrow(cpNext_allocs)
+ refc295a2a0.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsc295a2a0.Borrow(cpNext_allocs)
- var cvariablePointersStorageBuffer_allocs *cgoAllocMap
- refdedd8372.variablePointersStorageBuffer, cvariablePointersStorageBuffer_allocs = (C.VkBool32)(x.VariablePointersStorageBuffer), cgoAllocsUnknown
- allocsdedd8372.Borrow(cvariablePointersStorageBuffer_allocs)
+ var cmaxTransformFeedbackStreams_allocs *cgoAllocMap
+ refc295a2a0.maxTransformFeedbackStreams, cmaxTransformFeedbackStreams_allocs = (C.uint32_t)(x.MaxTransformFeedbackStreams), cgoAllocsUnknown
+ allocsc295a2a0.Borrow(cmaxTransformFeedbackStreams_allocs)
- var cvariablePointers_allocs *cgoAllocMap
- refdedd8372.variablePointers, cvariablePointers_allocs = (C.VkBool32)(x.VariablePointers), cgoAllocsUnknown
- allocsdedd8372.Borrow(cvariablePointers_allocs)
+ var cmaxTransformFeedbackBuffers_allocs *cgoAllocMap
+ refc295a2a0.maxTransformFeedbackBuffers, cmaxTransformFeedbackBuffers_allocs = (C.uint32_t)(x.MaxTransformFeedbackBuffers), cgoAllocsUnknown
+ allocsc295a2a0.Borrow(cmaxTransformFeedbackBuffers_allocs)
+
+ var cmaxTransformFeedbackBufferSize_allocs *cgoAllocMap
+ refc295a2a0.maxTransformFeedbackBufferSize, cmaxTransformFeedbackBufferSize_allocs = (C.VkDeviceSize)(x.MaxTransformFeedbackBufferSize), cgoAllocsUnknown
+ allocsc295a2a0.Borrow(cmaxTransformFeedbackBufferSize_allocs)
+
+ var cmaxTransformFeedbackStreamDataSize_allocs *cgoAllocMap
+ refc295a2a0.maxTransformFeedbackStreamDataSize, cmaxTransformFeedbackStreamDataSize_allocs = (C.uint32_t)(x.MaxTransformFeedbackStreamDataSize), cgoAllocsUnknown
+ allocsc295a2a0.Borrow(cmaxTransformFeedbackStreamDataSize_allocs)
+
+ var cmaxTransformFeedbackBufferDataSize_allocs *cgoAllocMap
+ refc295a2a0.maxTransformFeedbackBufferDataSize, cmaxTransformFeedbackBufferDataSize_allocs = (C.uint32_t)(x.MaxTransformFeedbackBufferDataSize), cgoAllocsUnknown
+ allocsc295a2a0.Borrow(cmaxTransformFeedbackBufferDataSize_allocs)
+
+ var cmaxTransformFeedbackBufferDataStride_allocs *cgoAllocMap
+ refc295a2a0.maxTransformFeedbackBufferDataStride, cmaxTransformFeedbackBufferDataStride_allocs = (C.uint32_t)(x.MaxTransformFeedbackBufferDataStride), cgoAllocsUnknown
+ allocsc295a2a0.Borrow(cmaxTransformFeedbackBufferDataStride_allocs)
+
+ var ctransformFeedbackQueries_allocs *cgoAllocMap
+ refc295a2a0.transformFeedbackQueries, ctransformFeedbackQueries_allocs = (C.VkBool32)(x.TransformFeedbackQueries), cgoAllocsUnknown
+ allocsc295a2a0.Borrow(ctransformFeedbackQueries_allocs)
+
+ var ctransformFeedbackStreamsLinesTriangles_allocs *cgoAllocMap
+ refc295a2a0.transformFeedbackStreamsLinesTriangles, ctransformFeedbackStreamsLinesTriangles_allocs = (C.VkBool32)(x.TransformFeedbackStreamsLinesTriangles), cgoAllocsUnknown
+ allocsc295a2a0.Borrow(ctransformFeedbackStreamsLinesTriangles_allocs)
+
+ var ctransformFeedbackRasterizationStreamSelect_allocs *cgoAllocMap
+ refc295a2a0.transformFeedbackRasterizationStreamSelect, ctransformFeedbackRasterizationStreamSelect_allocs = (C.VkBool32)(x.TransformFeedbackRasterizationStreamSelect), cgoAllocsUnknown
+ allocsc295a2a0.Borrow(ctransformFeedbackRasterizationStreamSelect_allocs)
+
+ var ctransformFeedbackDraw_allocs *cgoAllocMap
+ refc295a2a0.transformFeedbackDraw, ctransformFeedbackDraw_allocs = (C.VkBool32)(x.TransformFeedbackDraw), cgoAllocsUnknown
+ allocsc295a2a0.Borrow(ctransformFeedbackDraw_allocs)
- x.refdedd8372 = refdedd8372
- x.allocsdedd8372 = allocsdedd8372
- return refdedd8372, allocsdedd8372
+ x.refc295a2a0 = refc295a2a0
+ x.allocsc295a2a0 = allocsc295a2a0
+ return refc295a2a0, allocsc295a2a0
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceVariablePointerFeatures) PassValue() (C.VkPhysicalDeviceVariablePointerFeatures, *cgoAllocMap) {
- if x.refdedd8372 != nil {
- return *x.refdedd8372, nil
+func (x PhysicalDeviceTransformFeedbackProperties) PassValue() (C.VkPhysicalDeviceTransformFeedbackPropertiesEXT, *cgoAllocMap) {
+ if x.refc295a2a0 != nil {
+ return *x.refc295a2a0, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -16994,91 +43933,103 @@ func (x PhysicalDeviceVariablePointerFeatures) PassValue() (C.VkPhysicalDeviceVa
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceVariablePointerFeatures) Deref() {
- if x.refdedd8372 == nil {
+func (x *PhysicalDeviceTransformFeedbackProperties) Deref() {
+ if x.refc295a2a0 == nil {
return
}
- x.SType = (StructureType)(x.refdedd8372.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refdedd8372.pNext))
- x.VariablePointersStorageBuffer = (Bool32)(x.refdedd8372.variablePointersStorageBuffer)
- x.VariablePointers = (Bool32)(x.refdedd8372.variablePointers)
+ x.SType = (StructureType)(x.refc295a2a0.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc295a2a0.pNext))
+ x.MaxTransformFeedbackStreams = (uint32)(x.refc295a2a0.maxTransformFeedbackStreams)
+ x.MaxTransformFeedbackBuffers = (uint32)(x.refc295a2a0.maxTransformFeedbackBuffers)
+ x.MaxTransformFeedbackBufferSize = (DeviceSize)(x.refc295a2a0.maxTransformFeedbackBufferSize)
+ x.MaxTransformFeedbackStreamDataSize = (uint32)(x.refc295a2a0.maxTransformFeedbackStreamDataSize)
+ x.MaxTransformFeedbackBufferDataSize = (uint32)(x.refc295a2a0.maxTransformFeedbackBufferDataSize)
+ x.MaxTransformFeedbackBufferDataStride = (uint32)(x.refc295a2a0.maxTransformFeedbackBufferDataStride)
+ x.TransformFeedbackQueries = (Bool32)(x.refc295a2a0.transformFeedbackQueries)
+ x.TransformFeedbackStreamsLinesTriangles = (Bool32)(x.refc295a2a0.transformFeedbackStreamsLinesTriangles)
+ x.TransformFeedbackRasterizationStreamSelect = (Bool32)(x.refc295a2a0.transformFeedbackRasterizationStreamSelect)
+ x.TransformFeedbackDraw = (Bool32)(x.refc295a2a0.transformFeedbackDraw)
}
-// allocPhysicalDeviceProtectedMemoryFeaturesMemory allocates memory for type C.VkPhysicalDeviceProtectedMemoryFeatures in C.
+// allocPipelineRasterizationStateStreamCreateInfoMemory allocates memory for type C.VkPipelineRasterizationStateStreamCreateInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceProtectedMemoryFeaturesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceProtectedMemoryFeaturesValue))
+func allocPipelineRasterizationStateStreamCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineRasterizationStateStreamCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceProtectedMemoryFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceProtectedMemoryFeatures{})
+const sizeOfPipelineRasterizationStateStreamCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineRasterizationStateStreamCreateInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceProtectedMemoryFeatures) Ref() *C.VkPhysicalDeviceProtectedMemoryFeatures {
+func (x *PipelineRasterizationStateStreamCreateInfo) Ref() *C.VkPipelineRasterizationStateStreamCreateInfoEXT {
if x == nil {
return nil
}
- return x.refac441ed1
+ return x.refed6e1fb9
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceProtectedMemoryFeatures) Free() {
- if x != nil && x.allocsac441ed1 != nil {
- x.allocsac441ed1.(*cgoAllocMap).Free()
- x.refac441ed1 = nil
+func (x *PipelineRasterizationStateStreamCreateInfo) Free() {
+ if x != nil && x.allocsed6e1fb9 != nil {
+ x.allocsed6e1fb9.(*cgoAllocMap).Free()
+ x.refed6e1fb9 = nil
}
}
-// NewPhysicalDeviceProtectedMemoryFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineRasterizationStateStreamCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceProtectedMemoryFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceProtectedMemoryFeatures {
+func NewPipelineRasterizationStateStreamCreateInfoRef(ref unsafe.Pointer) *PipelineRasterizationStateStreamCreateInfo {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceProtectedMemoryFeatures)
- obj.refac441ed1 = (*C.VkPhysicalDeviceProtectedMemoryFeatures)(unsafe.Pointer(ref))
+ obj := new(PipelineRasterizationStateStreamCreateInfo)
+ obj.refed6e1fb9 = (*C.VkPipelineRasterizationStateStreamCreateInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceProtectedMemoryFeatures) PassRef() (*C.VkPhysicalDeviceProtectedMemoryFeatures, *cgoAllocMap) {
+func (x *PipelineRasterizationStateStreamCreateInfo) PassRef() (*C.VkPipelineRasterizationStateStreamCreateInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refac441ed1 != nil {
- return x.refac441ed1, nil
+ } else if x.refed6e1fb9 != nil {
+ return x.refed6e1fb9, nil
}
- memac441ed1 := allocPhysicalDeviceProtectedMemoryFeaturesMemory(1)
- refac441ed1 := (*C.VkPhysicalDeviceProtectedMemoryFeatures)(memac441ed1)
- allocsac441ed1 := new(cgoAllocMap)
- allocsac441ed1.Add(memac441ed1)
+ memed6e1fb9 := allocPipelineRasterizationStateStreamCreateInfoMemory(1)
+ refed6e1fb9 := (*C.VkPipelineRasterizationStateStreamCreateInfoEXT)(memed6e1fb9)
+ allocsed6e1fb9 := new(cgoAllocMap)
+ allocsed6e1fb9.Add(memed6e1fb9)
var csType_allocs *cgoAllocMap
- refac441ed1.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsac441ed1.Borrow(csType_allocs)
+ refed6e1fb9.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsed6e1fb9.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refac441ed1.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsac441ed1.Borrow(cpNext_allocs)
+ refed6e1fb9.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsed6e1fb9.Borrow(cpNext_allocs)
- var cprotectedMemory_allocs *cgoAllocMap
- refac441ed1.protectedMemory, cprotectedMemory_allocs = (C.VkBool32)(x.ProtectedMemory), cgoAllocsUnknown
- allocsac441ed1.Borrow(cprotectedMemory_allocs)
+ var cflags_allocs *cgoAllocMap
+ refed6e1fb9.flags, cflags_allocs = (C.VkPipelineRasterizationStateStreamCreateFlagsEXT)(x.Flags), cgoAllocsUnknown
+ allocsed6e1fb9.Borrow(cflags_allocs)
- x.refac441ed1 = refac441ed1
- x.allocsac441ed1 = allocsac441ed1
- return refac441ed1, allocsac441ed1
+ var crasterizationStream_allocs *cgoAllocMap
+ refed6e1fb9.rasterizationStream, crasterizationStream_allocs = (C.uint32_t)(x.RasterizationStream), cgoAllocsUnknown
+ allocsed6e1fb9.Borrow(crasterizationStream_allocs)
+
+ x.refed6e1fb9 = refed6e1fb9
+ x.allocsed6e1fb9 = allocsed6e1fb9
+ return refed6e1fb9, allocsed6e1fb9
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceProtectedMemoryFeatures) PassValue() (C.VkPhysicalDeviceProtectedMemoryFeatures, *cgoAllocMap) {
- if x.refac441ed1 != nil {
- return *x.refac441ed1, nil
+func (x PipelineRasterizationStateStreamCreateInfo) PassValue() (C.VkPipelineRasterizationStateStreamCreateInfoEXT, *cgoAllocMap) {
+ if x.refed6e1fb9 != nil {
+ return *x.refed6e1fb9, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -17086,90 +44037,99 @@ func (x PhysicalDeviceProtectedMemoryFeatures) PassValue() (C.VkPhysicalDevicePr
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceProtectedMemoryFeatures) Deref() {
- if x.refac441ed1 == nil {
+func (x *PipelineRasterizationStateStreamCreateInfo) Deref() {
+ if x.refed6e1fb9 == nil {
return
}
- x.SType = (StructureType)(x.refac441ed1.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refac441ed1.pNext))
- x.ProtectedMemory = (Bool32)(x.refac441ed1.protectedMemory)
+ x.SType = (StructureType)(x.refed6e1fb9.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refed6e1fb9.pNext))
+ x.Flags = (PipelineRasterizationStateStreamCreateFlags)(x.refed6e1fb9.flags)
+ x.RasterizationStream = (uint32)(x.refed6e1fb9.rasterizationStream)
}
-// allocPhysicalDeviceProtectedMemoryPropertiesMemory allocates memory for type C.VkPhysicalDeviceProtectedMemoryProperties in C.
+// allocImageViewHandleInfoNVXMemory allocates memory for type C.VkImageViewHandleInfoNVX in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceProtectedMemoryPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceProtectedMemoryPropertiesValue))
+func allocImageViewHandleInfoNVXMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageViewHandleInfoNVXValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceProtectedMemoryPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceProtectedMemoryProperties{})
+const sizeOfImageViewHandleInfoNVXValue = unsafe.Sizeof([1]C.VkImageViewHandleInfoNVX{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceProtectedMemoryProperties) Ref() *C.VkPhysicalDeviceProtectedMemoryProperties {
+func (x *ImageViewHandleInfoNVX) Ref() *C.VkImageViewHandleInfoNVX {
if x == nil {
return nil
}
- return x.refb653413
+ return x.refc283b384
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceProtectedMemoryProperties) Free() {
- if x != nil && x.allocsb653413 != nil {
- x.allocsb653413.(*cgoAllocMap).Free()
- x.refb653413 = nil
+func (x *ImageViewHandleInfoNVX) Free() {
+ if x != nil && x.allocsc283b384 != nil {
+ x.allocsc283b384.(*cgoAllocMap).Free()
+ x.refc283b384 = nil
}
}
-// NewPhysicalDeviceProtectedMemoryPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewImageViewHandleInfoNVXRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceProtectedMemoryPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceProtectedMemoryProperties {
+func NewImageViewHandleInfoNVXRef(ref unsafe.Pointer) *ImageViewHandleInfoNVX {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceProtectedMemoryProperties)
- obj.refb653413 = (*C.VkPhysicalDeviceProtectedMemoryProperties)(unsafe.Pointer(ref))
+ obj := new(ImageViewHandleInfoNVX)
+ obj.refc283b384 = (*C.VkImageViewHandleInfoNVX)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceProtectedMemoryProperties) PassRef() (*C.VkPhysicalDeviceProtectedMemoryProperties, *cgoAllocMap) {
+func (x *ImageViewHandleInfoNVX) PassRef() (*C.VkImageViewHandleInfoNVX, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refb653413 != nil {
- return x.refb653413, nil
+ } else if x.refc283b384 != nil {
+ return x.refc283b384, nil
}
- memb653413 := allocPhysicalDeviceProtectedMemoryPropertiesMemory(1)
- refb653413 := (*C.VkPhysicalDeviceProtectedMemoryProperties)(memb653413)
- allocsb653413 := new(cgoAllocMap)
- allocsb653413.Add(memb653413)
+ memc283b384 := allocImageViewHandleInfoNVXMemory(1)
+ refc283b384 := (*C.VkImageViewHandleInfoNVX)(memc283b384)
+ allocsc283b384 := new(cgoAllocMap)
+ allocsc283b384.Add(memc283b384)
var csType_allocs *cgoAllocMap
- refb653413.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsb653413.Borrow(csType_allocs)
+ refc283b384.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsc283b384.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refb653413.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsb653413.Borrow(cpNext_allocs)
+ refc283b384.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsc283b384.Borrow(cpNext_allocs)
- var cprotectedNoFault_allocs *cgoAllocMap
- refb653413.protectedNoFault, cprotectedNoFault_allocs = (C.VkBool32)(x.ProtectedNoFault), cgoAllocsUnknown
- allocsb653413.Borrow(cprotectedNoFault_allocs)
+ var cimageView_allocs *cgoAllocMap
+ refc283b384.imageView, cimageView_allocs = *(*C.VkImageView)(unsafe.Pointer(&x.ImageView)), cgoAllocsUnknown
+ allocsc283b384.Borrow(cimageView_allocs)
- x.refb653413 = refb653413
- x.allocsb653413 = allocsb653413
- return refb653413, allocsb653413
+ var cdescriptorType_allocs *cgoAllocMap
+ refc283b384.descriptorType, cdescriptorType_allocs = (C.VkDescriptorType)(x.DescriptorType), cgoAllocsUnknown
+ allocsc283b384.Borrow(cdescriptorType_allocs)
+
+ var csampler_allocs *cgoAllocMap
+ refc283b384.sampler, csampler_allocs = *(*C.VkSampler)(unsafe.Pointer(&x.Sampler)), cgoAllocsUnknown
+ allocsc283b384.Borrow(csampler_allocs)
+
+ x.refc283b384 = refc283b384
+ x.allocsc283b384 = allocsc283b384
+ return refc283b384, allocsc283b384
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceProtectedMemoryProperties) PassValue() (C.VkPhysicalDeviceProtectedMemoryProperties, *cgoAllocMap) {
- if x.refb653413 != nil {
- return *x.refb653413, nil
+func (x ImageViewHandleInfoNVX) PassValue() (C.VkImageViewHandleInfoNVX, *cgoAllocMap) {
+ if x.refc283b384 != nil {
+ return *x.refc283b384, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -17177,98 +44137,96 @@ func (x PhysicalDeviceProtectedMemoryProperties) PassValue() (C.VkPhysicalDevice
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceProtectedMemoryProperties) Deref() {
- if x.refb653413 == nil {
+func (x *ImageViewHandleInfoNVX) Deref() {
+ if x.refc283b384 == nil {
return
}
- x.SType = (StructureType)(x.refb653413.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb653413.pNext))
- x.ProtectedNoFault = (Bool32)(x.refb653413.protectedNoFault)
+ x.SType = (StructureType)(x.refc283b384.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc283b384.pNext))
+ x.ImageView = *(*ImageView)(unsafe.Pointer(&x.refc283b384.imageView))
+ x.DescriptorType = (DescriptorType)(x.refc283b384.descriptorType)
+ x.Sampler = *(*Sampler)(unsafe.Pointer(&x.refc283b384.sampler))
}
-// allocDeviceQueueInfo2Memory allocates memory for type C.VkDeviceQueueInfo2 in C.
+// allocImageViewAddressPropertiesNVXMemory allocates memory for type C.VkImageViewAddressPropertiesNVX in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDeviceQueueInfo2Memory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceQueueInfo2Value))
+func allocImageViewAddressPropertiesNVXMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageViewAddressPropertiesNVXValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDeviceQueueInfo2Value = unsafe.Sizeof([1]C.VkDeviceQueueInfo2{})
+const sizeOfImageViewAddressPropertiesNVXValue = unsafe.Sizeof([1]C.VkImageViewAddressPropertiesNVX{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DeviceQueueInfo2) Ref() *C.VkDeviceQueueInfo2 {
+func (x *ImageViewAddressPropertiesNVX) Ref() *C.VkImageViewAddressPropertiesNVX {
if x == nil {
return nil
}
- return x.ref2f267e52
+ return x.refe6dd1556
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DeviceQueueInfo2) Free() {
- if x != nil && x.allocs2f267e52 != nil {
- x.allocs2f267e52.(*cgoAllocMap).Free()
- x.ref2f267e52 = nil
+func (x *ImageViewAddressPropertiesNVX) Free() {
+ if x != nil && x.allocse6dd1556 != nil {
+ x.allocse6dd1556.(*cgoAllocMap).Free()
+ x.refe6dd1556 = nil
}
}
-// NewDeviceQueueInfo2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// NewImageViewAddressPropertiesNVXRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDeviceQueueInfo2Ref(ref unsafe.Pointer) *DeviceQueueInfo2 {
+func NewImageViewAddressPropertiesNVXRef(ref unsafe.Pointer) *ImageViewAddressPropertiesNVX {
if ref == nil {
return nil
}
- obj := new(DeviceQueueInfo2)
- obj.ref2f267e52 = (*C.VkDeviceQueueInfo2)(unsafe.Pointer(ref))
+ obj := new(ImageViewAddressPropertiesNVX)
+ obj.refe6dd1556 = (*C.VkImageViewAddressPropertiesNVX)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DeviceQueueInfo2) PassRef() (*C.VkDeviceQueueInfo2, *cgoAllocMap) {
+func (x *ImageViewAddressPropertiesNVX) PassRef() (*C.VkImageViewAddressPropertiesNVX, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref2f267e52 != nil {
- return x.ref2f267e52, nil
+ } else if x.refe6dd1556 != nil {
+ return x.refe6dd1556, nil
}
- mem2f267e52 := allocDeviceQueueInfo2Memory(1)
- ref2f267e52 := (*C.VkDeviceQueueInfo2)(mem2f267e52)
- allocs2f267e52 := new(cgoAllocMap)
- allocs2f267e52.Add(mem2f267e52)
+ meme6dd1556 := allocImageViewAddressPropertiesNVXMemory(1)
+ refe6dd1556 := (*C.VkImageViewAddressPropertiesNVX)(meme6dd1556)
+ allocse6dd1556 := new(cgoAllocMap)
+ allocse6dd1556.Add(meme6dd1556)
var csType_allocs *cgoAllocMap
- ref2f267e52.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs2f267e52.Borrow(csType_allocs)
+ refe6dd1556.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocse6dd1556.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref2f267e52.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs2f267e52.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- ref2f267e52.flags, cflags_allocs = (C.VkDeviceQueueCreateFlags)(x.Flags), cgoAllocsUnknown
- allocs2f267e52.Borrow(cflags_allocs)
+ refe6dd1556.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocse6dd1556.Borrow(cpNext_allocs)
- var cqueueFamilyIndex_allocs *cgoAllocMap
- ref2f267e52.queueFamilyIndex, cqueueFamilyIndex_allocs = (C.uint32_t)(x.QueueFamilyIndex), cgoAllocsUnknown
- allocs2f267e52.Borrow(cqueueFamilyIndex_allocs)
+ var cdeviceAddress_allocs *cgoAllocMap
+ refe6dd1556.deviceAddress, cdeviceAddress_allocs = (C.VkDeviceAddress)(x.DeviceAddress), cgoAllocsUnknown
+ allocse6dd1556.Borrow(cdeviceAddress_allocs)
- var cqueueIndex_allocs *cgoAllocMap
- ref2f267e52.queueIndex, cqueueIndex_allocs = (C.uint32_t)(x.QueueIndex), cgoAllocsUnknown
- allocs2f267e52.Borrow(cqueueIndex_allocs)
+ var csize_allocs *cgoAllocMap
+ refe6dd1556.size, csize_allocs = (C.VkDeviceSize)(x.Size), cgoAllocsUnknown
+ allocse6dd1556.Borrow(csize_allocs)
- x.ref2f267e52 = ref2f267e52
- x.allocs2f267e52 = allocs2f267e52
- return ref2f267e52, allocs2f267e52
+ x.refe6dd1556 = refe6dd1556
+ x.allocse6dd1556 = allocse6dd1556
+ return refe6dd1556, allocse6dd1556
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DeviceQueueInfo2) PassValue() (C.VkDeviceQueueInfo2, *cgoAllocMap) {
- if x.ref2f267e52 != nil {
- return *x.ref2f267e52, nil
+func (x ImageViewAddressPropertiesNVX) PassValue() (C.VkImageViewAddressPropertiesNVX, *cgoAllocMap) {
+ if x.refe6dd1556 != nil {
+ return *x.refe6dd1556, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -17276,92 +44234,91 @@ func (x DeviceQueueInfo2) PassValue() (C.VkDeviceQueueInfo2, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DeviceQueueInfo2) Deref() {
- if x.ref2f267e52 == nil {
+func (x *ImageViewAddressPropertiesNVX) Deref() {
+ if x.refe6dd1556 == nil {
return
}
- x.SType = (StructureType)(x.ref2f267e52.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref2f267e52.pNext))
- x.Flags = (DeviceQueueCreateFlags)(x.ref2f267e52.flags)
- x.QueueFamilyIndex = (uint32)(x.ref2f267e52.queueFamilyIndex)
- x.QueueIndex = (uint32)(x.ref2f267e52.queueIndex)
+ x.SType = (StructureType)(x.refe6dd1556.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refe6dd1556.pNext))
+ x.DeviceAddress = (DeviceAddress)(x.refe6dd1556.deviceAddress)
+ x.Size = (DeviceSize)(x.refe6dd1556.size)
}
-// allocProtectedSubmitInfoMemory allocates memory for type C.VkProtectedSubmitInfo in C.
+// allocTextureLODGatherFormatPropertiesAMDMemory allocates memory for type C.VkTextureLODGatherFormatPropertiesAMD in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocProtectedSubmitInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfProtectedSubmitInfoValue))
+func allocTextureLODGatherFormatPropertiesAMDMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfTextureLODGatherFormatPropertiesAMDValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfProtectedSubmitInfoValue = unsafe.Sizeof([1]C.VkProtectedSubmitInfo{})
+const sizeOfTextureLODGatherFormatPropertiesAMDValue = unsafe.Sizeof([1]C.VkTextureLODGatherFormatPropertiesAMD{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ProtectedSubmitInfo) Ref() *C.VkProtectedSubmitInfo {
+func (x *TextureLODGatherFormatPropertiesAMD) Ref() *C.VkTextureLODGatherFormatPropertiesAMD {
if x == nil {
return nil
}
- return x.ref6bd69669
+ return x.ref519ba3a9
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ProtectedSubmitInfo) Free() {
- if x != nil && x.allocs6bd69669 != nil {
- x.allocs6bd69669.(*cgoAllocMap).Free()
- x.ref6bd69669 = nil
+func (x *TextureLODGatherFormatPropertiesAMD) Free() {
+ if x != nil && x.allocs519ba3a9 != nil {
+ x.allocs519ba3a9.(*cgoAllocMap).Free()
+ x.ref519ba3a9 = nil
}
}
-// NewProtectedSubmitInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewTextureLODGatherFormatPropertiesAMDRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewProtectedSubmitInfoRef(ref unsafe.Pointer) *ProtectedSubmitInfo {
+func NewTextureLODGatherFormatPropertiesAMDRef(ref unsafe.Pointer) *TextureLODGatherFormatPropertiesAMD {
if ref == nil {
return nil
}
- obj := new(ProtectedSubmitInfo)
- obj.ref6bd69669 = (*C.VkProtectedSubmitInfo)(unsafe.Pointer(ref))
+ obj := new(TextureLODGatherFormatPropertiesAMD)
+ obj.ref519ba3a9 = (*C.VkTextureLODGatherFormatPropertiesAMD)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ProtectedSubmitInfo) PassRef() (*C.VkProtectedSubmitInfo, *cgoAllocMap) {
+func (x *TextureLODGatherFormatPropertiesAMD) PassRef() (*C.VkTextureLODGatherFormatPropertiesAMD, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref6bd69669 != nil {
- return x.ref6bd69669, nil
+ } else if x.ref519ba3a9 != nil {
+ return x.ref519ba3a9, nil
}
- mem6bd69669 := allocProtectedSubmitInfoMemory(1)
- ref6bd69669 := (*C.VkProtectedSubmitInfo)(mem6bd69669)
- allocs6bd69669 := new(cgoAllocMap)
- allocs6bd69669.Add(mem6bd69669)
+ mem519ba3a9 := allocTextureLODGatherFormatPropertiesAMDMemory(1)
+ ref519ba3a9 := (*C.VkTextureLODGatherFormatPropertiesAMD)(mem519ba3a9)
+ allocs519ba3a9 := new(cgoAllocMap)
+ allocs519ba3a9.Add(mem519ba3a9)
var csType_allocs *cgoAllocMap
- ref6bd69669.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs6bd69669.Borrow(csType_allocs)
+ ref519ba3a9.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs519ba3a9.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref6bd69669.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs6bd69669.Borrow(cpNext_allocs)
+ ref519ba3a9.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs519ba3a9.Borrow(cpNext_allocs)
- var cprotectedSubmit_allocs *cgoAllocMap
- ref6bd69669.protectedSubmit, cprotectedSubmit_allocs = (C.VkBool32)(x.ProtectedSubmit), cgoAllocsUnknown
- allocs6bd69669.Borrow(cprotectedSubmit_allocs)
+ var csupportsTextureGatherLODBiasAMD_allocs *cgoAllocMap
+ ref519ba3a9.supportsTextureGatherLODBiasAMD, csupportsTextureGatherLODBiasAMD_allocs = (C.VkBool32)(x.SupportsTextureGatherLODBiasAMD), cgoAllocsUnknown
+ allocs519ba3a9.Borrow(csupportsTextureGatherLODBiasAMD_allocs)
- x.ref6bd69669 = ref6bd69669
- x.allocs6bd69669 = allocs6bd69669
- return ref6bd69669, allocs6bd69669
+ x.ref519ba3a9 = ref519ba3a9
+ x.allocs519ba3a9 = allocs519ba3a9
+ return ref519ba3a9, allocs519ba3a9
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ProtectedSubmitInfo) PassValue() (C.VkProtectedSubmitInfo, *cgoAllocMap) {
- if x.ref6bd69669 != nil {
- return *x.ref6bd69669, nil
+func (x TextureLODGatherFormatPropertiesAMD) PassValue() (C.VkTextureLODGatherFormatPropertiesAMD, *cgoAllocMap) {
+ if x.ref519ba3a9 != nil {
+ return *x.ref519ba3a9, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -17369,118 +44326,98 @@ func (x ProtectedSubmitInfo) PassValue() (C.VkProtectedSubmitInfo, *cgoAllocMap)
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ProtectedSubmitInfo) Deref() {
- if x.ref6bd69669 == nil {
+func (x *TextureLODGatherFormatPropertiesAMD) Deref() {
+ if x.ref519ba3a9 == nil {
return
}
- x.SType = (StructureType)(x.ref6bd69669.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref6bd69669.pNext))
- x.ProtectedSubmit = (Bool32)(x.ref6bd69669.protectedSubmit)
+ x.SType = (StructureType)(x.ref519ba3a9.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref519ba3a9.pNext))
+ x.SupportsTextureGatherLODBiasAMD = (Bool32)(x.ref519ba3a9.supportsTextureGatherLODBiasAMD)
}
-// allocSamplerYcbcrConversionCreateInfoMemory allocates memory for type C.VkSamplerYcbcrConversionCreateInfo in C.
+// allocShaderResourceUsageAMDMemory allocates memory for type C.VkShaderResourceUsageAMD in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSamplerYcbcrConversionCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSamplerYcbcrConversionCreateInfoValue))
+func allocShaderResourceUsageAMDMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfShaderResourceUsageAMDValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSamplerYcbcrConversionCreateInfoValue = unsafe.Sizeof([1]C.VkSamplerYcbcrConversionCreateInfo{})
+const sizeOfShaderResourceUsageAMDValue = unsafe.Sizeof([1]C.VkShaderResourceUsageAMD{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SamplerYcbcrConversionCreateInfo) Ref() *C.VkSamplerYcbcrConversionCreateInfo {
+func (x *ShaderResourceUsageAMD) Ref() *C.VkShaderResourceUsageAMD {
if x == nil {
return nil
}
- return x.ref9875bff7
+ return x.ref8a688131
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SamplerYcbcrConversionCreateInfo) Free() {
- if x != nil && x.allocs9875bff7 != nil {
- x.allocs9875bff7.(*cgoAllocMap).Free()
- x.ref9875bff7 = nil
+func (x *ShaderResourceUsageAMD) Free() {
+ if x != nil && x.allocs8a688131 != nil {
+ x.allocs8a688131.(*cgoAllocMap).Free()
+ x.ref8a688131 = nil
}
}
-// NewSamplerYcbcrConversionCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewShaderResourceUsageAMDRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSamplerYcbcrConversionCreateInfoRef(ref unsafe.Pointer) *SamplerYcbcrConversionCreateInfo {
+func NewShaderResourceUsageAMDRef(ref unsafe.Pointer) *ShaderResourceUsageAMD {
if ref == nil {
return nil
}
- obj := new(SamplerYcbcrConversionCreateInfo)
- obj.ref9875bff7 = (*C.VkSamplerYcbcrConversionCreateInfo)(unsafe.Pointer(ref))
+ obj := new(ShaderResourceUsageAMD)
+ obj.ref8a688131 = (*C.VkShaderResourceUsageAMD)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SamplerYcbcrConversionCreateInfo) PassRef() (*C.VkSamplerYcbcrConversionCreateInfo, *cgoAllocMap) {
+func (x *ShaderResourceUsageAMD) PassRef() (*C.VkShaderResourceUsageAMD, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref9875bff7 != nil {
- return x.ref9875bff7, nil
+ } else if x.ref8a688131 != nil {
+ return x.ref8a688131, nil
}
- mem9875bff7 := allocSamplerYcbcrConversionCreateInfoMemory(1)
- ref9875bff7 := (*C.VkSamplerYcbcrConversionCreateInfo)(mem9875bff7)
- allocs9875bff7 := new(cgoAllocMap)
- allocs9875bff7.Add(mem9875bff7)
-
- var csType_allocs *cgoAllocMap
- ref9875bff7.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs9875bff7.Borrow(csType_allocs)
-
- var cpNext_allocs *cgoAllocMap
- ref9875bff7.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs9875bff7.Borrow(cpNext_allocs)
-
- var cformat_allocs *cgoAllocMap
- ref9875bff7.format, cformat_allocs = (C.VkFormat)(x.Format), cgoAllocsUnknown
- allocs9875bff7.Borrow(cformat_allocs)
-
- var cycbcrModel_allocs *cgoAllocMap
- ref9875bff7.ycbcrModel, cycbcrModel_allocs = (C.VkSamplerYcbcrModelConversion)(x.YcbcrModel), cgoAllocsUnknown
- allocs9875bff7.Borrow(cycbcrModel_allocs)
-
- var cycbcrRange_allocs *cgoAllocMap
- ref9875bff7.ycbcrRange, cycbcrRange_allocs = (C.VkSamplerYcbcrRange)(x.YcbcrRange), cgoAllocsUnknown
- allocs9875bff7.Borrow(cycbcrRange_allocs)
+ mem8a688131 := allocShaderResourceUsageAMDMemory(1)
+ ref8a688131 := (*C.VkShaderResourceUsageAMD)(mem8a688131)
+ allocs8a688131 := new(cgoAllocMap)
+ allocs8a688131.Add(mem8a688131)
- var ccomponents_allocs *cgoAllocMap
- ref9875bff7.components, ccomponents_allocs = x.Components.PassValue()
- allocs9875bff7.Borrow(ccomponents_allocs)
+ var cnumUsedVgprs_allocs *cgoAllocMap
+ ref8a688131.numUsedVgprs, cnumUsedVgprs_allocs = (C.uint32_t)(x.NumUsedVgprs), cgoAllocsUnknown
+ allocs8a688131.Borrow(cnumUsedVgprs_allocs)
- var cxChromaOffset_allocs *cgoAllocMap
- ref9875bff7.xChromaOffset, cxChromaOffset_allocs = (C.VkChromaLocation)(x.XChromaOffset), cgoAllocsUnknown
- allocs9875bff7.Borrow(cxChromaOffset_allocs)
+ var cnumUsedSgprs_allocs *cgoAllocMap
+ ref8a688131.numUsedSgprs, cnumUsedSgprs_allocs = (C.uint32_t)(x.NumUsedSgprs), cgoAllocsUnknown
+ allocs8a688131.Borrow(cnumUsedSgprs_allocs)
- var cyChromaOffset_allocs *cgoAllocMap
- ref9875bff7.yChromaOffset, cyChromaOffset_allocs = (C.VkChromaLocation)(x.YChromaOffset), cgoAllocsUnknown
- allocs9875bff7.Borrow(cyChromaOffset_allocs)
+ var cldsSizePerLocalWorkGroup_allocs *cgoAllocMap
+ ref8a688131.ldsSizePerLocalWorkGroup, cldsSizePerLocalWorkGroup_allocs = (C.uint32_t)(x.LdsSizePerLocalWorkGroup), cgoAllocsUnknown
+ allocs8a688131.Borrow(cldsSizePerLocalWorkGroup_allocs)
- var cchromaFilter_allocs *cgoAllocMap
- ref9875bff7.chromaFilter, cchromaFilter_allocs = (C.VkFilter)(x.ChromaFilter), cgoAllocsUnknown
- allocs9875bff7.Borrow(cchromaFilter_allocs)
+ var cldsUsageSizeInBytes_allocs *cgoAllocMap
+ ref8a688131.ldsUsageSizeInBytes, cldsUsageSizeInBytes_allocs = (C.size_t)(x.LdsUsageSizeInBytes), cgoAllocsUnknown
+ allocs8a688131.Borrow(cldsUsageSizeInBytes_allocs)
- var cforceExplicitReconstruction_allocs *cgoAllocMap
- ref9875bff7.forceExplicitReconstruction, cforceExplicitReconstruction_allocs = (C.VkBool32)(x.ForceExplicitReconstruction), cgoAllocsUnknown
- allocs9875bff7.Borrow(cforceExplicitReconstruction_allocs)
+ var cscratchMemUsageInBytes_allocs *cgoAllocMap
+ ref8a688131.scratchMemUsageInBytes, cscratchMemUsageInBytes_allocs = (C.size_t)(x.ScratchMemUsageInBytes), cgoAllocsUnknown
+ allocs8a688131.Borrow(cscratchMemUsageInBytes_allocs)
- x.ref9875bff7 = ref9875bff7
- x.allocs9875bff7 = allocs9875bff7
- return ref9875bff7, allocs9875bff7
+ x.ref8a688131 = ref8a688131
+ x.allocs8a688131 = allocs8a688131
+ return ref8a688131, allocs8a688131
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SamplerYcbcrConversionCreateInfo) PassValue() (C.VkSamplerYcbcrConversionCreateInfo, *cgoAllocMap) {
- if x.ref9875bff7 != nil {
- return *x.ref9875bff7, nil
+func (x ShaderResourceUsageAMD) PassValue() (C.VkShaderResourceUsageAMD, *cgoAllocMap) {
+ if x.ref8a688131 != nil {
+ return *x.ref8a688131, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -17488,97 +44425,108 @@ func (x SamplerYcbcrConversionCreateInfo) PassValue() (C.VkSamplerYcbcrConversio
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SamplerYcbcrConversionCreateInfo) Deref() {
- if x.ref9875bff7 == nil {
+func (x *ShaderResourceUsageAMD) Deref() {
+ if x.ref8a688131 == nil {
return
}
- x.SType = (StructureType)(x.ref9875bff7.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref9875bff7.pNext))
- x.Format = (Format)(x.ref9875bff7.format)
- x.YcbcrModel = (SamplerYcbcrModelConversion)(x.ref9875bff7.ycbcrModel)
- x.YcbcrRange = (SamplerYcbcrRange)(x.ref9875bff7.ycbcrRange)
- x.Components = *NewComponentMappingRef(unsafe.Pointer(&x.ref9875bff7.components))
- x.XChromaOffset = (ChromaLocation)(x.ref9875bff7.xChromaOffset)
- x.YChromaOffset = (ChromaLocation)(x.ref9875bff7.yChromaOffset)
- x.ChromaFilter = (Filter)(x.ref9875bff7.chromaFilter)
- x.ForceExplicitReconstruction = (Bool32)(x.ref9875bff7.forceExplicitReconstruction)
+ x.NumUsedVgprs = (uint32)(x.ref8a688131.numUsedVgprs)
+ x.NumUsedSgprs = (uint32)(x.ref8a688131.numUsedSgprs)
+ x.LdsSizePerLocalWorkGroup = (uint32)(x.ref8a688131.ldsSizePerLocalWorkGroup)
+ x.LdsUsageSizeInBytes = (uint64)(x.ref8a688131.ldsUsageSizeInBytes)
+ x.ScratchMemUsageInBytes = (uint64)(x.ref8a688131.scratchMemUsageInBytes)
}
-// allocSamplerYcbcrConversionInfoMemory allocates memory for type C.VkSamplerYcbcrConversionInfo in C.
+// allocShaderStatisticsInfoAMDMemory allocates memory for type C.VkShaderStatisticsInfoAMD in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSamplerYcbcrConversionInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSamplerYcbcrConversionInfoValue))
+func allocShaderStatisticsInfoAMDMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfShaderStatisticsInfoAMDValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSamplerYcbcrConversionInfoValue = unsafe.Sizeof([1]C.VkSamplerYcbcrConversionInfo{})
+const sizeOfShaderStatisticsInfoAMDValue = unsafe.Sizeof([1]C.VkShaderStatisticsInfoAMD{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SamplerYcbcrConversionInfo) Ref() *C.VkSamplerYcbcrConversionInfo {
+func (x *ShaderStatisticsInfoAMD) Ref() *C.VkShaderStatisticsInfoAMD {
if x == nil {
return nil
}
- return x.ref11ff5547
+ return x.ref896a52bf
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SamplerYcbcrConversionInfo) Free() {
- if x != nil && x.allocs11ff5547 != nil {
- x.allocs11ff5547.(*cgoAllocMap).Free()
- x.ref11ff5547 = nil
+func (x *ShaderStatisticsInfoAMD) Free() {
+ if x != nil && x.allocs896a52bf != nil {
+ x.allocs896a52bf.(*cgoAllocMap).Free()
+ x.ref896a52bf = nil
}
}
-// NewSamplerYcbcrConversionInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewShaderStatisticsInfoAMDRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSamplerYcbcrConversionInfoRef(ref unsafe.Pointer) *SamplerYcbcrConversionInfo {
+func NewShaderStatisticsInfoAMDRef(ref unsafe.Pointer) *ShaderStatisticsInfoAMD {
if ref == nil {
return nil
}
- obj := new(SamplerYcbcrConversionInfo)
- obj.ref11ff5547 = (*C.VkSamplerYcbcrConversionInfo)(unsafe.Pointer(ref))
+ obj := new(ShaderStatisticsInfoAMD)
+ obj.ref896a52bf = (*C.VkShaderStatisticsInfoAMD)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SamplerYcbcrConversionInfo) PassRef() (*C.VkSamplerYcbcrConversionInfo, *cgoAllocMap) {
+func (x *ShaderStatisticsInfoAMD) PassRef() (*C.VkShaderStatisticsInfoAMD, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref11ff5547 != nil {
- return x.ref11ff5547, nil
+ } else if x.ref896a52bf != nil {
+ return x.ref896a52bf, nil
}
- mem11ff5547 := allocSamplerYcbcrConversionInfoMemory(1)
- ref11ff5547 := (*C.VkSamplerYcbcrConversionInfo)(mem11ff5547)
- allocs11ff5547 := new(cgoAllocMap)
- allocs11ff5547.Add(mem11ff5547)
+ mem896a52bf := allocShaderStatisticsInfoAMDMemory(1)
+ ref896a52bf := (*C.VkShaderStatisticsInfoAMD)(mem896a52bf)
+ allocs896a52bf := new(cgoAllocMap)
+ allocs896a52bf.Add(mem896a52bf)
- var csType_allocs *cgoAllocMap
- ref11ff5547.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs11ff5547.Borrow(csType_allocs)
+ var cshaderStageMask_allocs *cgoAllocMap
+ ref896a52bf.shaderStageMask, cshaderStageMask_allocs = (C.VkShaderStageFlags)(x.ShaderStageMask), cgoAllocsUnknown
+ allocs896a52bf.Borrow(cshaderStageMask_allocs)
- var cpNext_allocs *cgoAllocMap
- ref11ff5547.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs11ff5547.Borrow(cpNext_allocs)
+ var cresourceUsage_allocs *cgoAllocMap
+ ref896a52bf.resourceUsage, cresourceUsage_allocs = x.ResourceUsage.PassValue()
+ allocs896a52bf.Borrow(cresourceUsage_allocs)
- var cconversion_allocs *cgoAllocMap
- ref11ff5547.conversion, cconversion_allocs = *(*C.VkSamplerYcbcrConversion)(unsafe.Pointer(&x.Conversion)), cgoAllocsUnknown
- allocs11ff5547.Borrow(cconversion_allocs)
+ var cnumPhysicalVgprs_allocs *cgoAllocMap
+ ref896a52bf.numPhysicalVgprs, cnumPhysicalVgprs_allocs = (C.uint32_t)(x.NumPhysicalVgprs), cgoAllocsUnknown
+ allocs896a52bf.Borrow(cnumPhysicalVgprs_allocs)
- x.ref11ff5547 = ref11ff5547
- x.allocs11ff5547 = allocs11ff5547
- return ref11ff5547, allocs11ff5547
+ var cnumPhysicalSgprs_allocs *cgoAllocMap
+ ref896a52bf.numPhysicalSgprs, cnumPhysicalSgprs_allocs = (C.uint32_t)(x.NumPhysicalSgprs), cgoAllocsUnknown
+ allocs896a52bf.Borrow(cnumPhysicalSgprs_allocs)
+
+ var cnumAvailableVgprs_allocs *cgoAllocMap
+ ref896a52bf.numAvailableVgprs, cnumAvailableVgprs_allocs = (C.uint32_t)(x.NumAvailableVgprs), cgoAllocsUnknown
+ allocs896a52bf.Borrow(cnumAvailableVgprs_allocs)
+
+ var cnumAvailableSgprs_allocs *cgoAllocMap
+ ref896a52bf.numAvailableSgprs, cnumAvailableSgprs_allocs = (C.uint32_t)(x.NumAvailableSgprs), cgoAllocsUnknown
+ allocs896a52bf.Borrow(cnumAvailableSgprs_allocs)
+
+ var ccomputeWorkGroupSize_allocs *cgoAllocMap
+ ref896a52bf.computeWorkGroupSize, ccomputeWorkGroupSize_allocs = *(*[3]C.uint32_t)(unsafe.Pointer(&x.ComputeWorkGroupSize)), cgoAllocsUnknown
+ allocs896a52bf.Borrow(ccomputeWorkGroupSize_allocs)
+
+ x.ref896a52bf = ref896a52bf
+ x.allocs896a52bf = allocs896a52bf
+ return ref896a52bf, allocs896a52bf
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SamplerYcbcrConversionInfo) PassValue() (C.VkSamplerYcbcrConversionInfo, *cgoAllocMap) {
- if x.ref11ff5547 != nil {
- return *x.ref11ff5547, nil
+func (x ShaderStatisticsInfoAMD) PassValue() (C.VkShaderStatisticsInfoAMD, *cgoAllocMap) {
+ if x.ref896a52bf != nil {
+ return *x.ref896a52bf, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -17586,90 +44534,94 @@ func (x SamplerYcbcrConversionInfo) PassValue() (C.VkSamplerYcbcrConversionInfo,
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SamplerYcbcrConversionInfo) Deref() {
- if x.ref11ff5547 == nil {
+func (x *ShaderStatisticsInfoAMD) Deref() {
+ if x.ref896a52bf == nil {
return
}
- x.SType = (StructureType)(x.ref11ff5547.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref11ff5547.pNext))
- x.Conversion = *(*SamplerYcbcrConversion)(unsafe.Pointer(&x.ref11ff5547.conversion))
+ x.ShaderStageMask = (ShaderStageFlags)(x.ref896a52bf.shaderStageMask)
+ x.ResourceUsage = *NewShaderResourceUsageAMDRef(unsafe.Pointer(&x.ref896a52bf.resourceUsage))
+ x.NumPhysicalVgprs = (uint32)(x.ref896a52bf.numPhysicalVgprs)
+ x.NumPhysicalSgprs = (uint32)(x.ref896a52bf.numPhysicalSgprs)
+ x.NumAvailableVgprs = (uint32)(x.ref896a52bf.numAvailableVgprs)
+ x.NumAvailableSgprs = (uint32)(x.ref896a52bf.numAvailableSgprs)
+ x.ComputeWorkGroupSize = *(*[3]uint32)(unsafe.Pointer(&x.ref896a52bf.computeWorkGroupSize))
}
-// allocBindImagePlaneMemoryInfoMemory allocates memory for type C.VkBindImagePlaneMemoryInfo in C.
+// allocPhysicalDeviceCornerSampledImageFeaturesNVMemory allocates memory for type C.VkPhysicalDeviceCornerSampledImageFeaturesNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocBindImagePlaneMemoryInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBindImagePlaneMemoryInfoValue))
+func allocPhysicalDeviceCornerSampledImageFeaturesNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceCornerSampledImageFeaturesNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfBindImagePlaneMemoryInfoValue = unsafe.Sizeof([1]C.VkBindImagePlaneMemoryInfo{})
+const sizeOfPhysicalDeviceCornerSampledImageFeaturesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceCornerSampledImageFeaturesNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *BindImagePlaneMemoryInfo) Ref() *C.VkBindImagePlaneMemoryInfo {
+func (x *PhysicalDeviceCornerSampledImageFeaturesNV) Ref() *C.VkPhysicalDeviceCornerSampledImageFeaturesNV {
if x == nil {
return nil
}
- return x.ref56b81476
+ return x.refdf4a62d1
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *BindImagePlaneMemoryInfo) Free() {
- if x != nil && x.allocs56b81476 != nil {
- x.allocs56b81476.(*cgoAllocMap).Free()
- x.ref56b81476 = nil
+func (x *PhysicalDeviceCornerSampledImageFeaturesNV) Free() {
+ if x != nil && x.allocsdf4a62d1 != nil {
+ x.allocsdf4a62d1.(*cgoAllocMap).Free()
+ x.refdf4a62d1 = nil
}
}
-// NewBindImagePlaneMemoryInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceCornerSampledImageFeaturesNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewBindImagePlaneMemoryInfoRef(ref unsafe.Pointer) *BindImagePlaneMemoryInfo {
+func NewPhysicalDeviceCornerSampledImageFeaturesNVRef(ref unsafe.Pointer) *PhysicalDeviceCornerSampledImageFeaturesNV {
if ref == nil {
return nil
}
- obj := new(BindImagePlaneMemoryInfo)
- obj.ref56b81476 = (*C.VkBindImagePlaneMemoryInfo)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceCornerSampledImageFeaturesNV)
+ obj.refdf4a62d1 = (*C.VkPhysicalDeviceCornerSampledImageFeaturesNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *BindImagePlaneMemoryInfo) PassRef() (*C.VkBindImagePlaneMemoryInfo, *cgoAllocMap) {
+func (x *PhysicalDeviceCornerSampledImageFeaturesNV) PassRef() (*C.VkPhysicalDeviceCornerSampledImageFeaturesNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref56b81476 != nil {
- return x.ref56b81476, nil
+ } else if x.refdf4a62d1 != nil {
+ return x.refdf4a62d1, nil
}
- mem56b81476 := allocBindImagePlaneMemoryInfoMemory(1)
- ref56b81476 := (*C.VkBindImagePlaneMemoryInfo)(mem56b81476)
- allocs56b81476 := new(cgoAllocMap)
- allocs56b81476.Add(mem56b81476)
+ memdf4a62d1 := allocPhysicalDeviceCornerSampledImageFeaturesNVMemory(1)
+ refdf4a62d1 := (*C.VkPhysicalDeviceCornerSampledImageFeaturesNV)(memdf4a62d1)
+ allocsdf4a62d1 := new(cgoAllocMap)
+ allocsdf4a62d1.Add(memdf4a62d1)
var csType_allocs *cgoAllocMap
- ref56b81476.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs56b81476.Borrow(csType_allocs)
+ refdf4a62d1.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsdf4a62d1.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref56b81476.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs56b81476.Borrow(cpNext_allocs)
+ refdf4a62d1.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsdf4a62d1.Borrow(cpNext_allocs)
- var cplaneAspect_allocs *cgoAllocMap
- ref56b81476.planeAspect, cplaneAspect_allocs = (C.VkImageAspectFlagBits)(x.PlaneAspect), cgoAllocsUnknown
- allocs56b81476.Borrow(cplaneAspect_allocs)
+ var ccornerSampledImage_allocs *cgoAllocMap
+ refdf4a62d1.cornerSampledImage, ccornerSampledImage_allocs = (C.VkBool32)(x.CornerSampledImage), cgoAllocsUnknown
+ allocsdf4a62d1.Borrow(ccornerSampledImage_allocs)
- x.ref56b81476 = ref56b81476
- x.allocs56b81476 = allocs56b81476
- return ref56b81476, allocs56b81476
+ x.refdf4a62d1 = refdf4a62d1
+ x.allocsdf4a62d1 = allocsdf4a62d1
+ return refdf4a62d1, allocsdf4a62d1
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x BindImagePlaneMemoryInfo) PassValue() (C.VkBindImagePlaneMemoryInfo, *cgoAllocMap) {
- if x.ref56b81476 != nil {
- return *x.ref56b81476, nil
+func (x PhysicalDeviceCornerSampledImageFeaturesNV) PassValue() (C.VkPhysicalDeviceCornerSampledImageFeaturesNV, *cgoAllocMap) {
+ if x.refdf4a62d1 != nil {
+ return *x.refdf4a62d1, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -17677,90 +44629,94 @@ func (x BindImagePlaneMemoryInfo) PassValue() (C.VkBindImagePlaneMemoryInfo, *cg
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *BindImagePlaneMemoryInfo) Deref() {
- if x.ref56b81476 == nil {
+func (x *PhysicalDeviceCornerSampledImageFeaturesNV) Deref() {
+ if x.refdf4a62d1 == nil {
return
}
- x.SType = (StructureType)(x.ref56b81476.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref56b81476.pNext))
- x.PlaneAspect = (ImageAspectFlagBits)(x.ref56b81476.planeAspect)
+ x.SType = (StructureType)(x.refdf4a62d1.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refdf4a62d1.pNext))
+ x.CornerSampledImage = (Bool32)(x.refdf4a62d1.cornerSampledImage)
}
-// allocImagePlaneMemoryRequirementsInfoMemory allocates memory for type C.VkImagePlaneMemoryRequirementsInfo in C.
+// allocExternalImageFormatPropertiesNVMemory allocates memory for type C.VkExternalImageFormatPropertiesNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocImagePlaneMemoryRequirementsInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImagePlaneMemoryRequirementsInfoValue))
+func allocExternalImageFormatPropertiesNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExternalImageFormatPropertiesNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfImagePlaneMemoryRequirementsInfoValue = unsafe.Sizeof([1]C.VkImagePlaneMemoryRequirementsInfo{})
+const sizeOfExternalImageFormatPropertiesNVValue = unsafe.Sizeof([1]C.VkExternalImageFormatPropertiesNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ImagePlaneMemoryRequirementsInfo) Ref() *C.VkImagePlaneMemoryRequirementsInfo {
+func (x *ExternalImageFormatPropertiesNV) Ref() *C.VkExternalImageFormatPropertiesNV {
if x == nil {
return nil
}
- return x.refefec131f
+ return x.refa8900ce5
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ImagePlaneMemoryRequirementsInfo) Free() {
- if x != nil && x.allocsefec131f != nil {
- x.allocsefec131f.(*cgoAllocMap).Free()
- x.refefec131f = nil
+func (x *ExternalImageFormatPropertiesNV) Free() {
+ if x != nil && x.allocsa8900ce5 != nil {
+ x.allocsa8900ce5.(*cgoAllocMap).Free()
+ x.refa8900ce5 = nil
}
}
-// NewImagePlaneMemoryRequirementsInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewExternalImageFormatPropertiesNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewImagePlaneMemoryRequirementsInfoRef(ref unsafe.Pointer) *ImagePlaneMemoryRequirementsInfo {
+func NewExternalImageFormatPropertiesNVRef(ref unsafe.Pointer) *ExternalImageFormatPropertiesNV {
if ref == nil {
return nil
}
- obj := new(ImagePlaneMemoryRequirementsInfo)
- obj.refefec131f = (*C.VkImagePlaneMemoryRequirementsInfo)(unsafe.Pointer(ref))
+ obj := new(ExternalImageFormatPropertiesNV)
+ obj.refa8900ce5 = (*C.VkExternalImageFormatPropertiesNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ImagePlaneMemoryRequirementsInfo) PassRef() (*C.VkImagePlaneMemoryRequirementsInfo, *cgoAllocMap) {
+func (x *ExternalImageFormatPropertiesNV) PassRef() (*C.VkExternalImageFormatPropertiesNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refefec131f != nil {
- return x.refefec131f, nil
+ } else if x.refa8900ce5 != nil {
+ return x.refa8900ce5, nil
}
- memefec131f := allocImagePlaneMemoryRequirementsInfoMemory(1)
- refefec131f := (*C.VkImagePlaneMemoryRequirementsInfo)(memefec131f)
- allocsefec131f := new(cgoAllocMap)
- allocsefec131f.Add(memefec131f)
+ mema8900ce5 := allocExternalImageFormatPropertiesNVMemory(1)
+ refa8900ce5 := (*C.VkExternalImageFormatPropertiesNV)(mema8900ce5)
+ allocsa8900ce5 := new(cgoAllocMap)
+ allocsa8900ce5.Add(mema8900ce5)
- var csType_allocs *cgoAllocMap
- refefec131f.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsefec131f.Borrow(csType_allocs)
+ var cimageFormatProperties_allocs *cgoAllocMap
+ refa8900ce5.imageFormatProperties, cimageFormatProperties_allocs = x.ImageFormatProperties.PassValue()
+ allocsa8900ce5.Borrow(cimageFormatProperties_allocs)
- var cpNext_allocs *cgoAllocMap
- refefec131f.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsefec131f.Borrow(cpNext_allocs)
+ var cexternalMemoryFeatures_allocs *cgoAllocMap
+ refa8900ce5.externalMemoryFeatures, cexternalMemoryFeatures_allocs = (C.VkExternalMemoryFeatureFlagsNV)(x.ExternalMemoryFeatures), cgoAllocsUnknown
+ allocsa8900ce5.Borrow(cexternalMemoryFeatures_allocs)
- var cplaneAspect_allocs *cgoAllocMap
- refefec131f.planeAspect, cplaneAspect_allocs = (C.VkImageAspectFlagBits)(x.PlaneAspect), cgoAllocsUnknown
- allocsefec131f.Borrow(cplaneAspect_allocs)
+ var cexportFromImportedHandleTypes_allocs *cgoAllocMap
+ refa8900ce5.exportFromImportedHandleTypes, cexportFromImportedHandleTypes_allocs = (C.VkExternalMemoryHandleTypeFlagsNV)(x.ExportFromImportedHandleTypes), cgoAllocsUnknown
+ allocsa8900ce5.Borrow(cexportFromImportedHandleTypes_allocs)
- x.refefec131f = refefec131f
- x.allocsefec131f = allocsefec131f
- return refefec131f, allocsefec131f
+ var ccompatibleHandleTypes_allocs *cgoAllocMap
+ refa8900ce5.compatibleHandleTypes, ccompatibleHandleTypes_allocs = (C.VkExternalMemoryHandleTypeFlagsNV)(x.CompatibleHandleTypes), cgoAllocsUnknown
+ allocsa8900ce5.Borrow(ccompatibleHandleTypes_allocs)
+
+ x.refa8900ce5 = refa8900ce5
+ x.allocsa8900ce5 = allocsa8900ce5
+ return refa8900ce5, allocsa8900ce5
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ImagePlaneMemoryRequirementsInfo) PassValue() (C.VkImagePlaneMemoryRequirementsInfo, *cgoAllocMap) {
- if x.refefec131f != nil {
- return *x.refefec131f, nil
+func (x ExternalImageFormatPropertiesNV) PassValue() (C.VkExternalImageFormatPropertiesNV, *cgoAllocMap) {
+ if x.refa8900ce5 != nil {
+ return *x.refa8900ce5, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -17768,90 +44724,91 @@ func (x ImagePlaneMemoryRequirementsInfo) PassValue() (C.VkImagePlaneMemoryRequi
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ImagePlaneMemoryRequirementsInfo) Deref() {
- if x.refefec131f == nil {
+func (x *ExternalImageFormatPropertiesNV) Deref() {
+ if x.refa8900ce5 == nil {
return
}
- x.SType = (StructureType)(x.refefec131f.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refefec131f.pNext))
- x.PlaneAspect = (ImageAspectFlagBits)(x.refefec131f.planeAspect)
+ x.ImageFormatProperties = *NewImageFormatPropertiesRef(unsafe.Pointer(&x.refa8900ce5.imageFormatProperties))
+ x.ExternalMemoryFeatures = (ExternalMemoryFeatureFlagsNV)(x.refa8900ce5.externalMemoryFeatures)
+ x.ExportFromImportedHandleTypes = (ExternalMemoryHandleTypeFlagsNV)(x.refa8900ce5.exportFromImportedHandleTypes)
+ x.CompatibleHandleTypes = (ExternalMemoryHandleTypeFlagsNV)(x.refa8900ce5.compatibleHandleTypes)
}
-// allocPhysicalDeviceSamplerYcbcrConversionFeaturesMemory allocates memory for type C.VkPhysicalDeviceSamplerYcbcrConversionFeatures in C.
+// allocExternalMemoryImageCreateInfoNVMemory allocates memory for type C.VkExternalMemoryImageCreateInfoNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceSamplerYcbcrConversionFeaturesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceSamplerYcbcrConversionFeaturesValue))
+func allocExternalMemoryImageCreateInfoNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExternalMemoryImageCreateInfoNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceSamplerYcbcrConversionFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceSamplerYcbcrConversionFeatures{})
+const sizeOfExternalMemoryImageCreateInfoNVValue = unsafe.Sizeof([1]C.VkExternalMemoryImageCreateInfoNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceSamplerYcbcrConversionFeatures) Ref() *C.VkPhysicalDeviceSamplerYcbcrConversionFeatures {
+func (x *ExternalMemoryImageCreateInfoNV) Ref() *C.VkExternalMemoryImageCreateInfoNV {
if x == nil {
return nil
}
- return x.ref1d054d67
+ return x.ref9a7fb6c8
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceSamplerYcbcrConversionFeatures) Free() {
- if x != nil && x.allocs1d054d67 != nil {
- x.allocs1d054d67.(*cgoAllocMap).Free()
- x.ref1d054d67 = nil
+func (x *ExternalMemoryImageCreateInfoNV) Free() {
+ if x != nil && x.allocs9a7fb6c8 != nil {
+ x.allocs9a7fb6c8.(*cgoAllocMap).Free()
+ x.ref9a7fb6c8 = nil
}
}
-// NewPhysicalDeviceSamplerYcbcrConversionFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewExternalMemoryImageCreateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceSamplerYcbcrConversionFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceSamplerYcbcrConversionFeatures {
+func NewExternalMemoryImageCreateInfoNVRef(ref unsafe.Pointer) *ExternalMemoryImageCreateInfoNV {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceSamplerYcbcrConversionFeatures)
- obj.ref1d054d67 = (*C.VkPhysicalDeviceSamplerYcbcrConversionFeatures)(unsafe.Pointer(ref))
+ obj := new(ExternalMemoryImageCreateInfoNV)
+ obj.ref9a7fb6c8 = (*C.VkExternalMemoryImageCreateInfoNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceSamplerYcbcrConversionFeatures) PassRef() (*C.VkPhysicalDeviceSamplerYcbcrConversionFeatures, *cgoAllocMap) {
+func (x *ExternalMemoryImageCreateInfoNV) PassRef() (*C.VkExternalMemoryImageCreateInfoNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref1d054d67 != nil {
- return x.ref1d054d67, nil
+ } else if x.ref9a7fb6c8 != nil {
+ return x.ref9a7fb6c8, nil
}
- mem1d054d67 := allocPhysicalDeviceSamplerYcbcrConversionFeaturesMemory(1)
- ref1d054d67 := (*C.VkPhysicalDeviceSamplerYcbcrConversionFeatures)(mem1d054d67)
- allocs1d054d67 := new(cgoAllocMap)
- allocs1d054d67.Add(mem1d054d67)
+ mem9a7fb6c8 := allocExternalMemoryImageCreateInfoNVMemory(1)
+ ref9a7fb6c8 := (*C.VkExternalMemoryImageCreateInfoNV)(mem9a7fb6c8)
+ allocs9a7fb6c8 := new(cgoAllocMap)
+ allocs9a7fb6c8.Add(mem9a7fb6c8)
var csType_allocs *cgoAllocMap
- ref1d054d67.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs1d054d67.Borrow(csType_allocs)
+ ref9a7fb6c8.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs9a7fb6c8.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref1d054d67.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs1d054d67.Borrow(cpNext_allocs)
+ ref9a7fb6c8.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs9a7fb6c8.Borrow(cpNext_allocs)
- var csamplerYcbcrConversion_allocs *cgoAllocMap
- ref1d054d67.samplerYcbcrConversion, csamplerYcbcrConversion_allocs = (C.VkBool32)(x.SamplerYcbcrConversion), cgoAllocsUnknown
- allocs1d054d67.Borrow(csamplerYcbcrConversion_allocs)
+ var chandleTypes_allocs *cgoAllocMap
+ ref9a7fb6c8.handleTypes, chandleTypes_allocs = (C.VkExternalMemoryHandleTypeFlagsNV)(x.HandleTypes), cgoAllocsUnknown
+ allocs9a7fb6c8.Borrow(chandleTypes_allocs)
- x.ref1d054d67 = ref1d054d67
- x.allocs1d054d67 = allocs1d054d67
- return ref1d054d67, allocs1d054d67
+ x.ref9a7fb6c8 = ref9a7fb6c8
+ x.allocs9a7fb6c8 = allocs9a7fb6c8
+ return ref9a7fb6c8, allocs9a7fb6c8
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceSamplerYcbcrConversionFeatures) PassValue() (C.VkPhysicalDeviceSamplerYcbcrConversionFeatures, *cgoAllocMap) {
- if x.ref1d054d67 != nil {
- return *x.ref1d054d67, nil
+func (x ExternalMemoryImageCreateInfoNV) PassValue() (C.VkExternalMemoryImageCreateInfoNV, *cgoAllocMap) {
+ if x.ref9a7fb6c8 != nil {
+ return *x.ref9a7fb6c8, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -17859,90 +44816,90 @@ func (x PhysicalDeviceSamplerYcbcrConversionFeatures) PassValue() (C.VkPhysicalD
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceSamplerYcbcrConversionFeatures) Deref() {
- if x.ref1d054d67 == nil {
+func (x *ExternalMemoryImageCreateInfoNV) Deref() {
+ if x.ref9a7fb6c8 == nil {
return
}
- x.SType = (StructureType)(x.ref1d054d67.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref1d054d67.pNext))
- x.SamplerYcbcrConversion = (Bool32)(x.ref1d054d67.samplerYcbcrConversion)
+ x.SType = (StructureType)(x.ref9a7fb6c8.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref9a7fb6c8.pNext))
+ x.HandleTypes = (ExternalMemoryHandleTypeFlagsNV)(x.ref9a7fb6c8.handleTypes)
}
-// allocSamplerYcbcrConversionImageFormatPropertiesMemory allocates memory for type C.VkSamplerYcbcrConversionImageFormatProperties in C.
+// allocExportMemoryAllocateInfoNVMemory allocates memory for type C.VkExportMemoryAllocateInfoNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSamplerYcbcrConversionImageFormatPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSamplerYcbcrConversionImageFormatPropertiesValue))
+func allocExportMemoryAllocateInfoNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExportMemoryAllocateInfoNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSamplerYcbcrConversionImageFormatPropertiesValue = unsafe.Sizeof([1]C.VkSamplerYcbcrConversionImageFormatProperties{})
+const sizeOfExportMemoryAllocateInfoNVValue = unsafe.Sizeof([1]C.VkExportMemoryAllocateInfoNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SamplerYcbcrConversionImageFormatProperties) Ref() *C.VkSamplerYcbcrConversionImageFormatProperties {
+func (x *ExportMemoryAllocateInfoNV) Ref() *C.VkExportMemoryAllocateInfoNV {
if x == nil {
return nil
}
- return x.ref6bc79530
+ return x.ref5066f33
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SamplerYcbcrConversionImageFormatProperties) Free() {
- if x != nil && x.allocs6bc79530 != nil {
- x.allocs6bc79530.(*cgoAllocMap).Free()
- x.ref6bc79530 = nil
+func (x *ExportMemoryAllocateInfoNV) Free() {
+ if x != nil && x.allocs5066f33 != nil {
+ x.allocs5066f33.(*cgoAllocMap).Free()
+ x.ref5066f33 = nil
}
}
-// NewSamplerYcbcrConversionImageFormatPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewExportMemoryAllocateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSamplerYcbcrConversionImageFormatPropertiesRef(ref unsafe.Pointer) *SamplerYcbcrConversionImageFormatProperties {
+func NewExportMemoryAllocateInfoNVRef(ref unsafe.Pointer) *ExportMemoryAllocateInfoNV {
if ref == nil {
return nil
}
- obj := new(SamplerYcbcrConversionImageFormatProperties)
- obj.ref6bc79530 = (*C.VkSamplerYcbcrConversionImageFormatProperties)(unsafe.Pointer(ref))
+ obj := new(ExportMemoryAllocateInfoNV)
+ obj.ref5066f33 = (*C.VkExportMemoryAllocateInfoNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SamplerYcbcrConversionImageFormatProperties) PassRef() (*C.VkSamplerYcbcrConversionImageFormatProperties, *cgoAllocMap) {
+func (x *ExportMemoryAllocateInfoNV) PassRef() (*C.VkExportMemoryAllocateInfoNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref6bc79530 != nil {
- return x.ref6bc79530, nil
+ } else if x.ref5066f33 != nil {
+ return x.ref5066f33, nil
}
- mem6bc79530 := allocSamplerYcbcrConversionImageFormatPropertiesMemory(1)
- ref6bc79530 := (*C.VkSamplerYcbcrConversionImageFormatProperties)(mem6bc79530)
- allocs6bc79530 := new(cgoAllocMap)
- allocs6bc79530.Add(mem6bc79530)
+ mem5066f33 := allocExportMemoryAllocateInfoNVMemory(1)
+ ref5066f33 := (*C.VkExportMemoryAllocateInfoNV)(mem5066f33)
+ allocs5066f33 := new(cgoAllocMap)
+ allocs5066f33.Add(mem5066f33)
var csType_allocs *cgoAllocMap
- ref6bc79530.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs6bc79530.Borrow(csType_allocs)
+ ref5066f33.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs5066f33.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref6bc79530.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs6bc79530.Borrow(cpNext_allocs)
+ ref5066f33.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs5066f33.Borrow(cpNext_allocs)
- var ccombinedImageSamplerDescriptorCount_allocs *cgoAllocMap
- ref6bc79530.combinedImageSamplerDescriptorCount, ccombinedImageSamplerDescriptorCount_allocs = (C.uint32_t)(x.CombinedImageSamplerDescriptorCount), cgoAllocsUnknown
- allocs6bc79530.Borrow(ccombinedImageSamplerDescriptorCount_allocs)
+ var chandleTypes_allocs *cgoAllocMap
+ ref5066f33.handleTypes, chandleTypes_allocs = (C.VkExternalMemoryHandleTypeFlagsNV)(x.HandleTypes), cgoAllocsUnknown
+ allocs5066f33.Borrow(chandleTypes_allocs)
- x.ref6bc79530 = ref6bc79530
- x.allocs6bc79530 = allocs6bc79530
- return ref6bc79530, allocs6bc79530
+ x.ref5066f33 = ref5066f33
+ x.allocs5066f33 = allocs5066f33
+ return ref5066f33, allocs5066f33
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SamplerYcbcrConversionImageFormatProperties) PassValue() (C.VkSamplerYcbcrConversionImageFormatProperties, *cgoAllocMap) {
- if x.ref6bc79530 != nil {
- return *x.ref6bc79530, nil
+func (x ExportMemoryAllocateInfoNV) PassValue() (C.VkExportMemoryAllocateInfoNV, *cgoAllocMap) {
+ if x.ref5066f33 != nil {
+ return *x.ref5066f33, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -17950,102 +44907,94 @@ func (x SamplerYcbcrConversionImageFormatProperties) PassValue() (C.VkSamplerYcb
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SamplerYcbcrConversionImageFormatProperties) Deref() {
- if x.ref6bc79530 == nil {
+func (x *ExportMemoryAllocateInfoNV) Deref() {
+ if x.ref5066f33 == nil {
return
}
- x.SType = (StructureType)(x.ref6bc79530.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref6bc79530.pNext))
- x.CombinedImageSamplerDescriptorCount = (uint32)(x.ref6bc79530.combinedImageSamplerDescriptorCount)
+ x.SType = (StructureType)(x.ref5066f33.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5066f33.pNext))
+ x.HandleTypes = (ExternalMemoryHandleTypeFlagsNV)(x.ref5066f33.handleTypes)
}
-// allocDescriptorUpdateTemplateEntryMemory allocates memory for type C.VkDescriptorUpdateTemplateEntry in C.
+// allocValidationFlagsMemory allocates memory for type C.VkValidationFlagsEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDescriptorUpdateTemplateEntryMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorUpdateTemplateEntryValue))
+func allocValidationFlagsMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfValidationFlagsValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDescriptorUpdateTemplateEntryValue = unsafe.Sizeof([1]C.VkDescriptorUpdateTemplateEntry{})
+const sizeOfValidationFlagsValue = unsafe.Sizeof([1]C.VkValidationFlagsEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DescriptorUpdateTemplateEntry) Ref() *C.VkDescriptorUpdateTemplateEntry {
+func (x *ValidationFlags) Ref() *C.VkValidationFlagsEXT {
if x == nil {
return nil
}
- return x.refabf78fb7
+ return x.refffe080ad
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DescriptorUpdateTemplateEntry) Free() {
- if x != nil && x.allocsabf78fb7 != nil {
- x.allocsabf78fb7.(*cgoAllocMap).Free()
- x.refabf78fb7 = nil
+func (x *ValidationFlags) Free() {
+ if x != nil && x.allocsffe080ad != nil {
+ x.allocsffe080ad.(*cgoAllocMap).Free()
+ x.refffe080ad = nil
}
}
-// NewDescriptorUpdateTemplateEntryRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewValidationFlagsRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDescriptorUpdateTemplateEntryRef(ref unsafe.Pointer) *DescriptorUpdateTemplateEntry {
+func NewValidationFlagsRef(ref unsafe.Pointer) *ValidationFlags {
if ref == nil {
return nil
}
- obj := new(DescriptorUpdateTemplateEntry)
- obj.refabf78fb7 = (*C.VkDescriptorUpdateTemplateEntry)(unsafe.Pointer(ref))
+ obj := new(ValidationFlags)
+ obj.refffe080ad = (*C.VkValidationFlagsEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DescriptorUpdateTemplateEntry) PassRef() (*C.VkDescriptorUpdateTemplateEntry, *cgoAllocMap) {
+func (x *ValidationFlags) PassRef() (*C.VkValidationFlagsEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refabf78fb7 != nil {
- return x.refabf78fb7, nil
+ } else if x.refffe080ad != nil {
+ return x.refffe080ad, nil
}
- memabf78fb7 := allocDescriptorUpdateTemplateEntryMemory(1)
- refabf78fb7 := (*C.VkDescriptorUpdateTemplateEntry)(memabf78fb7)
- allocsabf78fb7 := new(cgoAllocMap)
- allocsabf78fb7.Add(memabf78fb7)
-
- var cdstBinding_allocs *cgoAllocMap
- refabf78fb7.dstBinding, cdstBinding_allocs = (C.uint32_t)(x.DstBinding), cgoAllocsUnknown
- allocsabf78fb7.Borrow(cdstBinding_allocs)
-
- var cdstArrayElement_allocs *cgoAllocMap
- refabf78fb7.dstArrayElement, cdstArrayElement_allocs = (C.uint32_t)(x.DstArrayElement), cgoAllocsUnknown
- allocsabf78fb7.Borrow(cdstArrayElement_allocs)
+ memffe080ad := allocValidationFlagsMemory(1)
+ refffe080ad := (*C.VkValidationFlagsEXT)(memffe080ad)
+ allocsffe080ad := new(cgoAllocMap)
+ allocsffe080ad.Add(memffe080ad)
- var cdescriptorCount_allocs *cgoAllocMap
- refabf78fb7.descriptorCount, cdescriptorCount_allocs = (C.uint32_t)(x.DescriptorCount), cgoAllocsUnknown
- allocsabf78fb7.Borrow(cdescriptorCount_allocs)
+ var csType_allocs *cgoAllocMap
+ refffe080ad.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsffe080ad.Borrow(csType_allocs)
- var cdescriptorType_allocs *cgoAllocMap
- refabf78fb7.descriptorType, cdescriptorType_allocs = (C.VkDescriptorType)(x.DescriptorType), cgoAllocsUnknown
- allocsabf78fb7.Borrow(cdescriptorType_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refffe080ad.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsffe080ad.Borrow(cpNext_allocs)
- var coffset_allocs *cgoAllocMap
- refabf78fb7.offset, coffset_allocs = (C.size_t)(x.Offset), cgoAllocsUnknown
- allocsabf78fb7.Borrow(coffset_allocs)
+ var cdisabledValidationCheckCount_allocs *cgoAllocMap
+ refffe080ad.disabledValidationCheckCount, cdisabledValidationCheckCount_allocs = (C.uint32_t)(x.DisabledValidationCheckCount), cgoAllocsUnknown
+ allocsffe080ad.Borrow(cdisabledValidationCheckCount_allocs)
- var cstride_allocs *cgoAllocMap
- refabf78fb7.stride, cstride_allocs = (C.size_t)(x.Stride), cgoAllocsUnknown
- allocsabf78fb7.Borrow(cstride_allocs)
+ var cpDisabledValidationChecks_allocs *cgoAllocMap
+ refffe080ad.pDisabledValidationChecks, cpDisabledValidationChecks_allocs = (*C.VkValidationCheckEXT)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PDisabledValidationChecks)).Data)), cgoAllocsUnknown
+ allocsffe080ad.Borrow(cpDisabledValidationChecks_allocs)
- x.refabf78fb7 = refabf78fb7
- x.allocsabf78fb7 = allocsabf78fb7
- return refabf78fb7, allocsabf78fb7
+ x.refffe080ad = refffe080ad
+ x.allocsffe080ad = allocsffe080ad
+ return refffe080ad, allocsffe080ad
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DescriptorUpdateTemplateEntry) PassValue() (C.VkDescriptorUpdateTemplateEntry, *cgoAllocMap) {
- if x.refabf78fb7 != nil {
- return *x.refabf78fb7, nil
+func (x ValidationFlags) PassValue() (C.VkValidationFlagsEXT, *cgoAllocMap) {
+ if x.refffe080ad != nil {
+ return *x.refffe080ad, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -18053,159 +45002,95 @@ func (x DescriptorUpdateTemplateEntry) PassValue() (C.VkDescriptorUpdateTemplate
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DescriptorUpdateTemplateEntry) Deref() {
- if x.refabf78fb7 == nil {
+func (x *ValidationFlags) Deref() {
+ if x.refffe080ad == nil {
return
}
- x.DstBinding = (uint32)(x.refabf78fb7.dstBinding)
- x.DstArrayElement = (uint32)(x.refabf78fb7.dstArrayElement)
- x.DescriptorCount = (uint32)(x.refabf78fb7.descriptorCount)
- x.DescriptorType = (DescriptorType)(x.refabf78fb7.descriptorType)
- x.Offset = (uint)(x.refabf78fb7.offset)
- x.Stride = (uint)(x.refabf78fb7.stride)
+ x.SType = (StructureType)(x.refffe080ad.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refffe080ad.pNext))
+ x.DisabledValidationCheckCount = (uint32)(x.refffe080ad.disabledValidationCheckCount)
+ hxf8dbbe5 := (*sliceHeader)(unsafe.Pointer(&x.PDisabledValidationChecks))
+ hxf8dbbe5.Data = unsafe.Pointer(x.refffe080ad.pDisabledValidationChecks)
+ hxf8dbbe5.Cap = 0x7fffffff
+ // hxf8dbbe5.Len = ?
+
}
-// allocDescriptorUpdateTemplateCreateInfoMemory allocates memory for type C.VkDescriptorUpdateTemplateCreateInfo in C.
+// allocImageViewASTCDecodeModeMemory allocates memory for type C.VkImageViewASTCDecodeModeEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDescriptorUpdateTemplateCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorUpdateTemplateCreateInfoValue))
+func allocImageViewASTCDecodeModeMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageViewASTCDecodeModeValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDescriptorUpdateTemplateCreateInfoValue = unsafe.Sizeof([1]C.VkDescriptorUpdateTemplateCreateInfo{})
-
-// unpackSDescriptorUpdateTemplateEntry transforms a sliced Go data structure into plain C format.
-func unpackSDescriptorUpdateTemplateEntry(x []DescriptorUpdateTemplateEntry) (unpacked *C.VkDescriptorUpdateTemplateEntry, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkDescriptorUpdateTemplateEntry) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocDescriptorUpdateTemplateEntryMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkDescriptorUpdateTemplateEntry)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkDescriptorUpdateTemplateEntry)(h.Data)
- return
-}
-
-// packSDescriptorUpdateTemplateEntry reads sliced Go data structure out from plain C format.
-func packSDescriptorUpdateTemplateEntry(v []DescriptorUpdateTemplateEntry, ptr0 *C.VkDescriptorUpdateTemplateEntry) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfDescriptorUpdateTemplateEntryValue]C.VkDescriptorUpdateTemplateEntry)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewDescriptorUpdateTemplateEntryRef(unsafe.Pointer(&ptr1))
- }
-}
+const sizeOfImageViewASTCDecodeModeValue = unsafe.Sizeof([1]C.VkImageViewASTCDecodeModeEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DescriptorUpdateTemplateCreateInfo) Ref() *C.VkDescriptorUpdateTemplateCreateInfo {
+func (x *ImageViewASTCDecodeMode) Ref() *C.VkImageViewASTCDecodeModeEXT {
if x == nil {
return nil
}
- return x.ref2af95951
+ return x.ref3a973fc0
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DescriptorUpdateTemplateCreateInfo) Free() {
- if x != nil && x.allocs2af95951 != nil {
- x.allocs2af95951.(*cgoAllocMap).Free()
- x.ref2af95951 = nil
+func (x *ImageViewASTCDecodeMode) Free() {
+ if x != nil && x.allocs3a973fc0 != nil {
+ x.allocs3a973fc0.(*cgoAllocMap).Free()
+ x.ref3a973fc0 = nil
}
}
-// NewDescriptorUpdateTemplateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewImageViewASTCDecodeModeRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDescriptorUpdateTemplateCreateInfoRef(ref unsafe.Pointer) *DescriptorUpdateTemplateCreateInfo {
+func NewImageViewASTCDecodeModeRef(ref unsafe.Pointer) *ImageViewASTCDecodeMode {
if ref == nil {
return nil
}
- obj := new(DescriptorUpdateTemplateCreateInfo)
- obj.ref2af95951 = (*C.VkDescriptorUpdateTemplateCreateInfo)(unsafe.Pointer(ref))
+ obj := new(ImageViewASTCDecodeMode)
+ obj.ref3a973fc0 = (*C.VkImageViewASTCDecodeModeEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DescriptorUpdateTemplateCreateInfo) PassRef() (*C.VkDescriptorUpdateTemplateCreateInfo, *cgoAllocMap) {
+func (x *ImageViewASTCDecodeMode) PassRef() (*C.VkImageViewASTCDecodeModeEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref2af95951 != nil {
- return x.ref2af95951, nil
+ } else if x.ref3a973fc0 != nil {
+ return x.ref3a973fc0, nil
}
- mem2af95951 := allocDescriptorUpdateTemplateCreateInfoMemory(1)
- ref2af95951 := (*C.VkDescriptorUpdateTemplateCreateInfo)(mem2af95951)
- allocs2af95951 := new(cgoAllocMap)
- allocs2af95951.Add(mem2af95951)
+ mem3a973fc0 := allocImageViewASTCDecodeModeMemory(1)
+ ref3a973fc0 := (*C.VkImageViewASTCDecodeModeEXT)(mem3a973fc0)
+ allocs3a973fc0 := new(cgoAllocMap)
+ allocs3a973fc0.Add(mem3a973fc0)
var csType_allocs *cgoAllocMap
- ref2af95951.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs2af95951.Borrow(csType_allocs)
+ ref3a973fc0.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs3a973fc0.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref2af95951.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs2af95951.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- ref2af95951.flags, cflags_allocs = (C.VkDescriptorUpdateTemplateCreateFlags)(x.Flags), cgoAllocsUnknown
- allocs2af95951.Borrow(cflags_allocs)
-
- var cdescriptorUpdateEntryCount_allocs *cgoAllocMap
- ref2af95951.descriptorUpdateEntryCount, cdescriptorUpdateEntryCount_allocs = (C.uint32_t)(x.DescriptorUpdateEntryCount), cgoAllocsUnknown
- allocs2af95951.Borrow(cdescriptorUpdateEntryCount_allocs)
-
- var cpDescriptorUpdateEntries_allocs *cgoAllocMap
- ref2af95951.pDescriptorUpdateEntries, cpDescriptorUpdateEntries_allocs = unpackSDescriptorUpdateTemplateEntry(x.PDescriptorUpdateEntries)
- allocs2af95951.Borrow(cpDescriptorUpdateEntries_allocs)
-
- var ctemplateType_allocs *cgoAllocMap
- ref2af95951.templateType, ctemplateType_allocs = (C.VkDescriptorUpdateTemplateType)(x.TemplateType), cgoAllocsUnknown
- allocs2af95951.Borrow(ctemplateType_allocs)
-
- var cdescriptorSetLayout_allocs *cgoAllocMap
- ref2af95951.descriptorSetLayout, cdescriptorSetLayout_allocs = *(*C.VkDescriptorSetLayout)(unsafe.Pointer(&x.DescriptorSetLayout)), cgoAllocsUnknown
- allocs2af95951.Borrow(cdescriptorSetLayout_allocs)
-
- var cpipelineBindPoint_allocs *cgoAllocMap
- ref2af95951.pipelineBindPoint, cpipelineBindPoint_allocs = (C.VkPipelineBindPoint)(x.PipelineBindPoint), cgoAllocsUnknown
- allocs2af95951.Borrow(cpipelineBindPoint_allocs)
-
- var cpipelineLayout_allocs *cgoAllocMap
- ref2af95951.pipelineLayout, cpipelineLayout_allocs = *(*C.VkPipelineLayout)(unsafe.Pointer(&x.PipelineLayout)), cgoAllocsUnknown
- allocs2af95951.Borrow(cpipelineLayout_allocs)
+ ref3a973fc0.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs3a973fc0.Borrow(cpNext_allocs)
- var cset_allocs *cgoAllocMap
- ref2af95951.set, cset_allocs = (C.uint32_t)(x.Set), cgoAllocsUnknown
- allocs2af95951.Borrow(cset_allocs)
+ var cdecodeMode_allocs *cgoAllocMap
+ ref3a973fc0.decodeMode, cdecodeMode_allocs = (C.VkFormat)(x.DecodeMode), cgoAllocsUnknown
+ allocs3a973fc0.Borrow(cdecodeMode_allocs)
- x.ref2af95951 = ref2af95951
- x.allocs2af95951 = allocs2af95951
- return ref2af95951, allocs2af95951
+ x.ref3a973fc0 = ref3a973fc0
+ x.allocs3a973fc0 = allocs3a973fc0
+ return ref3a973fc0, allocs3a973fc0
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DescriptorUpdateTemplateCreateInfo) PassValue() (C.VkDescriptorUpdateTemplateCreateInfo, *cgoAllocMap) {
- if x.ref2af95951 != nil {
- return *x.ref2af95951, nil
+func (x ImageViewASTCDecodeMode) PassValue() (C.VkImageViewASTCDecodeModeEXT, *cgoAllocMap) {
+ if x.ref3a973fc0 != nil {
+ return *x.ref3a973fc0, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -18213,97 +45098,90 @@ func (x DescriptorUpdateTemplateCreateInfo) PassValue() (C.VkDescriptorUpdateTem
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DescriptorUpdateTemplateCreateInfo) Deref() {
- if x.ref2af95951 == nil {
+func (x *ImageViewASTCDecodeMode) Deref() {
+ if x.ref3a973fc0 == nil {
return
}
- x.SType = (StructureType)(x.ref2af95951.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref2af95951.pNext))
- x.Flags = (DescriptorUpdateTemplateCreateFlags)(x.ref2af95951.flags)
- x.DescriptorUpdateEntryCount = (uint32)(x.ref2af95951.descriptorUpdateEntryCount)
- packSDescriptorUpdateTemplateEntry(x.PDescriptorUpdateEntries, x.ref2af95951.pDescriptorUpdateEntries)
- x.TemplateType = (DescriptorUpdateTemplateType)(x.ref2af95951.templateType)
- x.DescriptorSetLayout = *(*DescriptorSetLayout)(unsafe.Pointer(&x.ref2af95951.descriptorSetLayout))
- x.PipelineBindPoint = (PipelineBindPoint)(x.ref2af95951.pipelineBindPoint)
- x.PipelineLayout = *(*PipelineLayout)(unsafe.Pointer(&x.ref2af95951.pipelineLayout))
- x.Set = (uint32)(x.ref2af95951.set)
+ x.SType = (StructureType)(x.ref3a973fc0.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref3a973fc0.pNext))
+ x.DecodeMode = (Format)(x.ref3a973fc0.decodeMode)
}
-// allocExternalMemoryPropertiesMemory allocates memory for type C.VkExternalMemoryProperties in C.
+// allocPhysicalDeviceASTCDecodeFeaturesMemory allocates memory for type C.VkPhysicalDeviceASTCDecodeFeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocExternalMemoryPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExternalMemoryPropertiesValue))
+func allocPhysicalDeviceASTCDecodeFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceASTCDecodeFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfExternalMemoryPropertiesValue = unsafe.Sizeof([1]C.VkExternalMemoryProperties{})
+const sizeOfPhysicalDeviceASTCDecodeFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceASTCDecodeFeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ExternalMemoryProperties) Ref() *C.VkExternalMemoryProperties {
+func (x *PhysicalDeviceASTCDecodeFeatures) Ref() *C.VkPhysicalDeviceASTCDecodeFeaturesEXT {
if x == nil {
return nil
}
- return x.ref4b738f01
+ return x.refd8af7d5a
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ExternalMemoryProperties) Free() {
- if x != nil && x.allocs4b738f01 != nil {
- x.allocs4b738f01.(*cgoAllocMap).Free()
- x.ref4b738f01 = nil
+func (x *PhysicalDeviceASTCDecodeFeatures) Free() {
+ if x != nil && x.allocsd8af7d5a != nil {
+ x.allocsd8af7d5a.(*cgoAllocMap).Free()
+ x.refd8af7d5a = nil
}
}
-// NewExternalMemoryPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceASTCDecodeFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewExternalMemoryPropertiesRef(ref unsafe.Pointer) *ExternalMemoryProperties {
+func NewPhysicalDeviceASTCDecodeFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceASTCDecodeFeatures {
if ref == nil {
return nil
}
- obj := new(ExternalMemoryProperties)
- obj.ref4b738f01 = (*C.VkExternalMemoryProperties)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceASTCDecodeFeatures)
+ obj.refd8af7d5a = (*C.VkPhysicalDeviceASTCDecodeFeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ExternalMemoryProperties) PassRef() (*C.VkExternalMemoryProperties, *cgoAllocMap) {
+func (x *PhysicalDeviceASTCDecodeFeatures) PassRef() (*C.VkPhysicalDeviceASTCDecodeFeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref4b738f01 != nil {
- return x.ref4b738f01, nil
+ } else if x.refd8af7d5a != nil {
+ return x.refd8af7d5a, nil
}
- mem4b738f01 := allocExternalMemoryPropertiesMemory(1)
- ref4b738f01 := (*C.VkExternalMemoryProperties)(mem4b738f01)
- allocs4b738f01 := new(cgoAllocMap)
- allocs4b738f01.Add(mem4b738f01)
+ memd8af7d5a := allocPhysicalDeviceASTCDecodeFeaturesMemory(1)
+ refd8af7d5a := (*C.VkPhysicalDeviceASTCDecodeFeaturesEXT)(memd8af7d5a)
+ allocsd8af7d5a := new(cgoAllocMap)
+ allocsd8af7d5a.Add(memd8af7d5a)
- var cexternalMemoryFeatures_allocs *cgoAllocMap
- ref4b738f01.externalMemoryFeatures, cexternalMemoryFeatures_allocs = (C.VkExternalMemoryFeatureFlags)(x.ExternalMemoryFeatures), cgoAllocsUnknown
- allocs4b738f01.Borrow(cexternalMemoryFeatures_allocs)
+ var csType_allocs *cgoAllocMap
+ refd8af7d5a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd8af7d5a.Borrow(csType_allocs)
- var cexportFromImportedHandleTypes_allocs *cgoAllocMap
- ref4b738f01.exportFromImportedHandleTypes, cexportFromImportedHandleTypes_allocs = (C.VkExternalMemoryHandleTypeFlags)(x.ExportFromImportedHandleTypes), cgoAllocsUnknown
- allocs4b738f01.Borrow(cexportFromImportedHandleTypes_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refd8af7d5a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsd8af7d5a.Borrow(cpNext_allocs)
- var ccompatibleHandleTypes_allocs *cgoAllocMap
- ref4b738f01.compatibleHandleTypes, ccompatibleHandleTypes_allocs = (C.VkExternalMemoryHandleTypeFlags)(x.CompatibleHandleTypes), cgoAllocsUnknown
- allocs4b738f01.Borrow(ccompatibleHandleTypes_allocs)
+ var cdecodeModeSharedExponent_allocs *cgoAllocMap
+ refd8af7d5a.decodeModeSharedExponent, cdecodeModeSharedExponent_allocs = (C.VkBool32)(x.DecodeModeSharedExponent), cgoAllocsUnknown
+ allocsd8af7d5a.Borrow(cdecodeModeSharedExponent_allocs)
- x.ref4b738f01 = ref4b738f01
- x.allocs4b738f01 = allocs4b738f01
- return ref4b738f01, allocs4b738f01
+ x.refd8af7d5a = refd8af7d5a
+ x.allocsd8af7d5a = allocsd8af7d5a
+ return refd8af7d5a, allocsd8af7d5a
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ExternalMemoryProperties) PassValue() (C.VkExternalMemoryProperties, *cgoAllocMap) {
- if x.ref4b738f01 != nil {
- return *x.ref4b738f01, nil
+func (x PhysicalDeviceASTCDecodeFeatures) PassValue() (C.VkPhysicalDeviceASTCDecodeFeaturesEXT, *cgoAllocMap) {
+ if x.refd8af7d5a != nil {
+ return *x.refd8af7d5a, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -18311,90 +45189,90 @@ func (x ExternalMemoryProperties) PassValue() (C.VkExternalMemoryProperties, *cg
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ExternalMemoryProperties) Deref() {
- if x.ref4b738f01 == nil {
+func (x *PhysicalDeviceASTCDecodeFeatures) Deref() {
+ if x.refd8af7d5a == nil {
return
}
- x.ExternalMemoryFeatures = (ExternalMemoryFeatureFlags)(x.ref4b738f01.externalMemoryFeatures)
- x.ExportFromImportedHandleTypes = (ExternalMemoryHandleTypeFlags)(x.ref4b738f01.exportFromImportedHandleTypes)
- x.CompatibleHandleTypes = (ExternalMemoryHandleTypeFlags)(x.ref4b738f01.compatibleHandleTypes)
+ x.SType = (StructureType)(x.refd8af7d5a.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd8af7d5a.pNext))
+ x.DecodeModeSharedExponent = (Bool32)(x.refd8af7d5a.decodeModeSharedExponent)
}
-// allocPhysicalDeviceExternalImageFormatInfoMemory allocates memory for type C.VkPhysicalDeviceExternalImageFormatInfo in C.
+// allocPhysicalDevicePipelineRobustnessFeaturesMemory allocates memory for type C.VkPhysicalDevicePipelineRobustnessFeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceExternalImageFormatInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceExternalImageFormatInfoValue))
+func allocPhysicalDevicePipelineRobustnessFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDevicePipelineRobustnessFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceExternalImageFormatInfoValue = unsafe.Sizeof([1]C.VkPhysicalDeviceExternalImageFormatInfo{})
+const sizeOfPhysicalDevicePipelineRobustnessFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDevicePipelineRobustnessFeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceExternalImageFormatInfo) Ref() *C.VkPhysicalDeviceExternalImageFormatInfo {
+func (x *PhysicalDevicePipelineRobustnessFeatures) Ref() *C.VkPhysicalDevicePipelineRobustnessFeaturesEXT {
if x == nil {
return nil
}
- return x.refc839c724
+ return x.refdffe5c47
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceExternalImageFormatInfo) Free() {
- if x != nil && x.allocsc839c724 != nil {
- x.allocsc839c724.(*cgoAllocMap).Free()
- x.refc839c724 = nil
+func (x *PhysicalDevicePipelineRobustnessFeatures) Free() {
+ if x != nil && x.allocsdffe5c47 != nil {
+ x.allocsdffe5c47.(*cgoAllocMap).Free()
+ x.refdffe5c47 = nil
}
}
-// NewPhysicalDeviceExternalImageFormatInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDevicePipelineRobustnessFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceExternalImageFormatInfoRef(ref unsafe.Pointer) *PhysicalDeviceExternalImageFormatInfo {
+func NewPhysicalDevicePipelineRobustnessFeaturesRef(ref unsafe.Pointer) *PhysicalDevicePipelineRobustnessFeatures {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceExternalImageFormatInfo)
- obj.refc839c724 = (*C.VkPhysicalDeviceExternalImageFormatInfo)(unsafe.Pointer(ref))
+ obj := new(PhysicalDevicePipelineRobustnessFeatures)
+ obj.refdffe5c47 = (*C.VkPhysicalDevicePipelineRobustnessFeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceExternalImageFormatInfo) PassRef() (*C.VkPhysicalDeviceExternalImageFormatInfo, *cgoAllocMap) {
+func (x *PhysicalDevicePipelineRobustnessFeatures) PassRef() (*C.VkPhysicalDevicePipelineRobustnessFeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refc839c724 != nil {
- return x.refc839c724, nil
+ } else if x.refdffe5c47 != nil {
+ return x.refdffe5c47, nil
}
- memc839c724 := allocPhysicalDeviceExternalImageFormatInfoMemory(1)
- refc839c724 := (*C.VkPhysicalDeviceExternalImageFormatInfo)(memc839c724)
- allocsc839c724 := new(cgoAllocMap)
- allocsc839c724.Add(memc839c724)
+ memdffe5c47 := allocPhysicalDevicePipelineRobustnessFeaturesMemory(1)
+ refdffe5c47 := (*C.VkPhysicalDevicePipelineRobustnessFeaturesEXT)(memdffe5c47)
+ allocsdffe5c47 := new(cgoAllocMap)
+ allocsdffe5c47.Add(memdffe5c47)
var csType_allocs *cgoAllocMap
- refc839c724.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsc839c724.Borrow(csType_allocs)
+ refdffe5c47.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsdffe5c47.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refc839c724.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsc839c724.Borrow(cpNext_allocs)
+ refdffe5c47.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsdffe5c47.Borrow(cpNext_allocs)
- var chandleType_allocs *cgoAllocMap
- refc839c724.handleType, chandleType_allocs = (C.VkExternalMemoryHandleTypeFlagBits)(x.HandleType), cgoAllocsUnknown
- allocsc839c724.Borrow(chandleType_allocs)
+ var cpipelineRobustness_allocs *cgoAllocMap
+ refdffe5c47.pipelineRobustness, cpipelineRobustness_allocs = (C.VkBool32)(x.PipelineRobustness), cgoAllocsUnknown
+ allocsdffe5c47.Borrow(cpipelineRobustness_allocs)
- x.refc839c724 = refc839c724
- x.allocsc839c724 = allocsc839c724
- return refc839c724, allocsc839c724
+ x.refdffe5c47 = refdffe5c47
+ x.allocsdffe5c47 = allocsdffe5c47
+ return refdffe5c47, allocsdffe5c47
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceExternalImageFormatInfo) PassValue() (C.VkPhysicalDeviceExternalImageFormatInfo, *cgoAllocMap) {
- if x.refc839c724 != nil {
- return *x.refc839c724, nil
+func (x PhysicalDevicePipelineRobustnessFeatures) PassValue() (C.VkPhysicalDevicePipelineRobustnessFeaturesEXT, *cgoAllocMap) {
+ if x.refdffe5c47 != nil {
+ return *x.refdffe5c47, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -18402,90 +45280,102 @@ func (x PhysicalDeviceExternalImageFormatInfo) PassValue() (C.VkPhysicalDeviceEx
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceExternalImageFormatInfo) Deref() {
- if x.refc839c724 == nil {
+func (x *PhysicalDevicePipelineRobustnessFeatures) Deref() {
+ if x.refdffe5c47 == nil {
return
}
- x.SType = (StructureType)(x.refc839c724.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc839c724.pNext))
- x.HandleType = (ExternalMemoryHandleTypeFlagBits)(x.refc839c724.handleType)
+ x.SType = (StructureType)(x.refdffe5c47.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refdffe5c47.pNext))
+ x.PipelineRobustness = (Bool32)(x.refdffe5c47.pipelineRobustness)
}
-// allocExternalImageFormatPropertiesMemory allocates memory for type C.VkExternalImageFormatProperties in C.
+// allocPhysicalDevicePipelineRobustnessPropertiesMemory allocates memory for type C.VkPhysicalDevicePipelineRobustnessPropertiesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocExternalImageFormatPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExternalImageFormatPropertiesValue))
+func allocPhysicalDevicePipelineRobustnessPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDevicePipelineRobustnessPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfExternalImageFormatPropertiesValue = unsafe.Sizeof([1]C.VkExternalImageFormatProperties{})
+const sizeOfPhysicalDevicePipelineRobustnessPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDevicePipelineRobustnessPropertiesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ExternalImageFormatProperties) Ref() *C.VkExternalImageFormatProperties {
+func (x *PhysicalDevicePipelineRobustnessProperties) Ref() *C.VkPhysicalDevicePipelineRobustnessPropertiesEXT {
if x == nil {
return nil
}
- return x.refd404c4b5
+ return x.refd195872f
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ExternalImageFormatProperties) Free() {
- if x != nil && x.allocsd404c4b5 != nil {
- x.allocsd404c4b5.(*cgoAllocMap).Free()
- x.refd404c4b5 = nil
+func (x *PhysicalDevicePipelineRobustnessProperties) Free() {
+ if x != nil && x.allocsd195872f != nil {
+ x.allocsd195872f.(*cgoAllocMap).Free()
+ x.refd195872f = nil
}
}
-// NewExternalImageFormatPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDevicePipelineRobustnessPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewExternalImageFormatPropertiesRef(ref unsafe.Pointer) *ExternalImageFormatProperties {
+func NewPhysicalDevicePipelineRobustnessPropertiesRef(ref unsafe.Pointer) *PhysicalDevicePipelineRobustnessProperties {
if ref == nil {
return nil
}
- obj := new(ExternalImageFormatProperties)
- obj.refd404c4b5 = (*C.VkExternalImageFormatProperties)(unsafe.Pointer(ref))
+ obj := new(PhysicalDevicePipelineRobustnessProperties)
+ obj.refd195872f = (*C.VkPhysicalDevicePipelineRobustnessPropertiesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ExternalImageFormatProperties) PassRef() (*C.VkExternalImageFormatProperties, *cgoAllocMap) {
+func (x *PhysicalDevicePipelineRobustnessProperties) PassRef() (*C.VkPhysicalDevicePipelineRobustnessPropertiesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refd404c4b5 != nil {
- return x.refd404c4b5, nil
+ } else if x.refd195872f != nil {
+ return x.refd195872f, nil
}
- memd404c4b5 := allocExternalImageFormatPropertiesMemory(1)
- refd404c4b5 := (*C.VkExternalImageFormatProperties)(memd404c4b5)
- allocsd404c4b5 := new(cgoAllocMap)
- allocsd404c4b5.Add(memd404c4b5)
+ memd195872f := allocPhysicalDevicePipelineRobustnessPropertiesMemory(1)
+ refd195872f := (*C.VkPhysicalDevicePipelineRobustnessPropertiesEXT)(memd195872f)
+ allocsd195872f := new(cgoAllocMap)
+ allocsd195872f.Add(memd195872f)
var csType_allocs *cgoAllocMap
- refd404c4b5.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsd404c4b5.Borrow(csType_allocs)
+ refd195872f.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd195872f.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refd404c4b5.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsd404c4b5.Borrow(cpNext_allocs)
+ refd195872f.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsd195872f.Borrow(cpNext_allocs)
- var cexternalMemoryProperties_allocs *cgoAllocMap
- refd404c4b5.externalMemoryProperties, cexternalMemoryProperties_allocs = x.ExternalMemoryProperties.PassValue()
- allocsd404c4b5.Borrow(cexternalMemoryProperties_allocs)
+ var cdefaultRobustnessStorageBuffers_allocs *cgoAllocMap
+ refd195872f.defaultRobustnessStorageBuffers, cdefaultRobustnessStorageBuffers_allocs = (C.VkPipelineRobustnessBufferBehaviorEXT)(x.DefaultRobustnessStorageBuffers), cgoAllocsUnknown
+ allocsd195872f.Borrow(cdefaultRobustnessStorageBuffers_allocs)
- x.refd404c4b5 = refd404c4b5
- x.allocsd404c4b5 = allocsd404c4b5
- return refd404c4b5, allocsd404c4b5
+ var cdefaultRobustnessUniformBuffers_allocs *cgoAllocMap
+ refd195872f.defaultRobustnessUniformBuffers, cdefaultRobustnessUniformBuffers_allocs = (C.VkPipelineRobustnessBufferBehaviorEXT)(x.DefaultRobustnessUniformBuffers), cgoAllocsUnknown
+ allocsd195872f.Borrow(cdefaultRobustnessUniformBuffers_allocs)
+
+ var cdefaultRobustnessVertexInputs_allocs *cgoAllocMap
+ refd195872f.defaultRobustnessVertexInputs, cdefaultRobustnessVertexInputs_allocs = (C.VkPipelineRobustnessBufferBehaviorEXT)(x.DefaultRobustnessVertexInputs), cgoAllocsUnknown
+ allocsd195872f.Borrow(cdefaultRobustnessVertexInputs_allocs)
+
+ var cdefaultRobustnessImages_allocs *cgoAllocMap
+ refd195872f.defaultRobustnessImages, cdefaultRobustnessImages_allocs = (C.VkPipelineRobustnessImageBehaviorEXT)(x.DefaultRobustnessImages), cgoAllocsUnknown
+ allocsd195872f.Borrow(cdefaultRobustnessImages_allocs)
+
+ x.refd195872f = refd195872f
+ x.allocsd195872f = allocsd195872f
+ return refd195872f, allocsd195872f
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ExternalImageFormatProperties) PassValue() (C.VkExternalImageFormatProperties, *cgoAllocMap) {
- if x.refd404c4b5 != nil {
- return *x.refd404c4b5, nil
+func (x PhysicalDevicePipelineRobustnessProperties) PassValue() (C.VkPhysicalDevicePipelineRobustnessPropertiesEXT, *cgoAllocMap) {
+ if x.refd195872f != nil {
+ return *x.refd195872f, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -18493,98 +45383,105 @@ func (x ExternalImageFormatProperties) PassValue() (C.VkExternalImageFormatPrope
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ExternalImageFormatProperties) Deref() {
- if x.refd404c4b5 == nil {
+func (x *PhysicalDevicePipelineRobustnessProperties) Deref() {
+ if x.refd195872f == nil {
return
}
- x.SType = (StructureType)(x.refd404c4b5.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd404c4b5.pNext))
- x.ExternalMemoryProperties = *NewExternalMemoryPropertiesRef(unsafe.Pointer(&x.refd404c4b5.externalMemoryProperties))
+ x.SType = (StructureType)(x.refd195872f.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd195872f.pNext))
+ x.DefaultRobustnessStorageBuffers = (PipelineRobustnessBufferBehavior)(x.refd195872f.defaultRobustnessStorageBuffers)
+ x.DefaultRobustnessUniformBuffers = (PipelineRobustnessBufferBehavior)(x.refd195872f.defaultRobustnessUniformBuffers)
+ x.DefaultRobustnessVertexInputs = (PipelineRobustnessBufferBehavior)(x.refd195872f.defaultRobustnessVertexInputs)
+ x.DefaultRobustnessImages = (PipelineRobustnessImageBehavior)(x.refd195872f.defaultRobustnessImages)
}
-// allocPhysicalDeviceExternalBufferInfoMemory allocates memory for type C.VkPhysicalDeviceExternalBufferInfo in C.
+// allocPipelineRobustnessCreateInfoMemory allocates memory for type C.VkPipelineRobustnessCreateInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceExternalBufferInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceExternalBufferInfoValue))
+func allocPipelineRobustnessCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineRobustnessCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceExternalBufferInfoValue = unsafe.Sizeof([1]C.VkPhysicalDeviceExternalBufferInfo{})
+const sizeOfPipelineRobustnessCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineRobustnessCreateInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceExternalBufferInfo) Ref() *C.VkPhysicalDeviceExternalBufferInfo {
+func (x *PipelineRobustnessCreateInfo) Ref() *C.VkPipelineRobustnessCreateInfoEXT {
if x == nil {
return nil
}
- return x.ref8d758947
+ return x.ref1e4549a1
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceExternalBufferInfo) Free() {
- if x != nil && x.allocs8d758947 != nil {
- x.allocs8d758947.(*cgoAllocMap).Free()
- x.ref8d758947 = nil
+func (x *PipelineRobustnessCreateInfo) Free() {
+ if x != nil && x.allocs1e4549a1 != nil {
+ x.allocs1e4549a1.(*cgoAllocMap).Free()
+ x.ref1e4549a1 = nil
}
}
-// NewPhysicalDeviceExternalBufferInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineRobustnessCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceExternalBufferInfoRef(ref unsafe.Pointer) *PhysicalDeviceExternalBufferInfo {
+func NewPipelineRobustnessCreateInfoRef(ref unsafe.Pointer) *PipelineRobustnessCreateInfo {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceExternalBufferInfo)
- obj.ref8d758947 = (*C.VkPhysicalDeviceExternalBufferInfo)(unsafe.Pointer(ref))
+ obj := new(PipelineRobustnessCreateInfo)
+ obj.ref1e4549a1 = (*C.VkPipelineRobustnessCreateInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceExternalBufferInfo) PassRef() (*C.VkPhysicalDeviceExternalBufferInfo, *cgoAllocMap) {
+func (x *PipelineRobustnessCreateInfo) PassRef() (*C.VkPipelineRobustnessCreateInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref8d758947 != nil {
- return x.ref8d758947, nil
+ } else if x.ref1e4549a1 != nil {
+ return x.ref1e4549a1, nil
}
- mem8d758947 := allocPhysicalDeviceExternalBufferInfoMemory(1)
- ref8d758947 := (*C.VkPhysicalDeviceExternalBufferInfo)(mem8d758947)
- allocs8d758947 := new(cgoAllocMap)
- allocs8d758947.Add(mem8d758947)
+ mem1e4549a1 := allocPipelineRobustnessCreateInfoMemory(1)
+ ref1e4549a1 := (*C.VkPipelineRobustnessCreateInfoEXT)(mem1e4549a1)
+ allocs1e4549a1 := new(cgoAllocMap)
+ allocs1e4549a1.Add(mem1e4549a1)
var csType_allocs *cgoAllocMap
- ref8d758947.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs8d758947.Borrow(csType_allocs)
+ ref1e4549a1.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs1e4549a1.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref8d758947.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs8d758947.Borrow(cpNext_allocs)
+ ref1e4549a1.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs1e4549a1.Borrow(cpNext_allocs)
- var cflags_allocs *cgoAllocMap
- ref8d758947.flags, cflags_allocs = (C.VkBufferCreateFlags)(x.Flags), cgoAllocsUnknown
- allocs8d758947.Borrow(cflags_allocs)
+ var cstorageBuffers_allocs *cgoAllocMap
+ ref1e4549a1.storageBuffers, cstorageBuffers_allocs = (C.VkPipelineRobustnessBufferBehaviorEXT)(x.StorageBuffers), cgoAllocsUnknown
+ allocs1e4549a1.Borrow(cstorageBuffers_allocs)
- var cusage_allocs *cgoAllocMap
- ref8d758947.usage, cusage_allocs = (C.VkBufferUsageFlags)(x.Usage), cgoAllocsUnknown
- allocs8d758947.Borrow(cusage_allocs)
+ var cuniformBuffers_allocs *cgoAllocMap
+ ref1e4549a1.uniformBuffers, cuniformBuffers_allocs = (C.VkPipelineRobustnessBufferBehaviorEXT)(x.UniformBuffers), cgoAllocsUnknown
+ allocs1e4549a1.Borrow(cuniformBuffers_allocs)
- var chandleType_allocs *cgoAllocMap
- ref8d758947.handleType, chandleType_allocs = (C.VkExternalMemoryHandleTypeFlagBits)(x.HandleType), cgoAllocsUnknown
- allocs8d758947.Borrow(chandleType_allocs)
+ var cvertexInputs_allocs *cgoAllocMap
+ ref1e4549a1.vertexInputs, cvertexInputs_allocs = (C.VkPipelineRobustnessBufferBehaviorEXT)(x.VertexInputs), cgoAllocsUnknown
+ allocs1e4549a1.Borrow(cvertexInputs_allocs)
- x.ref8d758947 = ref8d758947
- x.allocs8d758947 = allocs8d758947
- return ref8d758947, allocs8d758947
+ var cimages_allocs *cgoAllocMap
+ ref1e4549a1.images, cimages_allocs = (C.VkPipelineRobustnessImageBehaviorEXT)(x.Images), cgoAllocsUnknown
+ allocs1e4549a1.Borrow(cimages_allocs)
+
+ x.ref1e4549a1 = ref1e4549a1
+ x.allocs1e4549a1 = allocs1e4549a1
+ return ref1e4549a1, allocs1e4549a1
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceExternalBufferInfo) PassValue() (C.VkPhysicalDeviceExternalBufferInfo, *cgoAllocMap) {
- if x.ref8d758947 != nil {
- return *x.ref8d758947, nil
+func (x PipelineRobustnessCreateInfo) PassValue() (C.VkPipelineRobustnessCreateInfoEXT, *cgoAllocMap) {
+ if x.ref1e4549a1 != nil {
+ return *x.ref1e4549a1, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -18592,92 +45489,101 @@ func (x PhysicalDeviceExternalBufferInfo) PassValue() (C.VkPhysicalDeviceExterna
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceExternalBufferInfo) Deref() {
- if x.ref8d758947 == nil {
+func (x *PipelineRobustnessCreateInfo) Deref() {
+ if x.ref1e4549a1 == nil {
return
}
- x.SType = (StructureType)(x.ref8d758947.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref8d758947.pNext))
- x.Flags = (BufferCreateFlags)(x.ref8d758947.flags)
- x.Usage = (BufferUsageFlags)(x.ref8d758947.usage)
- x.HandleType = (ExternalMemoryHandleTypeFlagBits)(x.ref8d758947.handleType)
+ x.SType = (StructureType)(x.ref1e4549a1.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref1e4549a1.pNext))
+ x.StorageBuffers = (PipelineRobustnessBufferBehavior)(x.ref1e4549a1.storageBuffers)
+ x.UniformBuffers = (PipelineRobustnessBufferBehavior)(x.ref1e4549a1.uniformBuffers)
+ x.VertexInputs = (PipelineRobustnessBufferBehavior)(x.ref1e4549a1.vertexInputs)
+ x.Images = (PipelineRobustnessImageBehavior)(x.ref1e4549a1.images)
}
-// allocExternalBufferPropertiesMemory allocates memory for type C.VkExternalBufferProperties in C.
+// allocConditionalRenderingBeginInfoMemory allocates memory for type C.VkConditionalRenderingBeginInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocExternalBufferPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExternalBufferPropertiesValue))
+func allocConditionalRenderingBeginInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfConditionalRenderingBeginInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfExternalBufferPropertiesValue = unsafe.Sizeof([1]C.VkExternalBufferProperties{})
+const sizeOfConditionalRenderingBeginInfoValue = unsafe.Sizeof([1]C.VkConditionalRenderingBeginInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ExternalBufferProperties) Ref() *C.VkExternalBufferProperties {
+func (x *ConditionalRenderingBeginInfo) Ref() *C.VkConditionalRenderingBeginInfoEXT {
if x == nil {
return nil
}
- return x.ref12f7c546
+ return x.ref82da87c9
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ExternalBufferProperties) Free() {
- if x != nil && x.allocs12f7c546 != nil {
- x.allocs12f7c546.(*cgoAllocMap).Free()
- x.ref12f7c546 = nil
+func (x *ConditionalRenderingBeginInfo) Free() {
+ if x != nil && x.allocs82da87c9 != nil {
+ x.allocs82da87c9.(*cgoAllocMap).Free()
+ x.ref82da87c9 = nil
}
}
-// NewExternalBufferPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewConditionalRenderingBeginInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewExternalBufferPropertiesRef(ref unsafe.Pointer) *ExternalBufferProperties {
+func NewConditionalRenderingBeginInfoRef(ref unsafe.Pointer) *ConditionalRenderingBeginInfo {
if ref == nil {
return nil
}
- obj := new(ExternalBufferProperties)
- obj.ref12f7c546 = (*C.VkExternalBufferProperties)(unsafe.Pointer(ref))
+ obj := new(ConditionalRenderingBeginInfo)
+ obj.ref82da87c9 = (*C.VkConditionalRenderingBeginInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ExternalBufferProperties) PassRef() (*C.VkExternalBufferProperties, *cgoAllocMap) {
+func (x *ConditionalRenderingBeginInfo) PassRef() (*C.VkConditionalRenderingBeginInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref12f7c546 != nil {
- return x.ref12f7c546, nil
+ } else if x.ref82da87c9 != nil {
+ return x.ref82da87c9, nil
}
- mem12f7c546 := allocExternalBufferPropertiesMemory(1)
- ref12f7c546 := (*C.VkExternalBufferProperties)(mem12f7c546)
- allocs12f7c546 := new(cgoAllocMap)
- allocs12f7c546.Add(mem12f7c546)
+ mem82da87c9 := allocConditionalRenderingBeginInfoMemory(1)
+ ref82da87c9 := (*C.VkConditionalRenderingBeginInfoEXT)(mem82da87c9)
+ allocs82da87c9 := new(cgoAllocMap)
+ allocs82da87c9.Add(mem82da87c9)
var csType_allocs *cgoAllocMap
- ref12f7c546.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs12f7c546.Borrow(csType_allocs)
+ ref82da87c9.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs82da87c9.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref12f7c546.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs12f7c546.Borrow(cpNext_allocs)
+ ref82da87c9.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs82da87c9.Borrow(cpNext_allocs)
- var cexternalMemoryProperties_allocs *cgoAllocMap
- ref12f7c546.externalMemoryProperties, cexternalMemoryProperties_allocs = x.ExternalMemoryProperties.PassValue()
- allocs12f7c546.Borrow(cexternalMemoryProperties_allocs)
+ var cbuffer_allocs *cgoAllocMap
+ ref82da87c9.buffer, cbuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.Buffer)), cgoAllocsUnknown
+ allocs82da87c9.Borrow(cbuffer_allocs)
- x.ref12f7c546 = ref12f7c546
- x.allocs12f7c546 = allocs12f7c546
- return ref12f7c546, allocs12f7c546
+ var coffset_allocs *cgoAllocMap
+ ref82da87c9.offset, coffset_allocs = (C.VkDeviceSize)(x.Offset), cgoAllocsUnknown
+ allocs82da87c9.Borrow(coffset_allocs)
+
+ var cflags_allocs *cgoAllocMap
+ ref82da87c9.flags, cflags_allocs = (C.VkConditionalRenderingFlagsEXT)(x.Flags), cgoAllocsUnknown
+ allocs82da87c9.Borrow(cflags_allocs)
+
+ x.ref82da87c9 = ref82da87c9
+ x.allocs82da87c9 = allocs82da87c9
+ return ref82da87c9, allocs82da87c9
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ExternalBufferProperties) PassValue() (C.VkExternalBufferProperties, *cgoAllocMap) {
- if x.ref12f7c546 != nil {
- return *x.ref12f7c546, nil
+func (x ConditionalRenderingBeginInfo) PassValue() (C.VkConditionalRenderingBeginInfoEXT, *cgoAllocMap) {
+ if x.ref82da87c9 != nil {
+ return *x.ref82da87c9, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -18685,106 +45591,96 @@ func (x ExternalBufferProperties) PassValue() (C.VkExternalBufferProperties, *cg
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ExternalBufferProperties) Deref() {
- if x.ref12f7c546 == nil {
+func (x *ConditionalRenderingBeginInfo) Deref() {
+ if x.ref82da87c9 == nil {
return
}
- x.SType = (StructureType)(x.ref12f7c546.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref12f7c546.pNext))
- x.ExternalMemoryProperties = *NewExternalMemoryPropertiesRef(unsafe.Pointer(&x.ref12f7c546.externalMemoryProperties))
+ x.SType = (StructureType)(x.ref82da87c9.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref82da87c9.pNext))
+ x.Buffer = *(*Buffer)(unsafe.Pointer(&x.ref82da87c9.buffer))
+ x.Offset = (DeviceSize)(x.ref82da87c9.offset)
+ x.Flags = (ConditionalRenderingFlags)(x.ref82da87c9.flags)
}
-// allocPhysicalDeviceIDPropertiesMemory allocates memory for type C.VkPhysicalDeviceIDProperties in C.
+// allocPhysicalDeviceConditionalRenderingFeaturesMemory allocates memory for type C.VkPhysicalDeviceConditionalRenderingFeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceIDPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceIDPropertiesValue))
+func allocPhysicalDeviceConditionalRenderingFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceConditionalRenderingFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceIDPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceIDProperties{})
+const sizeOfPhysicalDeviceConditionalRenderingFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceConditionalRenderingFeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceIDProperties) Ref() *C.VkPhysicalDeviceIDProperties {
+func (x *PhysicalDeviceConditionalRenderingFeatures) Ref() *C.VkPhysicalDeviceConditionalRenderingFeaturesEXT {
if x == nil {
return nil
}
- return x.refe990a9f3
+ return x.ref89d2a224
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceIDProperties) Free() {
- if x != nil && x.allocse990a9f3 != nil {
- x.allocse990a9f3.(*cgoAllocMap).Free()
- x.refe990a9f3 = nil
+func (x *PhysicalDeviceConditionalRenderingFeatures) Free() {
+ if x != nil && x.allocs89d2a224 != nil {
+ x.allocs89d2a224.(*cgoAllocMap).Free()
+ x.ref89d2a224 = nil
}
}
-// NewPhysicalDeviceIDPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceConditionalRenderingFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceIDPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceIDProperties {
+func NewPhysicalDeviceConditionalRenderingFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceConditionalRenderingFeatures {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceIDProperties)
- obj.refe990a9f3 = (*C.VkPhysicalDeviceIDProperties)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceConditionalRenderingFeatures)
+ obj.ref89d2a224 = (*C.VkPhysicalDeviceConditionalRenderingFeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceIDProperties) PassRef() (*C.VkPhysicalDeviceIDProperties, *cgoAllocMap) {
+func (x *PhysicalDeviceConditionalRenderingFeatures) PassRef() (*C.VkPhysicalDeviceConditionalRenderingFeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refe990a9f3 != nil {
- return x.refe990a9f3, nil
+ } else if x.ref89d2a224 != nil {
+ return x.ref89d2a224, nil
}
- meme990a9f3 := allocPhysicalDeviceIDPropertiesMemory(1)
- refe990a9f3 := (*C.VkPhysicalDeviceIDProperties)(meme990a9f3)
- allocse990a9f3 := new(cgoAllocMap)
- allocse990a9f3.Add(meme990a9f3)
+ mem89d2a224 := allocPhysicalDeviceConditionalRenderingFeaturesMemory(1)
+ ref89d2a224 := (*C.VkPhysicalDeviceConditionalRenderingFeaturesEXT)(mem89d2a224)
+ allocs89d2a224 := new(cgoAllocMap)
+ allocs89d2a224.Add(mem89d2a224)
var csType_allocs *cgoAllocMap
- refe990a9f3.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocse990a9f3.Borrow(csType_allocs)
+ ref89d2a224.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs89d2a224.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refe990a9f3.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocse990a9f3.Borrow(cpNext_allocs)
-
- var cdeviceUUID_allocs *cgoAllocMap
- refe990a9f3.deviceUUID, cdeviceUUID_allocs = *(*[16]C.uint8_t)(unsafe.Pointer(&x.DeviceUUID)), cgoAllocsUnknown
- allocse990a9f3.Borrow(cdeviceUUID_allocs)
-
- var cdriverUUID_allocs *cgoAllocMap
- refe990a9f3.driverUUID, cdriverUUID_allocs = *(*[16]C.uint8_t)(unsafe.Pointer(&x.DriverUUID)), cgoAllocsUnknown
- allocse990a9f3.Borrow(cdriverUUID_allocs)
-
- var cdeviceLUID_allocs *cgoAllocMap
- refe990a9f3.deviceLUID, cdeviceLUID_allocs = *(*[8]C.uint8_t)(unsafe.Pointer(&x.DeviceLUID)), cgoAllocsUnknown
- allocse990a9f3.Borrow(cdeviceLUID_allocs)
+ ref89d2a224.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs89d2a224.Borrow(cpNext_allocs)
- var cdeviceNodeMask_allocs *cgoAllocMap
- refe990a9f3.deviceNodeMask, cdeviceNodeMask_allocs = (C.uint32_t)(x.DeviceNodeMask), cgoAllocsUnknown
- allocse990a9f3.Borrow(cdeviceNodeMask_allocs)
+ var cconditionalRendering_allocs *cgoAllocMap
+ ref89d2a224.conditionalRendering, cconditionalRendering_allocs = (C.VkBool32)(x.ConditionalRendering), cgoAllocsUnknown
+ allocs89d2a224.Borrow(cconditionalRendering_allocs)
- var cdeviceLUIDValid_allocs *cgoAllocMap
- refe990a9f3.deviceLUIDValid, cdeviceLUIDValid_allocs = (C.VkBool32)(x.DeviceLUIDValid), cgoAllocsUnknown
- allocse990a9f3.Borrow(cdeviceLUIDValid_allocs)
+ var cinheritedConditionalRendering_allocs *cgoAllocMap
+ ref89d2a224.inheritedConditionalRendering, cinheritedConditionalRendering_allocs = (C.VkBool32)(x.InheritedConditionalRendering), cgoAllocsUnknown
+ allocs89d2a224.Borrow(cinheritedConditionalRendering_allocs)
- x.refe990a9f3 = refe990a9f3
- x.allocse990a9f3 = allocse990a9f3
- return refe990a9f3, allocse990a9f3
+ x.ref89d2a224 = ref89d2a224
+ x.allocs89d2a224 = allocs89d2a224
+ return ref89d2a224, allocs89d2a224
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceIDProperties) PassValue() (C.VkPhysicalDeviceIDProperties, *cgoAllocMap) {
- if x.refe990a9f3 != nil {
- return *x.refe990a9f3, nil
+func (x PhysicalDeviceConditionalRenderingFeatures) PassValue() (C.VkPhysicalDeviceConditionalRenderingFeaturesEXT, *cgoAllocMap) {
+ if x.ref89d2a224 != nil {
+ return *x.ref89d2a224, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -18792,94 +45688,91 @@ func (x PhysicalDeviceIDProperties) PassValue() (C.VkPhysicalDeviceIDProperties,
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceIDProperties) Deref() {
- if x.refe990a9f3 == nil {
+func (x *PhysicalDeviceConditionalRenderingFeatures) Deref() {
+ if x.ref89d2a224 == nil {
return
}
- x.SType = (StructureType)(x.refe990a9f3.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refe990a9f3.pNext))
- x.DeviceUUID = *(*[16]byte)(unsafe.Pointer(&x.refe990a9f3.deviceUUID))
- x.DriverUUID = *(*[16]byte)(unsafe.Pointer(&x.refe990a9f3.driverUUID))
- x.DeviceLUID = *(*[8]byte)(unsafe.Pointer(&x.refe990a9f3.deviceLUID))
- x.DeviceNodeMask = (uint32)(x.refe990a9f3.deviceNodeMask)
- x.DeviceLUIDValid = (Bool32)(x.refe990a9f3.deviceLUIDValid)
+ x.SType = (StructureType)(x.ref89d2a224.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref89d2a224.pNext))
+ x.ConditionalRendering = (Bool32)(x.ref89d2a224.conditionalRendering)
+ x.InheritedConditionalRendering = (Bool32)(x.ref89d2a224.inheritedConditionalRendering)
}
-// allocExternalMemoryImageCreateInfoMemory allocates memory for type C.VkExternalMemoryImageCreateInfo in C.
+// allocCommandBufferInheritanceConditionalRenderingInfoMemory allocates memory for type C.VkCommandBufferInheritanceConditionalRenderingInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocExternalMemoryImageCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExternalMemoryImageCreateInfoValue))
+func allocCommandBufferInheritanceConditionalRenderingInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCommandBufferInheritanceConditionalRenderingInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfExternalMemoryImageCreateInfoValue = unsafe.Sizeof([1]C.VkExternalMemoryImageCreateInfo{})
+const sizeOfCommandBufferInheritanceConditionalRenderingInfoValue = unsafe.Sizeof([1]C.VkCommandBufferInheritanceConditionalRenderingInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ExternalMemoryImageCreateInfo) Ref() *C.VkExternalMemoryImageCreateInfo {
+func (x *CommandBufferInheritanceConditionalRenderingInfo) Ref() *C.VkCommandBufferInheritanceConditionalRenderingInfoEXT {
if x == nil {
return nil
}
- return x.refdaf1185e
+ return x.ref7155f49c
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ExternalMemoryImageCreateInfo) Free() {
- if x != nil && x.allocsdaf1185e != nil {
- x.allocsdaf1185e.(*cgoAllocMap).Free()
- x.refdaf1185e = nil
+func (x *CommandBufferInheritanceConditionalRenderingInfo) Free() {
+ if x != nil && x.allocs7155f49c != nil {
+ x.allocs7155f49c.(*cgoAllocMap).Free()
+ x.ref7155f49c = nil
}
}
-// NewExternalMemoryImageCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewCommandBufferInheritanceConditionalRenderingInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewExternalMemoryImageCreateInfoRef(ref unsafe.Pointer) *ExternalMemoryImageCreateInfo {
+func NewCommandBufferInheritanceConditionalRenderingInfoRef(ref unsafe.Pointer) *CommandBufferInheritanceConditionalRenderingInfo {
if ref == nil {
return nil
}
- obj := new(ExternalMemoryImageCreateInfo)
- obj.refdaf1185e = (*C.VkExternalMemoryImageCreateInfo)(unsafe.Pointer(ref))
+ obj := new(CommandBufferInheritanceConditionalRenderingInfo)
+ obj.ref7155f49c = (*C.VkCommandBufferInheritanceConditionalRenderingInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ExternalMemoryImageCreateInfo) PassRef() (*C.VkExternalMemoryImageCreateInfo, *cgoAllocMap) {
+func (x *CommandBufferInheritanceConditionalRenderingInfo) PassRef() (*C.VkCommandBufferInheritanceConditionalRenderingInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refdaf1185e != nil {
- return x.refdaf1185e, nil
+ } else if x.ref7155f49c != nil {
+ return x.ref7155f49c, nil
}
- memdaf1185e := allocExternalMemoryImageCreateInfoMemory(1)
- refdaf1185e := (*C.VkExternalMemoryImageCreateInfo)(memdaf1185e)
- allocsdaf1185e := new(cgoAllocMap)
- allocsdaf1185e.Add(memdaf1185e)
+ mem7155f49c := allocCommandBufferInheritanceConditionalRenderingInfoMemory(1)
+ ref7155f49c := (*C.VkCommandBufferInheritanceConditionalRenderingInfoEXT)(mem7155f49c)
+ allocs7155f49c := new(cgoAllocMap)
+ allocs7155f49c.Add(mem7155f49c)
var csType_allocs *cgoAllocMap
- refdaf1185e.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsdaf1185e.Borrow(csType_allocs)
+ ref7155f49c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs7155f49c.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refdaf1185e.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsdaf1185e.Borrow(cpNext_allocs)
+ ref7155f49c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs7155f49c.Borrow(cpNext_allocs)
- var chandleTypes_allocs *cgoAllocMap
- refdaf1185e.handleTypes, chandleTypes_allocs = (C.VkExternalMemoryHandleTypeFlags)(x.HandleTypes), cgoAllocsUnknown
- allocsdaf1185e.Borrow(chandleTypes_allocs)
+ var cconditionalRenderingEnable_allocs *cgoAllocMap
+ ref7155f49c.conditionalRenderingEnable, cconditionalRenderingEnable_allocs = (C.VkBool32)(x.ConditionalRenderingEnable), cgoAllocsUnknown
+ allocs7155f49c.Borrow(cconditionalRenderingEnable_allocs)
- x.refdaf1185e = refdaf1185e
- x.allocsdaf1185e = allocsdaf1185e
- return refdaf1185e, allocsdaf1185e
+ x.ref7155f49c = ref7155f49c
+ x.allocs7155f49c = allocs7155f49c
+ return ref7155f49c, allocs7155f49c
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ExternalMemoryImageCreateInfo) PassValue() (C.VkExternalMemoryImageCreateInfo, *cgoAllocMap) {
- if x.refdaf1185e != nil {
- return *x.refdaf1185e, nil
+func (x CommandBufferInheritanceConditionalRenderingInfo) PassValue() (C.VkCommandBufferInheritanceConditionalRenderingInfoEXT, *cgoAllocMap) {
+ if x.ref7155f49c != nil {
+ return *x.ref7155f49c, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -18887,90 +45780,86 @@ func (x ExternalMemoryImageCreateInfo) PassValue() (C.VkExternalMemoryImageCreat
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ExternalMemoryImageCreateInfo) Deref() {
- if x.refdaf1185e == nil {
+func (x *CommandBufferInheritanceConditionalRenderingInfo) Deref() {
+ if x.ref7155f49c == nil {
return
}
- x.SType = (StructureType)(x.refdaf1185e.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refdaf1185e.pNext))
- x.HandleTypes = (ExternalMemoryHandleTypeFlags)(x.refdaf1185e.handleTypes)
+ x.SType = (StructureType)(x.ref7155f49c.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref7155f49c.pNext))
+ x.ConditionalRenderingEnable = (Bool32)(x.ref7155f49c.conditionalRenderingEnable)
}
-// allocExternalMemoryBufferCreateInfoMemory allocates memory for type C.VkExternalMemoryBufferCreateInfo in C.
+// allocViewportWScalingNVMemory allocates memory for type C.VkViewportWScalingNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocExternalMemoryBufferCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExternalMemoryBufferCreateInfoValue))
+func allocViewportWScalingNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfViewportWScalingNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfExternalMemoryBufferCreateInfoValue = unsafe.Sizeof([1]C.VkExternalMemoryBufferCreateInfo{})
+const sizeOfViewportWScalingNVValue = unsafe.Sizeof([1]C.VkViewportWScalingNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ExternalMemoryBufferCreateInfo) Ref() *C.VkExternalMemoryBufferCreateInfo {
+func (x *ViewportWScalingNV) Ref() *C.VkViewportWScalingNV {
if x == nil {
return nil
}
- return x.refd33a9423
+ return x.ref7ea4590f
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ExternalMemoryBufferCreateInfo) Free() {
- if x != nil && x.allocsd33a9423 != nil {
- x.allocsd33a9423.(*cgoAllocMap).Free()
- x.refd33a9423 = nil
+func (x *ViewportWScalingNV) Free() {
+ if x != nil && x.allocs7ea4590f != nil {
+ x.allocs7ea4590f.(*cgoAllocMap).Free()
+ x.ref7ea4590f = nil
}
}
-// NewExternalMemoryBufferCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewViewportWScalingNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewExternalMemoryBufferCreateInfoRef(ref unsafe.Pointer) *ExternalMemoryBufferCreateInfo {
+func NewViewportWScalingNVRef(ref unsafe.Pointer) *ViewportWScalingNV {
if ref == nil {
return nil
}
- obj := new(ExternalMemoryBufferCreateInfo)
- obj.refd33a9423 = (*C.VkExternalMemoryBufferCreateInfo)(unsafe.Pointer(ref))
+ obj := new(ViewportWScalingNV)
+ obj.ref7ea4590f = (*C.VkViewportWScalingNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ExternalMemoryBufferCreateInfo) PassRef() (*C.VkExternalMemoryBufferCreateInfo, *cgoAllocMap) {
+func (x *ViewportWScalingNV) PassRef() (*C.VkViewportWScalingNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refd33a9423 != nil {
- return x.refd33a9423, nil
+ } else if x.ref7ea4590f != nil {
+ return x.ref7ea4590f, nil
}
- memd33a9423 := allocExternalMemoryBufferCreateInfoMemory(1)
- refd33a9423 := (*C.VkExternalMemoryBufferCreateInfo)(memd33a9423)
- allocsd33a9423 := new(cgoAllocMap)
- allocsd33a9423.Add(memd33a9423)
-
- var csType_allocs *cgoAllocMap
- refd33a9423.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsd33a9423.Borrow(csType_allocs)
+ mem7ea4590f := allocViewportWScalingNVMemory(1)
+ ref7ea4590f := (*C.VkViewportWScalingNV)(mem7ea4590f)
+ allocs7ea4590f := new(cgoAllocMap)
+ allocs7ea4590f.Add(mem7ea4590f)
- var cpNext_allocs *cgoAllocMap
- refd33a9423.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsd33a9423.Borrow(cpNext_allocs)
+ var cxcoeff_allocs *cgoAllocMap
+ ref7ea4590f.xcoeff, cxcoeff_allocs = (C.float)(x.Xcoeff), cgoAllocsUnknown
+ allocs7ea4590f.Borrow(cxcoeff_allocs)
- var chandleTypes_allocs *cgoAllocMap
- refd33a9423.handleTypes, chandleTypes_allocs = (C.VkExternalMemoryHandleTypeFlags)(x.HandleTypes), cgoAllocsUnknown
- allocsd33a9423.Borrow(chandleTypes_allocs)
+ var cycoeff_allocs *cgoAllocMap
+ ref7ea4590f.ycoeff, cycoeff_allocs = (C.float)(x.Ycoeff), cgoAllocsUnknown
+ allocs7ea4590f.Borrow(cycoeff_allocs)
- x.refd33a9423 = refd33a9423
- x.allocsd33a9423 = allocsd33a9423
- return refd33a9423, allocsd33a9423
+ x.ref7ea4590f = ref7ea4590f
+ x.allocs7ea4590f = allocs7ea4590f
+ return ref7ea4590f, allocs7ea4590f
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ExternalMemoryBufferCreateInfo) PassValue() (C.VkExternalMemoryBufferCreateInfo, *cgoAllocMap) {
- if x.refd33a9423 != nil {
- return *x.refd33a9423, nil
+func (x ViewportWScalingNV) PassValue() (C.VkViewportWScalingNV, *cgoAllocMap) {
+ if x.ref7ea4590f != nil {
+ return *x.ref7ea4590f, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -18978,90 +45867,135 @@ func (x ExternalMemoryBufferCreateInfo) PassValue() (C.VkExternalMemoryBufferCre
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ExternalMemoryBufferCreateInfo) Deref() {
- if x.refd33a9423 == nil {
+func (x *ViewportWScalingNV) Deref() {
+ if x.ref7ea4590f == nil {
return
}
- x.SType = (StructureType)(x.refd33a9423.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd33a9423.pNext))
- x.HandleTypes = (ExternalMemoryHandleTypeFlags)(x.refd33a9423.handleTypes)
+ x.Xcoeff = (float32)(x.ref7ea4590f.xcoeff)
+ x.Ycoeff = (float32)(x.ref7ea4590f.ycoeff)
}
-// allocExportMemoryAllocateInfoMemory allocates memory for type C.VkExportMemoryAllocateInfo in C.
+// allocPipelineViewportWScalingStateCreateInfoNVMemory allocates memory for type C.VkPipelineViewportWScalingStateCreateInfoNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocExportMemoryAllocateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExportMemoryAllocateInfoValue))
+func allocPipelineViewportWScalingStateCreateInfoNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineViewportWScalingStateCreateInfoNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfExportMemoryAllocateInfoValue = unsafe.Sizeof([1]C.VkExportMemoryAllocateInfo{})
+const sizeOfPipelineViewportWScalingStateCreateInfoNVValue = unsafe.Sizeof([1]C.VkPipelineViewportWScalingStateCreateInfoNV{})
+
+// unpackSViewportWScalingNV transforms a sliced Go data structure into plain C format.
+func unpackSViewportWScalingNV(x []ViewportWScalingNV) (unpacked *C.VkViewportWScalingNV, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkViewportWScalingNV) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocViewportWScalingNVMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkViewportWScalingNV)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkViewportWScalingNV)(h.Data)
+ return
+}
+
+// packSViewportWScalingNV reads sliced Go data structure out from plain C format.
+func packSViewportWScalingNV(v []ViewportWScalingNV, ptr0 *C.VkViewportWScalingNV) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfViewportWScalingNVValue]C.VkViewportWScalingNV)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewViewportWScalingNVRef(unsafe.Pointer(&ptr1))
+ }
+}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ExportMemoryAllocateInfo) Ref() *C.VkExportMemoryAllocateInfo {
+func (x *PipelineViewportWScalingStateCreateInfoNV) Ref() *C.VkPipelineViewportWScalingStateCreateInfoNV {
if x == nil {
return nil
}
- return x.refeb76ec64
+ return x.ref3e532c0b
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ExportMemoryAllocateInfo) Free() {
- if x != nil && x.allocseb76ec64 != nil {
- x.allocseb76ec64.(*cgoAllocMap).Free()
- x.refeb76ec64 = nil
+func (x *PipelineViewportWScalingStateCreateInfoNV) Free() {
+ if x != nil && x.allocs3e532c0b != nil {
+ x.allocs3e532c0b.(*cgoAllocMap).Free()
+ x.ref3e532c0b = nil
}
}
-// NewExportMemoryAllocateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineViewportWScalingStateCreateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewExportMemoryAllocateInfoRef(ref unsafe.Pointer) *ExportMemoryAllocateInfo {
+func NewPipelineViewportWScalingStateCreateInfoNVRef(ref unsafe.Pointer) *PipelineViewportWScalingStateCreateInfoNV {
if ref == nil {
return nil
}
- obj := new(ExportMemoryAllocateInfo)
- obj.refeb76ec64 = (*C.VkExportMemoryAllocateInfo)(unsafe.Pointer(ref))
+ obj := new(PipelineViewportWScalingStateCreateInfoNV)
+ obj.ref3e532c0b = (*C.VkPipelineViewportWScalingStateCreateInfoNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ExportMemoryAllocateInfo) PassRef() (*C.VkExportMemoryAllocateInfo, *cgoAllocMap) {
+func (x *PipelineViewportWScalingStateCreateInfoNV) PassRef() (*C.VkPipelineViewportWScalingStateCreateInfoNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refeb76ec64 != nil {
- return x.refeb76ec64, nil
+ } else if x.ref3e532c0b != nil {
+ return x.ref3e532c0b, nil
}
- memeb76ec64 := allocExportMemoryAllocateInfoMemory(1)
- refeb76ec64 := (*C.VkExportMemoryAllocateInfo)(memeb76ec64)
- allocseb76ec64 := new(cgoAllocMap)
- allocseb76ec64.Add(memeb76ec64)
+ mem3e532c0b := allocPipelineViewportWScalingStateCreateInfoNVMemory(1)
+ ref3e532c0b := (*C.VkPipelineViewportWScalingStateCreateInfoNV)(mem3e532c0b)
+ allocs3e532c0b := new(cgoAllocMap)
+ allocs3e532c0b.Add(mem3e532c0b)
var csType_allocs *cgoAllocMap
- refeb76ec64.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocseb76ec64.Borrow(csType_allocs)
+ ref3e532c0b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs3e532c0b.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refeb76ec64.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocseb76ec64.Borrow(cpNext_allocs)
+ ref3e532c0b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs3e532c0b.Borrow(cpNext_allocs)
- var chandleTypes_allocs *cgoAllocMap
- refeb76ec64.handleTypes, chandleTypes_allocs = (C.VkExternalMemoryHandleTypeFlags)(x.HandleTypes), cgoAllocsUnknown
- allocseb76ec64.Borrow(chandleTypes_allocs)
+ var cviewportWScalingEnable_allocs *cgoAllocMap
+ ref3e532c0b.viewportWScalingEnable, cviewportWScalingEnable_allocs = (C.VkBool32)(x.ViewportWScalingEnable), cgoAllocsUnknown
+ allocs3e532c0b.Borrow(cviewportWScalingEnable_allocs)
- x.refeb76ec64 = refeb76ec64
- x.allocseb76ec64 = allocseb76ec64
- return refeb76ec64, allocseb76ec64
+ var cviewportCount_allocs *cgoAllocMap
+ ref3e532c0b.viewportCount, cviewportCount_allocs = (C.uint32_t)(x.ViewportCount), cgoAllocsUnknown
+ allocs3e532c0b.Borrow(cviewportCount_allocs)
+
+ var cpViewportWScalings_allocs *cgoAllocMap
+ ref3e532c0b.pViewportWScalings, cpViewportWScalings_allocs = unpackSViewportWScalingNV(x.PViewportWScalings)
+ allocs3e532c0b.Borrow(cpViewportWScalings_allocs)
+
+ x.ref3e532c0b = ref3e532c0b
+ x.allocs3e532c0b = allocs3e532c0b
+ return ref3e532c0b, allocs3e532c0b
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ExportMemoryAllocateInfo) PassValue() (C.VkExportMemoryAllocateInfo, *cgoAllocMap) {
- if x.refeb76ec64 != nil {
- return *x.refeb76ec64, nil
+func (x PipelineViewportWScalingStateCreateInfoNV) PassValue() (C.VkPipelineViewportWScalingStateCreateInfoNV, *cgoAllocMap) {
+ if x.ref3e532c0b != nil {
+ return *x.ref3e532c0b, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -19069,90 +46003,92 @@ func (x ExportMemoryAllocateInfo) PassValue() (C.VkExportMemoryAllocateInfo, *cg
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ExportMemoryAllocateInfo) Deref() {
- if x.refeb76ec64 == nil {
+func (x *PipelineViewportWScalingStateCreateInfoNV) Deref() {
+ if x.ref3e532c0b == nil {
return
}
- x.SType = (StructureType)(x.refeb76ec64.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refeb76ec64.pNext))
- x.HandleTypes = (ExternalMemoryHandleTypeFlags)(x.refeb76ec64.handleTypes)
+ x.SType = (StructureType)(x.ref3e532c0b.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref3e532c0b.pNext))
+ x.ViewportWScalingEnable = (Bool32)(x.ref3e532c0b.viewportWScalingEnable)
+ x.ViewportCount = (uint32)(x.ref3e532c0b.viewportCount)
+ packSViewportWScalingNV(x.PViewportWScalings, x.ref3e532c0b.pViewportWScalings)
}
-// allocPhysicalDeviceExternalFenceInfoMemory allocates memory for type C.VkPhysicalDeviceExternalFenceInfo in C.
+// allocDisplayPowerInfoMemory allocates memory for type C.VkDisplayPowerInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceExternalFenceInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceExternalFenceInfoValue))
+func allocDisplayPowerInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplayPowerInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceExternalFenceInfoValue = unsafe.Sizeof([1]C.VkPhysicalDeviceExternalFenceInfo{})
+const sizeOfDisplayPowerInfoValue = unsafe.Sizeof([1]C.VkDisplayPowerInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceExternalFenceInfo) Ref() *C.VkPhysicalDeviceExternalFenceInfo {
+func (x *DisplayPowerInfo) Ref() *C.VkDisplayPowerInfoEXT {
if x == nil {
return nil
}
- return x.ref9bb660cc
+ return x.ref80fed52f
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceExternalFenceInfo) Free() {
- if x != nil && x.allocs9bb660cc != nil {
- x.allocs9bb660cc.(*cgoAllocMap).Free()
- x.ref9bb660cc = nil
+func (x *DisplayPowerInfo) Free() {
+ if x != nil && x.allocs80fed52f != nil {
+ x.allocs80fed52f.(*cgoAllocMap).Free()
+ x.ref80fed52f = nil
}
}
-// NewPhysicalDeviceExternalFenceInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDisplayPowerInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceExternalFenceInfoRef(ref unsafe.Pointer) *PhysicalDeviceExternalFenceInfo {
+func NewDisplayPowerInfoRef(ref unsafe.Pointer) *DisplayPowerInfo {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceExternalFenceInfo)
- obj.ref9bb660cc = (*C.VkPhysicalDeviceExternalFenceInfo)(unsafe.Pointer(ref))
+ obj := new(DisplayPowerInfo)
+ obj.ref80fed52f = (*C.VkDisplayPowerInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceExternalFenceInfo) PassRef() (*C.VkPhysicalDeviceExternalFenceInfo, *cgoAllocMap) {
+func (x *DisplayPowerInfo) PassRef() (*C.VkDisplayPowerInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref9bb660cc != nil {
- return x.ref9bb660cc, nil
+ } else if x.ref80fed52f != nil {
+ return x.ref80fed52f, nil
}
- mem9bb660cc := allocPhysicalDeviceExternalFenceInfoMemory(1)
- ref9bb660cc := (*C.VkPhysicalDeviceExternalFenceInfo)(mem9bb660cc)
- allocs9bb660cc := new(cgoAllocMap)
- allocs9bb660cc.Add(mem9bb660cc)
+ mem80fed52f := allocDisplayPowerInfoMemory(1)
+ ref80fed52f := (*C.VkDisplayPowerInfoEXT)(mem80fed52f)
+ allocs80fed52f := new(cgoAllocMap)
+ allocs80fed52f.Add(mem80fed52f)
var csType_allocs *cgoAllocMap
- ref9bb660cc.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs9bb660cc.Borrow(csType_allocs)
+ ref80fed52f.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs80fed52f.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref9bb660cc.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs9bb660cc.Borrow(cpNext_allocs)
+ ref80fed52f.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs80fed52f.Borrow(cpNext_allocs)
- var chandleType_allocs *cgoAllocMap
- ref9bb660cc.handleType, chandleType_allocs = (C.VkExternalFenceHandleTypeFlagBits)(x.HandleType), cgoAllocsUnknown
- allocs9bb660cc.Borrow(chandleType_allocs)
+ var cpowerState_allocs *cgoAllocMap
+ ref80fed52f.powerState, cpowerState_allocs = (C.VkDisplayPowerStateEXT)(x.PowerState), cgoAllocsUnknown
+ allocs80fed52f.Borrow(cpowerState_allocs)
- x.ref9bb660cc = ref9bb660cc
- x.allocs9bb660cc = allocs9bb660cc
- return ref9bb660cc, allocs9bb660cc
+ x.ref80fed52f = ref80fed52f
+ x.allocs80fed52f = allocs80fed52f
+ return ref80fed52f, allocs80fed52f
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceExternalFenceInfo) PassValue() (C.VkPhysicalDeviceExternalFenceInfo, *cgoAllocMap) {
- if x.ref9bb660cc != nil {
- return *x.ref9bb660cc, nil
+func (x DisplayPowerInfo) PassValue() (C.VkDisplayPowerInfoEXT, *cgoAllocMap) {
+ if x.ref80fed52f != nil {
+ return *x.ref80fed52f, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -19160,98 +46096,90 @@ func (x PhysicalDeviceExternalFenceInfo) PassValue() (C.VkPhysicalDeviceExternal
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceExternalFenceInfo) Deref() {
- if x.ref9bb660cc == nil {
+func (x *DisplayPowerInfo) Deref() {
+ if x.ref80fed52f == nil {
return
}
- x.SType = (StructureType)(x.ref9bb660cc.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref9bb660cc.pNext))
- x.HandleType = (ExternalFenceHandleTypeFlagBits)(x.ref9bb660cc.handleType)
+ x.SType = (StructureType)(x.ref80fed52f.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref80fed52f.pNext))
+ x.PowerState = (DisplayPowerState)(x.ref80fed52f.powerState)
}
-// allocExternalFencePropertiesMemory allocates memory for type C.VkExternalFenceProperties in C.
+// allocDeviceEventInfoMemory allocates memory for type C.VkDeviceEventInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocExternalFencePropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExternalFencePropertiesValue))
+func allocDeviceEventInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceEventInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfExternalFencePropertiesValue = unsafe.Sizeof([1]C.VkExternalFenceProperties{})
+const sizeOfDeviceEventInfoValue = unsafe.Sizeof([1]C.VkDeviceEventInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ExternalFenceProperties) Ref() *C.VkExternalFenceProperties {
+func (x *DeviceEventInfo) Ref() *C.VkDeviceEventInfoEXT {
if x == nil {
return nil
}
- return x.ref18806773
+ return x.ref394b3fcb
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ExternalFenceProperties) Free() {
- if x != nil && x.allocs18806773 != nil {
- x.allocs18806773.(*cgoAllocMap).Free()
- x.ref18806773 = nil
+func (x *DeviceEventInfo) Free() {
+ if x != nil && x.allocs394b3fcb != nil {
+ x.allocs394b3fcb.(*cgoAllocMap).Free()
+ x.ref394b3fcb = nil
}
}
-// NewExternalFencePropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDeviceEventInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewExternalFencePropertiesRef(ref unsafe.Pointer) *ExternalFenceProperties {
+func NewDeviceEventInfoRef(ref unsafe.Pointer) *DeviceEventInfo {
if ref == nil {
return nil
}
- obj := new(ExternalFenceProperties)
- obj.ref18806773 = (*C.VkExternalFenceProperties)(unsafe.Pointer(ref))
+ obj := new(DeviceEventInfo)
+ obj.ref394b3fcb = (*C.VkDeviceEventInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ExternalFenceProperties) PassRef() (*C.VkExternalFenceProperties, *cgoAllocMap) {
+func (x *DeviceEventInfo) PassRef() (*C.VkDeviceEventInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref18806773 != nil {
- return x.ref18806773, nil
+ } else if x.ref394b3fcb != nil {
+ return x.ref394b3fcb, nil
}
- mem18806773 := allocExternalFencePropertiesMemory(1)
- ref18806773 := (*C.VkExternalFenceProperties)(mem18806773)
- allocs18806773 := new(cgoAllocMap)
- allocs18806773.Add(mem18806773)
+ mem394b3fcb := allocDeviceEventInfoMemory(1)
+ ref394b3fcb := (*C.VkDeviceEventInfoEXT)(mem394b3fcb)
+ allocs394b3fcb := new(cgoAllocMap)
+ allocs394b3fcb.Add(mem394b3fcb)
var csType_allocs *cgoAllocMap
- ref18806773.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs18806773.Borrow(csType_allocs)
+ ref394b3fcb.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs394b3fcb.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref18806773.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs18806773.Borrow(cpNext_allocs)
-
- var cexportFromImportedHandleTypes_allocs *cgoAllocMap
- ref18806773.exportFromImportedHandleTypes, cexportFromImportedHandleTypes_allocs = (C.VkExternalFenceHandleTypeFlags)(x.ExportFromImportedHandleTypes), cgoAllocsUnknown
- allocs18806773.Borrow(cexportFromImportedHandleTypes_allocs)
-
- var ccompatibleHandleTypes_allocs *cgoAllocMap
- ref18806773.compatibleHandleTypes, ccompatibleHandleTypes_allocs = (C.VkExternalFenceHandleTypeFlags)(x.CompatibleHandleTypes), cgoAllocsUnknown
- allocs18806773.Borrow(ccompatibleHandleTypes_allocs)
+ ref394b3fcb.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs394b3fcb.Borrow(cpNext_allocs)
- var cexternalFenceFeatures_allocs *cgoAllocMap
- ref18806773.externalFenceFeatures, cexternalFenceFeatures_allocs = (C.VkExternalFenceFeatureFlags)(x.ExternalFenceFeatures), cgoAllocsUnknown
- allocs18806773.Borrow(cexternalFenceFeatures_allocs)
+ var cdeviceEvent_allocs *cgoAllocMap
+ ref394b3fcb.deviceEvent, cdeviceEvent_allocs = (C.VkDeviceEventTypeEXT)(x.DeviceEvent), cgoAllocsUnknown
+ allocs394b3fcb.Borrow(cdeviceEvent_allocs)
- x.ref18806773 = ref18806773
- x.allocs18806773 = allocs18806773
- return ref18806773, allocs18806773
+ x.ref394b3fcb = ref394b3fcb
+ x.allocs394b3fcb = allocs394b3fcb
+ return ref394b3fcb, allocs394b3fcb
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ExternalFenceProperties) PassValue() (C.VkExternalFenceProperties, *cgoAllocMap) {
- if x.ref18806773 != nil {
- return *x.ref18806773, nil
+func (x DeviceEventInfo) PassValue() (C.VkDeviceEventInfoEXT, *cgoAllocMap) {
+ if x.ref394b3fcb != nil {
+ return *x.ref394b3fcb, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -19259,92 +46187,90 @@ func (x ExternalFenceProperties) PassValue() (C.VkExternalFenceProperties, *cgoA
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ExternalFenceProperties) Deref() {
- if x.ref18806773 == nil {
+func (x *DeviceEventInfo) Deref() {
+ if x.ref394b3fcb == nil {
return
}
- x.SType = (StructureType)(x.ref18806773.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref18806773.pNext))
- x.ExportFromImportedHandleTypes = (ExternalFenceHandleTypeFlags)(x.ref18806773.exportFromImportedHandleTypes)
- x.CompatibleHandleTypes = (ExternalFenceHandleTypeFlags)(x.ref18806773.compatibleHandleTypes)
- x.ExternalFenceFeatures = (ExternalFenceFeatureFlags)(x.ref18806773.externalFenceFeatures)
+ x.SType = (StructureType)(x.ref394b3fcb.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref394b3fcb.pNext))
+ x.DeviceEvent = (DeviceEventType)(x.ref394b3fcb.deviceEvent)
}
-// allocExportFenceCreateInfoMemory allocates memory for type C.VkExportFenceCreateInfo in C.
+// allocDisplayEventInfoMemory allocates memory for type C.VkDisplayEventInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocExportFenceCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExportFenceCreateInfoValue))
+func allocDisplayEventInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplayEventInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfExportFenceCreateInfoValue = unsafe.Sizeof([1]C.VkExportFenceCreateInfo{})
+const sizeOfDisplayEventInfoValue = unsafe.Sizeof([1]C.VkDisplayEventInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ExportFenceCreateInfo) Ref() *C.VkExportFenceCreateInfo {
+func (x *DisplayEventInfo) Ref() *C.VkDisplayEventInfoEXT {
if x == nil {
return nil
}
- return x.ref5fef8c3a
+ return x.refa69f7302
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ExportFenceCreateInfo) Free() {
- if x != nil && x.allocs5fef8c3a != nil {
- x.allocs5fef8c3a.(*cgoAllocMap).Free()
- x.ref5fef8c3a = nil
+func (x *DisplayEventInfo) Free() {
+ if x != nil && x.allocsa69f7302 != nil {
+ x.allocsa69f7302.(*cgoAllocMap).Free()
+ x.refa69f7302 = nil
}
}
-// NewExportFenceCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDisplayEventInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewExportFenceCreateInfoRef(ref unsafe.Pointer) *ExportFenceCreateInfo {
+func NewDisplayEventInfoRef(ref unsafe.Pointer) *DisplayEventInfo {
if ref == nil {
return nil
}
- obj := new(ExportFenceCreateInfo)
- obj.ref5fef8c3a = (*C.VkExportFenceCreateInfo)(unsafe.Pointer(ref))
+ obj := new(DisplayEventInfo)
+ obj.refa69f7302 = (*C.VkDisplayEventInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ExportFenceCreateInfo) PassRef() (*C.VkExportFenceCreateInfo, *cgoAllocMap) {
+func (x *DisplayEventInfo) PassRef() (*C.VkDisplayEventInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref5fef8c3a != nil {
- return x.ref5fef8c3a, nil
+ } else if x.refa69f7302 != nil {
+ return x.refa69f7302, nil
}
- mem5fef8c3a := allocExportFenceCreateInfoMemory(1)
- ref5fef8c3a := (*C.VkExportFenceCreateInfo)(mem5fef8c3a)
- allocs5fef8c3a := new(cgoAllocMap)
- allocs5fef8c3a.Add(mem5fef8c3a)
+ mema69f7302 := allocDisplayEventInfoMemory(1)
+ refa69f7302 := (*C.VkDisplayEventInfoEXT)(mema69f7302)
+ allocsa69f7302 := new(cgoAllocMap)
+ allocsa69f7302.Add(mema69f7302)
var csType_allocs *cgoAllocMap
- ref5fef8c3a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs5fef8c3a.Borrow(csType_allocs)
+ refa69f7302.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsa69f7302.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref5fef8c3a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs5fef8c3a.Borrow(cpNext_allocs)
+ refa69f7302.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsa69f7302.Borrow(cpNext_allocs)
- var chandleTypes_allocs *cgoAllocMap
- ref5fef8c3a.handleTypes, chandleTypes_allocs = (C.VkExternalFenceHandleTypeFlags)(x.HandleTypes), cgoAllocsUnknown
- allocs5fef8c3a.Borrow(chandleTypes_allocs)
+ var cdisplayEvent_allocs *cgoAllocMap
+ refa69f7302.displayEvent, cdisplayEvent_allocs = (C.VkDisplayEventTypeEXT)(x.DisplayEvent), cgoAllocsUnknown
+ allocsa69f7302.Borrow(cdisplayEvent_allocs)
- x.ref5fef8c3a = ref5fef8c3a
- x.allocs5fef8c3a = allocs5fef8c3a
- return ref5fef8c3a, allocs5fef8c3a
+ x.refa69f7302 = refa69f7302
+ x.allocsa69f7302 = allocsa69f7302
+ return refa69f7302, allocsa69f7302
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ExportFenceCreateInfo) PassValue() (C.VkExportFenceCreateInfo, *cgoAllocMap) {
- if x.ref5fef8c3a != nil {
- return *x.ref5fef8c3a, nil
+func (x DisplayEventInfo) PassValue() (C.VkDisplayEventInfoEXT, *cgoAllocMap) {
+ if x.refa69f7302 != nil {
+ return *x.refa69f7302, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -19352,90 +46278,90 @@ func (x ExportFenceCreateInfo) PassValue() (C.VkExportFenceCreateInfo, *cgoAlloc
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ExportFenceCreateInfo) Deref() {
- if x.ref5fef8c3a == nil {
+func (x *DisplayEventInfo) Deref() {
+ if x.refa69f7302 == nil {
return
}
- x.SType = (StructureType)(x.ref5fef8c3a.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5fef8c3a.pNext))
- x.HandleTypes = (ExternalFenceHandleTypeFlags)(x.ref5fef8c3a.handleTypes)
+ x.SType = (StructureType)(x.refa69f7302.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa69f7302.pNext))
+ x.DisplayEvent = (DisplayEventType)(x.refa69f7302.displayEvent)
}
-// allocExportSemaphoreCreateInfoMemory allocates memory for type C.VkExportSemaphoreCreateInfo in C.
+// allocSwapchainCounterCreateInfoMemory allocates memory for type C.VkSwapchainCounterCreateInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocExportSemaphoreCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExportSemaphoreCreateInfoValue))
+func allocSwapchainCounterCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSwapchainCounterCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfExportSemaphoreCreateInfoValue = unsafe.Sizeof([1]C.VkExportSemaphoreCreateInfo{})
+const sizeOfSwapchainCounterCreateInfoValue = unsafe.Sizeof([1]C.VkSwapchainCounterCreateInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ExportSemaphoreCreateInfo) Ref() *C.VkExportSemaphoreCreateInfo {
+func (x *SwapchainCounterCreateInfo) Ref() *C.VkSwapchainCounterCreateInfoEXT {
if x == nil {
return nil
}
- return x.ref17b8d6c5
+ return x.ref9f21eca6
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ExportSemaphoreCreateInfo) Free() {
- if x != nil && x.allocs17b8d6c5 != nil {
- x.allocs17b8d6c5.(*cgoAllocMap).Free()
- x.ref17b8d6c5 = nil
+func (x *SwapchainCounterCreateInfo) Free() {
+ if x != nil && x.allocs9f21eca6 != nil {
+ x.allocs9f21eca6.(*cgoAllocMap).Free()
+ x.ref9f21eca6 = nil
}
}
-// NewExportSemaphoreCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewSwapchainCounterCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewExportSemaphoreCreateInfoRef(ref unsafe.Pointer) *ExportSemaphoreCreateInfo {
+func NewSwapchainCounterCreateInfoRef(ref unsafe.Pointer) *SwapchainCounterCreateInfo {
if ref == nil {
return nil
}
- obj := new(ExportSemaphoreCreateInfo)
- obj.ref17b8d6c5 = (*C.VkExportSemaphoreCreateInfo)(unsafe.Pointer(ref))
+ obj := new(SwapchainCounterCreateInfo)
+ obj.ref9f21eca6 = (*C.VkSwapchainCounterCreateInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ExportSemaphoreCreateInfo) PassRef() (*C.VkExportSemaphoreCreateInfo, *cgoAllocMap) {
+func (x *SwapchainCounterCreateInfo) PassRef() (*C.VkSwapchainCounterCreateInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref17b8d6c5 != nil {
- return x.ref17b8d6c5, nil
+ } else if x.ref9f21eca6 != nil {
+ return x.ref9f21eca6, nil
}
- mem17b8d6c5 := allocExportSemaphoreCreateInfoMemory(1)
- ref17b8d6c5 := (*C.VkExportSemaphoreCreateInfo)(mem17b8d6c5)
- allocs17b8d6c5 := new(cgoAllocMap)
- allocs17b8d6c5.Add(mem17b8d6c5)
+ mem9f21eca6 := allocSwapchainCounterCreateInfoMemory(1)
+ ref9f21eca6 := (*C.VkSwapchainCounterCreateInfoEXT)(mem9f21eca6)
+ allocs9f21eca6 := new(cgoAllocMap)
+ allocs9f21eca6.Add(mem9f21eca6)
var csType_allocs *cgoAllocMap
- ref17b8d6c5.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs17b8d6c5.Borrow(csType_allocs)
+ ref9f21eca6.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs9f21eca6.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref17b8d6c5.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs17b8d6c5.Borrow(cpNext_allocs)
+ ref9f21eca6.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs9f21eca6.Borrow(cpNext_allocs)
- var chandleTypes_allocs *cgoAllocMap
- ref17b8d6c5.handleTypes, chandleTypes_allocs = (C.VkExternalSemaphoreHandleTypeFlags)(x.HandleTypes), cgoAllocsUnknown
- allocs17b8d6c5.Borrow(chandleTypes_allocs)
+ var csurfaceCounters_allocs *cgoAllocMap
+ ref9f21eca6.surfaceCounters, csurfaceCounters_allocs = (C.VkSurfaceCounterFlagsEXT)(x.SurfaceCounters), cgoAllocsUnknown
+ allocs9f21eca6.Borrow(csurfaceCounters_allocs)
- x.ref17b8d6c5 = ref17b8d6c5
- x.allocs17b8d6c5 = allocs17b8d6c5
- return ref17b8d6c5, allocs17b8d6c5
+ x.ref9f21eca6 = ref9f21eca6
+ x.allocs9f21eca6 = allocs9f21eca6
+ return ref9f21eca6, allocs9f21eca6
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ExportSemaphoreCreateInfo) PassValue() (C.VkExportSemaphoreCreateInfo, *cgoAllocMap) {
- if x.ref17b8d6c5 != nil {
- return *x.ref17b8d6c5, nil
+func (x SwapchainCounterCreateInfo) PassValue() (C.VkSwapchainCounterCreateInfoEXT, *cgoAllocMap) {
+ if x.ref9f21eca6 != nil {
+ return *x.ref9f21eca6, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -19443,90 +46369,82 @@ func (x ExportSemaphoreCreateInfo) PassValue() (C.VkExportSemaphoreCreateInfo, *
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ExportSemaphoreCreateInfo) Deref() {
- if x.ref17b8d6c5 == nil {
+func (x *SwapchainCounterCreateInfo) Deref() {
+ if x.ref9f21eca6 == nil {
return
}
- x.SType = (StructureType)(x.ref17b8d6c5.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref17b8d6c5.pNext))
- x.HandleTypes = (ExternalSemaphoreHandleTypeFlags)(x.ref17b8d6c5.handleTypes)
+ x.SType = (StructureType)(x.ref9f21eca6.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref9f21eca6.pNext))
+ x.SurfaceCounters = (SurfaceCounterFlags)(x.ref9f21eca6.surfaceCounters)
}
-// allocPhysicalDeviceExternalSemaphoreInfoMemory allocates memory for type C.VkPhysicalDeviceExternalSemaphoreInfo in C.
+// allocRefreshCycleDurationGOOGLEMemory allocates memory for type C.VkRefreshCycleDurationGOOGLE in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceExternalSemaphoreInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceExternalSemaphoreInfoValue))
+func allocRefreshCycleDurationGOOGLEMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfRefreshCycleDurationGOOGLEValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceExternalSemaphoreInfoValue = unsafe.Sizeof([1]C.VkPhysicalDeviceExternalSemaphoreInfo{})
+const sizeOfRefreshCycleDurationGOOGLEValue = unsafe.Sizeof([1]C.VkRefreshCycleDurationGOOGLE{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceExternalSemaphoreInfo) Ref() *C.VkPhysicalDeviceExternalSemaphoreInfo {
+func (x *RefreshCycleDurationGOOGLE) Ref() *C.VkRefreshCycleDurationGOOGLE {
if x == nil {
return nil
}
- return x.ref5981d29e
+ return x.ref969cb55b
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceExternalSemaphoreInfo) Free() {
- if x != nil && x.allocs5981d29e != nil {
- x.allocs5981d29e.(*cgoAllocMap).Free()
- x.ref5981d29e = nil
+func (x *RefreshCycleDurationGOOGLE) Free() {
+ if x != nil && x.allocs969cb55b != nil {
+ x.allocs969cb55b.(*cgoAllocMap).Free()
+ x.ref969cb55b = nil
}
}
-// NewPhysicalDeviceExternalSemaphoreInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewRefreshCycleDurationGOOGLERef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceExternalSemaphoreInfoRef(ref unsafe.Pointer) *PhysicalDeviceExternalSemaphoreInfo {
+func NewRefreshCycleDurationGOOGLERef(ref unsafe.Pointer) *RefreshCycleDurationGOOGLE {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceExternalSemaphoreInfo)
- obj.ref5981d29e = (*C.VkPhysicalDeviceExternalSemaphoreInfo)(unsafe.Pointer(ref))
+ obj := new(RefreshCycleDurationGOOGLE)
+ obj.ref969cb55b = (*C.VkRefreshCycleDurationGOOGLE)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceExternalSemaphoreInfo) PassRef() (*C.VkPhysicalDeviceExternalSemaphoreInfo, *cgoAllocMap) {
+func (x *RefreshCycleDurationGOOGLE) PassRef() (*C.VkRefreshCycleDurationGOOGLE, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref5981d29e != nil {
- return x.ref5981d29e, nil
+ } else if x.ref969cb55b != nil {
+ return x.ref969cb55b, nil
}
- mem5981d29e := allocPhysicalDeviceExternalSemaphoreInfoMemory(1)
- ref5981d29e := (*C.VkPhysicalDeviceExternalSemaphoreInfo)(mem5981d29e)
- allocs5981d29e := new(cgoAllocMap)
- allocs5981d29e.Add(mem5981d29e)
-
- var csType_allocs *cgoAllocMap
- ref5981d29e.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs5981d29e.Borrow(csType_allocs)
-
- var cpNext_allocs *cgoAllocMap
- ref5981d29e.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs5981d29e.Borrow(cpNext_allocs)
+ mem969cb55b := allocRefreshCycleDurationGOOGLEMemory(1)
+ ref969cb55b := (*C.VkRefreshCycleDurationGOOGLE)(mem969cb55b)
+ allocs969cb55b := new(cgoAllocMap)
+ allocs969cb55b.Add(mem969cb55b)
- var chandleType_allocs *cgoAllocMap
- ref5981d29e.handleType, chandleType_allocs = (C.VkExternalSemaphoreHandleTypeFlagBits)(x.HandleType), cgoAllocsUnknown
- allocs5981d29e.Borrow(chandleType_allocs)
+ var crefreshDuration_allocs *cgoAllocMap
+ ref969cb55b.refreshDuration, crefreshDuration_allocs = (C.uint64_t)(x.RefreshDuration), cgoAllocsUnknown
+ allocs969cb55b.Borrow(crefreshDuration_allocs)
- x.ref5981d29e = ref5981d29e
- x.allocs5981d29e = allocs5981d29e
- return ref5981d29e, allocs5981d29e
+ x.ref969cb55b = ref969cb55b
+ x.allocs969cb55b = allocs969cb55b
+ return ref969cb55b, allocs969cb55b
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceExternalSemaphoreInfo) PassValue() (C.VkPhysicalDeviceExternalSemaphoreInfo, *cgoAllocMap) {
- if x.ref5981d29e != nil {
- return *x.ref5981d29e, nil
+func (x RefreshCycleDurationGOOGLE) PassValue() (C.VkRefreshCycleDurationGOOGLE, *cgoAllocMap) {
+ if x.ref969cb55b != nil {
+ return *x.ref969cb55b, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -19534,98 +46452,96 @@ func (x PhysicalDeviceExternalSemaphoreInfo) PassValue() (C.VkPhysicalDeviceExte
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceExternalSemaphoreInfo) Deref() {
- if x.ref5981d29e == nil {
+func (x *RefreshCycleDurationGOOGLE) Deref() {
+ if x.ref969cb55b == nil {
return
}
- x.SType = (StructureType)(x.ref5981d29e.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5981d29e.pNext))
- x.HandleType = (ExternalSemaphoreHandleTypeFlagBits)(x.ref5981d29e.handleType)
+ x.RefreshDuration = (uint64)(x.ref969cb55b.refreshDuration)
}
-// allocExternalSemaphorePropertiesMemory allocates memory for type C.VkExternalSemaphoreProperties in C.
+// allocPastPresentationTimingGOOGLEMemory allocates memory for type C.VkPastPresentationTimingGOOGLE in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocExternalSemaphorePropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExternalSemaphorePropertiesValue))
+func allocPastPresentationTimingGOOGLEMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPastPresentationTimingGOOGLEValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfExternalSemaphorePropertiesValue = unsafe.Sizeof([1]C.VkExternalSemaphoreProperties{})
+const sizeOfPastPresentationTimingGOOGLEValue = unsafe.Sizeof([1]C.VkPastPresentationTimingGOOGLE{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ExternalSemaphoreProperties) Ref() *C.VkExternalSemaphoreProperties {
+func (x *PastPresentationTimingGOOGLE) Ref() *C.VkPastPresentationTimingGOOGLE {
if x == nil {
return nil
}
- return x.ref87ec1054
+ return x.refac8cf1d8
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ExternalSemaphoreProperties) Free() {
- if x != nil && x.allocs87ec1054 != nil {
- x.allocs87ec1054.(*cgoAllocMap).Free()
- x.ref87ec1054 = nil
+func (x *PastPresentationTimingGOOGLE) Free() {
+ if x != nil && x.allocsac8cf1d8 != nil {
+ x.allocsac8cf1d8.(*cgoAllocMap).Free()
+ x.refac8cf1d8 = nil
}
}
-// NewExternalSemaphorePropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPastPresentationTimingGOOGLERef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewExternalSemaphorePropertiesRef(ref unsafe.Pointer) *ExternalSemaphoreProperties {
+func NewPastPresentationTimingGOOGLERef(ref unsafe.Pointer) *PastPresentationTimingGOOGLE {
if ref == nil {
return nil
}
- obj := new(ExternalSemaphoreProperties)
- obj.ref87ec1054 = (*C.VkExternalSemaphoreProperties)(unsafe.Pointer(ref))
+ obj := new(PastPresentationTimingGOOGLE)
+ obj.refac8cf1d8 = (*C.VkPastPresentationTimingGOOGLE)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ExternalSemaphoreProperties) PassRef() (*C.VkExternalSemaphoreProperties, *cgoAllocMap) {
+func (x *PastPresentationTimingGOOGLE) PassRef() (*C.VkPastPresentationTimingGOOGLE, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref87ec1054 != nil {
- return x.ref87ec1054, nil
+ } else if x.refac8cf1d8 != nil {
+ return x.refac8cf1d8, nil
}
- mem87ec1054 := allocExternalSemaphorePropertiesMemory(1)
- ref87ec1054 := (*C.VkExternalSemaphoreProperties)(mem87ec1054)
- allocs87ec1054 := new(cgoAllocMap)
- allocs87ec1054.Add(mem87ec1054)
+ memac8cf1d8 := allocPastPresentationTimingGOOGLEMemory(1)
+ refac8cf1d8 := (*C.VkPastPresentationTimingGOOGLE)(memac8cf1d8)
+ allocsac8cf1d8 := new(cgoAllocMap)
+ allocsac8cf1d8.Add(memac8cf1d8)
- var csType_allocs *cgoAllocMap
- ref87ec1054.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs87ec1054.Borrow(csType_allocs)
+ var cpresentID_allocs *cgoAllocMap
+ refac8cf1d8.presentID, cpresentID_allocs = (C.uint32_t)(x.PresentID), cgoAllocsUnknown
+ allocsac8cf1d8.Borrow(cpresentID_allocs)
- var cpNext_allocs *cgoAllocMap
- ref87ec1054.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs87ec1054.Borrow(cpNext_allocs)
+ var cdesiredPresentTime_allocs *cgoAllocMap
+ refac8cf1d8.desiredPresentTime, cdesiredPresentTime_allocs = (C.uint64_t)(x.DesiredPresentTime), cgoAllocsUnknown
+ allocsac8cf1d8.Borrow(cdesiredPresentTime_allocs)
- var cexportFromImportedHandleTypes_allocs *cgoAllocMap
- ref87ec1054.exportFromImportedHandleTypes, cexportFromImportedHandleTypes_allocs = (C.VkExternalSemaphoreHandleTypeFlags)(x.ExportFromImportedHandleTypes), cgoAllocsUnknown
- allocs87ec1054.Borrow(cexportFromImportedHandleTypes_allocs)
+ var cactualPresentTime_allocs *cgoAllocMap
+ refac8cf1d8.actualPresentTime, cactualPresentTime_allocs = (C.uint64_t)(x.ActualPresentTime), cgoAllocsUnknown
+ allocsac8cf1d8.Borrow(cactualPresentTime_allocs)
- var ccompatibleHandleTypes_allocs *cgoAllocMap
- ref87ec1054.compatibleHandleTypes, ccompatibleHandleTypes_allocs = (C.VkExternalSemaphoreHandleTypeFlags)(x.CompatibleHandleTypes), cgoAllocsUnknown
- allocs87ec1054.Borrow(ccompatibleHandleTypes_allocs)
+ var cearliestPresentTime_allocs *cgoAllocMap
+ refac8cf1d8.earliestPresentTime, cearliestPresentTime_allocs = (C.uint64_t)(x.EarliestPresentTime), cgoAllocsUnknown
+ allocsac8cf1d8.Borrow(cearliestPresentTime_allocs)
- var cexternalSemaphoreFeatures_allocs *cgoAllocMap
- ref87ec1054.externalSemaphoreFeatures, cexternalSemaphoreFeatures_allocs = (C.VkExternalSemaphoreFeatureFlags)(x.ExternalSemaphoreFeatures), cgoAllocsUnknown
- allocs87ec1054.Borrow(cexternalSemaphoreFeatures_allocs)
+ var cpresentMargin_allocs *cgoAllocMap
+ refac8cf1d8.presentMargin, cpresentMargin_allocs = (C.uint64_t)(x.PresentMargin), cgoAllocsUnknown
+ allocsac8cf1d8.Borrow(cpresentMargin_allocs)
- x.ref87ec1054 = ref87ec1054
- x.allocs87ec1054 = allocs87ec1054
- return ref87ec1054, allocs87ec1054
+ x.refac8cf1d8 = refac8cf1d8
+ x.allocsac8cf1d8 = allocsac8cf1d8
+ return refac8cf1d8, allocsac8cf1d8
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ExternalSemaphoreProperties) PassValue() (C.VkExternalSemaphoreProperties, *cgoAllocMap) {
- if x.ref87ec1054 != nil {
- return *x.ref87ec1054, nil
+func (x PastPresentationTimingGOOGLE) PassValue() (C.VkPastPresentationTimingGOOGLE, *cgoAllocMap) {
+ if x.refac8cf1d8 != nil {
+ return *x.refac8cf1d8, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -19633,96 +46549,88 @@ func (x ExternalSemaphoreProperties) PassValue() (C.VkExternalSemaphorePropertie
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ExternalSemaphoreProperties) Deref() {
- if x.ref87ec1054 == nil {
+func (x *PastPresentationTimingGOOGLE) Deref() {
+ if x.refac8cf1d8 == nil {
return
}
- x.SType = (StructureType)(x.ref87ec1054.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref87ec1054.pNext))
- x.ExportFromImportedHandleTypes = (ExternalSemaphoreHandleTypeFlags)(x.ref87ec1054.exportFromImportedHandleTypes)
- x.CompatibleHandleTypes = (ExternalSemaphoreHandleTypeFlags)(x.ref87ec1054.compatibleHandleTypes)
- x.ExternalSemaphoreFeatures = (ExternalSemaphoreFeatureFlags)(x.ref87ec1054.externalSemaphoreFeatures)
+ x.PresentID = (uint32)(x.refac8cf1d8.presentID)
+ x.DesiredPresentTime = (uint64)(x.refac8cf1d8.desiredPresentTime)
+ x.ActualPresentTime = (uint64)(x.refac8cf1d8.actualPresentTime)
+ x.EarliestPresentTime = (uint64)(x.refac8cf1d8.earliestPresentTime)
+ x.PresentMargin = (uint64)(x.refac8cf1d8.presentMargin)
}
-// allocPhysicalDeviceMaintenance3PropertiesMemory allocates memory for type C.VkPhysicalDeviceMaintenance3Properties in C.
+// allocPresentTimeGOOGLEMemory allocates memory for type C.VkPresentTimeGOOGLE in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceMaintenance3PropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceMaintenance3PropertiesValue))
+func allocPresentTimeGOOGLEMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPresentTimeGOOGLEValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceMaintenance3PropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceMaintenance3Properties{})
+const sizeOfPresentTimeGOOGLEValue = unsafe.Sizeof([1]C.VkPresentTimeGOOGLE{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceMaintenance3Properties) Ref() *C.VkPhysicalDeviceMaintenance3Properties {
+func (x *PresentTimeGOOGLE) Ref() *C.VkPresentTimeGOOGLE {
if x == nil {
return nil
}
- return x.ref12c07777
+ return x.ref9cd90ade
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceMaintenance3Properties) Free() {
- if x != nil && x.allocs12c07777 != nil {
- x.allocs12c07777.(*cgoAllocMap).Free()
- x.ref12c07777 = nil
+func (x *PresentTimeGOOGLE) Free() {
+ if x != nil && x.allocs9cd90ade != nil {
+ x.allocs9cd90ade.(*cgoAllocMap).Free()
+ x.ref9cd90ade = nil
}
}
-// NewPhysicalDeviceMaintenance3PropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPresentTimeGOOGLERef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceMaintenance3PropertiesRef(ref unsafe.Pointer) *PhysicalDeviceMaintenance3Properties {
+func NewPresentTimeGOOGLERef(ref unsafe.Pointer) *PresentTimeGOOGLE {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceMaintenance3Properties)
- obj.ref12c07777 = (*C.VkPhysicalDeviceMaintenance3Properties)(unsafe.Pointer(ref))
+ obj := new(PresentTimeGOOGLE)
+ obj.ref9cd90ade = (*C.VkPresentTimeGOOGLE)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceMaintenance3Properties) PassRef() (*C.VkPhysicalDeviceMaintenance3Properties, *cgoAllocMap) {
+func (x *PresentTimeGOOGLE) PassRef() (*C.VkPresentTimeGOOGLE, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref12c07777 != nil {
- return x.ref12c07777, nil
+ } else if x.ref9cd90ade != nil {
+ return x.ref9cd90ade, nil
}
- mem12c07777 := allocPhysicalDeviceMaintenance3PropertiesMemory(1)
- ref12c07777 := (*C.VkPhysicalDeviceMaintenance3Properties)(mem12c07777)
- allocs12c07777 := new(cgoAllocMap)
- allocs12c07777.Add(mem12c07777)
-
- var csType_allocs *cgoAllocMap
- ref12c07777.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs12c07777.Borrow(csType_allocs)
-
- var cpNext_allocs *cgoAllocMap
- ref12c07777.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs12c07777.Borrow(cpNext_allocs)
+ mem9cd90ade := allocPresentTimeGOOGLEMemory(1)
+ ref9cd90ade := (*C.VkPresentTimeGOOGLE)(mem9cd90ade)
+ allocs9cd90ade := new(cgoAllocMap)
+ allocs9cd90ade.Add(mem9cd90ade)
- var cmaxPerSetDescriptors_allocs *cgoAllocMap
- ref12c07777.maxPerSetDescriptors, cmaxPerSetDescriptors_allocs = (C.uint32_t)(x.MaxPerSetDescriptors), cgoAllocsUnknown
- allocs12c07777.Borrow(cmaxPerSetDescriptors_allocs)
+ var cpresentID_allocs *cgoAllocMap
+ ref9cd90ade.presentID, cpresentID_allocs = (C.uint32_t)(x.PresentID), cgoAllocsUnknown
+ allocs9cd90ade.Borrow(cpresentID_allocs)
- var cmaxMemoryAllocationSize_allocs *cgoAllocMap
- ref12c07777.maxMemoryAllocationSize, cmaxMemoryAllocationSize_allocs = (C.VkDeviceSize)(x.MaxMemoryAllocationSize), cgoAllocsUnknown
- allocs12c07777.Borrow(cmaxMemoryAllocationSize_allocs)
+ var cdesiredPresentTime_allocs *cgoAllocMap
+ ref9cd90ade.desiredPresentTime, cdesiredPresentTime_allocs = (C.uint64_t)(x.DesiredPresentTime), cgoAllocsUnknown
+ allocs9cd90ade.Borrow(cdesiredPresentTime_allocs)
- x.ref12c07777 = ref12c07777
- x.allocs12c07777 = allocs12c07777
- return ref12c07777, allocs12c07777
+ x.ref9cd90ade = ref9cd90ade
+ x.allocs9cd90ade = allocs9cd90ade
+ return ref9cd90ade, allocs9cd90ade
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceMaintenance3Properties) PassValue() (C.VkPhysicalDeviceMaintenance3Properties, *cgoAllocMap) {
- if x.ref12c07777 != nil {
- return *x.ref12c07777, nil
+func (x PresentTimeGOOGLE) PassValue() (C.VkPresentTimeGOOGLE, *cgoAllocMap) {
+ if x.ref9cd90ade != nil {
+ return *x.ref9cd90ade, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -19730,91 +46638,131 @@ func (x PhysicalDeviceMaintenance3Properties) PassValue() (C.VkPhysicalDeviceMai
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceMaintenance3Properties) Deref() {
- if x.ref12c07777 == nil {
+func (x *PresentTimeGOOGLE) Deref() {
+ if x.ref9cd90ade == nil {
return
}
- x.SType = (StructureType)(x.ref12c07777.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref12c07777.pNext))
- x.MaxPerSetDescriptors = (uint32)(x.ref12c07777.maxPerSetDescriptors)
- x.MaxMemoryAllocationSize = (DeviceSize)(x.ref12c07777.maxMemoryAllocationSize)
+ x.PresentID = (uint32)(x.ref9cd90ade.presentID)
+ x.DesiredPresentTime = (uint64)(x.ref9cd90ade.desiredPresentTime)
}
-// allocDescriptorSetLayoutSupportMemory allocates memory for type C.VkDescriptorSetLayoutSupport in C.
+// allocPresentTimesInfoGOOGLEMemory allocates memory for type C.VkPresentTimesInfoGOOGLE in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDescriptorSetLayoutSupportMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorSetLayoutSupportValue))
+func allocPresentTimesInfoGOOGLEMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPresentTimesInfoGOOGLEValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDescriptorSetLayoutSupportValue = unsafe.Sizeof([1]C.VkDescriptorSetLayoutSupport{})
+const sizeOfPresentTimesInfoGOOGLEValue = unsafe.Sizeof([1]C.VkPresentTimesInfoGOOGLE{})
+
+// unpackSPresentTimeGOOGLE transforms a sliced Go data structure into plain C format.
+func unpackSPresentTimeGOOGLE(x []PresentTimeGOOGLE) (unpacked *C.VkPresentTimeGOOGLE, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkPresentTimeGOOGLE) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocPresentTimeGOOGLEMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkPresentTimeGOOGLE)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkPresentTimeGOOGLE)(h.Data)
+ return
+}
+
+// packSPresentTimeGOOGLE reads sliced Go data structure out from plain C format.
+func packSPresentTimeGOOGLE(v []PresentTimeGOOGLE, ptr0 *C.VkPresentTimeGOOGLE) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfPresentTimeGOOGLEValue]C.VkPresentTimeGOOGLE)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewPresentTimeGOOGLERef(unsafe.Pointer(&ptr1))
+ }
+}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DescriptorSetLayoutSupport) Ref() *C.VkDescriptorSetLayoutSupport {
+func (x *PresentTimesInfoGOOGLE) Ref() *C.VkPresentTimesInfoGOOGLE {
if x == nil {
return nil
}
- return x.ref5802686c
+ return x.ref70eb8ab3
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DescriptorSetLayoutSupport) Free() {
- if x != nil && x.allocs5802686c != nil {
- x.allocs5802686c.(*cgoAllocMap).Free()
- x.ref5802686c = nil
+func (x *PresentTimesInfoGOOGLE) Free() {
+ if x != nil && x.allocs70eb8ab3 != nil {
+ x.allocs70eb8ab3.(*cgoAllocMap).Free()
+ x.ref70eb8ab3 = nil
}
}
-// NewDescriptorSetLayoutSupportRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPresentTimesInfoGOOGLERef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDescriptorSetLayoutSupportRef(ref unsafe.Pointer) *DescriptorSetLayoutSupport {
+func NewPresentTimesInfoGOOGLERef(ref unsafe.Pointer) *PresentTimesInfoGOOGLE {
if ref == nil {
return nil
}
- obj := new(DescriptorSetLayoutSupport)
- obj.ref5802686c = (*C.VkDescriptorSetLayoutSupport)(unsafe.Pointer(ref))
+ obj := new(PresentTimesInfoGOOGLE)
+ obj.ref70eb8ab3 = (*C.VkPresentTimesInfoGOOGLE)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DescriptorSetLayoutSupport) PassRef() (*C.VkDescriptorSetLayoutSupport, *cgoAllocMap) {
+func (x *PresentTimesInfoGOOGLE) PassRef() (*C.VkPresentTimesInfoGOOGLE, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref5802686c != nil {
- return x.ref5802686c, nil
+ } else if x.ref70eb8ab3 != nil {
+ return x.ref70eb8ab3, nil
}
- mem5802686c := allocDescriptorSetLayoutSupportMemory(1)
- ref5802686c := (*C.VkDescriptorSetLayoutSupport)(mem5802686c)
- allocs5802686c := new(cgoAllocMap)
- allocs5802686c.Add(mem5802686c)
+ mem70eb8ab3 := allocPresentTimesInfoGOOGLEMemory(1)
+ ref70eb8ab3 := (*C.VkPresentTimesInfoGOOGLE)(mem70eb8ab3)
+ allocs70eb8ab3 := new(cgoAllocMap)
+ allocs70eb8ab3.Add(mem70eb8ab3)
var csType_allocs *cgoAllocMap
- ref5802686c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs5802686c.Borrow(csType_allocs)
+ ref70eb8ab3.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs70eb8ab3.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref5802686c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs5802686c.Borrow(cpNext_allocs)
+ ref70eb8ab3.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs70eb8ab3.Borrow(cpNext_allocs)
- var csupported_allocs *cgoAllocMap
- ref5802686c.supported, csupported_allocs = (C.VkBool32)(x.Supported), cgoAllocsUnknown
- allocs5802686c.Borrow(csupported_allocs)
+ var cswapchainCount_allocs *cgoAllocMap
+ ref70eb8ab3.swapchainCount, cswapchainCount_allocs = (C.uint32_t)(x.SwapchainCount), cgoAllocsUnknown
+ allocs70eb8ab3.Borrow(cswapchainCount_allocs)
- x.ref5802686c = ref5802686c
- x.allocs5802686c = allocs5802686c
- return ref5802686c, allocs5802686c
+ var cpTimes_allocs *cgoAllocMap
+ ref70eb8ab3.pTimes, cpTimes_allocs = unpackSPresentTimeGOOGLE(x.PTimes)
+ allocs70eb8ab3.Borrow(cpTimes_allocs)
+
+ x.ref70eb8ab3 = ref70eb8ab3
+ x.allocs70eb8ab3 = allocs70eb8ab3
+ return ref70eb8ab3, allocs70eb8ab3
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DescriptorSetLayoutSupport) PassValue() (C.VkDescriptorSetLayoutSupport, *cgoAllocMap) {
- if x.ref5802686c != nil {
- return *x.ref5802686c, nil
+func (x PresentTimesInfoGOOGLE) PassValue() (C.VkPresentTimesInfoGOOGLE, *cgoAllocMap) {
+ if x.ref70eb8ab3 != nil {
+ return *x.ref70eb8ab3, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -19822,90 +46770,91 @@ func (x DescriptorSetLayoutSupport) PassValue() (C.VkDescriptorSetLayoutSupport,
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DescriptorSetLayoutSupport) Deref() {
- if x.ref5802686c == nil {
+func (x *PresentTimesInfoGOOGLE) Deref() {
+ if x.ref70eb8ab3 == nil {
return
}
- x.SType = (StructureType)(x.ref5802686c.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5802686c.pNext))
- x.Supported = (Bool32)(x.ref5802686c.supported)
+ x.SType = (StructureType)(x.ref70eb8ab3.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref70eb8ab3.pNext))
+ x.SwapchainCount = (uint32)(x.ref70eb8ab3.swapchainCount)
+ packSPresentTimeGOOGLE(x.PTimes, x.ref70eb8ab3.pTimes)
}
-// allocPhysicalDeviceShaderDrawParameterFeaturesMemory allocates memory for type C.VkPhysicalDeviceShaderDrawParameterFeatures in C.
+// allocPhysicalDeviceMultiviewPerViewAttributesPropertiesNVXMemory allocates memory for type C.VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceShaderDrawParameterFeaturesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceShaderDrawParameterFeaturesValue))
+func allocPhysicalDeviceMultiviewPerViewAttributesPropertiesNVXMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceMultiviewPerViewAttributesPropertiesNVXValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceShaderDrawParameterFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceShaderDrawParameterFeatures{})
+const sizeOfPhysicalDeviceMultiviewPerViewAttributesPropertiesNVXValue = unsafe.Sizeof([1]C.VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceShaderDrawParameterFeatures) Ref() *C.VkPhysicalDeviceShaderDrawParameterFeatures {
+func (x *PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX) Ref() *C.VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX {
if x == nil {
return nil
}
- return x.ref23259ea6
+ return x.refbaf399ad
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceShaderDrawParameterFeatures) Free() {
- if x != nil && x.allocs23259ea6 != nil {
- x.allocs23259ea6.(*cgoAllocMap).Free()
- x.ref23259ea6 = nil
+func (x *PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX) Free() {
+ if x != nil && x.allocsbaf399ad != nil {
+ x.allocsbaf399ad.(*cgoAllocMap).Free()
+ x.refbaf399ad = nil
}
}
-// NewPhysicalDeviceShaderDrawParameterFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceMultiviewPerViewAttributesPropertiesNVXRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceShaderDrawParameterFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceShaderDrawParameterFeatures {
+func NewPhysicalDeviceMultiviewPerViewAttributesPropertiesNVXRef(ref unsafe.Pointer) *PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceShaderDrawParameterFeatures)
- obj.ref23259ea6 = (*C.VkPhysicalDeviceShaderDrawParameterFeatures)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX)
+ obj.refbaf399ad = (*C.VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceShaderDrawParameterFeatures) PassRef() (*C.VkPhysicalDeviceShaderDrawParameterFeatures, *cgoAllocMap) {
+func (x *PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX) PassRef() (*C.VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref23259ea6 != nil {
- return x.ref23259ea6, nil
+ } else if x.refbaf399ad != nil {
+ return x.refbaf399ad, nil
}
- mem23259ea6 := allocPhysicalDeviceShaderDrawParameterFeaturesMemory(1)
- ref23259ea6 := (*C.VkPhysicalDeviceShaderDrawParameterFeatures)(mem23259ea6)
- allocs23259ea6 := new(cgoAllocMap)
- allocs23259ea6.Add(mem23259ea6)
+ membaf399ad := allocPhysicalDeviceMultiviewPerViewAttributesPropertiesNVXMemory(1)
+ refbaf399ad := (*C.VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX)(membaf399ad)
+ allocsbaf399ad := new(cgoAllocMap)
+ allocsbaf399ad.Add(membaf399ad)
var csType_allocs *cgoAllocMap
- ref23259ea6.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs23259ea6.Borrow(csType_allocs)
+ refbaf399ad.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsbaf399ad.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref23259ea6.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs23259ea6.Borrow(cpNext_allocs)
+ refbaf399ad.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsbaf399ad.Borrow(cpNext_allocs)
- var cshaderDrawParameters_allocs *cgoAllocMap
- ref23259ea6.shaderDrawParameters, cshaderDrawParameters_allocs = (C.VkBool32)(x.ShaderDrawParameters), cgoAllocsUnknown
- allocs23259ea6.Borrow(cshaderDrawParameters_allocs)
+ var cperViewPositionAllComponents_allocs *cgoAllocMap
+ refbaf399ad.perViewPositionAllComponents, cperViewPositionAllComponents_allocs = (C.VkBool32)(x.PerViewPositionAllComponents), cgoAllocsUnknown
+ allocsbaf399ad.Borrow(cperViewPositionAllComponents_allocs)
- x.ref23259ea6 = ref23259ea6
- x.allocs23259ea6 = allocs23259ea6
- return ref23259ea6, allocs23259ea6
+ x.refbaf399ad = refbaf399ad
+ x.allocsbaf399ad = allocsbaf399ad
+ return refbaf399ad, allocsbaf399ad
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceShaderDrawParameterFeatures) PassValue() (C.VkPhysicalDeviceShaderDrawParameterFeatures, *cgoAllocMap) {
- if x.ref23259ea6 != nil {
- return *x.ref23259ea6, nil
+func (x PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX) PassValue() (C.VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX, *cgoAllocMap) {
+ if x.refbaf399ad != nil {
+ return *x.refbaf399ad, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -19913,118 +46862,94 @@ func (x PhysicalDeviceShaderDrawParameterFeatures) PassValue() (C.VkPhysicalDevi
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceShaderDrawParameterFeatures) Deref() {
- if x.ref23259ea6 == nil {
+func (x *PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX) Deref() {
+ if x.refbaf399ad == nil {
return
}
- x.SType = (StructureType)(x.ref23259ea6.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref23259ea6.pNext))
- x.ShaderDrawParameters = (Bool32)(x.ref23259ea6.shaderDrawParameters)
+ x.SType = (StructureType)(x.refbaf399ad.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refbaf399ad.pNext))
+ x.PerViewPositionAllComponents = (Bool32)(x.refbaf399ad.perViewPositionAllComponents)
}
-// allocSurfaceCapabilitiesMemory allocates memory for type C.VkSurfaceCapabilitiesKHR in C.
+// allocViewportSwizzleNVMemory allocates memory for type C.VkViewportSwizzleNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSurfaceCapabilitiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSurfaceCapabilitiesValue))
+func allocViewportSwizzleNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfViewportSwizzleNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSurfaceCapabilitiesValue = unsafe.Sizeof([1]C.VkSurfaceCapabilitiesKHR{})
+const sizeOfViewportSwizzleNVValue = unsafe.Sizeof([1]C.VkViewportSwizzleNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SurfaceCapabilities) Ref() *C.VkSurfaceCapabilitiesKHR {
+func (x *ViewportSwizzleNV) Ref() *C.VkViewportSwizzleNV {
if x == nil {
return nil
}
- return x.ref11d5f596
+ return x.ref74ff2887
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SurfaceCapabilities) Free() {
- if x != nil && x.allocs11d5f596 != nil {
- x.allocs11d5f596.(*cgoAllocMap).Free()
- x.ref11d5f596 = nil
+func (x *ViewportSwizzleNV) Free() {
+ if x != nil && x.allocs74ff2887 != nil {
+ x.allocs74ff2887.(*cgoAllocMap).Free()
+ x.ref74ff2887 = nil
}
}
-// NewSurfaceCapabilitiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewViewportSwizzleNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSurfaceCapabilitiesRef(ref unsafe.Pointer) *SurfaceCapabilities {
+func NewViewportSwizzleNVRef(ref unsafe.Pointer) *ViewportSwizzleNV {
if ref == nil {
return nil
}
- obj := new(SurfaceCapabilities)
- obj.ref11d5f596 = (*C.VkSurfaceCapabilitiesKHR)(unsafe.Pointer(ref))
+ obj := new(ViewportSwizzleNV)
+ obj.ref74ff2887 = (*C.VkViewportSwizzleNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SurfaceCapabilities) PassRef() (*C.VkSurfaceCapabilitiesKHR, *cgoAllocMap) {
+func (x *ViewportSwizzleNV) PassRef() (*C.VkViewportSwizzleNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref11d5f596 != nil {
- return x.ref11d5f596, nil
+ } else if x.ref74ff2887 != nil {
+ return x.ref74ff2887, nil
}
- mem11d5f596 := allocSurfaceCapabilitiesMemory(1)
- ref11d5f596 := (*C.VkSurfaceCapabilitiesKHR)(mem11d5f596)
- allocs11d5f596 := new(cgoAllocMap)
- allocs11d5f596.Add(mem11d5f596)
-
- var cminImageCount_allocs *cgoAllocMap
- ref11d5f596.minImageCount, cminImageCount_allocs = (C.uint32_t)(x.MinImageCount), cgoAllocsUnknown
- allocs11d5f596.Borrow(cminImageCount_allocs)
-
- var cmaxImageCount_allocs *cgoAllocMap
- ref11d5f596.maxImageCount, cmaxImageCount_allocs = (C.uint32_t)(x.MaxImageCount), cgoAllocsUnknown
- allocs11d5f596.Borrow(cmaxImageCount_allocs)
-
- var ccurrentExtent_allocs *cgoAllocMap
- ref11d5f596.currentExtent, ccurrentExtent_allocs = x.CurrentExtent.PassValue()
- allocs11d5f596.Borrow(ccurrentExtent_allocs)
-
- var cminImageExtent_allocs *cgoAllocMap
- ref11d5f596.minImageExtent, cminImageExtent_allocs = x.MinImageExtent.PassValue()
- allocs11d5f596.Borrow(cminImageExtent_allocs)
-
- var cmaxImageExtent_allocs *cgoAllocMap
- ref11d5f596.maxImageExtent, cmaxImageExtent_allocs = x.MaxImageExtent.PassValue()
- allocs11d5f596.Borrow(cmaxImageExtent_allocs)
-
- var cmaxImageArrayLayers_allocs *cgoAllocMap
- ref11d5f596.maxImageArrayLayers, cmaxImageArrayLayers_allocs = (C.uint32_t)(x.MaxImageArrayLayers), cgoAllocsUnknown
- allocs11d5f596.Borrow(cmaxImageArrayLayers_allocs)
+ mem74ff2887 := allocViewportSwizzleNVMemory(1)
+ ref74ff2887 := (*C.VkViewportSwizzleNV)(mem74ff2887)
+ allocs74ff2887 := new(cgoAllocMap)
+ allocs74ff2887.Add(mem74ff2887)
- var csupportedTransforms_allocs *cgoAllocMap
- ref11d5f596.supportedTransforms, csupportedTransforms_allocs = (C.VkSurfaceTransformFlagsKHR)(x.SupportedTransforms), cgoAllocsUnknown
- allocs11d5f596.Borrow(csupportedTransforms_allocs)
+ var cx_allocs *cgoAllocMap
+ ref74ff2887.x, cx_allocs = (C.VkViewportCoordinateSwizzleNV)(x.X), cgoAllocsUnknown
+ allocs74ff2887.Borrow(cx_allocs)
- var ccurrentTransform_allocs *cgoAllocMap
- ref11d5f596.currentTransform, ccurrentTransform_allocs = (C.VkSurfaceTransformFlagBitsKHR)(x.CurrentTransform), cgoAllocsUnknown
- allocs11d5f596.Borrow(ccurrentTransform_allocs)
+ var cy_allocs *cgoAllocMap
+ ref74ff2887.y, cy_allocs = (C.VkViewportCoordinateSwizzleNV)(x.Y), cgoAllocsUnknown
+ allocs74ff2887.Borrow(cy_allocs)
- var csupportedCompositeAlpha_allocs *cgoAllocMap
- ref11d5f596.supportedCompositeAlpha, csupportedCompositeAlpha_allocs = (C.VkCompositeAlphaFlagsKHR)(x.SupportedCompositeAlpha), cgoAllocsUnknown
- allocs11d5f596.Borrow(csupportedCompositeAlpha_allocs)
+ var cz_allocs *cgoAllocMap
+ ref74ff2887.z, cz_allocs = (C.VkViewportCoordinateSwizzleNV)(x.Z), cgoAllocsUnknown
+ allocs74ff2887.Borrow(cz_allocs)
- var csupportedUsageFlags_allocs *cgoAllocMap
- ref11d5f596.supportedUsageFlags, csupportedUsageFlags_allocs = (C.VkImageUsageFlags)(x.SupportedUsageFlags), cgoAllocsUnknown
- allocs11d5f596.Borrow(csupportedUsageFlags_allocs)
+ var cw_allocs *cgoAllocMap
+ ref74ff2887.w, cw_allocs = (C.VkViewportCoordinateSwizzleNV)(x.W), cgoAllocsUnknown
+ allocs74ff2887.Borrow(cw_allocs)
- x.ref11d5f596 = ref11d5f596
- x.allocs11d5f596 = allocs11d5f596
- return ref11d5f596, allocs11d5f596
+ x.ref74ff2887 = ref74ff2887
+ x.allocs74ff2887 = allocs74ff2887
+ return ref74ff2887, allocs74ff2887
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SurfaceCapabilities) PassValue() (C.VkSurfaceCapabilitiesKHR, *cgoAllocMap) {
- if x.ref11d5f596 != nil {
- return *x.ref11d5f596, nil
+func (x ViewportSwizzleNV) PassValue() (C.VkViewportSwizzleNV, *cgoAllocMap) {
+ if x.ref74ff2887 != nil {
+ return *x.ref74ff2887, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -20032,93 +46957,137 @@ func (x SurfaceCapabilities) PassValue() (C.VkSurfaceCapabilitiesKHR, *cgoAllocM
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SurfaceCapabilities) Deref() {
- if x.ref11d5f596 == nil {
+func (x *ViewportSwizzleNV) Deref() {
+ if x.ref74ff2887 == nil {
return
}
- x.MinImageCount = (uint32)(x.ref11d5f596.minImageCount)
- x.MaxImageCount = (uint32)(x.ref11d5f596.maxImageCount)
- x.CurrentExtent = *NewExtent2DRef(unsafe.Pointer(&x.ref11d5f596.currentExtent))
- x.MinImageExtent = *NewExtent2DRef(unsafe.Pointer(&x.ref11d5f596.minImageExtent))
- x.MaxImageExtent = *NewExtent2DRef(unsafe.Pointer(&x.ref11d5f596.maxImageExtent))
- x.MaxImageArrayLayers = (uint32)(x.ref11d5f596.maxImageArrayLayers)
- x.SupportedTransforms = (SurfaceTransformFlags)(x.ref11d5f596.supportedTransforms)
- x.CurrentTransform = (SurfaceTransformFlagBits)(x.ref11d5f596.currentTransform)
- x.SupportedCompositeAlpha = (CompositeAlphaFlags)(x.ref11d5f596.supportedCompositeAlpha)
- x.SupportedUsageFlags = (ImageUsageFlags)(x.ref11d5f596.supportedUsageFlags)
+ x.X = (ViewportCoordinateSwizzleNV)(x.ref74ff2887.x)
+ x.Y = (ViewportCoordinateSwizzleNV)(x.ref74ff2887.y)
+ x.Z = (ViewportCoordinateSwizzleNV)(x.ref74ff2887.z)
+ x.W = (ViewportCoordinateSwizzleNV)(x.ref74ff2887.w)
}
-// allocSurfaceFormatMemory allocates memory for type C.VkSurfaceFormatKHR in C.
+// allocPipelineViewportSwizzleStateCreateInfoNVMemory allocates memory for type C.VkPipelineViewportSwizzleStateCreateInfoNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSurfaceFormatMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSurfaceFormatValue))
+func allocPipelineViewportSwizzleStateCreateInfoNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineViewportSwizzleStateCreateInfoNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSurfaceFormatValue = unsafe.Sizeof([1]C.VkSurfaceFormatKHR{})
+const sizeOfPipelineViewportSwizzleStateCreateInfoNVValue = unsafe.Sizeof([1]C.VkPipelineViewportSwizzleStateCreateInfoNV{})
+
+// unpackSViewportSwizzleNV transforms a sliced Go data structure into plain C format.
+func unpackSViewportSwizzleNV(x []ViewportSwizzleNV) (unpacked *C.VkViewportSwizzleNV, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkViewportSwizzleNV) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocViewportSwizzleNVMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkViewportSwizzleNV)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkViewportSwizzleNV)(h.Data)
+ return
+}
+
+// packSViewportSwizzleNV reads sliced Go data structure out from plain C format.
+func packSViewportSwizzleNV(v []ViewportSwizzleNV, ptr0 *C.VkViewportSwizzleNV) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfViewportSwizzleNVValue]C.VkViewportSwizzleNV)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewViewportSwizzleNVRef(unsafe.Pointer(&ptr1))
+ }
+}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SurfaceFormat) Ref() *C.VkSurfaceFormatKHR {
+func (x *PipelineViewportSwizzleStateCreateInfoNV) Ref() *C.VkPipelineViewportSwizzleStateCreateInfoNV {
if x == nil {
return nil
}
- return x.refedaf82ca
+ return x.ref5e90f24
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SurfaceFormat) Free() {
- if x != nil && x.allocsedaf82ca != nil {
- x.allocsedaf82ca.(*cgoAllocMap).Free()
- x.refedaf82ca = nil
+func (x *PipelineViewportSwizzleStateCreateInfoNV) Free() {
+ if x != nil && x.allocs5e90f24 != nil {
+ x.allocs5e90f24.(*cgoAllocMap).Free()
+ x.ref5e90f24 = nil
}
}
-// NewSurfaceFormatRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineViewportSwizzleStateCreateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSurfaceFormatRef(ref unsafe.Pointer) *SurfaceFormat {
+func NewPipelineViewportSwizzleStateCreateInfoNVRef(ref unsafe.Pointer) *PipelineViewportSwizzleStateCreateInfoNV {
if ref == nil {
return nil
}
- obj := new(SurfaceFormat)
- obj.refedaf82ca = (*C.VkSurfaceFormatKHR)(unsafe.Pointer(ref))
+ obj := new(PipelineViewportSwizzleStateCreateInfoNV)
+ obj.ref5e90f24 = (*C.VkPipelineViewportSwizzleStateCreateInfoNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SurfaceFormat) PassRef() (*C.VkSurfaceFormatKHR, *cgoAllocMap) {
+func (x *PipelineViewportSwizzleStateCreateInfoNV) PassRef() (*C.VkPipelineViewportSwizzleStateCreateInfoNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refedaf82ca != nil {
- return x.refedaf82ca, nil
+ } else if x.ref5e90f24 != nil {
+ return x.ref5e90f24, nil
}
- memedaf82ca := allocSurfaceFormatMemory(1)
- refedaf82ca := (*C.VkSurfaceFormatKHR)(memedaf82ca)
- allocsedaf82ca := new(cgoAllocMap)
- allocsedaf82ca.Add(memedaf82ca)
+ mem5e90f24 := allocPipelineViewportSwizzleStateCreateInfoNVMemory(1)
+ ref5e90f24 := (*C.VkPipelineViewportSwizzleStateCreateInfoNV)(mem5e90f24)
+ allocs5e90f24 := new(cgoAllocMap)
+ allocs5e90f24.Add(mem5e90f24)
- var cformat_allocs *cgoAllocMap
- refedaf82ca.format, cformat_allocs = (C.VkFormat)(x.Format), cgoAllocsUnknown
- allocsedaf82ca.Borrow(cformat_allocs)
+ var csType_allocs *cgoAllocMap
+ ref5e90f24.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs5e90f24.Borrow(csType_allocs)
- var ccolorSpace_allocs *cgoAllocMap
- refedaf82ca.colorSpace, ccolorSpace_allocs = (C.VkColorSpaceKHR)(x.ColorSpace), cgoAllocsUnknown
- allocsedaf82ca.Borrow(ccolorSpace_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref5e90f24.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs5e90f24.Borrow(cpNext_allocs)
- x.refedaf82ca = refedaf82ca
- x.allocsedaf82ca = allocsedaf82ca
- return refedaf82ca, allocsedaf82ca
+ var cflags_allocs *cgoAllocMap
+ ref5e90f24.flags, cflags_allocs = (C.VkPipelineViewportSwizzleStateCreateFlagsNV)(x.Flags), cgoAllocsUnknown
+ allocs5e90f24.Borrow(cflags_allocs)
+
+ var cviewportCount_allocs *cgoAllocMap
+ ref5e90f24.viewportCount, cviewportCount_allocs = (C.uint32_t)(x.ViewportCount), cgoAllocsUnknown
+ allocs5e90f24.Borrow(cviewportCount_allocs)
+
+ var cpViewportSwizzles_allocs *cgoAllocMap
+ ref5e90f24.pViewportSwizzles, cpViewportSwizzles_allocs = unpackSViewportSwizzleNV(x.PViewportSwizzles)
+ allocs5e90f24.Borrow(cpViewportSwizzles_allocs)
+
+ x.ref5e90f24 = ref5e90f24
+ x.allocs5e90f24 = allocs5e90f24
+ return ref5e90f24, allocs5e90f24
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SurfaceFormat) PassValue() (C.VkSurfaceFormatKHR, *cgoAllocMap) {
- if x.refedaf82ca != nil {
- return *x.refedaf82ca, nil
+func (x PipelineViewportSwizzleStateCreateInfoNV) PassValue() (C.VkPipelineViewportSwizzleStateCreateInfoNV, *cgoAllocMap) {
+ if x.ref5e90f24 != nil {
+ return *x.ref5e90f24, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -20126,149 +47095,92 @@ func (x SurfaceFormat) PassValue() (C.VkSurfaceFormatKHR, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SurfaceFormat) Deref() {
- if x.refedaf82ca == nil {
+func (x *PipelineViewportSwizzleStateCreateInfoNV) Deref() {
+ if x.ref5e90f24 == nil {
return
}
- x.Format = (Format)(x.refedaf82ca.format)
- x.ColorSpace = (ColorSpace)(x.refedaf82ca.colorSpace)
+ x.SType = (StructureType)(x.ref5e90f24.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5e90f24.pNext))
+ x.Flags = (PipelineViewportSwizzleStateCreateFlagsNV)(x.ref5e90f24.flags)
+ x.ViewportCount = (uint32)(x.ref5e90f24.viewportCount)
+ packSViewportSwizzleNV(x.PViewportSwizzles, x.ref5e90f24.pViewportSwizzles)
}
-// allocSwapchainCreateInfoMemory allocates memory for type C.VkSwapchainCreateInfoKHR in C.
+// allocPhysicalDeviceDiscardRectanglePropertiesMemory allocates memory for type C.VkPhysicalDeviceDiscardRectanglePropertiesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSwapchainCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSwapchainCreateInfoValue))
+func allocPhysicalDeviceDiscardRectanglePropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceDiscardRectanglePropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSwapchainCreateInfoValue = unsafe.Sizeof([1]C.VkSwapchainCreateInfoKHR{})
+const sizeOfPhysicalDeviceDiscardRectanglePropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceDiscardRectanglePropertiesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SwapchainCreateInfo) Ref() *C.VkSwapchainCreateInfoKHR {
+func (x *PhysicalDeviceDiscardRectangleProperties) Ref() *C.VkPhysicalDeviceDiscardRectanglePropertiesEXT {
if x == nil {
return nil
}
- return x.refdb619e1c
+ return x.reffe8591da
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SwapchainCreateInfo) Free() {
- if x != nil && x.allocsdb619e1c != nil {
- x.allocsdb619e1c.(*cgoAllocMap).Free()
- x.refdb619e1c = nil
+func (x *PhysicalDeviceDiscardRectangleProperties) Free() {
+ if x != nil && x.allocsfe8591da != nil {
+ x.allocsfe8591da.(*cgoAllocMap).Free()
+ x.reffe8591da = nil
}
}
-// NewSwapchainCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceDiscardRectanglePropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSwapchainCreateInfoRef(ref unsafe.Pointer) *SwapchainCreateInfo {
+func NewPhysicalDeviceDiscardRectanglePropertiesRef(ref unsafe.Pointer) *PhysicalDeviceDiscardRectangleProperties {
if ref == nil {
return nil
}
- obj := new(SwapchainCreateInfo)
- obj.refdb619e1c = (*C.VkSwapchainCreateInfoKHR)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceDiscardRectangleProperties)
+ obj.reffe8591da = (*C.VkPhysicalDeviceDiscardRectanglePropertiesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SwapchainCreateInfo) PassRef() (*C.VkSwapchainCreateInfoKHR, *cgoAllocMap) {
+func (x *PhysicalDeviceDiscardRectangleProperties) PassRef() (*C.VkPhysicalDeviceDiscardRectanglePropertiesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refdb619e1c != nil {
- return x.refdb619e1c, nil
+ } else if x.reffe8591da != nil {
+ return x.reffe8591da, nil
}
- memdb619e1c := allocSwapchainCreateInfoMemory(1)
- refdb619e1c := (*C.VkSwapchainCreateInfoKHR)(memdb619e1c)
- allocsdb619e1c := new(cgoAllocMap)
- allocsdb619e1c.Add(memdb619e1c)
+ memfe8591da := allocPhysicalDeviceDiscardRectanglePropertiesMemory(1)
+ reffe8591da := (*C.VkPhysicalDeviceDiscardRectanglePropertiesEXT)(memfe8591da)
+ allocsfe8591da := new(cgoAllocMap)
+ allocsfe8591da.Add(memfe8591da)
var csType_allocs *cgoAllocMap
- refdb619e1c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsdb619e1c.Borrow(csType_allocs)
+ reffe8591da.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsfe8591da.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refdb619e1c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsdb619e1c.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- refdb619e1c.flags, cflags_allocs = (C.VkSwapchainCreateFlagsKHR)(x.Flags), cgoAllocsUnknown
- allocsdb619e1c.Borrow(cflags_allocs)
-
- var csurface_allocs *cgoAllocMap
- refdb619e1c.surface, csurface_allocs = *(*C.VkSurfaceKHR)(unsafe.Pointer(&x.Surface)), cgoAllocsUnknown
- allocsdb619e1c.Borrow(csurface_allocs)
-
- var cminImageCount_allocs *cgoAllocMap
- refdb619e1c.minImageCount, cminImageCount_allocs = (C.uint32_t)(x.MinImageCount), cgoAllocsUnknown
- allocsdb619e1c.Borrow(cminImageCount_allocs)
-
- var cimageFormat_allocs *cgoAllocMap
- refdb619e1c.imageFormat, cimageFormat_allocs = (C.VkFormat)(x.ImageFormat), cgoAllocsUnknown
- allocsdb619e1c.Borrow(cimageFormat_allocs)
-
- var cimageColorSpace_allocs *cgoAllocMap
- refdb619e1c.imageColorSpace, cimageColorSpace_allocs = (C.VkColorSpaceKHR)(x.ImageColorSpace), cgoAllocsUnknown
- allocsdb619e1c.Borrow(cimageColorSpace_allocs)
-
- var cimageExtent_allocs *cgoAllocMap
- refdb619e1c.imageExtent, cimageExtent_allocs = x.ImageExtent.PassValue()
- allocsdb619e1c.Borrow(cimageExtent_allocs)
-
- var cimageArrayLayers_allocs *cgoAllocMap
- refdb619e1c.imageArrayLayers, cimageArrayLayers_allocs = (C.uint32_t)(x.ImageArrayLayers), cgoAllocsUnknown
- allocsdb619e1c.Borrow(cimageArrayLayers_allocs)
-
- var cimageUsage_allocs *cgoAllocMap
- refdb619e1c.imageUsage, cimageUsage_allocs = (C.VkImageUsageFlags)(x.ImageUsage), cgoAllocsUnknown
- allocsdb619e1c.Borrow(cimageUsage_allocs)
-
- var cimageSharingMode_allocs *cgoAllocMap
- refdb619e1c.imageSharingMode, cimageSharingMode_allocs = (C.VkSharingMode)(x.ImageSharingMode), cgoAllocsUnknown
- allocsdb619e1c.Borrow(cimageSharingMode_allocs)
-
- var cqueueFamilyIndexCount_allocs *cgoAllocMap
- refdb619e1c.queueFamilyIndexCount, cqueueFamilyIndexCount_allocs = (C.uint32_t)(x.QueueFamilyIndexCount), cgoAllocsUnknown
- allocsdb619e1c.Borrow(cqueueFamilyIndexCount_allocs)
-
- var cpQueueFamilyIndices_allocs *cgoAllocMap
- refdb619e1c.pQueueFamilyIndices, cpQueueFamilyIndices_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PQueueFamilyIndices)).Data)), cgoAllocsUnknown
- allocsdb619e1c.Borrow(cpQueueFamilyIndices_allocs)
-
- var cpreTransform_allocs *cgoAllocMap
- refdb619e1c.preTransform, cpreTransform_allocs = (C.VkSurfaceTransformFlagBitsKHR)(x.PreTransform), cgoAllocsUnknown
- allocsdb619e1c.Borrow(cpreTransform_allocs)
-
- var ccompositeAlpha_allocs *cgoAllocMap
- refdb619e1c.compositeAlpha, ccompositeAlpha_allocs = (C.VkCompositeAlphaFlagBitsKHR)(x.CompositeAlpha), cgoAllocsUnknown
- allocsdb619e1c.Borrow(ccompositeAlpha_allocs)
-
- var cpresentMode_allocs *cgoAllocMap
- refdb619e1c.presentMode, cpresentMode_allocs = (C.VkPresentModeKHR)(x.PresentMode), cgoAllocsUnknown
- allocsdb619e1c.Borrow(cpresentMode_allocs)
-
- var cclipped_allocs *cgoAllocMap
- refdb619e1c.clipped, cclipped_allocs = (C.VkBool32)(x.Clipped), cgoAllocsUnknown
- allocsdb619e1c.Borrow(cclipped_allocs)
+ reffe8591da.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsfe8591da.Borrow(cpNext_allocs)
- var coldSwapchain_allocs *cgoAllocMap
- refdb619e1c.oldSwapchain, coldSwapchain_allocs = *(*C.VkSwapchainKHR)(unsafe.Pointer(&x.OldSwapchain)), cgoAllocsUnknown
- allocsdb619e1c.Borrow(coldSwapchain_allocs)
+ var cmaxDiscardRectangles_allocs *cgoAllocMap
+ reffe8591da.maxDiscardRectangles, cmaxDiscardRectangles_allocs = (C.uint32_t)(x.MaxDiscardRectangles), cgoAllocsUnknown
+ allocsfe8591da.Borrow(cmaxDiscardRectangles_allocs)
- x.refdb619e1c = refdb619e1c
- x.allocsdb619e1c = allocsdb619e1c
- return refdb619e1c, allocsdb619e1c
+ x.reffe8591da = reffe8591da
+ x.allocsfe8591da = allocsfe8591da
+ return reffe8591da, allocsfe8591da
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SwapchainCreateInfo) PassValue() (C.VkSwapchainCreateInfoKHR, *cgoAllocMap) {
- if x.refdb619e1c != nil {
- return *x.refdb619e1c, nil
+func (x PhysicalDeviceDiscardRectangleProperties) PassValue() (C.VkPhysicalDeviceDiscardRectanglePropertiesEXT, *cgoAllocMap) {
+ if x.reffe8591da != nil {
+ return *x.reffe8591da, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -20276,129 +47188,102 @@ func (x SwapchainCreateInfo) PassValue() (C.VkSwapchainCreateInfoKHR, *cgoAllocM
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SwapchainCreateInfo) Deref() {
- if x.refdb619e1c == nil {
+func (x *PhysicalDeviceDiscardRectangleProperties) Deref() {
+ if x.reffe8591da == nil {
return
}
- x.SType = (StructureType)(x.refdb619e1c.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refdb619e1c.pNext))
- x.Flags = (SwapchainCreateFlags)(x.refdb619e1c.flags)
- x.Surface = *(*Surface)(unsafe.Pointer(&x.refdb619e1c.surface))
- x.MinImageCount = (uint32)(x.refdb619e1c.minImageCount)
- x.ImageFormat = (Format)(x.refdb619e1c.imageFormat)
- x.ImageColorSpace = (ColorSpace)(x.refdb619e1c.imageColorSpace)
- x.ImageExtent = *NewExtent2DRef(unsafe.Pointer(&x.refdb619e1c.imageExtent))
- x.ImageArrayLayers = (uint32)(x.refdb619e1c.imageArrayLayers)
- x.ImageUsage = (ImageUsageFlags)(x.refdb619e1c.imageUsage)
- x.ImageSharingMode = (SharingMode)(x.refdb619e1c.imageSharingMode)
- x.QueueFamilyIndexCount = (uint32)(x.refdb619e1c.queueFamilyIndexCount)
- hxffe3496 := (*sliceHeader)(unsafe.Pointer(&x.PQueueFamilyIndices))
- hxffe3496.Data = unsafe.Pointer(x.refdb619e1c.pQueueFamilyIndices)
- hxffe3496.Cap = 0x7fffffff
- // hxffe3496.Len = ?
-
- x.PreTransform = (SurfaceTransformFlagBits)(x.refdb619e1c.preTransform)
- x.CompositeAlpha = (CompositeAlphaFlagBits)(x.refdb619e1c.compositeAlpha)
- x.PresentMode = (PresentMode)(x.refdb619e1c.presentMode)
- x.Clipped = (Bool32)(x.refdb619e1c.clipped)
- x.OldSwapchain = *(*Swapchain)(unsafe.Pointer(&x.refdb619e1c.oldSwapchain))
+ x.SType = (StructureType)(x.reffe8591da.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reffe8591da.pNext))
+ x.MaxDiscardRectangles = (uint32)(x.reffe8591da.maxDiscardRectangles)
}
-// allocPresentInfoMemory allocates memory for type C.VkPresentInfoKHR in C.
+// allocPipelineDiscardRectangleStateCreateInfoMemory allocates memory for type C.VkPipelineDiscardRectangleStateCreateInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPresentInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPresentInfoValue))
+func allocPipelineDiscardRectangleStateCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineDiscardRectangleStateCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPresentInfoValue = unsafe.Sizeof([1]C.VkPresentInfoKHR{})
+const sizeOfPipelineDiscardRectangleStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineDiscardRectangleStateCreateInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PresentInfo) Ref() *C.VkPresentInfoKHR {
+func (x *PipelineDiscardRectangleStateCreateInfo) Ref() *C.VkPipelineDiscardRectangleStateCreateInfoEXT {
if x == nil {
return nil
}
- return x.ref1d0e82d4
+ return x.refcdbb125e
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PresentInfo) Free() {
- if x != nil && x.allocs1d0e82d4 != nil {
- x.allocs1d0e82d4.(*cgoAllocMap).Free()
- x.ref1d0e82d4 = nil
+func (x *PipelineDiscardRectangleStateCreateInfo) Free() {
+ if x != nil && x.allocscdbb125e != nil {
+ x.allocscdbb125e.(*cgoAllocMap).Free()
+ x.refcdbb125e = nil
}
}
-// NewPresentInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineDiscardRectangleStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPresentInfoRef(ref unsafe.Pointer) *PresentInfo {
+func NewPipelineDiscardRectangleStateCreateInfoRef(ref unsafe.Pointer) *PipelineDiscardRectangleStateCreateInfo {
if ref == nil {
return nil
}
- obj := new(PresentInfo)
- obj.ref1d0e82d4 = (*C.VkPresentInfoKHR)(unsafe.Pointer(ref))
+ obj := new(PipelineDiscardRectangleStateCreateInfo)
+ obj.refcdbb125e = (*C.VkPipelineDiscardRectangleStateCreateInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PresentInfo) PassRef() (*C.VkPresentInfoKHR, *cgoAllocMap) {
+func (x *PipelineDiscardRectangleStateCreateInfo) PassRef() (*C.VkPipelineDiscardRectangleStateCreateInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref1d0e82d4 != nil {
- return x.ref1d0e82d4, nil
+ } else if x.refcdbb125e != nil {
+ return x.refcdbb125e, nil
}
- mem1d0e82d4 := allocPresentInfoMemory(1)
- ref1d0e82d4 := (*C.VkPresentInfoKHR)(mem1d0e82d4)
- allocs1d0e82d4 := new(cgoAllocMap)
- allocs1d0e82d4.Add(mem1d0e82d4)
+ memcdbb125e := allocPipelineDiscardRectangleStateCreateInfoMemory(1)
+ refcdbb125e := (*C.VkPipelineDiscardRectangleStateCreateInfoEXT)(memcdbb125e)
+ allocscdbb125e := new(cgoAllocMap)
+ allocscdbb125e.Add(memcdbb125e)
var csType_allocs *cgoAllocMap
- ref1d0e82d4.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs1d0e82d4.Borrow(csType_allocs)
+ refcdbb125e.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocscdbb125e.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref1d0e82d4.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs1d0e82d4.Borrow(cpNext_allocs)
-
- var cwaitSemaphoreCount_allocs *cgoAllocMap
- ref1d0e82d4.waitSemaphoreCount, cwaitSemaphoreCount_allocs = (C.uint32_t)(x.WaitSemaphoreCount), cgoAllocsUnknown
- allocs1d0e82d4.Borrow(cwaitSemaphoreCount_allocs)
-
- var cpWaitSemaphores_allocs *cgoAllocMap
- ref1d0e82d4.pWaitSemaphores, cpWaitSemaphores_allocs = (*C.VkSemaphore)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PWaitSemaphores)).Data)), cgoAllocsUnknown
- allocs1d0e82d4.Borrow(cpWaitSemaphores_allocs)
+ refcdbb125e.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocscdbb125e.Borrow(cpNext_allocs)
- var cswapchainCount_allocs *cgoAllocMap
- ref1d0e82d4.swapchainCount, cswapchainCount_allocs = (C.uint32_t)(x.SwapchainCount), cgoAllocsUnknown
- allocs1d0e82d4.Borrow(cswapchainCount_allocs)
+ var cflags_allocs *cgoAllocMap
+ refcdbb125e.flags, cflags_allocs = (C.VkPipelineDiscardRectangleStateCreateFlagsEXT)(x.Flags), cgoAllocsUnknown
+ allocscdbb125e.Borrow(cflags_allocs)
- var cpSwapchains_allocs *cgoAllocMap
- ref1d0e82d4.pSwapchains, cpSwapchains_allocs = (*C.VkSwapchainKHR)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PSwapchains)).Data)), cgoAllocsUnknown
- allocs1d0e82d4.Borrow(cpSwapchains_allocs)
+ var cdiscardRectangleMode_allocs *cgoAllocMap
+ refcdbb125e.discardRectangleMode, cdiscardRectangleMode_allocs = (C.VkDiscardRectangleModeEXT)(x.DiscardRectangleMode), cgoAllocsUnknown
+ allocscdbb125e.Borrow(cdiscardRectangleMode_allocs)
- var cpImageIndices_allocs *cgoAllocMap
- ref1d0e82d4.pImageIndices, cpImageIndices_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PImageIndices)).Data)), cgoAllocsUnknown
- allocs1d0e82d4.Borrow(cpImageIndices_allocs)
+ var cdiscardRectangleCount_allocs *cgoAllocMap
+ refcdbb125e.discardRectangleCount, cdiscardRectangleCount_allocs = (C.uint32_t)(x.DiscardRectangleCount), cgoAllocsUnknown
+ allocscdbb125e.Borrow(cdiscardRectangleCount_allocs)
- var cpResults_allocs *cgoAllocMap
- ref1d0e82d4.pResults, cpResults_allocs = (*C.VkResult)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PResults)).Data)), cgoAllocsUnknown
- allocs1d0e82d4.Borrow(cpResults_allocs)
+ var cpDiscardRectangles_allocs *cgoAllocMap
+ refcdbb125e.pDiscardRectangles, cpDiscardRectangles_allocs = unpackSRect2D(x.PDiscardRectangles)
+ allocscdbb125e.Borrow(cpDiscardRectangles_allocs)
- x.ref1d0e82d4 = ref1d0e82d4
- x.allocs1d0e82d4 = allocs1d0e82d4
- return ref1d0e82d4, allocs1d0e82d4
+ x.refcdbb125e = refcdbb125e
+ x.allocscdbb125e = allocscdbb125e
+ return refcdbb125e, allocscdbb125e
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PresentInfo) PassValue() (C.VkPresentInfoKHR, *cgoAllocMap) {
- if x.ref1d0e82d4 != nil {
- return *x.ref1d0e82d4, nil
+func (x PipelineDiscardRectangleStateCreateInfo) PassValue() (C.VkPipelineDiscardRectangleStateCreateInfoEXT, *cgoAllocMap) {
+ if x.refcdbb125e != nil {
+ return *x.refcdbb125e, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -20406,111 +47291,125 @@ func (x PresentInfo) PassValue() (C.VkPresentInfoKHR, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PresentInfo) Deref() {
- if x.ref1d0e82d4 == nil {
+func (x *PipelineDiscardRectangleStateCreateInfo) Deref() {
+ if x.refcdbb125e == nil {
return
}
- x.SType = (StructureType)(x.ref1d0e82d4.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref1d0e82d4.pNext))
- x.WaitSemaphoreCount = (uint32)(x.ref1d0e82d4.waitSemaphoreCount)
- hxf5d48a6 := (*sliceHeader)(unsafe.Pointer(&x.PWaitSemaphores))
- hxf5d48a6.Data = unsafe.Pointer(x.ref1d0e82d4.pWaitSemaphores)
- hxf5d48a6.Cap = 0x7fffffff
- // hxf5d48a6.Len = ?
-
- x.SwapchainCount = (uint32)(x.ref1d0e82d4.swapchainCount)
- hxf685469 := (*sliceHeader)(unsafe.Pointer(&x.PSwapchains))
- hxf685469.Data = unsafe.Pointer(x.ref1d0e82d4.pSwapchains)
- hxf685469.Cap = 0x7fffffff
- // hxf685469.Len = ?
-
- hxf03a9a7 := (*sliceHeader)(unsafe.Pointer(&x.PImageIndices))
- hxf03a9a7.Data = unsafe.Pointer(x.ref1d0e82d4.pImageIndices)
- hxf03a9a7.Cap = 0x7fffffff
- // hxf03a9a7.Len = ?
-
- hxff24242 := (*sliceHeader)(unsafe.Pointer(&x.PResults))
- hxff24242.Data = unsafe.Pointer(x.ref1d0e82d4.pResults)
- hxff24242.Cap = 0x7fffffff
- // hxff24242.Len = ?
-
+ x.SType = (StructureType)(x.refcdbb125e.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refcdbb125e.pNext))
+ x.Flags = (PipelineDiscardRectangleStateCreateFlags)(x.refcdbb125e.flags)
+ x.DiscardRectangleMode = (DiscardRectangleMode)(x.refcdbb125e.discardRectangleMode)
+ x.DiscardRectangleCount = (uint32)(x.refcdbb125e.discardRectangleCount)
+ packSRect2D(x.PDiscardRectangles, x.refcdbb125e.pDiscardRectangles)
}
-// allocImageSwapchainCreateInfoMemory allocates memory for type C.VkImageSwapchainCreateInfoKHR in C.
+// allocPhysicalDeviceConservativeRasterizationPropertiesMemory allocates memory for type C.VkPhysicalDeviceConservativeRasterizationPropertiesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocImageSwapchainCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageSwapchainCreateInfoValue))
+func allocPhysicalDeviceConservativeRasterizationPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceConservativeRasterizationPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfImageSwapchainCreateInfoValue = unsafe.Sizeof([1]C.VkImageSwapchainCreateInfoKHR{})
+const sizeOfPhysicalDeviceConservativeRasterizationPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceConservativeRasterizationPropertiesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ImageSwapchainCreateInfo) Ref() *C.VkImageSwapchainCreateInfoKHR {
+func (x *PhysicalDeviceConservativeRasterizationProperties) Ref() *C.VkPhysicalDeviceConservativeRasterizationPropertiesEXT {
if x == nil {
return nil
}
- return x.refd83cc5d0
+ return x.ref878f819c
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ImageSwapchainCreateInfo) Free() {
- if x != nil && x.allocsd83cc5d0 != nil {
- x.allocsd83cc5d0.(*cgoAllocMap).Free()
- x.refd83cc5d0 = nil
+func (x *PhysicalDeviceConservativeRasterizationProperties) Free() {
+ if x != nil && x.allocs878f819c != nil {
+ x.allocs878f819c.(*cgoAllocMap).Free()
+ x.ref878f819c = nil
}
}
-// NewImageSwapchainCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceConservativeRasterizationPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewImageSwapchainCreateInfoRef(ref unsafe.Pointer) *ImageSwapchainCreateInfo {
+func NewPhysicalDeviceConservativeRasterizationPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceConservativeRasterizationProperties {
if ref == nil {
return nil
}
- obj := new(ImageSwapchainCreateInfo)
- obj.refd83cc5d0 = (*C.VkImageSwapchainCreateInfoKHR)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceConservativeRasterizationProperties)
+ obj.ref878f819c = (*C.VkPhysicalDeviceConservativeRasterizationPropertiesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ImageSwapchainCreateInfo) PassRef() (*C.VkImageSwapchainCreateInfoKHR, *cgoAllocMap) {
+func (x *PhysicalDeviceConservativeRasterizationProperties) PassRef() (*C.VkPhysicalDeviceConservativeRasterizationPropertiesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refd83cc5d0 != nil {
- return x.refd83cc5d0, nil
+ } else if x.ref878f819c != nil {
+ return x.ref878f819c, nil
}
- memd83cc5d0 := allocImageSwapchainCreateInfoMemory(1)
- refd83cc5d0 := (*C.VkImageSwapchainCreateInfoKHR)(memd83cc5d0)
- allocsd83cc5d0 := new(cgoAllocMap)
- allocsd83cc5d0.Add(memd83cc5d0)
+ mem878f819c := allocPhysicalDeviceConservativeRasterizationPropertiesMemory(1)
+ ref878f819c := (*C.VkPhysicalDeviceConservativeRasterizationPropertiesEXT)(mem878f819c)
+ allocs878f819c := new(cgoAllocMap)
+ allocs878f819c.Add(mem878f819c)
+
+ var csType_allocs *cgoAllocMap
+ ref878f819c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs878f819c.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref878f819c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs878f819c.Borrow(cpNext_allocs)
+
+ var cprimitiveOverestimationSize_allocs *cgoAllocMap
+ ref878f819c.primitiveOverestimationSize, cprimitiveOverestimationSize_allocs = (C.float)(x.PrimitiveOverestimationSize), cgoAllocsUnknown
+ allocs878f819c.Borrow(cprimitiveOverestimationSize_allocs)
+
+ var cmaxExtraPrimitiveOverestimationSize_allocs *cgoAllocMap
+ ref878f819c.maxExtraPrimitiveOverestimationSize, cmaxExtraPrimitiveOverestimationSize_allocs = (C.float)(x.MaxExtraPrimitiveOverestimationSize), cgoAllocsUnknown
+ allocs878f819c.Borrow(cmaxExtraPrimitiveOverestimationSize_allocs)
+
+ var cextraPrimitiveOverestimationSizeGranularity_allocs *cgoAllocMap
+ ref878f819c.extraPrimitiveOverestimationSizeGranularity, cextraPrimitiveOverestimationSizeGranularity_allocs = (C.float)(x.ExtraPrimitiveOverestimationSizeGranularity), cgoAllocsUnknown
+ allocs878f819c.Borrow(cextraPrimitiveOverestimationSizeGranularity_allocs)
- var csType_allocs *cgoAllocMap
- refd83cc5d0.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsd83cc5d0.Borrow(csType_allocs)
+ var cprimitiveUnderestimation_allocs *cgoAllocMap
+ ref878f819c.primitiveUnderestimation, cprimitiveUnderestimation_allocs = (C.VkBool32)(x.PrimitiveUnderestimation), cgoAllocsUnknown
+ allocs878f819c.Borrow(cprimitiveUnderestimation_allocs)
- var cpNext_allocs *cgoAllocMap
- refd83cc5d0.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsd83cc5d0.Borrow(cpNext_allocs)
+ var cconservativePointAndLineRasterization_allocs *cgoAllocMap
+ ref878f819c.conservativePointAndLineRasterization, cconservativePointAndLineRasterization_allocs = (C.VkBool32)(x.ConservativePointAndLineRasterization), cgoAllocsUnknown
+ allocs878f819c.Borrow(cconservativePointAndLineRasterization_allocs)
- var cswapchain_allocs *cgoAllocMap
- refd83cc5d0.swapchain, cswapchain_allocs = *(*C.VkSwapchainKHR)(unsafe.Pointer(&x.Swapchain)), cgoAllocsUnknown
- allocsd83cc5d0.Borrow(cswapchain_allocs)
+ var cdegenerateTrianglesRasterized_allocs *cgoAllocMap
+ ref878f819c.degenerateTrianglesRasterized, cdegenerateTrianglesRasterized_allocs = (C.VkBool32)(x.DegenerateTrianglesRasterized), cgoAllocsUnknown
+ allocs878f819c.Borrow(cdegenerateTrianglesRasterized_allocs)
- x.refd83cc5d0 = refd83cc5d0
- x.allocsd83cc5d0 = allocsd83cc5d0
- return refd83cc5d0, allocsd83cc5d0
+ var cdegenerateLinesRasterized_allocs *cgoAllocMap
+ ref878f819c.degenerateLinesRasterized, cdegenerateLinesRasterized_allocs = (C.VkBool32)(x.DegenerateLinesRasterized), cgoAllocsUnknown
+ allocs878f819c.Borrow(cdegenerateLinesRasterized_allocs)
+
+ var cfullyCoveredFragmentShaderInputVariable_allocs *cgoAllocMap
+ ref878f819c.fullyCoveredFragmentShaderInputVariable, cfullyCoveredFragmentShaderInputVariable_allocs = (C.VkBool32)(x.FullyCoveredFragmentShaderInputVariable), cgoAllocsUnknown
+ allocs878f819c.Borrow(cfullyCoveredFragmentShaderInputVariable_allocs)
+
+ var cconservativeRasterizationPostDepthCoverage_allocs *cgoAllocMap
+ ref878f819c.conservativeRasterizationPostDepthCoverage, cconservativeRasterizationPostDepthCoverage_allocs = (C.VkBool32)(x.ConservativeRasterizationPostDepthCoverage), cgoAllocsUnknown
+ allocs878f819c.Borrow(cconservativeRasterizationPostDepthCoverage_allocs)
+
+ x.ref878f819c = ref878f819c
+ x.allocs878f819c = allocs878f819c
+ return ref878f819c, allocs878f819c
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ImageSwapchainCreateInfo) PassValue() (C.VkImageSwapchainCreateInfoKHR, *cgoAllocMap) {
- if x.refd83cc5d0 != nil {
- return *x.refd83cc5d0, nil
+func (x PhysicalDeviceConservativeRasterizationProperties) PassValue() (C.VkPhysicalDeviceConservativeRasterizationPropertiesEXT, *cgoAllocMap) {
+ if x.ref878f819c != nil {
+ return *x.ref878f819c, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -20518,94 +47417,106 @@ func (x ImageSwapchainCreateInfo) PassValue() (C.VkImageSwapchainCreateInfoKHR,
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ImageSwapchainCreateInfo) Deref() {
- if x.refd83cc5d0 == nil {
+func (x *PhysicalDeviceConservativeRasterizationProperties) Deref() {
+ if x.ref878f819c == nil {
return
}
- x.SType = (StructureType)(x.refd83cc5d0.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd83cc5d0.pNext))
- x.Swapchain = *(*Swapchain)(unsafe.Pointer(&x.refd83cc5d0.swapchain))
+ x.SType = (StructureType)(x.ref878f819c.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref878f819c.pNext))
+ x.PrimitiveOverestimationSize = (float32)(x.ref878f819c.primitiveOverestimationSize)
+ x.MaxExtraPrimitiveOverestimationSize = (float32)(x.ref878f819c.maxExtraPrimitiveOverestimationSize)
+ x.ExtraPrimitiveOverestimationSizeGranularity = (float32)(x.ref878f819c.extraPrimitiveOverestimationSizeGranularity)
+ x.PrimitiveUnderestimation = (Bool32)(x.ref878f819c.primitiveUnderestimation)
+ x.ConservativePointAndLineRasterization = (Bool32)(x.ref878f819c.conservativePointAndLineRasterization)
+ x.DegenerateTrianglesRasterized = (Bool32)(x.ref878f819c.degenerateTrianglesRasterized)
+ x.DegenerateLinesRasterized = (Bool32)(x.ref878f819c.degenerateLinesRasterized)
+ x.FullyCoveredFragmentShaderInputVariable = (Bool32)(x.ref878f819c.fullyCoveredFragmentShaderInputVariable)
+ x.ConservativeRasterizationPostDepthCoverage = (Bool32)(x.ref878f819c.conservativeRasterizationPostDepthCoverage)
}
-// allocBindImageMemorySwapchainInfoMemory allocates memory for type C.VkBindImageMemorySwapchainInfoKHR in C.
+// allocPipelineRasterizationConservativeStateCreateInfoMemory allocates memory for type C.VkPipelineRasterizationConservativeStateCreateInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocBindImageMemorySwapchainInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBindImageMemorySwapchainInfoValue))
+func allocPipelineRasterizationConservativeStateCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineRasterizationConservativeStateCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfBindImageMemorySwapchainInfoValue = unsafe.Sizeof([1]C.VkBindImageMemorySwapchainInfoKHR{})
+const sizeOfPipelineRasterizationConservativeStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineRasterizationConservativeStateCreateInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *BindImageMemorySwapchainInfo) Ref() *C.VkBindImageMemorySwapchainInfoKHR {
+func (x *PipelineRasterizationConservativeStateCreateInfo) Ref() *C.VkPipelineRasterizationConservativeStateCreateInfoEXT {
if x == nil {
return nil
}
- return x.ref1aa25cb6
+ return x.refe3cd0046
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *BindImageMemorySwapchainInfo) Free() {
- if x != nil && x.allocs1aa25cb6 != nil {
- x.allocs1aa25cb6.(*cgoAllocMap).Free()
- x.ref1aa25cb6 = nil
+func (x *PipelineRasterizationConservativeStateCreateInfo) Free() {
+ if x != nil && x.allocse3cd0046 != nil {
+ x.allocse3cd0046.(*cgoAllocMap).Free()
+ x.refe3cd0046 = nil
}
}
-// NewBindImageMemorySwapchainInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineRasterizationConservativeStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewBindImageMemorySwapchainInfoRef(ref unsafe.Pointer) *BindImageMemorySwapchainInfo {
+func NewPipelineRasterizationConservativeStateCreateInfoRef(ref unsafe.Pointer) *PipelineRasterizationConservativeStateCreateInfo {
if ref == nil {
return nil
}
- obj := new(BindImageMemorySwapchainInfo)
- obj.ref1aa25cb6 = (*C.VkBindImageMemorySwapchainInfoKHR)(unsafe.Pointer(ref))
+ obj := new(PipelineRasterizationConservativeStateCreateInfo)
+ obj.refe3cd0046 = (*C.VkPipelineRasterizationConservativeStateCreateInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *BindImageMemorySwapchainInfo) PassRef() (*C.VkBindImageMemorySwapchainInfoKHR, *cgoAllocMap) {
+func (x *PipelineRasterizationConservativeStateCreateInfo) PassRef() (*C.VkPipelineRasterizationConservativeStateCreateInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref1aa25cb6 != nil {
- return x.ref1aa25cb6, nil
+ } else if x.refe3cd0046 != nil {
+ return x.refe3cd0046, nil
}
- mem1aa25cb6 := allocBindImageMemorySwapchainInfoMemory(1)
- ref1aa25cb6 := (*C.VkBindImageMemorySwapchainInfoKHR)(mem1aa25cb6)
- allocs1aa25cb6 := new(cgoAllocMap)
- allocs1aa25cb6.Add(mem1aa25cb6)
+ meme3cd0046 := allocPipelineRasterizationConservativeStateCreateInfoMemory(1)
+ refe3cd0046 := (*C.VkPipelineRasterizationConservativeStateCreateInfoEXT)(meme3cd0046)
+ allocse3cd0046 := new(cgoAllocMap)
+ allocse3cd0046.Add(meme3cd0046)
var csType_allocs *cgoAllocMap
- ref1aa25cb6.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs1aa25cb6.Borrow(csType_allocs)
+ refe3cd0046.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocse3cd0046.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref1aa25cb6.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs1aa25cb6.Borrow(cpNext_allocs)
+ refe3cd0046.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocse3cd0046.Borrow(cpNext_allocs)
- var cswapchain_allocs *cgoAllocMap
- ref1aa25cb6.swapchain, cswapchain_allocs = *(*C.VkSwapchainKHR)(unsafe.Pointer(&x.Swapchain)), cgoAllocsUnknown
- allocs1aa25cb6.Borrow(cswapchain_allocs)
+ var cflags_allocs *cgoAllocMap
+ refe3cd0046.flags, cflags_allocs = (C.VkPipelineRasterizationConservativeStateCreateFlagsEXT)(x.Flags), cgoAllocsUnknown
+ allocse3cd0046.Borrow(cflags_allocs)
- var cimageIndex_allocs *cgoAllocMap
- ref1aa25cb6.imageIndex, cimageIndex_allocs = (C.uint32_t)(x.ImageIndex), cgoAllocsUnknown
- allocs1aa25cb6.Borrow(cimageIndex_allocs)
+ var cconservativeRasterizationMode_allocs *cgoAllocMap
+ refe3cd0046.conservativeRasterizationMode, cconservativeRasterizationMode_allocs = (C.VkConservativeRasterizationModeEXT)(x.ConservativeRasterizationMode), cgoAllocsUnknown
+ allocse3cd0046.Borrow(cconservativeRasterizationMode_allocs)
- x.ref1aa25cb6 = ref1aa25cb6
- x.allocs1aa25cb6 = allocs1aa25cb6
- return ref1aa25cb6, allocs1aa25cb6
+ var cextraPrimitiveOverestimationSize_allocs *cgoAllocMap
+ refe3cd0046.extraPrimitiveOverestimationSize, cextraPrimitiveOverestimationSize_allocs = (C.float)(x.ExtraPrimitiveOverestimationSize), cgoAllocsUnknown
+ allocse3cd0046.Borrow(cextraPrimitiveOverestimationSize_allocs)
+
+ x.refe3cd0046 = refe3cd0046
+ x.allocse3cd0046 = allocse3cd0046
+ return refe3cd0046, allocse3cd0046
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x BindImageMemorySwapchainInfo) PassValue() (C.VkBindImageMemorySwapchainInfoKHR, *cgoAllocMap) {
- if x.ref1aa25cb6 != nil {
- return *x.ref1aa25cb6, nil
+func (x PipelineRasterizationConservativeStateCreateInfo) PassValue() (C.VkPipelineRasterizationConservativeStateCreateInfoEXT, *cgoAllocMap) {
+ if x.refe3cd0046 != nil {
+ return *x.refe3cd0046, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -20613,107 +47524,92 @@ func (x BindImageMemorySwapchainInfo) PassValue() (C.VkBindImageMemorySwapchainI
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *BindImageMemorySwapchainInfo) Deref() {
- if x.ref1aa25cb6 == nil {
+func (x *PipelineRasterizationConservativeStateCreateInfo) Deref() {
+ if x.refe3cd0046 == nil {
return
}
- x.SType = (StructureType)(x.ref1aa25cb6.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref1aa25cb6.pNext))
- x.Swapchain = *(*Swapchain)(unsafe.Pointer(&x.ref1aa25cb6.swapchain))
- x.ImageIndex = (uint32)(x.ref1aa25cb6.imageIndex)
+ x.SType = (StructureType)(x.refe3cd0046.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refe3cd0046.pNext))
+ x.Flags = (PipelineRasterizationConservativeStateCreateFlags)(x.refe3cd0046.flags)
+ x.ConservativeRasterizationMode = (ConservativeRasterizationMode)(x.refe3cd0046.conservativeRasterizationMode)
+ x.ExtraPrimitiveOverestimationSize = (float32)(x.refe3cd0046.extraPrimitiveOverestimationSize)
}
-// allocAcquireNextImageInfoMemory allocates memory for type C.VkAcquireNextImageInfoKHR in C.
+// allocPhysicalDeviceDepthClipEnableFeaturesMemory allocates memory for type C.VkPhysicalDeviceDepthClipEnableFeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocAcquireNextImageInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfAcquireNextImageInfoValue))
+func allocPhysicalDeviceDepthClipEnableFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceDepthClipEnableFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfAcquireNextImageInfoValue = unsafe.Sizeof([1]C.VkAcquireNextImageInfoKHR{})
+const sizeOfPhysicalDeviceDepthClipEnableFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceDepthClipEnableFeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *AcquireNextImageInfo) Ref() *C.VkAcquireNextImageInfoKHR {
+func (x *PhysicalDeviceDepthClipEnableFeatures) Ref() *C.VkPhysicalDeviceDepthClipEnableFeaturesEXT {
if x == nil {
return nil
}
- return x.ref588806a5
+ return x.refe0daf69c
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *AcquireNextImageInfo) Free() {
- if x != nil && x.allocs588806a5 != nil {
- x.allocs588806a5.(*cgoAllocMap).Free()
- x.ref588806a5 = nil
+func (x *PhysicalDeviceDepthClipEnableFeatures) Free() {
+ if x != nil && x.allocse0daf69c != nil {
+ x.allocse0daf69c.(*cgoAllocMap).Free()
+ x.refe0daf69c = nil
}
}
-// NewAcquireNextImageInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceDepthClipEnableFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewAcquireNextImageInfoRef(ref unsafe.Pointer) *AcquireNextImageInfo {
+func NewPhysicalDeviceDepthClipEnableFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceDepthClipEnableFeatures {
if ref == nil {
return nil
}
- obj := new(AcquireNextImageInfo)
- obj.ref588806a5 = (*C.VkAcquireNextImageInfoKHR)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceDepthClipEnableFeatures)
+ obj.refe0daf69c = (*C.VkPhysicalDeviceDepthClipEnableFeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *AcquireNextImageInfo) PassRef() (*C.VkAcquireNextImageInfoKHR, *cgoAllocMap) {
+func (x *PhysicalDeviceDepthClipEnableFeatures) PassRef() (*C.VkPhysicalDeviceDepthClipEnableFeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref588806a5 != nil {
- return x.ref588806a5, nil
+ } else if x.refe0daf69c != nil {
+ return x.refe0daf69c, nil
}
- mem588806a5 := allocAcquireNextImageInfoMemory(1)
- ref588806a5 := (*C.VkAcquireNextImageInfoKHR)(mem588806a5)
- allocs588806a5 := new(cgoAllocMap)
- allocs588806a5.Add(mem588806a5)
+ meme0daf69c := allocPhysicalDeviceDepthClipEnableFeaturesMemory(1)
+ refe0daf69c := (*C.VkPhysicalDeviceDepthClipEnableFeaturesEXT)(meme0daf69c)
+ allocse0daf69c := new(cgoAllocMap)
+ allocse0daf69c.Add(meme0daf69c)
var csType_allocs *cgoAllocMap
- ref588806a5.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs588806a5.Borrow(csType_allocs)
+ refe0daf69c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocse0daf69c.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref588806a5.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs588806a5.Borrow(cpNext_allocs)
-
- var cswapchain_allocs *cgoAllocMap
- ref588806a5.swapchain, cswapchain_allocs = *(*C.VkSwapchainKHR)(unsafe.Pointer(&x.Swapchain)), cgoAllocsUnknown
- allocs588806a5.Borrow(cswapchain_allocs)
-
- var ctimeout_allocs *cgoAllocMap
- ref588806a5.timeout, ctimeout_allocs = (C.uint64_t)(x.Timeout), cgoAllocsUnknown
- allocs588806a5.Borrow(ctimeout_allocs)
-
- var csemaphore_allocs *cgoAllocMap
- ref588806a5.semaphore, csemaphore_allocs = *(*C.VkSemaphore)(unsafe.Pointer(&x.Semaphore)), cgoAllocsUnknown
- allocs588806a5.Borrow(csemaphore_allocs)
-
- var cfence_allocs *cgoAllocMap
- ref588806a5.fence, cfence_allocs = *(*C.VkFence)(unsafe.Pointer(&x.Fence)), cgoAllocsUnknown
- allocs588806a5.Borrow(cfence_allocs)
+ refe0daf69c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocse0daf69c.Borrow(cpNext_allocs)
- var cdeviceMask_allocs *cgoAllocMap
- ref588806a5.deviceMask, cdeviceMask_allocs = (C.uint32_t)(x.DeviceMask), cgoAllocsUnknown
- allocs588806a5.Borrow(cdeviceMask_allocs)
+ var cdepthClipEnable_allocs *cgoAllocMap
+ refe0daf69c.depthClipEnable, cdepthClipEnable_allocs = (C.VkBool32)(x.DepthClipEnable), cgoAllocsUnknown
+ allocse0daf69c.Borrow(cdepthClipEnable_allocs)
- x.ref588806a5 = ref588806a5
- x.allocs588806a5 = allocs588806a5
- return ref588806a5, allocs588806a5
+ x.refe0daf69c = refe0daf69c
+ x.allocse0daf69c = allocse0daf69c
+ return refe0daf69c, allocse0daf69c
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x AcquireNextImageInfo) PassValue() (C.VkAcquireNextImageInfoKHR, *cgoAllocMap) {
- if x.ref588806a5 != nil {
- return *x.ref588806a5, nil
+func (x PhysicalDeviceDepthClipEnableFeatures) PassValue() (C.VkPhysicalDeviceDepthClipEnableFeaturesEXT, *cgoAllocMap) {
+ if x.refe0daf69c != nil {
+ return *x.refe0daf69c, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -20721,98 +47617,94 @@ func (x AcquireNextImageInfo) PassValue() (C.VkAcquireNextImageInfoKHR, *cgoAllo
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *AcquireNextImageInfo) Deref() {
- if x.ref588806a5 == nil {
+func (x *PhysicalDeviceDepthClipEnableFeatures) Deref() {
+ if x.refe0daf69c == nil {
return
}
- x.SType = (StructureType)(x.ref588806a5.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref588806a5.pNext))
- x.Swapchain = *(*Swapchain)(unsafe.Pointer(&x.ref588806a5.swapchain))
- x.Timeout = (uint64)(x.ref588806a5.timeout)
- x.Semaphore = *(*Semaphore)(unsafe.Pointer(&x.ref588806a5.semaphore))
- x.Fence = *(*Fence)(unsafe.Pointer(&x.ref588806a5.fence))
- x.DeviceMask = (uint32)(x.ref588806a5.deviceMask)
+ x.SType = (StructureType)(x.refe0daf69c.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refe0daf69c.pNext))
+ x.DepthClipEnable = (Bool32)(x.refe0daf69c.depthClipEnable)
}
-// allocDeviceGroupPresentCapabilitiesMemory allocates memory for type C.VkDeviceGroupPresentCapabilitiesKHR in C.
+// allocPipelineRasterizationDepthClipStateCreateInfoMemory allocates memory for type C.VkPipelineRasterizationDepthClipStateCreateInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDeviceGroupPresentCapabilitiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceGroupPresentCapabilitiesValue))
+func allocPipelineRasterizationDepthClipStateCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineRasterizationDepthClipStateCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDeviceGroupPresentCapabilitiesValue = unsafe.Sizeof([1]C.VkDeviceGroupPresentCapabilitiesKHR{})
+const sizeOfPipelineRasterizationDepthClipStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineRasterizationDepthClipStateCreateInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DeviceGroupPresentCapabilities) Ref() *C.VkDeviceGroupPresentCapabilitiesKHR {
+func (x *PipelineRasterizationDepthClipStateCreateInfo) Ref() *C.VkPipelineRasterizationDepthClipStateCreateInfoEXT {
if x == nil {
return nil
}
- return x.refa3962c81
+ return x.ref38a864b5
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DeviceGroupPresentCapabilities) Free() {
- if x != nil && x.allocsa3962c81 != nil {
- x.allocsa3962c81.(*cgoAllocMap).Free()
- x.refa3962c81 = nil
+func (x *PipelineRasterizationDepthClipStateCreateInfo) Free() {
+ if x != nil && x.allocs38a864b5 != nil {
+ x.allocs38a864b5.(*cgoAllocMap).Free()
+ x.ref38a864b5 = nil
}
}
-// NewDeviceGroupPresentCapabilitiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineRasterizationDepthClipStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDeviceGroupPresentCapabilitiesRef(ref unsafe.Pointer) *DeviceGroupPresentCapabilities {
+func NewPipelineRasterizationDepthClipStateCreateInfoRef(ref unsafe.Pointer) *PipelineRasterizationDepthClipStateCreateInfo {
if ref == nil {
return nil
}
- obj := new(DeviceGroupPresentCapabilities)
- obj.refa3962c81 = (*C.VkDeviceGroupPresentCapabilitiesKHR)(unsafe.Pointer(ref))
+ obj := new(PipelineRasterizationDepthClipStateCreateInfo)
+ obj.ref38a864b5 = (*C.VkPipelineRasterizationDepthClipStateCreateInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DeviceGroupPresentCapabilities) PassRef() (*C.VkDeviceGroupPresentCapabilitiesKHR, *cgoAllocMap) {
+func (x *PipelineRasterizationDepthClipStateCreateInfo) PassRef() (*C.VkPipelineRasterizationDepthClipStateCreateInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refa3962c81 != nil {
- return x.refa3962c81, nil
+ } else if x.ref38a864b5 != nil {
+ return x.ref38a864b5, nil
}
- mema3962c81 := allocDeviceGroupPresentCapabilitiesMemory(1)
- refa3962c81 := (*C.VkDeviceGroupPresentCapabilitiesKHR)(mema3962c81)
- allocsa3962c81 := new(cgoAllocMap)
- allocsa3962c81.Add(mema3962c81)
+ mem38a864b5 := allocPipelineRasterizationDepthClipStateCreateInfoMemory(1)
+ ref38a864b5 := (*C.VkPipelineRasterizationDepthClipStateCreateInfoEXT)(mem38a864b5)
+ allocs38a864b5 := new(cgoAllocMap)
+ allocs38a864b5.Add(mem38a864b5)
var csType_allocs *cgoAllocMap
- refa3962c81.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsa3962c81.Borrow(csType_allocs)
+ ref38a864b5.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs38a864b5.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refa3962c81.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsa3962c81.Borrow(cpNext_allocs)
+ ref38a864b5.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs38a864b5.Borrow(cpNext_allocs)
- var cpresentMask_allocs *cgoAllocMap
- refa3962c81.presentMask, cpresentMask_allocs = *(*[32]C.uint32_t)(unsafe.Pointer(&x.PresentMask)), cgoAllocsUnknown
- allocsa3962c81.Borrow(cpresentMask_allocs)
+ var cflags_allocs *cgoAllocMap
+ ref38a864b5.flags, cflags_allocs = (C.VkPipelineRasterizationDepthClipStateCreateFlagsEXT)(x.Flags), cgoAllocsUnknown
+ allocs38a864b5.Borrow(cflags_allocs)
- var cmodes_allocs *cgoAllocMap
- refa3962c81.modes, cmodes_allocs = (C.VkDeviceGroupPresentModeFlagsKHR)(x.Modes), cgoAllocsUnknown
- allocsa3962c81.Borrow(cmodes_allocs)
+ var cdepthClipEnable_allocs *cgoAllocMap
+ ref38a864b5.depthClipEnable, cdepthClipEnable_allocs = (C.VkBool32)(x.DepthClipEnable), cgoAllocsUnknown
+ allocs38a864b5.Borrow(cdepthClipEnable_allocs)
- x.refa3962c81 = refa3962c81
- x.allocsa3962c81 = allocsa3962c81
- return refa3962c81, allocsa3962c81
+ x.ref38a864b5 = ref38a864b5
+ x.allocs38a864b5 = allocs38a864b5
+ return ref38a864b5, allocs38a864b5
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DeviceGroupPresentCapabilities) PassValue() (C.VkDeviceGroupPresentCapabilitiesKHR, *cgoAllocMap) {
- if x.refa3962c81 != nil {
- return *x.refa3962c81, nil
+func (x PipelineRasterizationDepthClipStateCreateInfo) PassValue() (C.VkPipelineRasterizationDepthClipStateCreateInfoEXT, *cgoAllocMap) {
+ if x.ref38a864b5 != nil {
+ return *x.ref38a864b5, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -20820,99 +47712,87 @@ func (x DeviceGroupPresentCapabilities) PassValue() (C.VkDeviceGroupPresentCapab
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DeviceGroupPresentCapabilities) Deref() {
- if x.refa3962c81 == nil {
+func (x *PipelineRasterizationDepthClipStateCreateInfo) Deref() {
+ if x.ref38a864b5 == nil {
return
}
- x.SType = (StructureType)(x.refa3962c81.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa3962c81.pNext))
- x.PresentMask = *(*[32]uint32)(unsafe.Pointer(&x.refa3962c81.presentMask))
- x.Modes = (DeviceGroupPresentModeFlags)(x.refa3962c81.modes)
+ x.SType = (StructureType)(x.ref38a864b5.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref38a864b5.pNext))
+ x.Flags = (PipelineRasterizationDepthClipStateCreateFlags)(x.ref38a864b5.flags)
+ x.DepthClipEnable = (Bool32)(x.ref38a864b5.depthClipEnable)
}
-// allocDeviceGroupPresentInfoMemory allocates memory for type C.VkDeviceGroupPresentInfoKHR in C.
+// allocXYColorMemory allocates memory for type C.VkXYColorEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDeviceGroupPresentInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceGroupPresentInfoValue))
+func allocXYColorMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfXYColorValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDeviceGroupPresentInfoValue = unsafe.Sizeof([1]C.VkDeviceGroupPresentInfoKHR{})
+const sizeOfXYColorValue = unsafe.Sizeof([1]C.VkXYColorEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DeviceGroupPresentInfo) Ref() *C.VkDeviceGroupPresentInfoKHR {
+func (x *XYColor) Ref() *C.VkXYColorEXT {
if x == nil {
return nil
}
- return x.reff6912d09
+ return x.refb8efaa5c
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DeviceGroupPresentInfo) Free() {
- if x != nil && x.allocsf6912d09 != nil {
- x.allocsf6912d09.(*cgoAllocMap).Free()
- x.reff6912d09 = nil
+func (x *XYColor) Free() {
+ if x != nil && x.allocsb8efaa5c != nil {
+ x.allocsb8efaa5c.(*cgoAllocMap).Free()
+ x.refb8efaa5c = nil
}
}
-// NewDeviceGroupPresentInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewXYColorRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDeviceGroupPresentInfoRef(ref unsafe.Pointer) *DeviceGroupPresentInfo {
+func NewXYColorRef(ref unsafe.Pointer) *XYColor {
if ref == nil {
return nil
}
- obj := new(DeviceGroupPresentInfo)
- obj.reff6912d09 = (*C.VkDeviceGroupPresentInfoKHR)(unsafe.Pointer(ref))
+ obj := new(XYColor)
+ obj.refb8efaa5c = (*C.VkXYColorEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DeviceGroupPresentInfo) PassRef() (*C.VkDeviceGroupPresentInfoKHR, *cgoAllocMap) {
+func (x *XYColor) PassRef() (*C.VkXYColorEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.reff6912d09 != nil {
- return x.reff6912d09, nil
+ } else if x.refb8efaa5c != nil {
+ return x.refb8efaa5c, nil
}
- memf6912d09 := allocDeviceGroupPresentInfoMemory(1)
- reff6912d09 := (*C.VkDeviceGroupPresentInfoKHR)(memf6912d09)
- allocsf6912d09 := new(cgoAllocMap)
- allocsf6912d09.Add(memf6912d09)
-
- var csType_allocs *cgoAllocMap
- reff6912d09.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsf6912d09.Borrow(csType_allocs)
-
- var cpNext_allocs *cgoAllocMap
- reff6912d09.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsf6912d09.Borrow(cpNext_allocs)
-
- var cswapchainCount_allocs *cgoAllocMap
- reff6912d09.swapchainCount, cswapchainCount_allocs = (C.uint32_t)(x.SwapchainCount), cgoAllocsUnknown
- allocsf6912d09.Borrow(cswapchainCount_allocs)
+ memb8efaa5c := allocXYColorMemory(1)
+ refb8efaa5c := (*C.VkXYColorEXT)(memb8efaa5c)
+ allocsb8efaa5c := new(cgoAllocMap)
+ allocsb8efaa5c.Add(memb8efaa5c)
- var cpDeviceMasks_allocs *cgoAllocMap
- reff6912d09.pDeviceMasks, cpDeviceMasks_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PDeviceMasks)).Data)), cgoAllocsUnknown
- allocsf6912d09.Borrow(cpDeviceMasks_allocs)
+ var cx_allocs *cgoAllocMap
+ refb8efaa5c.x, cx_allocs = (C.float)(x.X), cgoAllocsUnknown
+ allocsb8efaa5c.Borrow(cx_allocs)
- var cmode_allocs *cgoAllocMap
- reff6912d09.mode, cmode_allocs = (C.VkDeviceGroupPresentModeFlagBitsKHR)(x.Mode), cgoAllocsUnknown
- allocsf6912d09.Borrow(cmode_allocs)
+ var cy_allocs *cgoAllocMap
+ refb8efaa5c.y, cy_allocs = (C.float)(x.Y), cgoAllocsUnknown
+ allocsb8efaa5c.Borrow(cy_allocs)
- x.reff6912d09 = reff6912d09
- x.allocsf6912d09 = allocsf6912d09
- return reff6912d09, allocsf6912d09
+ x.refb8efaa5c = refb8efaa5c
+ x.allocsb8efaa5c = allocsb8efaa5c
+ return refb8efaa5c, allocsb8efaa5c
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DeviceGroupPresentInfo) PassValue() (C.VkDeviceGroupPresentInfoKHR, *cgoAllocMap) {
- if x.reff6912d09 != nil {
- return *x.reff6912d09, nil
+func (x XYColor) PassValue() (C.VkXYColorEXT, *cgoAllocMap) {
+ if x.refb8efaa5c != nil {
+ return *x.refb8efaa5c, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -20920,96 +47800,117 @@ func (x DeviceGroupPresentInfo) PassValue() (C.VkDeviceGroupPresentInfoKHR, *cgo
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DeviceGroupPresentInfo) Deref() {
- if x.reff6912d09 == nil {
+func (x *XYColor) Deref() {
+ if x.refb8efaa5c == nil {
return
}
- x.SType = (StructureType)(x.reff6912d09.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff6912d09.pNext))
- x.SwapchainCount = (uint32)(x.reff6912d09.swapchainCount)
- hxfe93325 := (*sliceHeader)(unsafe.Pointer(&x.PDeviceMasks))
- hxfe93325.Data = unsafe.Pointer(x.reff6912d09.pDeviceMasks)
- hxfe93325.Cap = 0x7fffffff
- // hxfe93325.Len = ?
-
- x.Mode = (DeviceGroupPresentModeFlagBits)(x.reff6912d09.mode)
+ x.X = (float32)(x.refb8efaa5c.x)
+ x.Y = (float32)(x.refb8efaa5c.y)
}
-// allocDeviceGroupSwapchainCreateInfoMemory allocates memory for type C.VkDeviceGroupSwapchainCreateInfoKHR in C.
+// allocHdrMetadataMemory allocates memory for type C.VkHdrMetadataEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDeviceGroupSwapchainCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceGroupSwapchainCreateInfoValue))
+func allocHdrMetadataMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfHdrMetadataValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDeviceGroupSwapchainCreateInfoValue = unsafe.Sizeof([1]C.VkDeviceGroupSwapchainCreateInfoKHR{})
+const sizeOfHdrMetadataValue = unsafe.Sizeof([1]C.VkHdrMetadataEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DeviceGroupSwapchainCreateInfo) Ref() *C.VkDeviceGroupSwapchainCreateInfoKHR {
+func (x *HdrMetadata) Ref() *C.VkHdrMetadataEXT {
if x == nil {
return nil
}
- return x.ref44ae0c0e
+ return x.ref5fd28976
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DeviceGroupSwapchainCreateInfo) Free() {
- if x != nil && x.allocs44ae0c0e != nil {
- x.allocs44ae0c0e.(*cgoAllocMap).Free()
- x.ref44ae0c0e = nil
+func (x *HdrMetadata) Free() {
+ if x != nil && x.allocs5fd28976 != nil {
+ x.allocs5fd28976.(*cgoAllocMap).Free()
+ x.ref5fd28976 = nil
}
}
-// NewDeviceGroupSwapchainCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewHdrMetadataRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDeviceGroupSwapchainCreateInfoRef(ref unsafe.Pointer) *DeviceGroupSwapchainCreateInfo {
+func NewHdrMetadataRef(ref unsafe.Pointer) *HdrMetadata {
if ref == nil {
return nil
}
- obj := new(DeviceGroupSwapchainCreateInfo)
- obj.ref44ae0c0e = (*C.VkDeviceGroupSwapchainCreateInfoKHR)(unsafe.Pointer(ref))
+ obj := new(HdrMetadata)
+ obj.ref5fd28976 = (*C.VkHdrMetadataEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DeviceGroupSwapchainCreateInfo) PassRef() (*C.VkDeviceGroupSwapchainCreateInfoKHR, *cgoAllocMap) {
+func (x *HdrMetadata) PassRef() (*C.VkHdrMetadataEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref44ae0c0e != nil {
- return x.ref44ae0c0e, nil
+ } else if x.ref5fd28976 != nil {
+ return x.ref5fd28976, nil
}
- mem44ae0c0e := allocDeviceGroupSwapchainCreateInfoMemory(1)
- ref44ae0c0e := (*C.VkDeviceGroupSwapchainCreateInfoKHR)(mem44ae0c0e)
- allocs44ae0c0e := new(cgoAllocMap)
- allocs44ae0c0e.Add(mem44ae0c0e)
+ mem5fd28976 := allocHdrMetadataMemory(1)
+ ref5fd28976 := (*C.VkHdrMetadataEXT)(mem5fd28976)
+ allocs5fd28976 := new(cgoAllocMap)
+ allocs5fd28976.Add(mem5fd28976)
var csType_allocs *cgoAllocMap
- ref44ae0c0e.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs44ae0c0e.Borrow(csType_allocs)
+ ref5fd28976.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs5fd28976.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref44ae0c0e.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs44ae0c0e.Borrow(cpNext_allocs)
+ ref5fd28976.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs5fd28976.Borrow(cpNext_allocs)
- var cmodes_allocs *cgoAllocMap
- ref44ae0c0e.modes, cmodes_allocs = (C.VkDeviceGroupPresentModeFlagsKHR)(x.Modes), cgoAllocsUnknown
- allocs44ae0c0e.Borrow(cmodes_allocs)
+ var cdisplayPrimaryRed_allocs *cgoAllocMap
+ ref5fd28976.displayPrimaryRed, cdisplayPrimaryRed_allocs = x.DisplayPrimaryRed.PassValue()
+ allocs5fd28976.Borrow(cdisplayPrimaryRed_allocs)
- x.ref44ae0c0e = ref44ae0c0e
- x.allocs44ae0c0e = allocs44ae0c0e
- return ref44ae0c0e, allocs44ae0c0e
+ var cdisplayPrimaryGreen_allocs *cgoAllocMap
+ ref5fd28976.displayPrimaryGreen, cdisplayPrimaryGreen_allocs = x.DisplayPrimaryGreen.PassValue()
+ allocs5fd28976.Borrow(cdisplayPrimaryGreen_allocs)
+
+ var cdisplayPrimaryBlue_allocs *cgoAllocMap
+ ref5fd28976.displayPrimaryBlue, cdisplayPrimaryBlue_allocs = x.DisplayPrimaryBlue.PassValue()
+ allocs5fd28976.Borrow(cdisplayPrimaryBlue_allocs)
+
+ var cwhitePoint_allocs *cgoAllocMap
+ ref5fd28976.whitePoint, cwhitePoint_allocs = x.WhitePoint.PassValue()
+ allocs5fd28976.Borrow(cwhitePoint_allocs)
+
+ var cmaxLuminance_allocs *cgoAllocMap
+ ref5fd28976.maxLuminance, cmaxLuminance_allocs = (C.float)(x.MaxLuminance), cgoAllocsUnknown
+ allocs5fd28976.Borrow(cmaxLuminance_allocs)
+
+ var cminLuminance_allocs *cgoAllocMap
+ ref5fd28976.minLuminance, cminLuminance_allocs = (C.float)(x.MinLuminance), cgoAllocsUnknown
+ allocs5fd28976.Borrow(cminLuminance_allocs)
+
+ var cmaxContentLightLevel_allocs *cgoAllocMap
+ ref5fd28976.maxContentLightLevel, cmaxContentLightLevel_allocs = (C.float)(x.MaxContentLightLevel), cgoAllocsUnknown
+ allocs5fd28976.Borrow(cmaxContentLightLevel_allocs)
+
+ var cmaxFrameAverageLightLevel_allocs *cgoAllocMap
+ ref5fd28976.maxFrameAverageLightLevel, cmaxFrameAverageLightLevel_allocs = (C.float)(x.MaxFrameAverageLightLevel), cgoAllocsUnknown
+ allocs5fd28976.Borrow(cmaxFrameAverageLightLevel_allocs)
+
+ x.ref5fd28976 = ref5fd28976
+ x.allocs5fd28976 = allocs5fd28976
+ return ref5fd28976, allocs5fd28976
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DeviceGroupSwapchainCreateInfo) PassValue() (C.VkDeviceGroupSwapchainCreateInfoKHR, *cgoAllocMap) {
- if x.ref44ae0c0e != nil {
- return *x.ref44ae0c0e, nil
+func (x HdrMetadata) PassValue() (C.VkHdrMetadataEXT, *cgoAllocMap) {
+ if x.ref5fd28976 != nil {
+ return *x.ref5fd28976, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -21017,106 +47918,101 @@ func (x DeviceGroupSwapchainCreateInfo) PassValue() (C.VkDeviceGroupSwapchainCre
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DeviceGroupSwapchainCreateInfo) Deref() {
- if x.ref44ae0c0e == nil {
+func (x *HdrMetadata) Deref() {
+ if x.ref5fd28976 == nil {
return
}
- x.SType = (StructureType)(x.ref44ae0c0e.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref44ae0c0e.pNext))
- x.Modes = (DeviceGroupPresentModeFlags)(x.ref44ae0c0e.modes)
+ x.SType = (StructureType)(x.ref5fd28976.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5fd28976.pNext))
+ x.DisplayPrimaryRed = *NewXYColorRef(unsafe.Pointer(&x.ref5fd28976.displayPrimaryRed))
+ x.DisplayPrimaryGreen = *NewXYColorRef(unsafe.Pointer(&x.ref5fd28976.displayPrimaryGreen))
+ x.DisplayPrimaryBlue = *NewXYColorRef(unsafe.Pointer(&x.ref5fd28976.displayPrimaryBlue))
+ x.WhitePoint = *NewXYColorRef(unsafe.Pointer(&x.ref5fd28976.whitePoint))
+ x.MaxLuminance = (float32)(x.ref5fd28976.maxLuminance)
+ x.MinLuminance = (float32)(x.ref5fd28976.minLuminance)
+ x.MaxContentLightLevel = (float32)(x.ref5fd28976.maxContentLightLevel)
+ x.MaxFrameAverageLightLevel = (float32)(x.ref5fd28976.maxFrameAverageLightLevel)
}
-// allocDisplayPropertiesMemory allocates memory for type C.VkDisplayPropertiesKHR in C.
+// allocDebugUtilsLabelMemory allocates memory for type C.VkDebugUtilsLabelEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDisplayPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplayPropertiesValue))
+func allocDebugUtilsLabelMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDebugUtilsLabelValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDisplayPropertiesValue = unsafe.Sizeof([1]C.VkDisplayPropertiesKHR{})
+const sizeOfDebugUtilsLabelValue = unsafe.Sizeof([1]C.VkDebugUtilsLabelEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DisplayProperties) Ref() *C.VkDisplayPropertiesKHR {
+func (x *DebugUtilsLabel) Ref() *C.VkDebugUtilsLabelEXT {
if x == nil {
return nil
}
- return x.reffe2a7187
+ return x.ref8faaf7b1
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DisplayProperties) Free() {
- if x != nil && x.allocsfe2a7187 != nil {
- x.allocsfe2a7187.(*cgoAllocMap).Free()
- x.reffe2a7187 = nil
+func (x *DebugUtilsLabel) Free() {
+ if x != nil && x.allocs8faaf7b1 != nil {
+ x.allocs8faaf7b1.(*cgoAllocMap).Free()
+ x.ref8faaf7b1 = nil
}
}
-// NewDisplayPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDebugUtilsLabelRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDisplayPropertiesRef(ref unsafe.Pointer) *DisplayProperties {
+func NewDebugUtilsLabelRef(ref unsafe.Pointer) *DebugUtilsLabel {
if ref == nil {
return nil
}
- obj := new(DisplayProperties)
- obj.reffe2a7187 = (*C.VkDisplayPropertiesKHR)(unsafe.Pointer(ref))
+ obj := new(DebugUtilsLabel)
+ obj.ref8faaf7b1 = (*C.VkDebugUtilsLabelEXT)(unsafe.Pointer(ref))
return obj
}
-// PassRef returns the underlying C object, otherwise it will allocate one and set its values
-// from this wrapping struct, counting allocations into an allocation map.
-func (x *DisplayProperties) PassRef() (*C.VkDisplayPropertiesKHR, *cgoAllocMap) {
- if x == nil {
- return nil, nil
- } else if x.reffe2a7187 != nil {
- return x.reffe2a7187, nil
- }
- memfe2a7187 := allocDisplayPropertiesMemory(1)
- reffe2a7187 := (*C.VkDisplayPropertiesKHR)(memfe2a7187)
- allocsfe2a7187 := new(cgoAllocMap)
- allocsfe2a7187.Add(memfe2a7187)
-
- var cdisplay_allocs *cgoAllocMap
- reffe2a7187.display, cdisplay_allocs = *(*C.VkDisplayKHR)(unsafe.Pointer(&x.Display)), cgoAllocsUnknown
- allocsfe2a7187.Borrow(cdisplay_allocs)
-
- var cdisplayName_allocs *cgoAllocMap
- reffe2a7187.displayName, cdisplayName_allocs = unpackPCharString(x.DisplayName)
- allocsfe2a7187.Borrow(cdisplayName_allocs)
-
- var cphysicalDimensions_allocs *cgoAllocMap
- reffe2a7187.physicalDimensions, cphysicalDimensions_allocs = x.PhysicalDimensions.PassValue()
- allocsfe2a7187.Borrow(cphysicalDimensions_allocs)
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DebugUtilsLabel) PassRef() (*C.VkDebugUtilsLabelEXT, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref8faaf7b1 != nil {
+ return x.ref8faaf7b1, nil
+ }
+ mem8faaf7b1 := allocDebugUtilsLabelMemory(1)
+ ref8faaf7b1 := (*C.VkDebugUtilsLabelEXT)(mem8faaf7b1)
+ allocs8faaf7b1 := new(cgoAllocMap)
+ allocs8faaf7b1.Add(mem8faaf7b1)
- var cphysicalResolution_allocs *cgoAllocMap
- reffe2a7187.physicalResolution, cphysicalResolution_allocs = x.PhysicalResolution.PassValue()
- allocsfe2a7187.Borrow(cphysicalResolution_allocs)
+ var csType_allocs *cgoAllocMap
+ ref8faaf7b1.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs8faaf7b1.Borrow(csType_allocs)
- var csupportedTransforms_allocs *cgoAllocMap
- reffe2a7187.supportedTransforms, csupportedTransforms_allocs = (C.VkSurfaceTransformFlagsKHR)(x.SupportedTransforms), cgoAllocsUnknown
- allocsfe2a7187.Borrow(csupportedTransforms_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref8faaf7b1.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs8faaf7b1.Borrow(cpNext_allocs)
- var cplaneReorderPossible_allocs *cgoAllocMap
- reffe2a7187.planeReorderPossible, cplaneReorderPossible_allocs = (C.VkBool32)(x.PlaneReorderPossible), cgoAllocsUnknown
- allocsfe2a7187.Borrow(cplaneReorderPossible_allocs)
+ var cpLabelName_allocs *cgoAllocMap
+ ref8faaf7b1.pLabelName, cpLabelName_allocs = unpackPCharString(x.PLabelName)
+ allocs8faaf7b1.Borrow(cpLabelName_allocs)
- var cpersistentContent_allocs *cgoAllocMap
- reffe2a7187.persistentContent, cpersistentContent_allocs = (C.VkBool32)(x.PersistentContent), cgoAllocsUnknown
- allocsfe2a7187.Borrow(cpersistentContent_allocs)
+ var ccolor_allocs *cgoAllocMap
+ ref8faaf7b1.color, ccolor_allocs = *(*[4]C.float)(unsafe.Pointer(&x.Color)), cgoAllocsUnknown
+ allocs8faaf7b1.Borrow(ccolor_allocs)
- x.reffe2a7187 = reffe2a7187
- x.allocsfe2a7187 = allocsfe2a7187
- return reffe2a7187, allocsfe2a7187
+ x.ref8faaf7b1 = ref8faaf7b1
+ x.allocs8faaf7b1 = allocs8faaf7b1
+ return ref8faaf7b1, allocs8faaf7b1
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DisplayProperties) PassValue() (C.VkDisplayPropertiesKHR, *cgoAllocMap) {
- if x.reffe2a7187 != nil {
- return *x.reffe2a7187, nil
+func (x DebugUtilsLabel) PassValue() (C.VkDebugUtilsLabelEXT, *cgoAllocMap) {
+ if x.ref8faaf7b1 != nil {
+ return *x.ref8faaf7b1, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -21124,90 +48020,99 @@ func (x DisplayProperties) PassValue() (C.VkDisplayPropertiesKHR, *cgoAllocMap)
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DisplayProperties) Deref() {
- if x.reffe2a7187 == nil {
+func (x *DebugUtilsLabel) Deref() {
+ if x.ref8faaf7b1 == nil {
return
}
- x.Display = *(*Display)(unsafe.Pointer(&x.reffe2a7187.display))
- x.DisplayName = packPCharString(x.reffe2a7187.displayName)
- x.PhysicalDimensions = *NewExtent2DRef(unsafe.Pointer(&x.reffe2a7187.physicalDimensions))
- x.PhysicalResolution = *NewExtent2DRef(unsafe.Pointer(&x.reffe2a7187.physicalResolution))
- x.SupportedTransforms = (SurfaceTransformFlags)(x.reffe2a7187.supportedTransforms)
- x.PlaneReorderPossible = (Bool32)(x.reffe2a7187.planeReorderPossible)
- x.PersistentContent = (Bool32)(x.reffe2a7187.persistentContent)
+ x.SType = (StructureType)(x.ref8faaf7b1.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref8faaf7b1.pNext))
+ x.PLabelName = packPCharString(x.ref8faaf7b1.pLabelName)
+ x.Color = *(*[4]float32)(unsafe.Pointer(&x.ref8faaf7b1.color))
}
-// allocDisplayModeParametersMemory allocates memory for type C.VkDisplayModeParametersKHR in C.
+// allocDebugUtilsObjectNameInfoMemory allocates memory for type C.VkDebugUtilsObjectNameInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDisplayModeParametersMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplayModeParametersValue))
+func allocDebugUtilsObjectNameInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDebugUtilsObjectNameInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDisplayModeParametersValue = unsafe.Sizeof([1]C.VkDisplayModeParametersKHR{})
+const sizeOfDebugUtilsObjectNameInfoValue = unsafe.Sizeof([1]C.VkDebugUtilsObjectNameInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DisplayModeParameters) Ref() *C.VkDisplayModeParametersKHR {
+func (x *DebugUtilsObjectNameInfo) Ref() *C.VkDebugUtilsObjectNameInfoEXT {
if x == nil {
return nil
}
- return x.refe016f77f
+ return x.ref5e73c2db
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DisplayModeParameters) Free() {
- if x != nil && x.allocse016f77f != nil {
- x.allocse016f77f.(*cgoAllocMap).Free()
- x.refe016f77f = nil
+func (x *DebugUtilsObjectNameInfo) Free() {
+ if x != nil && x.allocs5e73c2db != nil {
+ x.allocs5e73c2db.(*cgoAllocMap).Free()
+ x.ref5e73c2db = nil
}
}
-// NewDisplayModeParametersRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDebugUtilsObjectNameInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDisplayModeParametersRef(ref unsafe.Pointer) *DisplayModeParameters {
+func NewDebugUtilsObjectNameInfoRef(ref unsafe.Pointer) *DebugUtilsObjectNameInfo {
if ref == nil {
return nil
}
- obj := new(DisplayModeParameters)
- obj.refe016f77f = (*C.VkDisplayModeParametersKHR)(unsafe.Pointer(ref))
+ obj := new(DebugUtilsObjectNameInfo)
+ obj.ref5e73c2db = (*C.VkDebugUtilsObjectNameInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DisplayModeParameters) PassRef() (*C.VkDisplayModeParametersKHR, *cgoAllocMap) {
+func (x *DebugUtilsObjectNameInfo) PassRef() (*C.VkDebugUtilsObjectNameInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refe016f77f != nil {
- return x.refe016f77f, nil
+ } else if x.ref5e73c2db != nil {
+ return x.ref5e73c2db, nil
}
- meme016f77f := allocDisplayModeParametersMemory(1)
- refe016f77f := (*C.VkDisplayModeParametersKHR)(meme016f77f)
- allocse016f77f := new(cgoAllocMap)
- allocse016f77f.Add(meme016f77f)
+ mem5e73c2db := allocDebugUtilsObjectNameInfoMemory(1)
+ ref5e73c2db := (*C.VkDebugUtilsObjectNameInfoEXT)(mem5e73c2db)
+ allocs5e73c2db := new(cgoAllocMap)
+ allocs5e73c2db.Add(mem5e73c2db)
- var cvisibleRegion_allocs *cgoAllocMap
- refe016f77f.visibleRegion, cvisibleRegion_allocs = x.VisibleRegion.PassValue()
- allocse016f77f.Borrow(cvisibleRegion_allocs)
+ var csType_allocs *cgoAllocMap
+ ref5e73c2db.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs5e73c2db.Borrow(csType_allocs)
- var crefreshRate_allocs *cgoAllocMap
- refe016f77f.refreshRate, crefreshRate_allocs = (C.uint32_t)(x.RefreshRate), cgoAllocsUnknown
- allocse016f77f.Borrow(crefreshRate_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref5e73c2db.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs5e73c2db.Borrow(cpNext_allocs)
- x.refe016f77f = refe016f77f
- x.allocse016f77f = allocse016f77f
- return refe016f77f, allocse016f77f
+ var cobjectType_allocs *cgoAllocMap
+ ref5e73c2db.objectType, cobjectType_allocs = (C.VkObjectType)(x.ObjectType), cgoAllocsUnknown
+ allocs5e73c2db.Borrow(cobjectType_allocs)
+
+ var cobjectHandle_allocs *cgoAllocMap
+ ref5e73c2db.objectHandle, cobjectHandle_allocs = (C.uint64_t)(x.ObjectHandle), cgoAllocsUnknown
+ allocs5e73c2db.Borrow(cobjectHandle_allocs)
+
+ var cpObjectName_allocs *cgoAllocMap
+ ref5e73c2db.pObjectName, cpObjectName_allocs = unpackPCharString(x.PObjectName)
+ allocs5e73c2db.Borrow(cpObjectName_allocs)
+
+ x.ref5e73c2db = ref5e73c2db
+ x.allocs5e73c2db = allocs5e73c2db
+ return ref5e73c2db, allocs5e73c2db
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DisplayModeParameters) PassValue() (C.VkDisplayModeParametersKHR, *cgoAllocMap) {
- if x.refe016f77f != nil {
- return *x.refe016f77f, nil
+func (x DebugUtilsObjectNameInfo) PassValue() (C.VkDebugUtilsObjectNameInfoEXT, *cgoAllocMap) {
+ if x.ref5e73c2db != nil {
+ return *x.ref5e73c2db, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -21215,85 +48120,108 @@ func (x DisplayModeParameters) PassValue() (C.VkDisplayModeParametersKHR, *cgoAl
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DisplayModeParameters) Deref() {
- if x.refe016f77f == nil {
+func (x *DebugUtilsObjectNameInfo) Deref() {
+ if x.ref5e73c2db == nil {
return
}
- x.VisibleRegion = *NewExtent2DRef(unsafe.Pointer(&x.refe016f77f.visibleRegion))
- x.RefreshRate = (uint32)(x.refe016f77f.refreshRate)
+ x.SType = (StructureType)(x.ref5e73c2db.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5e73c2db.pNext))
+ x.ObjectType = (ObjectType)(x.ref5e73c2db.objectType)
+ x.ObjectHandle = (uint64)(x.ref5e73c2db.objectHandle)
+ x.PObjectName = packPCharString(x.ref5e73c2db.pObjectName)
}
-// allocDisplayModePropertiesMemory allocates memory for type C.VkDisplayModePropertiesKHR in C.
+// allocDebugUtilsObjectTagInfoMemory allocates memory for type C.VkDebugUtilsObjectTagInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDisplayModePropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplayModePropertiesValue))
+func allocDebugUtilsObjectTagInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDebugUtilsObjectTagInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDisplayModePropertiesValue = unsafe.Sizeof([1]C.VkDisplayModePropertiesKHR{})
+const sizeOfDebugUtilsObjectTagInfoValue = unsafe.Sizeof([1]C.VkDebugUtilsObjectTagInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DisplayModeProperties) Ref() *C.VkDisplayModePropertiesKHR {
+func (x *DebugUtilsObjectTagInfo) Ref() *C.VkDebugUtilsObjectTagInfoEXT {
if x == nil {
return nil
}
- return x.ref5e3abaaa
+ return x.ref9fd129cf
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DisplayModeProperties) Free() {
- if x != nil && x.allocs5e3abaaa != nil {
- x.allocs5e3abaaa.(*cgoAllocMap).Free()
- x.ref5e3abaaa = nil
+func (x *DebugUtilsObjectTagInfo) Free() {
+ if x != nil && x.allocs9fd129cf != nil {
+ x.allocs9fd129cf.(*cgoAllocMap).Free()
+ x.ref9fd129cf = nil
}
}
-// NewDisplayModePropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDebugUtilsObjectTagInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDisplayModePropertiesRef(ref unsafe.Pointer) *DisplayModeProperties {
+func NewDebugUtilsObjectTagInfoRef(ref unsafe.Pointer) *DebugUtilsObjectTagInfo {
if ref == nil {
return nil
}
- obj := new(DisplayModeProperties)
- obj.ref5e3abaaa = (*C.VkDisplayModePropertiesKHR)(unsafe.Pointer(ref))
+ obj := new(DebugUtilsObjectTagInfo)
+ obj.ref9fd129cf = (*C.VkDebugUtilsObjectTagInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DisplayModeProperties) PassRef() (*C.VkDisplayModePropertiesKHR, *cgoAllocMap) {
+func (x *DebugUtilsObjectTagInfo) PassRef() (*C.VkDebugUtilsObjectTagInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref5e3abaaa != nil {
- return x.ref5e3abaaa, nil
+ } else if x.ref9fd129cf != nil {
+ return x.ref9fd129cf, nil
}
- mem5e3abaaa := allocDisplayModePropertiesMemory(1)
- ref5e3abaaa := (*C.VkDisplayModePropertiesKHR)(mem5e3abaaa)
- allocs5e3abaaa := new(cgoAllocMap)
- allocs5e3abaaa.Add(mem5e3abaaa)
+ mem9fd129cf := allocDebugUtilsObjectTagInfoMemory(1)
+ ref9fd129cf := (*C.VkDebugUtilsObjectTagInfoEXT)(mem9fd129cf)
+ allocs9fd129cf := new(cgoAllocMap)
+ allocs9fd129cf.Add(mem9fd129cf)
- var cdisplayMode_allocs *cgoAllocMap
- ref5e3abaaa.displayMode, cdisplayMode_allocs = *(*C.VkDisplayModeKHR)(unsafe.Pointer(&x.DisplayMode)), cgoAllocsUnknown
- allocs5e3abaaa.Borrow(cdisplayMode_allocs)
+ var csType_allocs *cgoAllocMap
+ ref9fd129cf.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs9fd129cf.Borrow(csType_allocs)
- var cparameters_allocs *cgoAllocMap
- ref5e3abaaa.parameters, cparameters_allocs = x.Parameters.PassValue()
- allocs5e3abaaa.Borrow(cparameters_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref9fd129cf.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs9fd129cf.Borrow(cpNext_allocs)
- x.ref5e3abaaa = ref5e3abaaa
- x.allocs5e3abaaa = allocs5e3abaaa
- return ref5e3abaaa, allocs5e3abaaa
+ var cobjectType_allocs *cgoAllocMap
+ ref9fd129cf.objectType, cobjectType_allocs = (C.VkObjectType)(x.ObjectType), cgoAllocsUnknown
+ allocs9fd129cf.Borrow(cobjectType_allocs)
+
+ var cobjectHandle_allocs *cgoAllocMap
+ ref9fd129cf.objectHandle, cobjectHandle_allocs = (C.uint64_t)(x.ObjectHandle), cgoAllocsUnknown
+ allocs9fd129cf.Borrow(cobjectHandle_allocs)
+
+ var ctagName_allocs *cgoAllocMap
+ ref9fd129cf.tagName, ctagName_allocs = (C.uint64_t)(x.TagName), cgoAllocsUnknown
+ allocs9fd129cf.Borrow(ctagName_allocs)
+
+ var ctagSize_allocs *cgoAllocMap
+ ref9fd129cf.tagSize, ctagSize_allocs = (C.size_t)(x.TagSize), cgoAllocsUnknown
+ allocs9fd129cf.Borrow(ctagSize_allocs)
+
+ var cpTag_allocs *cgoAllocMap
+ ref9fd129cf.pTag, cpTag_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PTag)), cgoAllocsUnknown
+ allocs9fd129cf.Borrow(cpTag_allocs)
+
+ x.ref9fd129cf = ref9fd129cf
+ x.allocs9fd129cf = allocs9fd129cf
+ return ref9fd129cf, allocs9fd129cf
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DisplayModeProperties) PassValue() (C.VkDisplayModePropertiesKHR, *cgoAllocMap) {
- if x.ref5e3abaaa != nil {
- return *x.ref5e3abaaa, nil
+func (x DebugUtilsObjectTagInfo) PassValue() (C.VkDebugUtilsObjectTagInfoEXT, *cgoAllocMap) {
+ if x.ref9fd129cf != nil {
+ return *x.ref9fd129cf, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -21301,93 +48229,90 @@ func (x DisplayModeProperties) PassValue() (C.VkDisplayModePropertiesKHR, *cgoAl
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DisplayModeProperties) Deref() {
- if x.ref5e3abaaa == nil {
+func (x *DebugUtilsObjectTagInfo) Deref() {
+ if x.ref9fd129cf == nil {
return
}
- x.DisplayMode = *(*DisplayMode)(unsafe.Pointer(&x.ref5e3abaaa.displayMode))
- x.Parameters = *NewDisplayModeParametersRef(unsafe.Pointer(&x.ref5e3abaaa.parameters))
+ x.SType = (StructureType)(x.ref9fd129cf.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref9fd129cf.pNext))
+ x.ObjectType = (ObjectType)(x.ref9fd129cf.objectType)
+ x.ObjectHandle = (uint64)(x.ref9fd129cf.objectHandle)
+ x.TagName = (uint64)(x.ref9fd129cf.tagName)
+ x.TagSize = (uint64)(x.ref9fd129cf.tagSize)
+ x.PTag = (unsafe.Pointer)(unsafe.Pointer(x.ref9fd129cf.pTag))
}
-// allocDisplayModeCreateInfoMemory allocates memory for type C.VkDisplayModeCreateInfoKHR in C.
+// allocSampleLocationMemory allocates memory for type C.VkSampleLocationEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDisplayModeCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplayModeCreateInfoValue))
+func allocSampleLocationMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSampleLocationValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDisplayModeCreateInfoValue = unsafe.Sizeof([1]C.VkDisplayModeCreateInfoKHR{})
+const sizeOfSampleLocationValue = unsafe.Sizeof([1]C.VkSampleLocationEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DisplayModeCreateInfo) Ref() *C.VkDisplayModeCreateInfoKHR {
+func (x *SampleLocation) Ref() *C.VkSampleLocationEXT {
if x == nil {
return nil
}
- return x.ref392fca31
+ return x.refe7a2e761
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DisplayModeCreateInfo) Free() {
- if x != nil && x.allocs392fca31 != nil {
- x.allocs392fca31.(*cgoAllocMap).Free()
- x.ref392fca31 = nil
+func (x *SampleLocation) Free() {
+ if x != nil && x.allocse7a2e761 != nil {
+ x.allocse7a2e761.(*cgoAllocMap).Free()
+ x.refe7a2e761 = nil
}
}
-// NewDisplayModeCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewSampleLocationRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDisplayModeCreateInfoRef(ref unsafe.Pointer) *DisplayModeCreateInfo {
+func NewSampleLocationRef(ref unsafe.Pointer) *SampleLocation {
if ref == nil {
return nil
}
- obj := new(DisplayModeCreateInfo)
- obj.ref392fca31 = (*C.VkDisplayModeCreateInfoKHR)(unsafe.Pointer(ref))
+ obj := new(SampleLocation)
+ obj.refe7a2e761 = (*C.VkSampleLocationEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DisplayModeCreateInfo) PassRef() (*C.VkDisplayModeCreateInfoKHR, *cgoAllocMap) {
+func (x *SampleLocation) PassRef() (*C.VkSampleLocationEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref392fca31 != nil {
- return x.ref392fca31, nil
+ } else if x.refe7a2e761 != nil {
+ return x.refe7a2e761, nil
}
- mem392fca31 := allocDisplayModeCreateInfoMemory(1)
- ref392fca31 := (*C.VkDisplayModeCreateInfoKHR)(mem392fca31)
- allocs392fca31 := new(cgoAllocMap)
- allocs392fca31.Add(mem392fca31)
-
- var csType_allocs *cgoAllocMap
- ref392fca31.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs392fca31.Borrow(csType_allocs)
-
- var cpNext_allocs *cgoAllocMap
- ref392fca31.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs392fca31.Borrow(cpNext_allocs)
+ meme7a2e761 := allocSampleLocationMemory(1)
+ refe7a2e761 := (*C.VkSampleLocationEXT)(meme7a2e761)
+ allocse7a2e761 := new(cgoAllocMap)
+ allocse7a2e761.Add(meme7a2e761)
- var cflags_allocs *cgoAllocMap
- ref392fca31.flags, cflags_allocs = (C.VkDisplayModeCreateFlagsKHR)(x.Flags), cgoAllocsUnknown
- allocs392fca31.Borrow(cflags_allocs)
+ var cx_allocs *cgoAllocMap
+ refe7a2e761.x, cx_allocs = (C.float)(x.X), cgoAllocsUnknown
+ allocse7a2e761.Borrow(cx_allocs)
- var cparameters_allocs *cgoAllocMap
- ref392fca31.parameters, cparameters_allocs = x.Parameters.PassValue()
- allocs392fca31.Borrow(cparameters_allocs)
+ var cy_allocs *cgoAllocMap
+ refe7a2e761.y, cy_allocs = (C.float)(x.Y), cgoAllocsUnknown
+ allocse7a2e761.Borrow(cy_allocs)
- x.ref392fca31 = ref392fca31
- x.allocs392fca31 = allocs392fca31
- return ref392fca31, allocs392fca31
+ x.refe7a2e761 = refe7a2e761
+ x.allocse7a2e761 = allocse7a2e761
+ return refe7a2e761, allocse7a2e761
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DisplayModeCreateInfo) PassValue() (C.VkDisplayModeCreateInfoKHR, *cgoAllocMap) {
- if x.ref392fca31 != nil {
- return *x.ref392fca31, nil
+func (x SampleLocation) PassValue() (C.VkSampleLocationEXT, *cgoAllocMap) {
+ if x.refe7a2e761 != nil {
+ return *x.refe7a2e761, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -21395,115 +48320,139 @@ func (x DisplayModeCreateInfo) PassValue() (C.VkDisplayModeCreateInfoKHR, *cgoAl
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DisplayModeCreateInfo) Deref() {
- if x.ref392fca31 == nil {
+func (x *SampleLocation) Deref() {
+ if x.refe7a2e761 == nil {
return
}
- x.SType = (StructureType)(x.ref392fca31.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref392fca31.pNext))
- x.Flags = (DisplayModeCreateFlags)(x.ref392fca31.flags)
- x.Parameters = *NewDisplayModeParametersRef(unsafe.Pointer(&x.ref392fca31.parameters))
+ x.X = (float32)(x.refe7a2e761.x)
+ x.Y = (float32)(x.refe7a2e761.y)
}
-// allocDisplayPlaneCapabilitiesMemory allocates memory for type C.VkDisplayPlaneCapabilitiesKHR in C.
+// allocSampleLocationsInfoMemory allocates memory for type C.VkSampleLocationsInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDisplayPlaneCapabilitiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplayPlaneCapabilitiesValue))
+func allocSampleLocationsInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSampleLocationsInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDisplayPlaneCapabilitiesValue = unsafe.Sizeof([1]C.VkDisplayPlaneCapabilitiesKHR{})
+const sizeOfSampleLocationsInfoValue = unsafe.Sizeof([1]C.VkSampleLocationsInfoEXT{})
+
+// unpackSSampleLocation transforms a sliced Go data structure into plain C format.
+func unpackSSampleLocation(x []SampleLocation) (unpacked *C.VkSampleLocationEXT, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkSampleLocationEXT) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocSampleLocationMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkSampleLocationEXT)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkSampleLocationEXT)(h.Data)
+ return
+}
+
+// packSSampleLocation reads sliced Go data structure out from plain C format.
+func packSSampleLocation(v []SampleLocation, ptr0 *C.VkSampleLocationEXT) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfSampleLocationValue]C.VkSampleLocationEXT)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewSampleLocationRef(unsafe.Pointer(&ptr1))
+ }
+}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DisplayPlaneCapabilities) Ref() *C.VkDisplayPlaneCapabilitiesKHR {
+func (x *SampleLocationsInfo) Ref() *C.VkSampleLocationsInfoEXT {
if x == nil {
return nil
}
- return x.ref6f31fcaf
+ return x.refd8f3bd2d
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DisplayPlaneCapabilities) Free() {
- if x != nil && x.allocs6f31fcaf != nil {
- x.allocs6f31fcaf.(*cgoAllocMap).Free()
- x.ref6f31fcaf = nil
+func (x *SampleLocationsInfo) Free() {
+ if x != nil && x.allocsd8f3bd2d != nil {
+ x.allocsd8f3bd2d.(*cgoAllocMap).Free()
+ x.refd8f3bd2d = nil
}
}
-// NewDisplayPlaneCapabilitiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewSampleLocationsInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDisplayPlaneCapabilitiesRef(ref unsafe.Pointer) *DisplayPlaneCapabilities {
+func NewSampleLocationsInfoRef(ref unsafe.Pointer) *SampleLocationsInfo {
if ref == nil {
return nil
}
- obj := new(DisplayPlaneCapabilities)
- obj.ref6f31fcaf = (*C.VkDisplayPlaneCapabilitiesKHR)(unsafe.Pointer(ref))
+ obj := new(SampleLocationsInfo)
+ obj.refd8f3bd2d = (*C.VkSampleLocationsInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DisplayPlaneCapabilities) PassRef() (*C.VkDisplayPlaneCapabilitiesKHR, *cgoAllocMap) {
+func (x *SampleLocationsInfo) PassRef() (*C.VkSampleLocationsInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref6f31fcaf != nil {
- return x.ref6f31fcaf, nil
+ } else if x.refd8f3bd2d != nil {
+ return x.refd8f3bd2d, nil
}
- mem6f31fcaf := allocDisplayPlaneCapabilitiesMemory(1)
- ref6f31fcaf := (*C.VkDisplayPlaneCapabilitiesKHR)(mem6f31fcaf)
- allocs6f31fcaf := new(cgoAllocMap)
- allocs6f31fcaf.Add(mem6f31fcaf)
-
- var csupportedAlpha_allocs *cgoAllocMap
- ref6f31fcaf.supportedAlpha, csupportedAlpha_allocs = (C.VkDisplayPlaneAlphaFlagsKHR)(x.SupportedAlpha), cgoAllocsUnknown
- allocs6f31fcaf.Borrow(csupportedAlpha_allocs)
-
- var cminSrcPosition_allocs *cgoAllocMap
- ref6f31fcaf.minSrcPosition, cminSrcPosition_allocs = x.MinSrcPosition.PassValue()
- allocs6f31fcaf.Borrow(cminSrcPosition_allocs)
-
- var cmaxSrcPosition_allocs *cgoAllocMap
- ref6f31fcaf.maxSrcPosition, cmaxSrcPosition_allocs = x.MaxSrcPosition.PassValue()
- allocs6f31fcaf.Borrow(cmaxSrcPosition_allocs)
+ memd8f3bd2d := allocSampleLocationsInfoMemory(1)
+ refd8f3bd2d := (*C.VkSampleLocationsInfoEXT)(memd8f3bd2d)
+ allocsd8f3bd2d := new(cgoAllocMap)
+ allocsd8f3bd2d.Add(memd8f3bd2d)
- var cminSrcExtent_allocs *cgoAllocMap
- ref6f31fcaf.minSrcExtent, cminSrcExtent_allocs = x.MinSrcExtent.PassValue()
- allocs6f31fcaf.Borrow(cminSrcExtent_allocs)
+ var csType_allocs *cgoAllocMap
+ refd8f3bd2d.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd8f3bd2d.Borrow(csType_allocs)
- var cmaxSrcExtent_allocs *cgoAllocMap
- ref6f31fcaf.maxSrcExtent, cmaxSrcExtent_allocs = x.MaxSrcExtent.PassValue()
- allocs6f31fcaf.Borrow(cmaxSrcExtent_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refd8f3bd2d.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsd8f3bd2d.Borrow(cpNext_allocs)
- var cminDstPosition_allocs *cgoAllocMap
- ref6f31fcaf.minDstPosition, cminDstPosition_allocs = x.MinDstPosition.PassValue()
- allocs6f31fcaf.Borrow(cminDstPosition_allocs)
+ var csampleLocationsPerPixel_allocs *cgoAllocMap
+ refd8f3bd2d.sampleLocationsPerPixel, csampleLocationsPerPixel_allocs = (C.VkSampleCountFlagBits)(x.SampleLocationsPerPixel), cgoAllocsUnknown
+ allocsd8f3bd2d.Borrow(csampleLocationsPerPixel_allocs)
- var cmaxDstPosition_allocs *cgoAllocMap
- ref6f31fcaf.maxDstPosition, cmaxDstPosition_allocs = x.MaxDstPosition.PassValue()
- allocs6f31fcaf.Borrow(cmaxDstPosition_allocs)
+ var csampleLocationGridSize_allocs *cgoAllocMap
+ refd8f3bd2d.sampleLocationGridSize, csampleLocationGridSize_allocs = x.SampleLocationGridSize.PassValue()
+ allocsd8f3bd2d.Borrow(csampleLocationGridSize_allocs)
- var cminDstExtent_allocs *cgoAllocMap
- ref6f31fcaf.minDstExtent, cminDstExtent_allocs = x.MinDstExtent.PassValue()
- allocs6f31fcaf.Borrow(cminDstExtent_allocs)
+ var csampleLocationsCount_allocs *cgoAllocMap
+ refd8f3bd2d.sampleLocationsCount, csampleLocationsCount_allocs = (C.uint32_t)(x.SampleLocationsCount), cgoAllocsUnknown
+ allocsd8f3bd2d.Borrow(csampleLocationsCount_allocs)
- var cmaxDstExtent_allocs *cgoAllocMap
- ref6f31fcaf.maxDstExtent, cmaxDstExtent_allocs = x.MaxDstExtent.PassValue()
- allocs6f31fcaf.Borrow(cmaxDstExtent_allocs)
+ var cpSampleLocations_allocs *cgoAllocMap
+ refd8f3bd2d.pSampleLocations, cpSampleLocations_allocs = unpackSSampleLocation(x.PSampleLocations)
+ allocsd8f3bd2d.Borrow(cpSampleLocations_allocs)
- x.ref6f31fcaf = ref6f31fcaf
- x.allocs6f31fcaf = allocs6f31fcaf
- return ref6f31fcaf, allocs6f31fcaf
+ x.refd8f3bd2d = refd8f3bd2d
+ x.allocsd8f3bd2d = allocsd8f3bd2d
+ return refd8f3bd2d, allocsd8f3bd2d
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DisplayPlaneCapabilities) PassValue() (C.VkDisplayPlaneCapabilitiesKHR, *cgoAllocMap) {
- if x.ref6f31fcaf != nil {
- return *x.ref6f31fcaf, nil
+func (x SampleLocationsInfo) PassValue() (C.VkSampleLocationsInfoEXT, *cgoAllocMap) {
+ if x.refd8f3bd2d != nil {
+ return *x.refd8f3bd2d, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -21511,92 +48460,89 @@ func (x DisplayPlaneCapabilities) PassValue() (C.VkDisplayPlaneCapabilitiesKHR,
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DisplayPlaneCapabilities) Deref() {
- if x.ref6f31fcaf == nil {
+func (x *SampleLocationsInfo) Deref() {
+ if x.refd8f3bd2d == nil {
return
}
- x.SupportedAlpha = (DisplayPlaneAlphaFlags)(x.ref6f31fcaf.supportedAlpha)
- x.MinSrcPosition = *NewOffset2DRef(unsafe.Pointer(&x.ref6f31fcaf.minSrcPosition))
- x.MaxSrcPosition = *NewOffset2DRef(unsafe.Pointer(&x.ref6f31fcaf.maxSrcPosition))
- x.MinSrcExtent = *NewExtent2DRef(unsafe.Pointer(&x.ref6f31fcaf.minSrcExtent))
- x.MaxSrcExtent = *NewExtent2DRef(unsafe.Pointer(&x.ref6f31fcaf.maxSrcExtent))
- x.MinDstPosition = *NewOffset2DRef(unsafe.Pointer(&x.ref6f31fcaf.minDstPosition))
- x.MaxDstPosition = *NewOffset2DRef(unsafe.Pointer(&x.ref6f31fcaf.maxDstPosition))
- x.MinDstExtent = *NewExtent2DRef(unsafe.Pointer(&x.ref6f31fcaf.minDstExtent))
- x.MaxDstExtent = *NewExtent2DRef(unsafe.Pointer(&x.ref6f31fcaf.maxDstExtent))
+ x.SType = (StructureType)(x.refd8f3bd2d.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd8f3bd2d.pNext))
+ x.SampleLocationsPerPixel = (SampleCountFlagBits)(x.refd8f3bd2d.sampleLocationsPerPixel)
+ x.SampleLocationGridSize = *NewExtent2DRef(unsafe.Pointer(&x.refd8f3bd2d.sampleLocationGridSize))
+ x.SampleLocationsCount = (uint32)(x.refd8f3bd2d.sampleLocationsCount)
+ packSSampleLocation(x.PSampleLocations, x.refd8f3bd2d.pSampleLocations)
}
-// allocDisplayPlanePropertiesMemory allocates memory for type C.VkDisplayPlanePropertiesKHR in C.
+// allocAttachmentSampleLocationsMemory allocates memory for type C.VkAttachmentSampleLocationsEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDisplayPlanePropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplayPlanePropertiesValue))
+func allocAttachmentSampleLocationsMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfAttachmentSampleLocationsValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDisplayPlanePropertiesValue = unsafe.Sizeof([1]C.VkDisplayPlanePropertiesKHR{})
+const sizeOfAttachmentSampleLocationsValue = unsafe.Sizeof([1]C.VkAttachmentSampleLocationsEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DisplayPlaneProperties) Ref() *C.VkDisplayPlanePropertiesKHR {
+func (x *AttachmentSampleLocations) Ref() *C.VkAttachmentSampleLocationsEXT {
if x == nil {
return nil
}
- return x.refce3db3f6
+ return x.ref6a3dd41e
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DisplayPlaneProperties) Free() {
- if x != nil && x.allocsce3db3f6 != nil {
- x.allocsce3db3f6.(*cgoAllocMap).Free()
- x.refce3db3f6 = nil
+func (x *AttachmentSampleLocations) Free() {
+ if x != nil && x.allocs6a3dd41e != nil {
+ x.allocs6a3dd41e.(*cgoAllocMap).Free()
+ x.ref6a3dd41e = nil
}
}
-// NewDisplayPlanePropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewAttachmentSampleLocationsRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDisplayPlanePropertiesRef(ref unsafe.Pointer) *DisplayPlaneProperties {
+func NewAttachmentSampleLocationsRef(ref unsafe.Pointer) *AttachmentSampleLocations {
if ref == nil {
return nil
}
- obj := new(DisplayPlaneProperties)
- obj.refce3db3f6 = (*C.VkDisplayPlanePropertiesKHR)(unsafe.Pointer(ref))
+ obj := new(AttachmentSampleLocations)
+ obj.ref6a3dd41e = (*C.VkAttachmentSampleLocationsEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DisplayPlaneProperties) PassRef() (*C.VkDisplayPlanePropertiesKHR, *cgoAllocMap) {
+func (x *AttachmentSampleLocations) PassRef() (*C.VkAttachmentSampleLocationsEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refce3db3f6 != nil {
- return x.refce3db3f6, nil
+ } else if x.ref6a3dd41e != nil {
+ return x.ref6a3dd41e, nil
}
- memce3db3f6 := allocDisplayPlanePropertiesMemory(1)
- refce3db3f6 := (*C.VkDisplayPlanePropertiesKHR)(memce3db3f6)
- allocsce3db3f6 := new(cgoAllocMap)
- allocsce3db3f6.Add(memce3db3f6)
+ mem6a3dd41e := allocAttachmentSampleLocationsMemory(1)
+ ref6a3dd41e := (*C.VkAttachmentSampleLocationsEXT)(mem6a3dd41e)
+ allocs6a3dd41e := new(cgoAllocMap)
+ allocs6a3dd41e.Add(mem6a3dd41e)
- var ccurrentDisplay_allocs *cgoAllocMap
- refce3db3f6.currentDisplay, ccurrentDisplay_allocs = *(*C.VkDisplayKHR)(unsafe.Pointer(&x.CurrentDisplay)), cgoAllocsUnknown
- allocsce3db3f6.Borrow(ccurrentDisplay_allocs)
+ var cattachmentIndex_allocs *cgoAllocMap
+ ref6a3dd41e.attachmentIndex, cattachmentIndex_allocs = (C.uint32_t)(x.AttachmentIndex), cgoAllocsUnknown
+ allocs6a3dd41e.Borrow(cattachmentIndex_allocs)
- var ccurrentStackIndex_allocs *cgoAllocMap
- refce3db3f6.currentStackIndex, ccurrentStackIndex_allocs = (C.uint32_t)(x.CurrentStackIndex), cgoAllocsUnknown
- allocsce3db3f6.Borrow(ccurrentStackIndex_allocs)
+ var csampleLocationsInfo_allocs *cgoAllocMap
+ ref6a3dd41e.sampleLocationsInfo, csampleLocationsInfo_allocs = x.SampleLocationsInfo.PassValue()
+ allocs6a3dd41e.Borrow(csampleLocationsInfo_allocs)
- x.refce3db3f6 = refce3db3f6
- x.allocsce3db3f6 = allocsce3db3f6
- return refce3db3f6, allocsce3db3f6
+ x.ref6a3dd41e = ref6a3dd41e
+ x.allocs6a3dd41e = allocs6a3dd41e
+ return ref6a3dd41e, allocs6a3dd41e
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DisplayPlaneProperties) PassValue() (C.VkDisplayPlanePropertiesKHR, *cgoAllocMap) {
- if x.refce3db3f6 != nil {
- return *x.refce3db3f6, nil
+func (x AttachmentSampleLocations) PassValue() (C.VkAttachmentSampleLocationsEXT, *cgoAllocMap) {
+ if x.ref6a3dd41e != nil {
+ return *x.ref6a3dd41e, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -21604,117 +48550,85 @@ func (x DisplayPlaneProperties) PassValue() (C.VkDisplayPlanePropertiesKHR, *cgo
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DisplayPlaneProperties) Deref() {
- if x.refce3db3f6 == nil {
+func (x *AttachmentSampleLocations) Deref() {
+ if x.ref6a3dd41e == nil {
return
}
- x.CurrentDisplay = *(*Display)(unsafe.Pointer(&x.refce3db3f6.currentDisplay))
- x.CurrentStackIndex = (uint32)(x.refce3db3f6.currentStackIndex)
+ x.AttachmentIndex = (uint32)(x.ref6a3dd41e.attachmentIndex)
+ x.SampleLocationsInfo = *NewSampleLocationsInfoRef(unsafe.Pointer(&x.ref6a3dd41e.sampleLocationsInfo))
}
-// allocDisplaySurfaceCreateInfoMemory allocates memory for type C.VkDisplaySurfaceCreateInfoKHR in C.
+// allocSubpassSampleLocationsMemory allocates memory for type C.VkSubpassSampleLocationsEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDisplaySurfaceCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplaySurfaceCreateInfoValue))
+func allocSubpassSampleLocationsMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSubpassSampleLocationsValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDisplaySurfaceCreateInfoValue = unsafe.Sizeof([1]C.VkDisplaySurfaceCreateInfoKHR{})
+const sizeOfSubpassSampleLocationsValue = unsafe.Sizeof([1]C.VkSubpassSampleLocationsEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DisplaySurfaceCreateInfo) Ref() *C.VkDisplaySurfaceCreateInfoKHR {
+func (x *SubpassSampleLocations) Ref() *C.VkSubpassSampleLocationsEXT {
if x == nil {
return nil
}
- return x.ref58445c35
+ return x.ref1f612812
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DisplaySurfaceCreateInfo) Free() {
- if x != nil && x.allocs58445c35 != nil {
- x.allocs58445c35.(*cgoAllocMap).Free()
- x.ref58445c35 = nil
+func (x *SubpassSampleLocations) Free() {
+ if x != nil && x.allocs1f612812 != nil {
+ x.allocs1f612812.(*cgoAllocMap).Free()
+ x.ref1f612812 = nil
}
}
-// NewDisplaySurfaceCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewSubpassSampleLocationsRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDisplaySurfaceCreateInfoRef(ref unsafe.Pointer) *DisplaySurfaceCreateInfo {
+func NewSubpassSampleLocationsRef(ref unsafe.Pointer) *SubpassSampleLocations {
if ref == nil {
return nil
}
- obj := new(DisplaySurfaceCreateInfo)
- obj.ref58445c35 = (*C.VkDisplaySurfaceCreateInfoKHR)(unsafe.Pointer(ref))
+ obj := new(SubpassSampleLocations)
+ obj.ref1f612812 = (*C.VkSubpassSampleLocationsEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DisplaySurfaceCreateInfo) PassRef() (*C.VkDisplaySurfaceCreateInfoKHR, *cgoAllocMap) {
+func (x *SubpassSampleLocations) PassRef() (*C.VkSubpassSampleLocationsEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref58445c35 != nil {
- return x.ref58445c35, nil
+ } else if x.ref1f612812 != nil {
+ return x.ref1f612812, nil
}
- mem58445c35 := allocDisplaySurfaceCreateInfoMemory(1)
- ref58445c35 := (*C.VkDisplaySurfaceCreateInfoKHR)(mem58445c35)
- allocs58445c35 := new(cgoAllocMap)
- allocs58445c35.Add(mem58445c35)
-
- var csType_allocs *cgoAllocMap
- ref58445c35.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs58445c35.Borrow(csType_allocs)
-
- var cpNext_allocs *cgoAllocMap
- ref58445c35.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs58445c35.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- ref58445c35.flags, cflags_allocs = (C.VkDisplaySurfaceCreateFlagsKHR)(x.Flags), cgoAllocsUnknown
- allocs58445c35.Borrow(cflags_allocs)
-
- var cdisplayMode_allocs *cgoAllocMap
- ref58445c35.displayMode, cdisplayMode_allocs = *(*C.VkDisplayModeKHR)(unsafe.Pointer(&x.DisplayMode)), cgoAllocsUnknown
- allocs58445c35.Borrow(cdisplayMode_allocs)
-
- var cplaneIndex_allocs *cgoAllocMap
- ref58445c35.planeIndex, cplaneIndex_allocs = (C.uint32_t)(x.PlaneIndex), cgoAllocsUnknown
- allocs58445c35.Borrow(cplaneIndex_allocs)
-
- var cplaneStackIndex_allocs *cgoAllocMap
- ref58445c35.planeStackIndex, cplaneStackIndex_allocs = (C.uint32_t)(x.PlaneStackIndex), cgoAllocsUnknown
- allocs58445c35.Borrow(cplaneStackIndex_allocs)
-
- var ctransform_allocs *cgoAllocMap
- ref58445c35.transform, ctransform_allocs = (C.VkSurfaceTransformFlagBitsKHR)(x.Transform), cgoAllocsUnknown
- allocs58445c35.Borrow(ctransform_allocs)
-
- var cglobalAlpha_allocs *cgoAllocMap
- ref58445c35.globalAlpha, cglobalAlpha_allocs = (C.float)(x.GlobalAlpha), cgoAllocsUnknown
- allocs58445c35.Borrow(cglobalAlpha_allocs)
+ mem1f612812 := allocSubpassSampleLocationsMemory(1)
+ ref1f612812 := (*C.VkSubpassSampleLocationsEXT)(mem1f612812)
+ allocs1f612812 := new(cgoAllocMap)
+ allocs1f612812.Add(mem1f612812)
- var calphaMode_allocs *cgoAllocMap
- ref58445c35.alphaMode, calphaMode_allocs = (C.VkDisplayPlaneAlphaFlagBitsKHR)(x.AlphaMode), cgoAllocsUnknown
- allocs58445c35.Borrow(calphaMode_allocs)
+ var csubpassIndex_allocs *cgoAllocMap
+ ref1f612812.subpassIndex, csubpassIndex_allocs = (C.uint32_t)(x.SubpassIndex), cgoAllocsUnknown
+ allocs1f612812.Borrow(csubpassIndex_allocs)
- var cimageExtent_allocs *cgoAllocMap
- ref58445c35.imageExtent, cimageExtent_allocs = x.ImageExtent.PassValue()
- allocs58445c35.Borrow(cimageExtent_allocs)
+ var csampleLocationsInfo_allocs *cgoAllocMap
+ ref1f612812.sampleLocationsInfo, csampleLocationsInfo_allocs = x.SampleLocationsInfo.PassValue()
+ allocs1f612812.Borrow(csampleLocationsInfo_allocs)
- x.ref58445c35 = ref58445c35
- x.allocs58445c35 = allocs58445c35
- return ref58445c35, allocs58445c35
+ x.ref1f612812 = ref1f612812
+ x.allocs1f612812 = allocs1f612812
+ return ref1f612812, allocs1f612812
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DisplaySurfaceCreateInfo) PassValue() (C.VkDisplaySurfaceCreateInfoKHR, *cgoAllocMap) {
- if x.ref58445c35 != nil {
- return *x.ref58445c35, nil
+func (x SubpassSampleLocations) PassValue() (C.VkSubpassSampleLocationsEXT, *cgoAllocMap) {
+ if x.ref1f612812 != nil {
+ return *x.ref1f612812, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -21722,105 +48636,177 @@ func (x DisplaySurfaceCreateInfo) PassValue() (C.VkDisplaySurfaceCreateInfoKHR,
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DisplaySurfaceCreateInfo) Deref() {
- if x.ref58445c35 == nil {
+func (x *SubpassSampleLocations) Deref() {
+ if x.ref1f612812 == nil {
return
}
- x.SType = (StructureType)(x.ref58445c35.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref58445c35.pNext))
- x.Flags = (DisplaySurfaceCreateFlags)(x.ref58445c35.flags)
- x.DisplayMode = *(*DisplayMode)(unsafe.Pointer(&x.ref58445c35.displayMode))
- x.PlaneIndex = (uint32)(x.ref58445c35.planeIndex)
- x.PlaneStackIndex = (uint32)(x.ref58445c35.planeStackIndex)
- x.Transform = (SurfaceTransformFlagBits)(x.ref58445c35.transform)
- x.GlobalAlpha = (float32)(x.ref58445c35.globalAlpha)
- x.AlphaMode = (DisplayPlaneAlphaFlagBits)(x.ref58445c35.alphaMode)
- x.ImageExtent = *NewExtent2DRef(unsafe.Pointer(&x.ref58445c35.imageExtent))
+ x.SubpassIndex = (uint32)(x.ref1f612812.subpassIndex)
+ x.SampleLocationsInfo = *NewSampleLocationsInfoRef(unsafe.Pointer(&x.ref1f612812.sampleLocationsInfo))
}
-// allocDisplayPresentInfoMemory allocates memory for type C.VkDisplayPresentInfoKHR in C.
+// allocRenderPassSampleLocationsBeginInfoMemory allocates memory for type C.VkRenderPassSampleLocationsBeginInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDisplayPresentInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplayPresentInfoValue))
+func allocRenderPassSampleLocationsBeginInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfRenderPassSampleLocationsBeginInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDisplayPresentInfoValue = unsafe.Sizeof([1]C.VkDisplayPresentInfoKHR{})
+const sizeOfRenderPassSampleLocationsBeginInfoValue = unsafe.Sizeof([1]C.VkRenderPassSampleLocationsBeginInfoEXT{})
+
+// unpackSAttachmentSampleLocations transforms a sliced Go data structure into plain C format.
+func unpackSAttachmentSampleLocations(x []AttachmentSampleLocations) (unpacked *C.VkAttachmentSampleLocationsEXT, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkAttachmentSampleLocationsEXT) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocAttachmentSampleLocationsMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkAttachmentSampleLocationsEXT)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkAttachmentSampleLocationsEXT)(h.Data)
+ return
+}
+
+// unpackSSubpassSampleLocations transforms a sliced Go data structure into plain C format.
+func unpackSSubpassSampleLocations(x []SubpassSampleLocations) (unpacked *C.VkSubpassSampleLocationsEXT, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkSubpassSampleLocationsEXT) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocSubpassSampleLocationsMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkSubpassSampleLocationsEXT)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkSubpassSampleLocationsEXT)(h.Data)
+ return
+}
+
+// packSAttachmentSampleLocations reads sliced Go data structure out from plain C format.
+func packSAttachmentSampleLocations(v []AttachmentSampleLocations, ptr0 *C.VkAttachmentSampleLocationsEXT) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfAttachmentSampleLocationsValue]C.VkAttachmentSampleLocationsEXT)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewAttachmentSampleLocationsRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// packSSubpassSampleLocations reads sliced Go data structure out from plain C format.
+func packSSubpassSampleLocations(v []SubpassSampleLocations, ptr0 *C.VkSubpassSampleLocationsEXT) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfSubpassSampleLocationsValue]C.VkSubpassSampleLocationsEXT)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewSubpassSampleLocationsRef(unsafe.Pointer(&ptr1))
+ }
+}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DisplayPresentInfo) Ref() *C.VkDisplayPresentInfoKHR {
+func (x *RenderPassSampleLocationsBeginInfo) Ref() *C.VkRenderPassSampleLocationsBeginInfoEXT {
if x == nil {
return nil
}
- return x.ref8d2571e4
+ return x.refb61b51d4
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DisplayPresentInfo) Free() {
- if x != nil && x.allocs8d2571e4 != nil {
- x.allocs8d2571e4.(*cgoAllocMap).Free()
- x.ref8d2571e4 = nil
+func (x *RenderPassSampleLocationsBeginInfo) Free() {
+ if x != nil && x.allocsb61b51d4 != nil {
+ x.allocsb61b51d4.(*cgoAllocMap).Free()
+ x.refb61b51d4 = nil
}
}
-// NewDisplayPresentInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewRenderPassSampleLocationsBeginInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDisplayPresentInfoRef(ref unsafe.Pointer) *DisplayPresentInfo {
+func NewRenderPassSampleLocationsBeginInfoRef(ref unsafe.Pointer) *RenderPassSampleLocationsBeginInfo {
if ref == nil {
return nil
}
- obj := new(DisplayPresentInfo)
- obj.ref8d2571e4 = (*C.VkDisplayPresentInfoKHR)(unsafe.Pointer(ref))
+ obj := new(RenderPassSampleLocationsBeginInfo)
+ obj.refb61b51d4 = (*C.VkRenderPassSampleLocationsBeginInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DisplayPresentInfo) PassRef() (*C.VkDisplayPresentInfoKHR, *cgoAllocMap) {
+func (x *RenderPassSampleLocationsBeginInfo) PassRef() (*C.VkRenderPassSampleLocationsBeginInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref8d2571e4 != nil {
- return x.ref8d2571e4, nil
+ } else if x.refb61b51d4 != nil {
+ return x.refb61b51d4, nil
}
- mem8d2571e4 := allocDisplayPresentInfoMemory(1)
- ref8d2571e4 := (*C.VkDisplayPresentInfoKHR)(mem8d2571e4)
- allocs8d2571e4 := new(cgoAllocMap)
- allocs8d2571e4.Add(mem8d2571e4)
+ memb61b51d4 := allocRenderPassSampleLocationsBeginInfoMemory(1)
+ refb61b51d4 := (*C.VkRenderPassSampleLocationsBeginInfoEXT)(memb61b51d4)
+ allocsb61b51d4 := new(cgoAllocMap)
+ allocsb61b51d4.Add(memb61b51d4)
var csType_allocs *cgoAllocMap
- ref8d2571e4.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs8d2571e4.Borrow(csType_allocs)
+ refb61b51d4.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsb61b51d4.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref8d2571e4.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs8d2571e4.Borrow(cpNext_allocs)
+ refb61b51d4.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsb61b51d4.Borrow(cpNext_allocs)
- var csrcRect_allocs *cgoAllocMap
- ref8d2571e4.srcRect, csrcRect_allocs = x.SrcRect.PassValue()
- allocs8d2571e4.Borrow(csrcRect_allocs)
+ var cattachmentInitialSampleLocationsCount_allocs *cgoAllocMap
+ refb61b51d4.attachmentInitialSampleLocationsCount, cattachmentInitialSampleLocationsCount_allocs = (C.uint32_t)(x.AttachmentInitialSampleLocationsCount), cgoAllocsUnknown
+ allocsb61b51d4.Borrow(cattachmentInitialSampleLocationsCount_allocs)
- var cdstRect_allocs *cgoAllocMap
- ref8d2571e4.dstRect, cdstRect_allocs = x.DstRect.PassValue()
- allocs8d2571e4.Borrow(cdstRect_allocs)
+ var cpAttachmentInitialSampleLocations_allocs *cgoAllocMap
+ refb61b51d4.pAttachmentInitialSampleLocations, cpAttachmentInitialSampleLocations_allocs = unpackSAttachmentSampleLocations(x.PAttachmentInitialSampleLocations)
+ allocsb61b51d4.Borrow(cpAttachmentInitialSampleLocations_allocs)
- var cpersistent_allocs *cgoAllocMap
- ref8d2571e4.persistent, cpersistent_allocs = (C.VkBool32)(x.Persistent), cgoAllocsUnknown
- allocs8d2571e4.Borrow(cpersistent_allocs)
+ var cpostSubpassSampleLocationsCount_allocs *cgoAllocMap
+ refb61b51d4.postSubpassSampleLocationsCount, cpostSubpassSampleLocationsCount_allocs = (C.uint32_t)(x.PostSubpassSampleLocationsCount), cgoAllocsUnknown
+ allocsb61b51d4.Borrow(cpostSubpassSampleLocationsCount_allocs)
- x.ref8d2571e4 = ref8d2571e4
- x.allocs8d2571e4 = allocs8d2571e4
- return ref8d2571e4, allocs8d2571e4
+ var cpPostSubpassSampleLocations_allocs *cgoAllocMap
+ refb61b51d4.pPostSubpassSampleLocations, cpPostSubpassSampleLocations_allocs = unpackSSubpassSampleLocations(x.PPostSubpassSampleLocations)
+ allocsb61b51d4.Borrow(cpPostSubpassSampleLocations_allocs)
+
+ x.refb61b51d4 = refb61b51d4
+ x.allocsb61b51d4 = allocsb61b51d4
+ return refb61b51d4, allocsb61b51d4
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DisplayPresentInfo) PassValue() (C.VkDisplayPresentInfoKHR, *cgoAllocMap) {
- if x.ref8d2571e4 != nil {
- return *x.ref8d2571e4, nil
+func (x RenderPassSampleLocationsBeginInfo) PassValue() (C.VkRenderPassSampleLocationsBeginInfoEXT, *cgoAllocMap) {
+ if x.refb61b51d4 != nil {
+ return *x.refb61b51d4, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -21828,96 +48814,97 @@ func (x DisplayPresentInfo) PassValue() (C.VkDisplayPresentInfoKHR, *cgoAllocMap
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DisplayPresentInfo) Deref() {
- if x.ref8d2571e4 == nil {
+func (x *RenderPassSampleLocationsBeginInfo) Deref() {
+ if x.refb61b51d4 == nil {
return
}
- x.SType = (StructureType)(x.ref8d2571e4.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref8d2571e4.pNext))
- x.SrcRect = *NewRect2DRef(unsafe.Pointer(&x.ref8d2571e4.srcRect))
- x.DstRect = *NewRect2DRef(unsafe.Pointer(&x.ref8d2571e4.dstRect))
- x.Persistent = (Bool32)(x.ref8d2571e4.persistent)
+ x.SType = (StructureType)(x.refb61b51d4.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb61b51d4.pNext))
+ x.AttachmentInitialSampleLocationsCount = (uint32)(x.refb61b51d4.attachmentInitialSampleLocationsCount)
+ packSAttachmentSampleLocations(x.PAttachmentInitialSampleLocations, x.refb61b51d4.pAttachmentInitialSampleLocations)
+ x.PostSubpassSampleLocationsCount = (uint32)(x.refb61b51d4.postSubpassSampleLocationsCount)
+ packSSubpassSampleLocations(x.PPostSubpassSampleLocations, x.refb61b51d4.pPostSubpassSampleLocations)
}
-// allocImportMemoryFdInfoMemory allocates memory for type C.VkImportMemoryFdInfoKHR in C.
+// allocPipelineSampleLocationsStateCreateInfoMemory allocates memory for type C.VkPipelineSampleLocationsStateCreateInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocImportMemoryFdInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImportMemoryFdInfoValue))
+func allocPipelineSampleLocationsStateCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineSampleLocationsStateCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfImportMemoryFdInfoValue = unsafe.Sizeof([1]C.VkImportMemoryFdInfoKHR{})
+const sizeOfPipelineSampleLocationsStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineSampleLocationsStateCreateInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ImportMemoryFdInfo) Ref() *C.VkImportMemoryFdInfoKHR {
+func (x *PipelineSampleLocationsStateCreateInfo) Ref() *C.VkPipelineSampleLocationsStateCreateInfoEXT {
if x == nil {
return nil
}
- return x.ref73f83287
+ return x.ref93a2968f
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ImportMemoryFdInfo) Free() {
- if x != nil && x.allocs73f83287 != nil {
- x.allocs73f83287.(*cgoAllocMap).Free()
- x.ref73f83287 = nil
+func (x *PipelineSampleLocationsStateCreateInfo) Free() {
+ if x != nil && x.allocs93a2968f != nil {
+ x.allocs93a2968f.(*cgoAllocMap).Free()
+ x.ref93a2968f = nil
}
}
-// NewImportMemoryFdInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineSampleLocationsStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewImportMemoryFdInfoRef(ref unsafe.Pointer) *ImportMemoryFdInfo {
+func NewPipelineSampleLocationsStateCreateInfoRef(ref unsafe.Pointer) *PipelineSampleLocationsStateCreateInfo {
if ref == nil {
return nil
}
- obj := new(ImportMemoryFdInfo)
- obj.ref73f83287 = (*C.VkImportMemoryFdInfoKHR)(unsafe.Pointer(ref))
+ obj := new(PipelineSampleLocationsStateCreateInfo)
+ obj.ref93a2968f = (*C.VkPipelineSampleLocationsStateCreateInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ImportMemoryFdInfo) PassRef() (*C.VkImportMemoryFdInfoKHR, *cgoAllocMap) {
+func (x *PipelineSampleLocationsStateCreateInfo) PassRef() (*C.VkPipelineSampleLocationsStateCreateInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref73f83287 != nil {
- return x.ref73f83287, nil
+ } else if x.ref93a2968f != nil {
+ return x.ref93a2968f, nil
}
- mem73f83287 := allocImportMemoryFdInfoMemory(1)
- ref73f83287 := (*C.VkImportMemoryFdInfoKHR)(mem73f83287)
- allocs73f83287 := new(cgoAllocMap)
- allocs73f83287.Add(mem73f83287)
+ mem93a2968f := allocPipelineSampleLocationsStateCreateInfoMemory(1)
+ ref93a2968f := (*C.VkPipelineSampleLocationsStateCreateInfoEXT)(mem93a2968f)
+ allocs93a2968f := new(cgoAllocMap)
+ allocs93a2968f.Add(mem93a2968f)
var csType_allocs *cgoAllocMap
- ref73f83287.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs73f83287.Borrow(csType_allocs)
+ ref93a2968f.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs93a2968f.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref73f83287.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs73f83287.Borrow(cpNext_allocs)
+ ref93a2968f.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs93a2968f.Borrow(cpNext_allocs)
- var chandleType_allocs *cgoAllocMap
- ref73f83287.handleType, chandleType_allocs = (C.VkExternalMemoryHandleTypeFlagBits)(x.HandleType), cgoAllocsUnknown
- allocs73f83287.Borrow(chandleType_allocs)
+ var csampleLocationsEnable_allocs *cgoAllocMap
+ ref93a2968f.sampleLocationsEnable, csampleLocationsEnable_allocs = (C.VkBool32)(x.SampleLocationsEnable), cgoAllocsUnknown
+ allocs93a2968f.Borrow(csampleLocationsEnable_allocs)
- var cfd_allocs *cgoAllocMap
- ref73f83287.fd, cfd_allocs = (C.int)(x.Fd), cgoAllocsUnknown
- allocs73f83287.Borrow(cfd_allocs)
+ var csampleLocationsInfo_allocs *cgoAllocMap
+ ref93a2968f.sampleLocationsInfo, csampleLocationsInfo_allocs = x.SampleLocationsInfo.PassValue()
+ allocs93a2968f.Borrow(csampleLocationsInfo_allocs)
- x.ref73f83287 = ref73f83287
- x.allocs73f83287 = allocs73f83287
- return ref73f83287, allocs73f83287
+ x.ref93a2968f = ref93a2968f
+ x.allocs93a2968f = allocs93a2968f
+ return ref93a2968f, allocs93a2968f
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ImportMemoryFdInfo) PassValue() (C.VkImportMemoryFdInfoKHR, *cgoAllocMap) {
- if x.ref73f83287 != nil {
- return *x.ref73f83287, nil
+func (x PipelineSampleLocationsStateCreateInfo) PassValue() (C.VkPipelineSampleLocationsStateCreateInfoEXT, *cgoAllocMap) {
+ if x.ref93a2968f != nil {
+ return *x.ref93a2968f, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -21925,91 +48912,107 @@ func (x ImportMemoryFdInfo) PassValue() (C.VkImportMemoryFdInfoKHR, *cgoAllocMap
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ImportMemoryFdInfo) Deref() {
- if x.ref73f83287 == nil {
+func (x *PipelineSampleLocationsStateCreateInfo) Deref() {
+ if x.ref93a2968f == nil {
return
}
- x.SType = (StructureType)(x.ref73f83287.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref73f83287.pNext))
- x.HandleType = (ExternalMemoryHandleTypeFlagBits)(x.ref73f83287.handleType)
- x.Fd = (int32)(x.ref73f83287.fd)
+ x.SType = (StructureType)(x.ref93a2968f.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref93a2968f.pNext))
+ x.SampleLocationsEnable = (Bool32)(x.ref93a2968f.sampleLocationsEnable)
+ x.SampleLocationsInfo = *NewSampleLocationsInfoRef(unsafe.Pointer(&x.ref93a2968f.sampleLocationsInfo))
}
-// allocMemoryFdPropertiesMemory allocates memory for type C.VkMemoryFdPropertiesKHR in C.
+// allocPhysicalDeviceSampleLocationsPropertiesMemory allocates memory for type C.VkPhysicalDeviceSampleLocationsPropertiesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocMemoryFdPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMemoryFdPropertiesValue))
+func allocPhysicalDeviceSampleLocationsPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceSampleLocationsPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfMemoryFdPropertiesValue = unsafe.Sizeof([1]C.VkMemoryFdPropertiesKHR{})
+const sizeOfPhysicalDeviceSampleLocationsPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceSampleLocationsPropertiesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *MemoryFdProperties) Ref() *C.VkMemoryFdPropertiesKHR {
+func (x *PhysicalDeviceSampleLocationsProperties) Ref() *C.VkPhysicalDeviceSampleLocationsPropertiesEXT {
if x == nil {
return nil
}
- return x.ref51e16d38
+ return x.refaf801323
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *MemoryFdProperties) Free() {
- if x != nil && x.allocs51e16d38 != nil {
- x.allocs51e16d38.(*cgoAllocMap).Free()
- x.ref51e16d38 = nil
+func (x *PhysicalDeviceSampleLocationsProperties) Free() {
+ if x != nil && x.allocsaf801323 != nil {
+ x.allocsaf801323.(*cgoAllocMap).Free()
+ x.refaf801323 = nil
}
}
-// NewMemoryFdPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceSampleLocationsPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewMemoryFdPropertiesRef(ref unsafe.Pointer) *MemoryFdProperties {
+func NewPhysicalDeviceSampleLocationsPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceSampleLocationsProperties {
if ref == nil {
return nil
}
- obj := new(MemoryFdProperties)
- obj.ref51e16d38 = (*C.VkMemoryFdPropertiesKHR)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceSampleLocationsProperties)
+ obj.refaf801323 = (*C.VkPhysicalDeviceSampleLocationsPropertiesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *MemoryFdProperties) PassRef() (*C.VkMemoryFdPropertiesKHR, *cgoAllocMap) {
+func (x *PhysicalDeviceSampleLocationsProperties) PassRef() (*C.VkPhysicalDeviceSampleLocationsPropertiesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref51e16d38 != nil {
- return x.ref51e16d38, nil
+ } else if x.refaf801323 != nil {
+ return x.refaf801323, nil
}
- mem51e16d38 := allocMemoryFdPropertiesMemory(1)
- ref51e16d38 := (*C.VkMemoryFdPropertiesKHR)(mem51e16d38)
- allocs51e16d38 := new(cgoAllocMap)
- allocs51e16d38.Add(mem51e16d38)
+ memaf801323 := allocPhysicalDeviceSampleLocationsPropertiesMemory(1)
+ refaf801323 := (*C.VkPhysicalDeviceSampleLocationsPropertiesEXT)(memaf801323)
+ allocsaf801323 := new(cgoAllocMap)
+ allocsaf801323.Add(memaf801323)
var csType_allocs *cgoAllocMap
- ref51e16d38.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs51e16d38.Borrow(csType_allocs)
+ refaf801323.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsaf801323.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref51e16d38.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs51e16d38.Borrow(cpNext_allocs)
+ refaf801323.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsaf801323.Borrow(cpNext_allocs)
- var cmemoryTypeBits_allocs *cgoAllocMap
- ref51e16d38.memoryTypeBits, cmemoryTypeBits_allocs = (C.uint32_t)(x.MemoryTypeBits), cgoAllocsUnknown
- allocs51e16d38.Borrow(cmemoryTypeBits_allocs)
+ var csampleLocationSampleCounts_allocs *cgoAllocMap
+ refaf801323.sampleLocationSampleCounts, csampleLocationSampleCounts_allocs = (C.VkSampleCountFlags)(x.SampleLocationSampleCounts), cgoAllocsUnknown
+ allocsaf801323.Borrow(csampleLocationSampleCounts_allocs)
- x.ref51e16d38 = ref51e16d38
- x.allocs51e16d38 = allocs51e16d38
- return ref51e16d38, allocs51e16d38
+ var cmaxSampleLocationGridSize_allocs *cgoAllocMap
+ refaf801323.maxSampleLocationGridSize, cmaxSampleLocationGridSize_allocs = x.MaxSampleLocationGridSize.PassValue()
+ allocsaf801323.Borrow(cmaxSampleLocationGridSize_allocs)
+
+ var csampleLocationCoordinateRange_allocs *cgoAllocMap
+ refaf801323.sampleLocationCoordinateRange, csampleLocationCoordinateRange_allocs = *(*[2]C.float)(unsafe.Pointer(&x.SampleLocationCoordinateRange)), cgoAllocsUnknown
+ allocsaf801323.Borrow(csampleLocationCoordinateRange_allocs)
+
+ var csampleLocationSubPixelBits_allocs *cgoAllocMap
+ refaf801323.sampleLocationSubPixelBits, csampleLocationSubPixelBits_allocs = (C.uint32_t)(x.SampleLocationSubPixelBits), cgoAllocsUnknown
+ allocsaf801323.Borrow(csampleLocationSubPixelBits_allocs)
+
+ var cvariableSampleLocations_allocs *cgoAllocMap
+ refaf801323.variableSampleLocations, cvariableSampleLocations_allocs = (C.VkBool32)(x.VariableSampleLocations), cgoAllocsUnknown
+ allocsaf801323.Borrow(cvariableSampleLocations_allocs)
+
+ x.refaf801323 = refaf801323
+ x.allocsaf801323 = allocsaf801323
+ return refaf801323, allocsaf801323
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x MemoryFdProperties) PassValue() (C.VkMemoryFdPropertiesKHR, *cgoAllocMap) {
- if x.ref51e16d38 != nil {
- return *x.ref51e16d38, nil
+func (x PhysicalDeviceSampleLocationsProperties) PassValue() (C.VkPhysicalDeviceSampleLocationsPropertiesEXT, *cgoAllocMap) {
+ if x.refaf801323 != nil {
+ return *x.refaf801323, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -22017,94 +49020,94 @@ func (x MemoryFdProperties) PassValue() (C.VkMemoryFdPropertiesKHR, *cgoAllocMap
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *MemoryFdProperties) Deref() {
- if x.ref51e16d38 == nil {
+func (x *PhysicalDeviceSampleLocationsProperties) Deref() {
+ if x.refaf801323 == nil {
return
}
- x.SType = (StructureType)(x.ref51e16d38.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref51e16d38.pNext))
- x.MemoryTypeBits = (uint32)(x.ref51e16d38.memoryTypeBits)
+ x.SType = (StructureType)(x.refaf801323.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refaf801323.pNext))
+ x.SampleLocationSampleCounts = (SampleCountFlags)(x.refaf801323.sampleLocationSampleCounts)
+ x.MaxSampleLocationGridSize = *NewExtent2DRef(unsafe.Pointer(&x.refaf801323.maxSampleLocationGridSize))
+ x.SampleLocationCoordinateRange = *(*[2]float32)(unsafe.Pointer(&x.refaf801323.sampleLocationCoordinateRange))
+ x.SampleLocationSubPixelBits = (uint32)(x.refaf801323.sampleLocationSubPixelBits)
+ x.VariableSampleLocations = (Bool32)(x.refaf801323.variableSampleLocations)
}
-// allocMemoryGetFdInfoMemory allocates memory for type C.VkMemoryGetFdInfoKHR in C.
+// allocMultisamplePropertiesMemory allocates memory for type C.VkMultisamplePropertiesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocMemoryGetFdInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMemoryGetFdInfoValue))
+func allocMultisamplePropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMultisamplePropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfMemoryGetFdInfoValue = unsafe.Sizeof([1]C.VkMemoryGetFdInfoKHR{})
+const sizeOfMultisamplePropertiesValue = unsafe.Sizeof([1]C.VkMultisamplePropertiesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *MemoryGetFdInfo) Ref() *C.VkMemoryGetFdInfoKHR {
+func (x *MultisampleProperties) Ref() *C.VkMultisamplePropertiesEXT {
if x == nil {
return nil
}
- return x.ref75a079b1
+ return x.ref3e47f337
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *MemoryGetFdInfo) Free() {
- if x != nil && x.allocs75a079b1 != nil {
- x.allocs75a079b1.(*cgoAllocMap).Free()
- x.ref75a079b1 = nil
+func (x *MultisampleProperties) Free() {
+ if x != nil && x.allocs3e47f337 != nil {
+ x.allocs3e47f337.(*cgoAllocMap).Free()
+ x.ref3e47f337 = nil
}
}
-// NewMemoryGetFdInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewMultisamplePropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewMemoryGetFdInfoRef(ref unsafe.Pointer) *MemoryGetFdInfo {
+func NewMultisamplePropertiesRef(ref unsafe.Pointer) *MultisampleProperties {
if ref == nil {
return nil
}
- obj := new(MemoryGetFdInfo)
- obj.ref75a079b1 = (*C.VkMemoryGetFdInfoKHR)(unsafe.Pointer(ref))
+ obj := new(MultisampleProperties)
+ obj.ref3e47f337 = (*C.VkMultisamplePropertiesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *MemoryGetFdInfo) PassRef() (*C.VkMemoryGetFdInfoKHR, *cgoAllocMap) {
+func (x *MultisampleProperties) PassRef() (*C.VkMultisamplePropertiesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref75a079b1 != nil {
- return x.ref75a079b1, nil
+ } else if x.ref3e47f337 != nil {
+ return x.ref3e47f337, nil
}
- mem75a079b1 := allocMemoryGetFdInfoMemory(1)
- ref75a079b1 := (*C.VkMemoryGetFdInfoKHR)(mem75a079b1)
- allocs75a079b1 := new(cgoAllocMap)
- allocs75a079b1.Add(mem75a079b1)
+ mem3e47f337 := allocMultisamplePropertiesMemory(1)
+ ref3e47f337 := (*C.VkMultisamplePropertiesEXT)(mem3e47f337)
+ allocs3e47f337 := new(cgoAllocMap)
+ allocs3e47f337.Add(mem3e47f337)
var csType_allocs *cgoAllocMap
- ref75a079b1.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs75a079b1.Borrow(csType_allocs)
+ ref3e47f337.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs3e47f337.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref75a079b1.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs75a079b1.Borrow(cpNext_allocs)
-
- var cmemory_allocs *cgoAllocMap
- ref75a079b1.memory, cmemory_allocs = *(*C.VkDeviceMemory)(unsafe.Pointer(&x.Memory)), cgoAllocsUnknown
- allocs75a079b1.Borrow(cmemory_allocs)
+ ref3e47f337.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs3e47f337.Borrow(cpNext_allocs)
- var chandleType_allocs *cgoAllocMap
- ref75a079b1.handleType, chandleType_allocs = (C.VkExternalMemoryHandleTypeFlagBits)(x.HandleType), cgoAllocsUnknown
- allocs75a079b1.Borrow(chandleType_allocs)
+ var cmaxSampleLocationGridSize_allocs *cgoAllocMap
+ ref3e47f337.maxSampleLocationGridSize, cmaxSampleLocationGridSize_allocs = x.MaxSampleLocationGridSize.PassValue()
+ allocs3e47f337.Borrow(cmaxSampleLocationGridSize_allocs)
- x.ref75a079b1 = ref75a079b1
- x.allocs75a079b1 = allocs75a079b1
- return ref75a079b1, allocs75a079b1
+ x.ref3e47f337 = ref3e47f337
+ x.allocs3e47f337 = allocs3e47f337
+ return ref3e47f337, allocs3e47f337
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x MemoryGetFdInfo) PassValue() (C.VkMemoryGetFdInfoKHR, *cgoAllocMap) {
- if x.ref75a079b1 != nil {
- return *x.ref75a079b1, nil
+func (x MultisampleProperties) PassValue() (C.VkMultisamplePropertiesEXT, *cgoAllocMap) {
+ if x.ref3e47f337 != nil {
+ return *x.ref3e47f337, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -22112,103 +49115,90 @@ func (x MemoryGetFdInfo) PassValue() (C.VkMemoryGetFdInfoKHR, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *MemoryGetFdInfo) Deref() {
- if x.ref75a079b1 == nil {
+func (x *MultisampleProperties) Deref() {
+ if x.ref3e47f337 == nil {
return
}
- x.SType = (StructureType)(x.ref75a079b1.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref75a079b1.pNext))
- x.Memory = *(*DeviceMemory)(unsafe.Pointer(&x.ref75a079b1.memory))
- x.HandleType = (ExternalMemoryHandleTypeFlagBits)(x.ref75a079b1.handleType)
+ x.SType = (StructureType)(x.ref3e47f337.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref3e47f337.pNext))
+ x.MaxSampleLocationGridSize = *NewExtent2DRef(unsafe.Pointer(&x.ref3e47f337.maxSampleLocationGridSize))
}
-// allocImportSemaphoreFdInfoMemory allocates memory for type C.VkImportSemaphoreFdInfoKHR in C.
+// allocPhysicalDeviceBlendOperationAdvancedFeaturesMemory allocates memory for type C.VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocImportSemaphoreFdInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImportSemaphoreFdInfoValue))
+func allocPhysicalDeviceBlendOperationAdvancedFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceBlendOperationAdvancedFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfImportSemaphoreFdInfoValue = unsafe.Sizeof([1]C.VkImportSemaphoreFdInfoKHR{})
+const sizeOfPhysicalDeviceBlendOperationAdvancedFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ImportSemaphoreFdInfo) Ref() *C.VkImportSemaphoreFdInfoKHR {
+func (x *PhysicalDeviceBlendOperationAdvancedFeatures) Ref() *C.VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT {
if x == nil {
return nil
}
- return x.refbc2f829a
+ return x.ref8514bc93
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ImportSemaphoreFdInfo) Free() {
- if x != nil && x.allocsbc2f829a != nil {
- x.allocsbc2f829a.(*cgoAllocMap).Free()
- x.refbc2f829a = nil
+func (x *PhysicalDeviceBlendOperationAdvancedFeatures) Free() {
+ if x != nil && x.allocs8514bc93 != nil {
+ x.allocs8514bc93.(*cgoAllocMap).Free()
+ x.ref8514bc93 = nil
}
}
-// NewImportSemaphoreFdInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceBlendOperationAdvancedFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewImportSemaphoreFdInfoRef(ref unsafe.Pointer) *ImportSemaphoreFdInfo {
+func NewPhysicalDeviceBlendOperationAdvancedFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceBlendOperationAdvancedFeatures {
if ref == nil {
return nil
}
- obj := new(ImportSemaphoreFdInfo)
- obj.refbc2f829a = (*C.VkImportSemaphoreFdInfoKHR)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceBlendOperationAdvancedFeatures)
+ obj.ref8514bc93 = (*C.VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ImportSemaphoreFdInfo) PassRef() (*C.VkImportSemaphoreFdInfoKHR, *cgoAllocMap) {
+func (x *PhysicalDeviceBlendOperationAdvancedFeatures) PassRef() (*C.VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refbc2f829a != nil {
- return x.refbc2f829a, nil
+ } else if x.ref8514bc93 != nil {
+ return x.ref8514bc93, nil
}
- membc2f829a := allocImportSemaphoreFdInfoMemory(1)
- refbc2f829a := (*C.VkImportSemaphoreFdInfoKHR)(membc2f829a)
- allocsbc2f829a := new(cgoAllocMap)
- allocsbc2f829a.Add(membc2f829a)
+ mem8514bc93 := allocPhysicalDeviceBlendOperationAdvancedFeaturesMemory(1)
+ ref8514bc93 := (*C.VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT)(mem8514bc93)
+ allocs8514bc93 := new(cgoAllocMap)
+ allocs8514bc93.Add(mem8514bc93)
var csType_allocs *cgoAllocMap
- refbc2f829a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsbc2f829a.Borrow(csType_allocs)
+ ref8514bc93.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs8514bc93.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refbc2f829a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsbc2f829a.Borrow(cpNext_allocs)
-
- var csemaphore_allocs *cgoAllocMap
- refbc2f829a.semaphore, csemaphore_allocs = *(*C.VkSemaphore)(unsafe.Pointer(&x.Semaphore)), cgoAllocsUnknown
- allocsbc2f829a.Borrow(csemaphore_allocs)
-
- var cflags_allocs *cgoAllocMap
- refbc2f829a.flags, cflags_allocs = (C.VkSemaphoreImportFlags)(x.Flags), cgoAllocsUnknown
- allocsbc2f829a.Borrow(cflags_allocs)
-
- var chandleType_allocs *cgoAllocMap
- refbc2f829a.handleType, chandleType_allocs = (C.VkExternalSemaphoreHandleTypeFlagBits)(x.HandleType), cgoAllocsUnknown
- allocsbc2f829a.Borrow(chandleType_allocs)
+ ref8514bc93.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs8514bc93.Borrow(cpNext_allocs)
- var cfd_allocs *cgoAllocMap
- refbc2f829a.fd, cfd_allocs = (C.int)(x.Fd), cgoAllocsUnknown
- allocsbc2f829a.Borrow(cfd_allocs)
+ var cadvancedBlendCoherentOperations_allocs *cgoAllocMap
+ ref8514bc93.advancedBlendCoherentOperations, cadvancedBlendCoherentOperations_allocs = (C.VkBool32)(x.AdvancedBlendCoherentOperations), cgoAllocsUnknown
+ allocs8514bc93.Borrow(cadvancedBlendCoherentOperations_allocs)
- x.refbc2f829a = refbc2f829a
- x.allocsbc2f829a = allocsbc2f829a
- return refbc2f829a, allocsbc2f829a
+ x.ref8514bc93 = ref8514bc93
+ x.allocs8514bc93 = allocs8514bc93
+ return ref8514bc93, allocs8514bc93
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ImportSemaphoreFdInfo) PassValue() (C.VkImportSemaphoreFdInfoKHR, *cgoAllocMap) {
- if x.refbc2f829a != nil {
- return *x.refbc2f829a, nil
+func (x PhysicalDeviceBlendOperationAdvancedFeatures) PassValue() (C.VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT, *cgoAllocMap) {
+ if x.ref8514bc93 != nil {
+ return *x.ref8514bc93, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -22216,97 +49206,110 @@ func (x ImportSemaphoreFdInfo) PassValue() (C.VkImportSemaphoreFdInfoKHR, *cgoAl
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ImportSemaphoreFdInfo) Deref() {
- if x.refbc2f829a == nil {
+func (x *PhysicalDeviceBlendOperationAdvancedFeatures) Deref() {
+ if x.ref8514bc93 == nil {
return
}
- x.SType = (StructureType)(x.refbc2f829a.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refbc2f829a.pNext))
- x.Semaphore = *(*Semaphore)(unsafe.Pointer(&x.refbc2f829a.semaphore))
- x.Flags = (SemaphoreImportFlags)(x.refbc2f829a.flags)
- x.HandleType = (ExternalSemaphoreHandleTypeFlagBits)(x.refbc2f829a.handleType)
- x.Fd = (int32)(x.refbc2f829a.fd)
+ x.SType = (StructureType)(x.ref8514bc93.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref8514bc93.pNext))
+ x.AdvancedBlendCoherentOperations = (Bool32)(x.ref8514bc93.advancedBlendCoherentOperations)
}
-// allocSemaphoreGetFdInfoMemory allocates memory for type C.VkSemaphoreGetFdInfoKHR in C.
+// allocPhysicalDeviceBlendOperationAdvancedPropertiesMemory allocates memory for type C.VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSemaphoreGetFdInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSemaphoreGetFdInfoValue))
+func allocPhysicalDeviceBlendOperationAdvancedPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceBlendOperationAdvancedPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSemaphoreGetFdInfoValue = unsafe.Sizeof([1]C.VkSemaphoreGetFdInfoKHR{})
+const sizeOfPhysicalDeviceBlendOperationAdvancedPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SemaphoreGetFdInfo) Ref() *C.VkSemaphoreGetFdInfoKHR {
+func (x *PhysicalDeviceBlendOperationAdvancedProperties) Ref() *C.VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT {
if x == nil {
return nil
}
- return x.refd9bd07cf
+ return x.ref94cb3fa6
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SemaphoreGetFdInfo) Free() {
- if x != nil && x.allocsd9bd07cf != nil {
- x.allocsd9bd07cf.(*cgoAllocMap).Free()
- x.refd9bd07cf = nil
+func (x *PhysicalDeviceBlendOperationAdvancedProperties) Free() {
+ if x != nil && x.allocs94cb3fa6 != nil {
+ x.allocs94cb3fa6.(*cgoAllocMap).Free()
+ x.ref94cb3fa6 = nil
}
}
-// NewSemaphoreGetFdInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceBlendOperationAdvancedPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSemaphoreGetFdInfoRef(ref unsafe.Pointer) *SemaphoreGetFdInfo {
+func NewPhysicalDeviceBlendOperationAdvancedPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceBlendOperationAdvancedProperties {
if ref == nil {
return nil
}
- obj := new(SemaphoreGetFdInfo)
- obj.refd9bd07cf = (*C.VkSemaphoreGetFdInfoKHR)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceBlendOperationAdvancedProperties)
+ obj.ref94cb3fa6 = (*C.VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SemaphoreGetFdInfo) PassRef() (*C.VkSemaphoreGetFdInfoKHR, *cgoAllocMap) {
+func (x *PhysicalDeviceBlendOperationAdvancedProperties) PassRef() (*C.VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refd9bd07cf != nil {
- return x.refd9bd07cf, nil
+ } else if x.ref94cb3fa6 != nil {
+ return x.ref94cb3fa6, nil
}
- memd9bd07cf := allocSemaphoreGetFdInfoMemory(1)
- refd9bd07cf := (*C.VkSemaphoreGetFdInfoKHR)(memd9bd07cf)
- allocsd9bd07cf := new(cgoAllocMap)
- allocsd9bd07cf.Add(memd9bd07cf)
+ mem94cb3fa6 := allocPhysicalDeviceBlendOperationAdvancedPropertiesMemory(1)
+ ref94cb3fa6 := (*C.VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT)(mem94cb3fa6)
+ allocs94cb3fa6 := new(cgoAllocMap)
+ allocs94cb3fa6.Add(mem94cb3fa6)
var csType_allocs *cgoAllocMap
- refd9bd07cf.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsd9bd07cf.Borrow(csType_allocs)
+ ref94cb3fa6.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs94cb3fa6.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refd9bd07cf.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsd9bd07cf.Borrow(cpNext_allocs)
+ ref94cb3fa6.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs94cb3fa6.Borrow(cpNext_allocs)
- var csemaphore_allocs *cgoAllocMap
- refd9bd07cf.semaphore, csemaphore_allocs = *(*C.VkSemaphore)(unsafe.Pointer(&x.Semaphore)), cgoAllocsUnknown
- allocsd9bd07cf.Borrow(csemaphore_allocs)
+ var cadvancedBlendMaxColorAttachments_allocs *cgoAllocMap
+ ref94cb3fa6.advancedBlendMaxColorAttachments, cadvancedBlendMaxColorAttachments_allocs = (C.uint32_t)(x.AdvancedBlendMaxColorAttachments), cgoAllocsUnknown
+ allocs94cb3fa6.Borrow(cadvancedBlendMaxColorAttachments_allocs)
- var chandleType_allocs *cgoAllocMap
- refd9bd07cf.handleType, chandleType_allocs = (C.VkExternalSemaphoreHandleTypeFlagBits)(x.HandleType), cgoAllocsUnknown
- allocsd9bd07cf.Borrow(chandleType_allocs)
+ var cadvancedBlendIndependentBlend_allocs *cgoAllocMap
+ ref94cb3fa6.advancedBlendIndependentBlend, cadvancedBlendIndependentBlend_allocs = (C.VkBool32)(x.AdvancedBlendIndependentBlend), cgoAllocsUnknown
+ allocs94cb3fa6.Borrow(cadvancedBlendIndependentBlend_allocs)
- x.refd9bd07cf = refd9bd07cf
- x.allocsd9bd07cf = allocsd9bd07cf
- return refd9bd07cf, allocsd9bd07cf
+ var cadvancedBlendNonPremultipliedSrcColor_allocs *cgoAllocMap
+ ref94cb3fa6.advancedBlendNonPremultipliedSrcColor, cadvancedBlendNonPremultipliedSrcColor_allocs = (C.VkBool32)(x.AdvancedBlendNonPremultipliedSrcColor), cgoAllocsUnknown
+ allocs94cb3fa6.Borrow(cadvancedBlendNonPremultipliedSrcColor_allocs)
+
+ var cadvancedBlendNonPremultipliedDstColor_allocs *cgoAllocMap
+ ref94cb3fa6.advancedBlendNonPremultipliedDstColor, cadvancedBlendNonPremultipliedDstColor_allocs = (C.VkBool32)(x.AdvancedBlendNonPremultipliedDstColor), cgoAllocsUnknown
+ allocs94cb3fa6.Borrow(cadvancedBlendNonPremultipliedDstColor_allocs)
+
+ var cadvancedBlendCorrelatedOverlap_allocs *cgoAllocMap
+ ref94cb3fa6.advancedBlendCorrelatedOverlap, cadvancedBlendCorrelatedOverlap_allocs = (C.VkBool32)(x.AdvancedBlendCorrelatedOverlap), cgoAllocsUnknown
+ allocs94cb3fa6.Borrow(cadvancedBlendCorrelatedOverlap_allocs)
+
+ var cadvancedBlendAllOperations_allocs *cgoAllocMap
+ ref94cb3fa6.advancedBlendAllOperations, cadvancedBlendAllOperations_allocs = (C.VkBool32)(x.AdvancedBlendAllOperations), cgoAllocsUnknown
+ allocs94cb3fa6.Borrow(cadvancedBlendAllOperations_allocs)
+
+ x.ref94cb3fa6 = ref94cb3fa6
+ x.allocs94cb3fa6 = allocs94cb3fa6
+ return ref94cb3fa6, allocs94cb3fa6
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SemaphoreGetFdInfo) PassValue() (C.VkSemaphoreGetFdInfoKHR, *cgoAllocMap) {
- if x.refd9bd07cf != nil {
- return *x.refd9bd07cf, nil
+func (x PhysicalDeviceBlendOperationAdvancedProperties) PassValue() (C.VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT, *cgoAllocMap) {
+ if x.ref94cb3fa6 != nil {
+ return *x.ref94cb3fa6, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -22314,91 +49317,103 @@ func (x SemaphoreGetFdInfo) PassValue() (C.VkSemaphoreGetFdInfoKHR, *cgoAllocMap
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SemaphoreGetFdInfo) Deref() {
- if x.refd9bd07cf == nil {
+func (x *PhysicalDeviceBlendOperationAdvancedProperties) Deref() {
+ if x.ref94cb3fa6 == nil {
return
}
- x.SType = (StructureType)(x.refd9bd07cf.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd9bd07cf.pNext))
- x.Semaphore = *(*Semaphore)(unsafe.Pointer(&x.refd9bd07cf.semaphore))
- x.HandleType = (ExternalSemaphoreHandleTypeFlagBits)(x.refd9bd07cf.handleType)
+ x.SType = (StructureType)(x.ref94cb3fa6.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref94cb3fa6.pNext))
+ x.AdvancedBlendMaxColorAttachments = (uint32)(x.ref94cb3fa6.advancedBlendMaxColorAttachments)
+ x.AdvancedBlendIndependentBlend = (Bool32)(x.ref94cb3fa6.advancedBlendIndependentBlend)
+ x.AdvancedBlendNonPremultipliedSrcColor = (Bool32)(x.ref94cb3fa6.advancedBlendNonPremultipliedSrcColor)
+ x.AdvancedBlendNonPremultipliedDstColor = (Bool32)(x.ref94cb3fa6.advancedBlendNonPremultipliedDstColor)
+ x.AdvancedBlendCorrelatedOverlap = (Bool32)(x.ref94cb3fa6.advancedBlendCorrelatedOverlap)
+ x.AdvancedBlendAllOperations = (Bool32)(x.ref94cb3fa6.advancedBlendAllOperations)
}
-// allocPhysicalDevicePushDescriptorPropertiesMemory allocates memory for type C.VkPhysicalDevicePushDescriptorPropertiesKHR in C.
+// allocPipelineColorBlendAdvancedStateCreateInfoMemory allocates memory for type C.VkPipelineColorBlendAdvancedStateCreateInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDevicePushDescriptorPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDevicePushDescriptorPropertiesValue))
+func allocPipelineColorBlendAdvancedStateCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineColorBlendAdvancedStateCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDevicePushDescriptorPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDevicePushDescriptorPropertiesKHR{})
+const sizeOfPipelineColorBlendAdvancedStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineColorBlendAdvancedStateCreateInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDevicePushDescriptorProperties) Ref() *C.VkPhysicalDevicePushDescriptorPropertiesKHR {
+func (x *PipelineColorBlendAdvancedStateCreateInfo) Ref() *C.VkPipelineColorBlendAdvancedStateCreateInfoEXT {
if x == nil {
return nil
}
- return x.ref8c58a1a5
+ return x.refcd374989
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDevicePushDescriptorProperties) Free() {
- if x != nil && x.allocs8c58a1a5 != nil {
- x.allocs8c58a1a5.(*cgoAllocMap).Free()
- x.ref8c58a1a5 = nil
+func (x *PipelineColorBlendAdvancedStateCreateInfo) Free() {
+ if x != nil && x.allocscd374989 != nil {
+ x.allocscd374989.(*cgoAllocMap).Free()
+ x.refcd374989 = nil
}
}
-// NewPhysicalDevicePushDescriptorPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineColorBlendAdvancedStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDevicePushDescriptorPropertiesRef(ref unsafe.Pointer) *PhysicalDevicePushDescriptorProperties {
+func NewPipelineColorBlendAdvancedStateCreateInfoRef(ref unsafe.Pointer) *PipelineColorBlendAdvancedStateCreateInfo {
if ref == nil {
return nil
}
- obj := new(PhysicalDevicePushDescriptorProperties)
- obj.ref8c58a1a5 = (*C.VkPhysicalDevicePushDescriptorPropertiesKHR)(unsafe.Pointer(ref))
+ obj := new(PipelineColorBlendAdvancedStateCreateInfo)
+ obj.refcd374989 = (*C.VkPipelineColorBlendAdvancedStateCreateInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDevicePushDescriptorProperties) PassRef() (*C.VkPhysicalDevicePushDescriptorPropertiesKHR, *cgoAllocMap) {
+func (x *PipelineColorBlendAdvancedStateCreateInfo) PassRef() (*C.VkPipelineColorBlendAdvancedStateCreateInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref8c58a1a5 != nil {
- return x.ref8c58a1a5, nil
+ } else if x.refcd374989 != nil {
+ return x.refcd374989, nil
}
- mem8c58a1a5 := allocPhysicalDevicePushDescriptorPropertiesMemory(1)
- ref8c58a1a5 := (*C.VkPhysicalDevicePushDescriptorPropertiesKHR)(mem8c58a1a5)
- allocs8c58a1a5 := new(cgoAllocMap)
- allocs8c58a1a5.Add(mem8c58a1a5)
+ memcd374989 := allocPipelineColorBlendAdvancedStateCreateInfoMemory(1)
+ refcd374989 := (*C.VkPipelineColorBlendAdvancedStateCreateInfoEXT)(memcd374989)
+ allocscd374989 := new(cgoAllocMap)
+ allocscd374989.Add(memcd374989)
var csType_allocs *cgoAllocMap
- ref8c58a1a5.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs8c58a1a5.Borrow(csType_allocs)
+ refcd374989.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocscd374989.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref8c58a1a5.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs8c58a1a5.Borrow(cpNext_allocs)
+ refcd374989.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocscd374989.Borrow(cpNext_allocs)
- var cmaxPushDescriptors_allocs *cgoAllocMap
- ref8c58a1a5.maxPushDescriptors, cmaxPushDescriptors_allocs = (C.uint32_t)(x.MaxPushDescriptors), cgoAllocsUnknown
- allocs8c58a1a5.Borrow(cmaxPushDescriptors_allocs)
+ var csrcPremultiplied_allocs *cgoAllocMap
+ refcd374989.srcPremultiplied, csrcPremultiplied_allocs = (C.VkBool32)(x.SrcPremultiplied), cgoAllocsUnknown
+ allocscd374989.Borrow(csrcPremultiplied_allocs)
- x.ref8c58a1a5 = ref8c58a1a5
- x.allocs8c58a1a5 = allocs8c58a1a5
- return ref8c58a1a5, allocs8c58a1a5
+ var cdstPremultiplied_allocs *cgoAllocMap
+ refcd374989.dstPremultiplied, cdstPremultiplied_allocs = (C.VkBool32)(x.DstPremultiplied), cgoAllocsUnknown
+ allocscd374989.Borrow(cdstPremultiplied_allocs)
+
+ var cblendOverlap_allocs *cgoAllocMap
+ refcd374989.blendOverlap, cblendOverlap_allocs = (C.VkBlendOverlapEXT)(x.BlendOverlap), cgoAllocsUnknown
+ allocscd374989.Borrow(cblendOverlap_allocs)
+
+ x.refcd374989 = refcd374989
+ x.allocscd374989 = allocscd374989
+ return refcd374989, allocscd374989
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDevicePushDescriptorProperties) PassValue() (C.VkPhysicalDevicePushDescriptorPropertiesKHR, *cgoAllocMap) {
- if x.ref8c58a1a5 != nil {
- return *x.ref8c58a1a5, nil
+func (x PipelineColorBlendAdvancedStateCreateInfo) PassValue() (C.VkPipelineColorBlendAdvancedStateCreateInfoEXT, *cgoAllocMap) {
+ if x.refcd374989 != nil {
+ return *x.refcd374989, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -22406,215 +49421,209 @@ func (x PhysicalDevicePushDescriptorProperties) PassValue() (C.VkPhysicalDeviceP
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDevicePushDescriptorProperties) Deref() {
- if x.ref8c58a1a5 == nil {
+func (x *PipelineColorBlendAdvancedStateCreateInfo) Deref() {
+ if x.refcd374989 == nil {
return
}
- x.SType = (StructureType)(x.ref8c58a1a5.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref8c58a1a5.pNext))
- x.MaxPushDescriptors = (uint32)(x.ref8c58a1a5.maxPushDescriptors)
+ x.SType = (StructureType)(x.refcd374989.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refcd374989.pNext))
+ x.SrcPremultiplied = (Bool32)(x.refcd374989.srcPremultiplied)
+ x.DstPremultiplied = (Bool32)(x.refcd374989.dstPremultiplied)
+ x.BlendOverlap = (BlendOverlap)(x.refcd374989.blendOverlap)
}
-// allocRectLayerMemory allocates memory for type C.VkRectLayerKHR in C.
+// allocPipelineCoverageToColorStateCreateInfoNVMemory allocates memory for type C.VkPipelineCoverageToColorStateCreateInfoNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocRectLayerMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfRectLayerValue))
+func allocPipelineCoverageToColorStateCreateInfoNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineCoverageToColorStateCreateInfoNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfRectLayerValue = unsafe.Sizeof([1]C.VkRectLayerKHR{})
+const sizeOfPipelineCoverageToColorStateCreateInfoNVValue = unsafe.Sizeof([1]C.VkPipelineCoverageToColorStateCreateInfoNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *RectLayer) Ref() *C.VkRectLayerKHR {
+func (x *PipelineCoverageToColorStateCreateInfoNV) Ref() *C.VkPipelineCoverageToColorStateCreateInfoNV {
if x == nil {
return nil
}
- return x.refaf248476
+ return x.refcc6b7b68
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *RectLayer) Free() {
- if x != nil && x.allocsaf248476 != nil {
- x.allocsaf248476.(*cgoAllocMap).Free()
- x.refaf248476 = nil
+func (x *PipelineCoverageToColorStateCreateInfoNV) Free() {
+ if x != nil && x.allocscc6b7b68 != nil {
+ x.allocscc6b7b68.(*cgoAllocMap).Free()
+ x.refcc6b7b68 = nil
}
}
-// NewRectLayerRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineCoverageToColorStateCreateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewRectLayerRef(ref unsafe.Pointer) *RectLayer {
+func NewPipelineCoverageToColorStateCreateInfoNVRef(ref unsafe.Pointer) *PipelineCoverageToColorStateCreateInfoNV {
if ref == nil {
return nil
}
- obj := new(RectLayer)
- obj.refaf248476 = (*C.VkRectLayerKHR)(unsafe.Pointer(ref))
+ obj := new(PipelineCoverageToColorStateCreateInfoNV)
+ obj.refcc6b7b68 = (*C.VkPipelineCoverageToColorStateCreateInfoNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *RectLayer) PassRef() (*C.VkRectLayerKHR, *cgoAllocMap) {
+func (x *PipelineCoverageToColorStateCreateInfoNV) PassRef() (*C.VkPipelineCoverageToColorStateCreateInfoNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refaf248476 != nil {
- return x.refaf248476, nil
+ } else if x.refcc6b7b68 != nil {
+ return x.refcc6b7b68, nil
}
- memaf248476 := allocRectLayerMemory(1)
- refaf248476 := (*C.VkRectLayerKHR)(memaf248476)
- allocsaf248476 := new(cgoAllocMap)
- allocsaf248476.Add(memaf248476)
+ memcc6b7b68 := allocPipelineCoverageToColorStateCreateInfoNVMemory(1)
+ refcc6b7b68 := (*C.VkPipelineCoverageToColorStateCreateInfoNV)(memcc6b7b68)
+ allocscc6b7b68 := new(cgoAllocMap)
+ allocscc6b7b68.Add(memcc6b7b68)
- var coffset_allocs *cgoAllocMap
- refaf248476.offset, coffset_allocs = x.Offset.PassValue()
- allocsaf248476.Borrow(coffset_allocs)
+ var csType_allocs *cgoAllocMap
+ refcc6b7b68.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocscc6b7b68.Borrow(csType_allocs)
- var cextent_allocs *cgoAllocMap
- refaf248476.extent, cextent_allocs = x.Extent.PassValue()
- allocsaf248476.Borrow(cextent_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refcc6b7b68.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocscc6b7b68.Borrow(cpNext_allocs)
- var clayer_allocs *cgoAllocMap
- refaf248476.layer, clayer_allocs = (C.uint32_t)(x.Layer), cgoAllocsUnknown
- allocsaf248476.Borrow(clayer_allocs)
+ var cflags_allocs *cgoAllocMap
+ refcc6b7b68.flags, cflags_allocs = (C.VkPipelineCoverageToColorStateCreateFlagsNV)(x.Flags), cgoAllocsUnknown
+ allocscc6b7b68.Borrow(cflags_allocs)
- x.refaf248476 = refaf248476
- x.allocsaf248476 = allocsaf248476
- return refaf248476, allocsaf248476
+ var ccoverageToColorEnable_allocs *cgoAllocMap
+ refcc6b7b68.coverageToColorEnable, ccoverageToColorEnable_allocs = (C.VkBool32)(x.CoverageToColorEnable), cgoAllocsUnknown
+ allocscc6b7b68.Borrow(ccoverageToColorEnable_allocs)
+
+ var ccoverageToColorLocation_allocs *cgoAllocMap
+ refcc6b7b68.coverageToColorLocation, ccoverageToColorLocation_allocs = (C.uint32_t)(x.CoverageToColorLocation), cgoAllocsUnknown
+ allocscc6b7b68.Borrow(ccoverageToColorLocation_allocs)
+
+ x.refcc6b7b68 = refcc6b7b68
+ x.allocscc6b7b68 = allocscc6b7b68
+ return refcc6b7b68, allocscc6b7b68
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x RectLayer) PassValue() (C.VkRectLayerKHR, *cgoAllocMap) {
- if x.refaf248476 != nil {
- return *x.refaf248476, nil
+func (x PipelineCoverageToColorStateCreateInfoNV) PassValue() (C.VkPipelineCoverageToColorStateCreateInfoNV, *cgoAllocMap) {
+ if x.refcc6b7b68 != nil {
+ return *x.refcc6b7b68, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
}
-// Deref uses the underlying reference to C object and fills the wrapping struct with values.
-// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *RectLayer) Deref() {
- if x.refaf248476 == nil {
- return
- }
- x.Offset = *NewOffset2DRef(unsafe.Pointer(&x.refaf248476.offset))
- x.Extent = *NewExtent2DRef(unsafe.Pointer(&x.refaf248476.extent))
- x.Layer = (uint32)(x.refaf248476.layer)
-}
-
-// allocPresentRegionMemory allocates memory for type C.VkPresentRegionKHR in C.
-// The caller is responsible for freeing the this memory via C.free.
-func allocPresentRegionMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPresentRegionValue))
- if err != nil {
- panic("memory alloc error: " + err.Error())
- }
- return mem
-}
-
-const sizeOfPresentRegionValue = unsafe.Sizeof([1]C.VkPresentRegionKHR{})
-
-// unpackSRectLayer transforms a sliced Go data structure into plain C format.
-func unpackSRectLayer(x []RectLayer) (unpacked *C.VkRectLayerKHR, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkRectLayerKHR) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocRectLayerMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkRectLayerKHR)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PipelineCoverageToColorStateCreateInfoNV) Deref() {
+ if x.refcc6b7b68 == nil {
+ return
}
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkRectLayerKHR)(h.Data)
- return
+ x.SType = (StructureType)(x.refcc6b7b68.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refcc6b7b68.pNext))
+ x.Flags = (PipelineCoverageToColorStateCreateFlagsNV)(x.refcc6b7b68.flags)
+ x.CoverageToColorEnable = (Bool32)(x.refcc6b7b68.coverageToColorEnable)
+ x.CoverageToColorLocation = (uint32)(x.refcc6b7b68.coverageToColorLocation)
}
-// packSRectLayer reads sliced Go data structure out from plain C format.
-func packSRectLayer(v []RectLayer, ptr0 *C.VkRectLayerKHR) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfRectLayerValue]C.VkRectLayerKHR)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewRectLayerRef(unsafe.Pointer(&ptr1))
+// allocPipelineCoverageModulationStateCreateInfoNVMemory allocates memory for type C.VkPipelineCoverageModulationStateCreateInfoNV in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPipelineCoverageModulationStateCreateInfoNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineCoverageModulationStateCreateInfoNVValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
}
+ return mem
}
+const sizeOfPipelineCoverageModulationStateCreateInfoNVValue = unsafe.Sizeof([1]C.VkPipelineCoverageModulationStateCreateInfoNV{})
+
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PresentRegion) Ref() *C.VkPresentRegionKHR {
+func (x *PipelineCoverageModulationStateCreateInfoNV) Ref() *C.VkPipelineCoverageModulationStateCreateInfoNV {
if x == nil {
return nil
}
- return x.refbbc0d1b9
+ return x.refa081b0ea
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PresentRegion) Free() {
- if x != nil && x.allocsbbc0d1b9 != nil {
- x.allocsbbc0d1b9.(*cgoAllocMap).Free()
- x.refbbc0d1b9 = nil
+func (x *PipelineCoverageModulationStateCreateInfoNV) Free() {
+ if x != nil && x.allocsa081b0ea != nil {
+ x.allocsa081b0ea.(*cgoAllocMap).Free()
+ x.refa081b0ea = nil
}
}
-// NewPresentRegionRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineCoverageModulationStateCreateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPresentRegionRef(ref unsafe.Pointer) *PresentRegion {
+func NewPipelineCoverageModulationStateCreateInfoNVRef(ref unsafe.Pointer) *PipelineCoverageModulationStateCreateInfoNV {
if ref == nil {
return nil
}
- obj := new(PresentRegion)
- obj.refbbc0d1b9 = (*C.VkPresentRegionKHR)(unsafe.Pointer(ref))
+ obj := new(PipelineCoverageModulationStateCreateInfoNV)
+ obj.refa081b0ea = (*C.VkPipelineCoverageModulationStateCreateInfoNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PresentRegion) PassRef() (*C.VkPresentRegionKHR, *cgoAllocMap) {
+func (x *PipelineCoverageModulationStateCreateInfoNV) PassRef() (*C.VkPipelineCoverageModulationStateCreateInfoNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refbbc0d1b9 != nil {
- return x.refbbc0d1b9, nil
+ } else if x.refa081b0ea != nil {
+ return x.refa081b0ea, nil
}
- membbc0d1b9 := allocPresentRegionMemory(1)
- refbbc0d1b9 := (*C.VkPresentRegionKHR)(membbc0d1b9)
- allocsbbc0d1b9 := new(cgoAllocMap)
- allocsbbc0d1b9.Add(membbc0d1b9)
+ mema081b0ea := allocPipelineCoverageModulationStateCreateInfoNVMemory(1)
+ refa081b0ea := (*C.VkPipelineCoverageModulationStateCreateInfoNV)(mema081b0ea)
+ allocsa081b0ea := new(cgoAllocMap)
+ allocsa081b0ea.Add(mema081b0ea)
- var crectangleCount_allocs *cgoAllocMap
- refbbc0d1b9.rectangleCount, crectangleCount_allocs = (C.uint32_t)(x.RectangleCount), cgoAllocsUnknown
- allocsbbc0d1b9.Borrow(crectangleCount_allocs)
+ var csType_allocs *cgoAllocMap
+ refa081b0ea.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsa081b0ea.Borrow(csType_allocs)
- var cpRectangles_allocs *cgoAllocMap
- refbbc0d1b9.pRectangles, cpRectangles_allocs = unpackSRectLayer(x.PRectangles)
- allocsbbc0d1b9.Borrow(cpRectangles_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refa081b0ea.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsa081b0ea.Borrow(cpNext_allocs)
- x.refbbc0d1b9 = refbbc0d1b9
- x.allocsbbc0d1b9 = allocsbbc0d1b9
- return refbbc0d1b9, allocsbbc0d1b9
+ var cflags_allocs *cgoAllocMap
+ refa081b0ea.flags, cflags_allocs = (C.VkPipelineCoverageModulationStateCreateFlagsNV)(x.Flags), cgoAllocsUnknown
+ allocsa081b0ea.Borrow(cflags_allocs)
+
+ var ccoverageModulationMode_allocs *cgoAllocMap
+ refa081b0ea.coverageModulationMode, ccoverageModulationMode_allocs = (C.VkCoverageModulationModeNV)(x.CoverageModulationMode), cgoAllocsUnknown
+ allocsa081b0ea.Borrow(ccoverageModulationMode_allocs)
+
+ var ccoverageModulationTableEnable_allocs *cgoAllocMap
+ refa081b0ea.coverageModulationTableEnable, ccoverageModulationTableEnable_allocs = (C.VkBool32)(x.CoverageModulationTableEnable), cgoAllocsUnknown
+ allocsa081b0ea.Borrow(ccoverageModulationTableEnable_allocs)
+
+ var ccoverageModulationTableCount_allocs *cgoAllocMap
+ refa081b0ea.coverageModulationTableCount, ccoverageModulationTableCount_allocs = (C.uint32_t)(x.CoverageModulationTableCount), cgoAllocsUnknown
+ allocsa081b0ea.Borrow(ccoverageModulationTableCount_allocs)
+
+ var cpCoverageModulationTable_allocs *cgoAllocMap
+ refa081b0ea.pCoverageModulationTable, cpCoverageModulationTable_allocs = (*C.float)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PCoverageModulationTable)).Data)), cgoAllocsUnknown
+ allocsa081b0ea.Borrow(cpCoverageModulationTable_allocs)
+
+ x.refa081b0ea = refa081b0ea
+ x.allocsa081b0ea = allocsa081b0ea
+ return refa081b0ea, allocsa081b0ea
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PresentRegion) PassValue() (C.VkPresentRegionKHR, *cgoAllocMap) {
- if x.refbbc0d1b9 != nil {
- return *x.refbbc0d1b9, nil
+func (x PipelineCoverageModulationStateCreateInfoNV) PassValue() (C.VkPipelineCoverageModulationStateCreateInfoNV, *cgoAllocMap) {
+ if x.refa081b0ea != nil {
+ return *x.refa081b0ea, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -22622,131 +49631,102 @@ func (x PresentRegion) PassValue() (C.VkPresentRegionKHR, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PresentRegion) Deref() {
- if x.refbbc0d1b9 == nil {
+func (x *PipelineCoverageModulationStateCreateInfoNV) Deref() {
+ if x.refa081b0ea == nil {
return
}
- x.RectangleCount = (uint32)(x.refbbc0d1b9.rectangleCount)
- packSRectLayer(x.PRectangles, x.refbbc0d1b9.pRectangles)
+ x.SType = (StructureType)(x.refa081b0ea.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa081b0ea.pNext))
+ x.Flags = (PipelineCoverageModulationStateCreateFlagsNV)(x.refa081b0ea.flags)
+ x.CoverageModulationMode = (CoverageModulationModeNV)(x.refa081b0ea.coverageModulationMode)
+ x.CoverageModulationTableEnable = (Bool32)(x.refa081b0ea.coverageModulationTableEnable)
+ x.CoverageModulationTableCount = (uint32)(x.refa081b0ea.coverageModulationTableCount)
+ hxf766ff8 := (*sliceHeader)(unsafe.Pointer(&x.PCoverageModulationTable))
+ hxf766ff8.Data = unsafe.Pointer(x.refa081b0ea.pCoverageModulationTable)
+ hxf766ff8.Cap = 0x7fffffff
+ // hxf766ff8.Len = ?
+
}
-// allocPresentRegionsMemory allocates memory for type C.VkPresentRegionsKHR in C.
+// allocPhysicalDeviceShaderSMBuiltinsPropertiesNVMemory allocates memory for type C.VkPhysicalDeviceShaderSMBuiltinsPropertiesNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPresentRegionsMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPresentRegionsValue))
+func allocPhysicalDeviceShaderSMBuiltinsPropertiesNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceShaderSMBuiltinsPropertiesNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPresentRegionsValue = unsafe.Sizeof([1]C.VkPresentRegionsKHR{})
-
-// unpackSPresentRegion transforms a sliced Go data structure into plain C format.
-func unpackSPresentRegion(x []PresentRegion) (unpacked *C.VkPresentRegionKHR, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkPresentRegionKHR) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocPresentRegionMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkPresentRegionKHR)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkPresentRegionKHR)(h.Data)
- return
-}
-
-// packSPresentRegion reads sliced Go data structure out from plain C format.
-func packSPresentRegion(v []PresentRegion, ptr0 *C.VkPresentRegionKHR) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfPresentRegionValue]C.VkPresentRegionKHR)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewPresentRegionRef(unsafe.Pointer(&ptr1))
- }
-}
+const sizeOfPhysicalDeviceShaderSMBuiltinsPropertiesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceShaderSMBuiltinsPropertiesNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PresentRegions) Ref() *C.VkPresentRegionsKHR {
+func (x *PhysicalDeviceShaderSMBuiltinsPropertiesNV) Ref() *C.VkPhysicalDeviceShaderSMBuiltinsPropertiesNV {
if x == nil {
return nil
}
- return x.ref62958060
+ return x.refc083cf09
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PresentRegions) Free() {
- if x != nil && x.allocs62958060 != nil {
- x.allocs62958060.(*cgoAllocMap).Free()
- x.ref62958060 = nil
+func (x *PhysicalDeviceShaderSMBuiltinsPropertiesNV) Free() {
+ if x != nil && x.allocsc083cf09 != nil {
+ x.allocsc083cf09.(*cgoAllocMap).Free()
+ x.refc083cf09 = nil
}
}
-// NewPresentRegionsRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceShaderSMBuiltinsPropertiesNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPresentRegionsRef(ref unsafe.Pointer) *PresentRegions {
+func NewPhysicalDeviceShaderSMBuiltinsPropertiesNVRef(ref unsafe.Pointer) *PhysicalDeviceShaderSMBuiltinsPropertiesNV {
if ref == nil {
return nil
}
- obj := new(PresentRegions)
- obj.ref62958060 = (*C.VkPresentRegionsKHR)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceShaderSMBuiltinsPropertiesNV)
+ obj.refc083cf09 = (*C.VkPhysicalDeviceShaderSMBuiltinsPropertiesNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PresentRegions) PassRef() (*C.VkPresentRegionsKHR, *cgoAllocMap) {
+func (x *PhysicalDeviceShaderSMBuiltinsPropertiesNV) PassRef() (*C.VkPhysicalDeviceShaderSMBuiltinsPropertiesNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref62958060 != nil {
- return x.ref62958060, nil
+ } else if x.refc083cf09 != nil {
+ return x.refc083cf09, nil
}
- mem62958060 := allocPresentRegionsMemory(1)
- ref62958060 := (*C.VkPresentRegionsKHR)(mem62958060)
- allocs62958060 := new(cgoAllocMap)
- allocs62958060.Add(mem62958060)
+ memc083cf09 := allocPhysicalDeviceShaderSMBuiltinsPropertiesNVMemory(1)
+ refc083cf09 := (*C.VkPhysicalDeviceShaderSMBuiltinsPropertiesNV)(memc083cf09)
+ allocsc083cf09 := new(cgoAllocMap)
+ allocsc083cf09.Add(memc083cf09)
var csType_allocs *cgoAllocMap
- ref62958060.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs62958060.Borrow(csType_allocs)
+ refc083cf09.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsc083cf09.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref62958060.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs62958060.Borrow(cpNext_allocs)
+ refc083cf09.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsc083cf09.Borrow(cpNext_allocs)
- var cswapchainCount_allocs *cgoAllocMap
- ref62958060.swapchainCount, cswapchainCount_allocs = (C.uint32_t)(x.SwapchainCount), cgoAllocsUnknown
- allocs62958060.Borrow(cswapchainCount_allocs)
+ var cshaderSMCount_allocs *cgoAllocMap
+ refc083cf09.shaderSMCount, cshaderSMCount_allocs = (C.uint32_t)(x.ShaderSMCount), cgoAllocsUnknown
+ allocsc083cf09.Borrow(cshaderSMCount_allocs)
- var cpRegions_allocs *cgoAllocMap
- ref62958060.pRegions, cpRegions_allocs = unpackSPresentRegion(x.PRegions)
- allocs62958060.Borrow(cpRegions_allocs)
+ var cshaderWarpsPerSM_allocs *cgoAllocMap
+ refc083cf09.shaderWarpsPerSM, cshaderWarpsPerSM_allocs = (C.uint32_t)(x.ShaderWarpsPerSM), cgoAllocsUnknown
+ allocsc083cf09.Borrow(cshaderWarpsPerSM_allocs)
- x.ref62958060 = ref62958060
- x.allocs62958060 = allocs62958060
- return ref62958060, allocs62958060
+ x.refc083cf09 = refc083cf09
+ x.allocsc083cf09 = allocsc083cf09
+ return refc083cf09, allocsc083cf09
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PresentRegions) PassValue() (C.VkPresentRegionsKHR, *cgoAllocMap) {
- if x.ref62958060 != nil {
- return *x.ref62958060, nil
+func (x PhysicalDeviceShaderSMBuiltinsPropertiesNV) PassValue() (C.VkPhysicalDeviceShaderSMBuiltinsPropertiesNV, *cgoAllocMap) {
+ if x.refc083cf09 != nil {
+ return *x.refc083cf09, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -22754,123 +49734,91 @@ func (x PresentRegions) PassValue() (C.VkPresentRegionsKHR, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PresentRegions) Deref() {
- if x.ref62958060 == nil {
+func (x *PhysicalDeviceShaderSMBuiltinsPropertiesNV) Deref() {
+ if x.refc083cf09 == nil {
return
}
- x.SType = (StructureType)(x.ref62958060.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref62958060.pNext))
- x.SwapchainCount = (uint32)(x.ref62958060.swapchainCount)
- packSPresentRegion(x.PRegions, x.ref62958060.pRegions)
+ x.SType = (StructureType)(x.refc083cf09.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc083cf09.pNext))
+ x.ShaderSMCount = (uint32)(x.refc083cf09.shaderSMCount)
+ x.ShaderWarpsPerSM = (uint32)(x.refc083cf09.shaderWarpsPerSM)
}
-// allocAttachmentDescription2Memory allocates memory for type C.VkAttachmentDescription2KHR in C.
+// allocPhysicalDeviceShaderSMBuiltinsFeaturesNVMemory allocates memory for type C.VkPhysicalDeviceShaderSMBuiltinsFeaturesNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocAttachmentDescription2Memory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfAttachmentDescription2Value))
+func allocPhysicalDeviceShaderSMBuiltinsFeaturesNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceShaderSMBuiltinsFeaturesNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfAttachmentDescription2Value = unsafe.Sizeof([1]C.VkAttachmentDescription2KHR{})
+const sizeOfPhysicalDeviceShaderSMBuiltinsFeaturesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceShaderSMBuiltinsFeaturesNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *AttachmentDescription2) Ref() *C.VkAttachmentDescription2KHR {
+func (x *PhysicalDeviceShaderSMBuiltinsFeaturesNV) Ref() *C.VkPhysicalDeviceShaderSMBuiltinsFeaturesNV {
if x == nil {
return nil
}
- return x.refe0fc3d48
+ return x.ref1965c1d
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *AttachmentDescription2) Free() {
- if x != nil && x.allocse0fc3d48 != nil {
- x.allocse0fc3d48.(*cgoAllocMap).Free()
- x.refe0fc3d48 = nil
+func (x *PhysicalDeviceShaderSMBuiltinsFeaturesNV) Free() {
+ if x != nil && x.allocs1965c1d != nil {
+ x.allocs1965c1d.(*cgoAllocMap).Free()
+ x.ref1965c1d = nil
}
}
-// NewAttachmentDescription2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceShaderSMBuiltinsFeaturesNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewAttachmentDescription2Ref(ref unsafe.Pointer) *AttachmentDescription2 {
+func NewPhysicalDeviceShaderSMBuiltinsFeaturesNVRef(ref unsafe.Pointer) *PhysicalDeviceShaderSMBuiltinsFeaturesNV {
if ref == nil {
return nil
}
- obj := new(AttachmentDescription2)
- obj.refe0fc3d48 = (*C.VkAttachmentDescription2KHR)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceShaderSMBuiltinsFeaturesNV)
+ obj.ref1965c1d = (*C.VkPhysicalDeviceShaderSMBuiltinsFeaturesNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *AttachmentDescription2) PassRef() (*C.VkAttachmentDescription2KHR, *cgoAllocMap) {
+func (x *PhysicalDeviceShaderSMBuiltinsFeaturesNV) PassRef() (*C.VkPhysicalDeviceShaderSMBuiltinsFeaturesNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refe0fc3d48 != nil {
- return x.refe0fc3d48, nil
+ } else if x.ref1965c1d != nil {
+ return x.ref1965c1d, nil
}
- meme0fc3d48 := allocAttachmentDescription2Memory(1)
- refe0fc3d48 := (*C.VkAttachmentDescription2KHR)(meme0fc3d48)
- allocse0fc3d48 := new(cgoAllocMap)
- allocse0fc3d48.Add(meme0fc3d48)
+ mem1965c1d := allocPhysicalDeviceShaderSMBuiltinsFeaturesNVMemory(1)
+ ref1965c1d := (*C.VkPhysicalDeviceShaderSMBuiltinsFeaturesNV)(mem1965c1d)
+ allocs1965c1d := new(cgoAllocMap)
+ allocs1965c1d.Add(mem1965c1d)
var csType_allocs *cgoAllocMap
- refe0fc3d48.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocse0fc3d48.Borrow(csType_allocs)
+ ref1965c1d.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs1965c1d.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refe0fc3d48.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocse0fc3d48.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- refe0fc3d48.flags, cflags_allocs = (C.VkAttachmentDescriptionFlags)(x.Flags), cgoAllocsUnknown
- allocse0fc3d48.Borrow(cflags_allocs)
+ ref1965c1d.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs1965c1d.Borrow(cpNext_allocs)
- var cformat_allocs *cgoAllocMap
- refe0fc3d48.format, cformat_allocs = (C.VkFormat)(x.Format), cgoAllocsUnknown
- allocse0fc3d48.Borrow(cformat_allocs)
-
- var csamples_allocs *cgoAllocMap
- refe0fc3d48.samples, csamples_allocs = (C.VkSampleCountFlagBits)(x.Samples), cgoAllocsUnknown
- allocse0fc3d48.Borrow(csamples_allocs)
-
- var cloadOp_allocs *cgoAllocMap
- refe0fc3d48.loadOp, cloadOp_allocs = (C.VkAttachmentLoadOp)(x.LoadOp), cgoAllocsUnknown
- allocse0fc3d48.Borrow(cloadOp_allocs)
-
- var cstoreOp_allocs *cgoAllocMap
- refe0fc3d48.storeOp, cstoreOp_allocs = (C.VkAttachmentStoreOp)(x.StoreOp), cgoAllocsUnknown
- allocse0fc3d48.Borrow(cstoreOp_allocs)
-
- var cstencilLoadOp_allocs *cgoAllocMap
- refe0fc3d48.stencilLoadOp, cstencilLoadOp_allocs = (C.VkAttachmentLoadOp)(x.StencilLoadOp), cgoAllocsUnknown
- allocse0fc3d48.Borrow(cstencilLoadOp_allocs)
-
- var cstencilStoreOp_allocs *cgoAllocMap
- refe0fc3d48.stencilStoreOp, cstencilStoreOp_allocs = (C.VkAttachmentStoreOp)(x.StencilStoreOp), cgoAllocsUnknown
- allocse0fc3d48.Borrow(cstencilStoreOp_allocs)
-
- var cinitialLayout_allocs *cgoAllocMap
- refe0fc3d48.initialLayout, cinitialLayout_allocs = (C.VkImageLayout)(x.InitialLayout), cgoAllocsUnknown
- allocse0fc3d48.Borrow(cinitialLayout_allocs)
-
- var cfinalLayout_allocs *cgoAllocMap
- refe0fc3d48.finalLayout, cfinalLayout_allocs = (C.VkImageLayout)(x.FinalLayout), cgoAllocsUnknown
- allocse0fc3d48.Borrow(cfinalLayout_allocs)
+ var cshaderSMBuiltins_allocs *cgoAllocMap
+ ref1965c1d.shaderSMBuiltins, cshaderSMBuiltins_allocs = (C.VkBool32)(x.ShaderSMBuiltins), cgoAllocsUnknown
+ allocs1965c1d.Borrow(cshaderSMBuiltins_allocs)
- x.refe0fc3d48 = refe0fc3d48
- x.allocse0fc3d48 = allocse0fc3d48
- return refe0fc3d48, allocse0fc3d48
+ x.ref1965c1d = ref1965c1d
+ x.allocs1965c1d = allocs1965c1d
+ return ref1965c1d, allocs1965c1d
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x AttachmentDescription2) PassValue() (C.VkAttachmentDescription2KHR, *cgoAllocMap) {
- if x.refe0fc3d48 != nil {
- return *x.refe0fc3d48, nil
+func (x PhysicalDeviceShaderSMBuiltinsFeaturesNV) PassValue() (C.VkPhysicalDeviceShaderSMBuiltinsFeaturesNV, *cgoAllocMap) {
+ if x.ref1965c1d != nil {
+ return *x.ref1965c1d, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -22878,106 +49826,90 @@ func (x AttachmentDescription2) PassValue() (C.VkAttachmentDescription2KHR, *cgo
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *AttachmentDescription2) Deref() {
- if x.refe0fc3d48 == nil {
+func (x *PhysicalDeviceShaderSMBuiltinsFeaturesNV) Deref() {
+ if x.ref1965c1d == nil {
return
}
- x.SType = (StructureType)(x.refe0fc3d48.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refe0fc3d48.pNext))
- x.Flags = (AttachmentDescriptionFlags)(x.refe0fc3d48.flags)
- x.Format = (Format)(x.refe0fc3d48.format)
- x.Samples = (SampleCountFlagBits)(x.refe0fc3d48.samples)
- x.LoadOp = (AttachmentLoadOp)(x.refe0fc3d48.loadOp)
- x.StoreOp = (AttachmentStoreOp)(x.refe0fc3d48.storeOp)
- x.StencilLoadOp = (AttachmentLoadOp)(x.refe0fc3d48.stencilLoadOp)
- x.StencilStoreOp = (AttachmentStoreOp)(x.refe0fc3d48.stencilStoreOp)
- x.InitialLayout = (ImageLayout)(x.refe0fc3d48.initialLayout)
- x.FinalLayout = (ImageLayout)(x.refe0fc3d48.finalLayout)
+ x.SType = (StructureType)(x.ref1965c1d.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref1965c1d.pNext))
+ x.ShaderSMBuiltins = (Bool32)(x.ref1965c1d.shaderSMBuiltins)
}
-// allocAttachmentReference2Memory allocates memory for type C.VkAttachmentReference2KHR in C.
+// allocDrmFormatModifierPropertiesMemory allocates memory for type C.VkDrmFormatModifierPropertiesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocAttachmentReference2Memory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfAttachmentReference2Value))
+func allocDrmFormatModifierPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDrmFormatModifierPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfAttachmentReference2Value = unsafe.Sizeof([1]C.VkAttachmentReference2KHR{})
+const sizeOfDrmFormatModifierPropertiesValue = unsafe.Sizeof([1]C.VkDrmFormatModifierPropertiesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *AttachmentReference2) Ref() *C.VkAttachmentReference2KHR {
+func (x *DrmFormatModifierProperties) Ref() *C.VkDrmFormatModifierPropertiesEXT {
if x == nil {
return nil
}
- return x.refa31684a1
+ return x.ref7dcb7f85
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *AttachmentReference2) Free() {
- if x != nil && x.allocsa31684a1 != nil {
- x.allocsa31684a1.(*cgoAllocMap).Free()
- x.refa31684a1 = nil
+func (x *DrmFormatModifierProperties) Free() {
+ if x != nil && x.allocs7dcb7f85 != nil {
+ x.allocs7dcb7f85.(*cgoAllocMap).Free()
+ x.ref7dcb7f85 = nil
}
}
-// NewAttachmentReference2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// NewDrmFormatModifierPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewAttachmentReference2Ref(ref unsafe.Pointer) *AttachmentReference2 {
+func NewDrmFormatModifierPropertiesRef(ref unsafe.Pointer) *DrmFormatModifierProperties {
if ref == nil {
return nil
}
- obj := new(AttachmentReference2)
- obj.refa31684a1 = (*C.VkAttachmentReference2KHR)(unsafe.Pointer(ref))
+ obj := new(DrmFormatModifierProperties)
+ obj.ref7dcb7f85 = (*C.VkDrmFormatModifierPropertiesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *AttachmentReference2) PassRef() (*C.VkAttachmentReference2KHR, *cgoAllocMap) {
+func (x *DrmFormatModifierProperties) PassRef() (*C.VkDrmFormatModifierPropertiesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refa31684a1 != nil {
- return x.refa31684a1, nil
+ } else if x.ref7dcb7f85 != nil {
+ return x.ref7dcb7f85, nil
}
- mema31684a1 := allocAttachmentReference2Memory(1)
- refa31684a1 := (*C.VkAttachmentReference2KHR)(mema31684a1)
- allocsa31684a1 := new(cgoAllocMap)
- allocsa31684a1.Add(mema31684a1)
-
- var csType_allocs *cgoAllocMap
- refa31684a1.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsa31684a1.Borrow(csType_allocs)
-
- var cpNext_allocs *cgoAllocMap
- refa31684a1.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsa31684a1.Borrow(cpNext_allocs)
+ mem7dcb7f85 := allocDrmFormatModifierPropertiesMemory(1)
+ ref7dcb7f85 := (*C.VkDrmFormatModifierPropertiesEXT)(mem7dcb7f85)
+ allocs7dcb7f85 := new(cgoAllocMap)
+ allocs7dcb7f85.Add(mem7dcb7f85)
- var cattachment_allocs *cgoAllocMap
- refa31684a1.attachment, cattachment_allocs = (C.uint32_t)(x.Attachment), cgoAllocsUnknown
- allocsa31684a1.Borrow(cattachment_allocs)
+ var cdrmFormatModifier_allocs *cgoAllocMap
+ ref7dcb7f85.drmFormatModifier, cdrmFormatModifier_allocs = (C.uint64_t)(x.DrmFormatModifier), cgoAllocsUnknown
+ allocs7dcb7f85.Borrow(cdrmFormatModifier_allocs)
- var clayout_allocs *cgoAllocMap
- refa31684a1.layout, clayout_allocs = (C.VkImageLayout)(x.Layout), cgoAllocsUnknown
- allocsa31684a1.Borrow(clayout_allocs)
+ var cdrmFormatModifierPlaneCount_allocs *cgoAllocMap
+ ref7dcb7f85.drmFormatModifierPlaneCount, cdrmFormatModifierPlaneCount_allocs = (C.uint32_t)(x.DrmFormatModifierPlaneCount), cgoAllocsUnknown
+ allocs7dcb7f85.Borrow(cdrmFormatModifierPlaneCount_allocs)
- var caspectMask_allocs *cgoAllocMap
- refa31684a1.aspectMask, caspectMask_allocs = (C.VkImageAspectFlags)(x.AspectMask), cgoAllocsUnknown
- allocsa31684a1.Borrow(caspectMask_allocs)
+ var cdrmFormatModifierTilingFeatures_allocs *cgoAllocMap
+ ref7dcb7f85.drmFormatModifierTilingFeatures, cdrmFormatModifierTilingFeatures_allocs = (C.VkFormatFeatureFlags)(x.DrmFormatModifierTilingFeatures), cgoAllocsUnknown
+ allocs7dcb7f85.Borrow(cdrmFormatModifierTilingFeatures_allocs)
- x.refa31684a1 = refa31684a1
- x.allocsa31684a1 = allocsa31684a1
- return refa31684a1, allocsa31684a1
+ x.ref7dcb7f85 = ref7dcb7f85
+ x.allocs7dcb7f85 = allocs7dcb7f85
+ return ref7dcb7f85, allocs7dcb7f85
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x AttachmentReference2) PassValue() (C.VkAttachmentReference2KHR, *cgoAllocMap) {
- if x.refa31684a1 != nil {
- return *x.refa31684a1, nil
+func (x DrmFormatModifierProperties) PassValue() (C.VkDrmFormatModifierPropertiesEXT, *cgoAllocMap) {
+ if x.ref7dcb7f85 != nil {
+ return *x.ref7dcb7f85, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -22985,170 +49917,132 @@ func (x AttachmentReference2) PassValue() (C.VkAttachmentReference2KHR, *cgoAllo
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *AttachmentReference2) Deref() {
- if x.refa31684a1 == nil {
+func (x *DrmFormatModifierProperties) Deref() {
+ if x.ref7dcb7f85 == nil {
return
}
- x.SType = (StructureType)(x.refa31684a1.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa31684a1.pNext))
- x.Attachment = (uint32)(x.refa31684a1.attachment)
- x.Layout = (ImageLayout)(x.refa31684a1.layout)
- x.AspectMask = (ImageAspectFlags)(x.refa31684a1.aspectMask)
+ x.DrmFormatModifier = (uint64)(x.ref7dcb7f85.drmFormatModifier)
+ x.DrmFormatModifierPlaneCount = (uint32)(x.ref7dcb7f85.drmFormatModifierPlaneCount)
+ x.DrmFormatModifierTilingFeatures = (FormatFeatureFlags)(x.ref7dcb7f85.drmFormatModifierTilingFeatures)
}
-// allocSubpassDescription2Memory allocates memory for type C.VkSubpassDescription2KHR in C.
+// allocDrmFormatModifierPropertiesListMemory allocates memory for type C.VkDrmFormatModifierPropertiesListEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSubpassDescription2Memory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSubpassDescription2Value))
+func allocDrmFormatModifierPropertiesListMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDrmFormatModifierPropertiesListValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSubpassDescription2Value = unsafe.Sizeof([1]C.VkSubpassDescription2KHR{})
+const sizeOfDrmFormatModifierPropertiesListValue = unsafe.Sizeof([1]C.VkDrmFormatModifierPropertiesListEXT{})
-// unpackSAttachmentReference2 transforms a sliced Go data structure into plain C format.
-func unpackSAttachmentReference2(x []AttachmentReference2) (unpacked *C.VkAttachmentReference2KHR, allocs *cgoAllocMap) {
+// unpackSDrmFormatModifierProperties transforms a sliced Go data structure into plain C format.
+func unpackSDrmFormatModifierProperties(x []DrmFormatModifierProperties) (unpacked *C.VkDrmFormatModifierPropertiesEXT, allocs *cgoAllocMap) {
if x == nil {
return nil, nil
}
allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkAttachmentReference2KHR) {
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkDrmFormatModifierPropertiesEXT) {
go allocs.Free()
})
len0 := len(x)
- mem0 := allocAttachmentReference2Memory(len0)
+ mem0 := allocDrmFormatModifierPropertiesMemory(len0)
allocs.Add(mem0)
h0 := &sliceHeader{
Data: mem0,
Cap: len0,
Len: len0,
}
- v0 := *(*[]C.VkAttachmentReference2KHR)(unsafe.Pointer(h0))
+ v0 := *(*[]C.VkDrmFormatModifierPropertiesEXT)(unsafe.Pointer(h0))
for i0 := range x {
allocs0 := new(cgoAllocMap)
v0[i0], allocs0 = x[i0].PassValue()
allocs.Borrow(allocs0)
}
h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkAttachmentReference2KHR)(h.Data)
+ unpacked = (*C.VkDrmFormatModifierPropertiesEXT)(h.Data)
return
}
-// packSAttachmentReference2 reads sliced Go data structure out from plain C format.
-func packSAttachmentReference2(v []AttachmentReference2, ptr0 *C.VkAttachmentReference2KHR) {
+// packSDrmFormatModifierProperties reads sliced Go data structure out from plain C format.
+func packSDrmFormatModifierProperties(v []DrmFormatModifierProperties, ptr0 *C.VkDrmFormatModifierPropertiesEXT) {
const m = 0x7fffffff
for i0 := range v {
- ptr1 := (*(*[m / sizeOfAttachmentReference2Value]C.VkAttachmentReference2KHR)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewAttachmentReference2Ref(unsafe.Pointer(&ptr1))
+ ptr1 := (*(*[m / sizeOfDrmFormatModifierPropertiesValue]C.VkDrmFormatModifierPropertiesEXT)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewDrmFormatModifierPropertiesRef(unsafe.Pointer(&ptr1))
}
}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SubpassDescription2) Ref() *C.VkSubpassDescription2KHR {
+func (x *DrmFormatModifierPropertiesList) Ref() *C.VkDrmFormatModifierPropertiesListEXT {
if x == nil {
return nil
}
- return x.ref89a293f3
+ return x.ref7e3ede2
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SubpassDescription2) Free() {
- if x != nil && x.allocs89a293f3 != nil {
- x.allocs89a293f3.(*cgoAllocMap).Free()
- x.ref89a293f3 = nil
+func (x *DrmFormatModifierPropertiesList) Free() {
+ if x != nil && x.allocs7e3ede2 != nil {
+ x.allocs7e3ede2.(*cgoAllocMap).Free()
+ x.ref7e3ede2 = nil
}
}
-// NewSubpassDescription2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// NewDrmFormatModifierPropertiesListRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSubpassDescription2Ref(ref unsafe.Pointer) *SubpassDescription2 {
+func NewDrmFormatModifierPropertiesListRef(ref unsafe.Pointer) *DrmFormatModifierPropertiesList {
if ref == nil {
return nil
}
- obj := new(SubpassDescription2)
- obj.ref89a293f3 = (*C.VkSubpassDescription2KHR)(unsafe.Pointer(ref))
+ obj := new(DrmFormatModifierPropertiesList)
+ obj.ref7e3ede2 = (*C.VkDrmFormatModifierPropertiesListEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SubpassDescription2) PassRef() (*C.VkSubpassDescription2KHR, *cgoAllocMap) {
+func (x *DrmFormatModifierPropertiesList) PassRef() (*C.VkDrmFormatModifierPropertiesListEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref89a293f3 != nil {
- return x.ref89a293f3, nil
+ } else if x.ref7e3ede2 != nil {
+ return x.ref7e3ede2, nil
}
- mem89a293f3 := allocSubpassDescription2Memory(1)
- ref89a293f3 := (*C.VkSubpassDescription2KHR)(mem89a293f3)
- allocs89a293f3 := new(cgoAllocMap)
- allocs89a293f3.Add(mem89a293f3)
+ mem7e3ede2 := allocDrmFormatModifierPropertiesListMemory(1)
+ ref7e3ede2 := (*C.VkDrmFormatModifierPropertiesListEXT)(mem7e3ede2)
+ allocs7e3ede2 := new(cgoAllocMap)
+ allocs7e3ede2.Add(mem7e3ede2)
var csType_allocs *cgoAllocMap
- ref89a293f3.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs89a293f3.Borrow(csType_allocs)
+ ref7e3ede2.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs7e3ede2.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref89a293f3.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs89a293f3.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- ref89a293f3.flags, cflags_allocs = (C.VkSubpassDescriptionFlags)(x.Flags), cgoAllocsUnknown
- allocs89a293f3.Borrow(cflags_allocs)
-
- var cpipelineBindPoint_allocs *cgoAllocMap
- ref89a293f3.pipelineBindPoint, cpipelineBindPoint_allocs = (C.VkPipelineBindPoint)(x.PipelineBindPoint), cgoAllocsUnknown
- allocs89a293f3.Borrow(cpipelineBindPoint_allocs)
-
- var cviewMask_allocs *cgoAllocMap
- ref89a293f3.viewMask, cviewMask_allocs = (C.uint32_t)(x.ViewMask), cgoAllocsUnknown
- allocs89a293f3.Borrow(cviewMask_allocs)
-
- var cinputAttachmentCount_allocs *cgoAllocMap
- ref89a293f3.inputAttachmentCount, cinputAttachmentCount_allocs = (C.uint32_t)(x.InputAttachmentCount), cgoAllocsUnknown
- allocs89a293f3.Borrow(cinputAttachmentCount_allocs)
-
- var cpInputAttachments_allocs *cgoAllocMap
- ref89a293f3.pInputAttachments, cpInputAttachments_allocs = unpackSAttachmentReference2(x.PInputAttachments)
- allocs89a293f3.Borrow(cpInputAttachments_allocs)
-
- var ccolorAttachmentCount_allocs *cgoAllocMap
- ref89a293f3.colorAttachmentCount, ccolorAttachmentCount_allocs = (C.uint32_t)(x.ColorAttachmentCount), cgoAllocsUnknown
- allocs89a293f3.Borrow(ccolorAttachmentCount_allocs)
-
- var cpColorAttachments_allocs *cgoAllocMap
- ref89a293f3.pColorAttachments, cpColorAttachments_allocs = unpackSAttachmentReference2(x.PColorAttachments)
- allocs89a293f3.Borrow(cpColorAttachments_allocs)
-
- var cpResolveAttachments_allocs *cgoAllocMap
- ref89a293f3.pResolveAttachments, cpResolveAttachments_allocs = unpackSAttachmentReference2(x.PResolveAttachments)
- allocs89a293f3.Borrow(cpResolveAttachments_allocs)
-
- var cpDepthStencilAttachment_allocs *cgoAllocMap
- ref89a293f3.pDepthStencilAttachment, cpDepthStencilAttachment_allocs = unpackSAttachmentReference2(x.PDepthStencilAttachment)
- allocs89a293f3.Borrow(cpDepthStencilAttachment_allocs)
+ ref7e3ede2.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs7e3ede2.Borrow(cpNext_allocs)
- var cpreserveAttachmentCount_allocs *cgoAllocMap
- ref89a293f3.preserveAttachmentCount, cpreserveAttachmentCount_allocs = (C.uint32_t)(x.PreserveAttachmentCount), cgoAllocsUnknown
- allocs89a293f3.Borrow(cpreserveAttachmentCount_allocs)
+ var cdrmFormatModifierCount_allocs *cgoAllocMap
+ ref7e3ede2.drmFormatModifierCount, cdrmFormatModifierCount_allocs = (C.uint32_t)(x.DrmFormatModifierCount), cgoAllocsUnknown
+ allocs7e3ede2.Borrow(cdrmFormatModifierCount_allocs)
- var cpPreserveAttachments_allocs *cgoAllocMap
- ref89a293f3.pPreserveAttachments, cpPreserveAttachments_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PPreserveAttachments)).Data)), cgoAllocsUnknown
- allocs89a293f3.Borrow(cpPreserveAttachments_allocs)
+ var cpDrmFormatModifierProperties_allocs *cgoAllocMap
+ ref7e3ede2.pDrmFormatModifierProperties, cpDrmFormatModifierProperties_allocs = unpackSDrmFormatModifierProperties(x.PDrmFormatModifierProperties)
+ allocs7e3ede2.Borrow(cpDrmFormatModifierProperties_allocs)
- x.ref89a293f3 = ref89a293f3
- x.allocs89a293f3 = allocs89a293f3
- return ref89a293f3, allocs89a293f3
+ x.ref7e3ede2 = ref7e3ede2
+ x.allocs7e3ede2 = allocs7e3ede2
+ return ref7e3ede2, allocs7e3ede2
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SubpassDescription2) PassValue() (C.VkSubpassDescription2KHR, *cgoAllocMap) {
- if x.ref89a293f3 != nil {
- return *x.ref89a293f3, nil
+func (x DrmFormatModifierPropertiesList) PassValue() (C.VkDrmFormatModifierPropertiesListEXT, *cgoAllocMap) {
+ if x.ref7e3ede2 != nil {
+ return *x.ref7e3ede2, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -23156,132 +50050,103 @@ func (x SubpassDescription2) PassValue() (C.VkSubpassDescription2KHR, *cgoAllocM
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SubpassDescription2) Deref() {
- if x.ref89a293f3 == nil {
- return
- }
- x.SType = (StructureType)(x.ref89a293f3.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref89a293f3.pNext))
- x.Flags = (SubpassDescriptionFlags)(x.ref89a293f3.flags)
- x.PipelineBindPoint = (PipelineBindPoint)(x.ref89a293f3.pipelineBindPoint)
- x.ViewMask = (uint32)(x.ref89a293f3.viewMask)
- x.InputAttachmentCount = (uint32)(x.ref89a293f3.inputAttachmentCount)
- packSAttachmentReference2(x.PInputAttachments, x.ref89a293f3.pInputAttachments)
- x.ColorAttachmentCount = (uint32)(x.ref89a293f3.colorAttachmentCount)
- packSAttachmentReference2(x.PColorAttachments, x.ref89a293f3.pColorAttachments)
- packSAttachmentReference2(x.PResolveAttachments, x.ref89a293f3.pResolveAttachments)
- packSAttachmentReference2(x.PDepthStencilAttachment, x.ref89a293f3.pDepthStencilAttachment)
- x.PreserveAttachmentCount = (uint32)(x.ref89a293f3.preserveAttachmentCount)
- hxf09ea94 := (*sliceHeader)(unsafe.Pointer(&x.PPreserveAttachments))
- hxf09ea94.Data = unsafe.Pointer(x.ref89a293f3.pPreserveAttachments)
- hxf09ea94.Cap = 0x7fffffff
- // hxf09ea94.Len = ?
-
+func (x *DrmFormatModifierPropertiesList) Deref() {
+ if x.ref7e3ede2 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref7e3ede2.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref7e3ede2.pNext))
+ x.DrmFormatModifierCount = (uint32)(x.ref7e3ede2.drmFormatModifierCount)
+ packSDrmFormatModifierProperties(x.PDrmFormatModifierProperties, x.ref7e3ede2.pDrmFormatModifierProperties)
}
-// allocSubpassDependency2Memory allocates memory for type C.VkSubpassDependency2KHR in C.
+// allocPhysicalDeviceImageDrmFormatModifierInfoMemory allocates memory for type C.VkPhysicalDeviceImageDrmFormatModifierInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSubpassDependency2Memory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSubpassDependency2Value))
+func allocPhysicalDeviceImageDrmFormatModifierInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceImageDrmFormatModifierInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSubpassDependency2Value = unsafe.Sizeof([1]C.VkSubpassDependency2KHR{})
+const sizeOfPhysicalDeviceImageDrmFormatModifierInfoValue = unsafe.Sizeof([1]C.VkPhysicalDeviceImageDrmFormatModifierInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SubpassDependency2) Ref() *C.VkSubpassDependency2KHR {
+func (x *PhysicalDeviceImageDrmFormatModifierInfo) Ref() *C.VkPhysicalDeviceImageDrmFormatModifierInfoEXT {
if x == nil {
return nil
}
- return x.ref985e0998
+ return x.refd7abef44
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SubpassDependency2) Free() {
- if x != nil && x.allocs985e0998 != nil {
- x.allocs985e0998.(*cgoAllocMap).Free()
- x.ref985e0998 = nil
+func (x *PhysicalDeviceImageDrmFormatModifierInfo) Free() {
+ if x != nil && x.allocsd7abef44 != nil {
+ x.allocsd7abef44.(*cgoAllocMap).Free()
+ x.refd7abef44 = nil
}
}
-// NewSubpassDependency2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceImageDrmFormatModifierInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSubpassDependency2Ref(ref unsafe.Pointer) *SubpassDependency2 {
+func NewPhysicalDeviceImageDrmFormatModifierInfoRef(ref unsafe.Pointer) *PhysicalDeviceImageDrmFormatModifierInfo {
if ref == nil {
return nil
}
- obj := new(SubpassDependency2)
- obj.ref985e0998 = (*C.VkSubpassDependency2KHR)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceImageDrmFormatModifierInfo)
+ obj.refd7abef44 = (*C.VkPhysicalDeviceImageDrmFormatModifierInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SubpassDependency2) PassRef() (*C.VkSubpassDependency2KHR, *cgoAllocMap) {
+func (x *PhysicalDeviceImageDrmFormatModifierInfo) PassRef() (*C.VkPhysicalDeviceImageDrmFormatModifierInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref985e0998 != nil {
- return x.ref985e0998, nil
+ } else if x.refd7abef44 != nil {
+ return x.refd7abef44, nil
}
- mem985e0998 := allocSubpassDependency2Memory(1)
- ref985e0998 := (*C.VkSubpassDependency2KHR)(mem985e0998)
- allocs985e0998 := new(cgoAllocMap)
- allocs985e0998.Add(mem985e0998)
+ memd7abef44 := allocPhysicalDeviceImageDrmFormatModifierInfoMemory(1)
+ refd7abef44 := (*C.VkPhysicalDeviceImageDrmFormatModifierInfoEXT)(memd7abef44)
+ allocsd7abef44 := new(cgoAllocMap)
+ allocsd7abef44.Add(memd7abef44)
var csType_allocs *cgoAllocMap
- ref985e0998.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs985e0998.Borrow(csType_allocs)
+ refd7abef44.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd7abef44.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref985e0998.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs985e0998.Borrow(cpNext_allocs)
-
- var csrcSubpass_allocs *cgoAllocMap
- ref985e0998.srcSubpass, csrcSubpass_allocs = (C.uint32_t)(x.SrcSubpass), cgoAllocsUnknown
- allocs985e0998.Borrow(csrcSubpass_allocs)
-
- var cdstSubpass_allocs *cgoAllocMap
- ref985e0998.dstSubpass, cdstSubpass_allocs = (C.uint32_t)(x.DstSubpass), cgoAllocsUnknown
- allocs985e0998.Borrow(cdstSubpass_allocs)
-
- var csrcStageMask_allocs *cgoAllocMap
- ref985e0998.srcStageMask, csrcStageMask_allocs = (C.VkPipelineStageFlags)(x.SrcStageMask), cgoAllocsUnknown
- allocs985e0998.Borrow(csrcStageMask_allocs)
-
- var cdstStageMask_allocs *cgoAllocMap
- ref985e0998.dstStageMask, cdstStageMask_allocs = (C.VkPipelineStageFlags)(x.DstStageMask), cgoAllocsUnknown
- allocs985e0998.Borrow(cdstStageMask_allocs)
+ refd7abef44.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsd7abef44.Borrow(cpNext_allocs)
- var csrcAccessMask_allocs *cgoAllocMap
- ref985e0998.srcAccessMask, csrcAccessMask_allocs = (C.VkAccessFlags)(x.SrcAccessMask), cgoAllocsUnknown
- allocs985e0998.Borrow(csrcAccessMask_allocs)
+ var cdrmFormatModifier_allocs *cgoAllocMap
+ refd7abef44.drmFormatModifier, cdrmFormatModifier_allocs = (C.uint64_t)(x.DrmFormatModifier), cgoAllocsUnknown
+ allocsd7abef44.Borrow(cdrmFormatModifier_allocs)
- var cdstAccessMask_allocs *cgoAllocMap
- ref985e0998.dstAccessMask, cdstAccessMask_allocs = (C.VkAccessFlags)(x.DstAccessMask), cgoAllocsUnknown
- allocs985e0998.Borrow(cdstAccessMask_allocs)
+ var csharingMode_allocs *cgoAllocMap
+ refd7abef44.sharingMode, csharingMode_allocs = (C.VkSharingMode)(x.SharingMode), cgoAllocsUnknown
+ allocsd7abef44.Borrow(csharingMode_allocs)
- var cdependencyFlags_allocs *cgoAllocMap
- ref985e0998.dependencyFlags, cdependencyFlags_allocs = (C.VkDependencyFlags)(x.DependencyFlags), cgoAllocsUnknown
- allocs985e0998.Borrow(cdependencyFlags_allocs)
+ var cqueueFamilyIndexCount_allocs *cgoAllocMap
+ refd7abef44.queueFamilyIndexCount, cqueueFamilyIndexCount_allocs = (C.uint32_t)(x.QueueFamilyIndexCount), cgoAllocsUnknown
+ allocsd7abef44.Borrow(cqueueFamilyIndexCount_allocs)
- var cviewOffset_allocs *cgoAllocMap
- ref985e0998.viewOffset, cviewOffset_allocs = (C.int32_t)(x.ViewOffset), cgoAllocsUnknown
- allocs985e0998.Borrow(cviewOffset_allocs)
+ var cpQueueFamilyIndices_allocs *cgoAllocMap
+ refd7abef44.pQueueFamilyIndices, cpQueueFamilyIndices_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PQueueFamilyIndices)).Data)), cgoAllocsUnknown
+ allocsd7abef44.Borrow(cpQueueFamilyIndices_allocs)
- x.ref985e0998 = ref985e0998
- x.allocs985e0998 = allocs985e0998
- return ref985e0998, allocs985e0998
+ x.refd7abef44 = refd7abef44
+ x.allocsd7abef44 = allocsd7abef44
+ return refd7abef44, allocsd7abef44
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SubpassDependency2) PassValue() (C.VkSubpassDependency2KHR, *cgoAllocMap) {
- if x.ref985e0998 != nil {
- return *x.ref985e0998, nil
+func (x PhysicalDeviceImageDrmFormatModifierInfo) PassValue() (C.VkPhysicalDeviceImageDrmFormatModifierInfoEXT, *cgoAllocMap) {
+ if x.refd7abef44 != nil {
+ return *x.refd7abef44, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -23289,243 +50154,243 @@ func (x SubpassDependency2) PassValue() (C.VkSubpassDependency2KHR, *cgoAllocMap
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SubpassDependency2) Deref() {
- if x.ref985e0998 == nil {
+func (x *PhysicalDeviceImageDrmFormatModifierInfo) Deref() {
+ if x.refd7abef44 == nil {
return
}
- x.SType = (StructureType)(x.ref985e0998.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref985e0998.pNext))
- x.SrcSubpass = (uint32)(x.ref985e0998.srcSubpass)
- x.DstSubpass = (uint32)(x.ref985e0998.dstSubpass)
- x.SrcStageMask = (PipelineStageFlags)(x.ref985e0998.srcStageMask)
- x.DstStageMask = (PipelineStageFlags)(x.ref985e0998.dstStageMask)
- x.SrcAccessMask = (AccessFlags)(x.ref985e0998.srcAccessMask)
- x.DstAccessMask = (AccessFlags)(x.ref985e0998.dstAccessMask)
- x.DependencyFlags = (DependencyFlags)(x.ref985e0998.dependencyFlags)
- x.ViewOffset = (int32)(x.ref985e0998.viewOffset)
+ x.SType = (StructureType)(x.refd7abef44.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd7abef44.pNext))
+ x.DrmFormatModifier = (uint64)(x.refd7abef44.drmFormatModifier)
+ x.SharingMode = (SharingMode)(x.refd7abef44.sharingMode)
+ x.QueueFamilyIndexCount = (uint32)(x.refd7abef44.queueFamilyIndexCount)
+ hxf9b1633 := (*sliceHeader)(unsafe.Pointer(&x.PQueueFamilyIndices))
+ hxf9b1633.Data = unsafe.Pointer(x.refd7abef44.pQueueFamilyIndices)
+ hxf9b1633.Cap = 0x7fffffff
+ // hxf9b1633.Len = ?
+
}
-// allocRenderPassCreateInfo2Memory allocates memory for type C.VkRenderPassCreateInfo2KHR in C.
+// allocImageDrmFormatModifierListCreateInfoMemory allocates memory for type C.VkImageDrmFormatModifierListCreateInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocRenderPassCreateInfo2Memory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfRenderPassCreateInfo2Value))
+func allocImageDrmFormatModifierListCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageDrmFormatModifierListCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfRenderPassCreateInfo2Value = unsafe.Sizeof([1]C.VkRenderPassCreateInfo2KHR{})
+const sizeOfImageDrmFormatModifierListCreateInfoValue = unsafe.Sizeof([1]C.VkImageDrmFormatModifierListCreateInfoEXT{})
-// unpackSAttachmentDescription2 transforms a sliced Go data structure into plain C format.
-func unpackSAttachmentDescription2(x []AttachmentDescription2) (unpacked *C.VkAttachmentDescription2KHR, allocs *cgoAllocMap) {
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *ImageDrmFormatModifierListCreateInfo) Ref() *C.VkImageDrmFormatModifierListCreateInfoEXT {
if x == nil {
- return nil, nil
+ return nil
}
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkAttachmentDescription2KHR) {
- go allocs.Free()
- })
+ return x.ref544538ab
+}
- len0 := len(x)
- mem0 := allocAttachmentDescription2Memory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *ImageDrmFormatModifierListCreateInfo) Free() {
+ if x != nil && x.allocs544538ab != nil {
+ x.allocs544538ab.(*cgoAllocMap).Free()
+ x.ref544538ab = nil
}
- v0 := *(*[]C.VkAttachmentDescription2KHR)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
+}
+
+// NewImageDrmFormatModifierListCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewImageDrmFormatModifierListCreateInfoRef(ref unsafe.Pointer) *ImageDrmFormatModifierListCreateInfo {
+ if ref == nil {
+ return nil
}
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkAttachmentDescription2KHR)(h.Data)
- return
+ obj := new(ImageDrmFormatModifierListCreateInfo)
+ obj.ref544538ab = (*C.VkImageDrmFormatModifierListCreateInfoEXT)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *ImageDrmFormatModifierListCreateInfo) PassRef() (*C.VkImageDrmFormatModifierListCreateInfoEXT, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref544538ab != nil {
+ return x.ref544538ab, nil
+ }
+ mem544538ab := allocImageDrmFormatModifierListCreateInfoMemory(1)
+ ref544538ab := (*C.VkImageDrmFormatModifierListCreateInfoEXT)(mem544538ab)
+ allocs544538ab := new(cgoAllocMap)
+ allocs544538ab.Add(mem544538ab)
+
+ var csType_allocs *cgoAllocMap
+ ref544538ab.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs544538ab.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref544538ab.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs544538ab.Borrow(cpNext_allocs)
+
+ var cdrmFormatModifierCount_allocs *cgoAllocMap
+ ref544538ab.drmFormatModifierCount, cdrmFormatModifierCount_allocs = (C.uint32_t)(x.DrmFormatModifierCount), cgoAllocsUnknown
+ allocs544538ab.Borrow(cdrmFormatModifierCount_allocs)
+
+ var cpDrmFormatModifiers_allocs *cgoAllocMap
+ ref544538ab.pDrmFormatModifiers, cpDrmFormatModifiers_allocs = (*C.uint64_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PDrmFormatModifiers)).Data)), cgoAllocsUnknown
+ allocs544538ab.Borrow(cpDrmFormatModifiers_allocs)
+
+ x.ref544538ab = ref544538ab
+ x.allocs544538ab = allocs544538ab
+ return ref544538ab, allocs544538ab
+
}
-// unpackSSubpassDescription2 transforms a sliced Go data structure into plain C format.
-func unpackSSubpassDescription2(x []SubpassDescription2) (unpacked *C.VkSubpassDescription2KHR, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x ImageDrmFormatModifierListCreateInfo) PassValue() (C.VkImageDrmFormatModifierListCreateInfoEXT, *cgoAllocMap) {
+ if x.ref544538ab != nil {
+ return *x.ref544538ab, nil
}
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkSubpassDescription2KHR) {
- go allocs.Free()
- })
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
- len0 := len(x)
- mem0 := allocSubpassDescription2Memory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *ImageDrmFormatModifierListCreateInfo) Deref() {
+ if x.ref544538ab == nil {
+ return
}
- v0 := *(*[]C.VkSubpassDescription2KHR)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
+ x.SType = (StructureType)(x.ref544538ab.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref544538ab.pNext))
+ x.DrmFormatModifierCount = (uint32)(x.ref544538ab.drmFormatModifierCount)
+ hxf502c9a := (*sliceHeader)(unsafe.Pointer(&x.PDrmFormatModifiers))
+ hxf502c9a.Data = unsafe.Pointer(x.ref544538ab.pDrmFormatModifiers)
+ hxf502c9a.Cap = 0x7fffffff
+ // hxf502c9a.Len = ?
+
+}
+
+// allocImageDrmFormatModifierExplicitCreateInfoMemory allocates memory for type C.VkImageDrmFormatModifierExplicitCreateInfoEXT in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocImageDrmFormatModifierExplicitCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageDrmFormatModifierExplicitCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
}
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkSubpassDescription2KHR)(h.Data)
- return
+ return mem
}
-// unpackSSubpassDependency2 transforms a sliced Go data structure into plain C format.
-func unpackSSubpassDependency2(x []SubpassDependency2) (unpacked *C.VkSubpassDependency2KHR, allocs *cgoAllocMap) {
+const sizeOfImageDrmFormatModifierExplicitCreateInfoValue = unsafe.Sizeof([1]C.VkImageDrmFormatModifierExplicitCreateInfoEXT{})
+
+// unpackSSubresourceLayout transforms a sliced Go data structure into plain C format.
+func unpackSSubresourceLayout(x []SubresourceLayout) (unpacked *C.VkSubresourceLayout, allocs *cgoAllocMap) {
if x == nil {
return nil, nil
}
allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkSubpassDependency2KHR) {
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkSubresourceLayout) {
go allocs.Free()
})
len0 := len(x)
- mem0 := allocSubpassDependency2Memory(len0)
+ mem0 := allocSubresourceLayoutMemory(len0)
allocs.Add(mem0)
h0 := &sliceHeader{
Data: mem0,
Cap: len0,
Len: len0,
}
- v0 := *(*[]C.VkSubpassDependency2KHR)(unsafe.Pointer(h0))
+ v0 := *(*[]C.VkSubresourceLayout)(unsafe.Pointer(h0))
for i0 := range x {
allocs0 := new(cgoAllocMap)
v0[i0], allocs0 = x[i0].PassValue()
allocs.Borrow(allocs0)
}
h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkSubpassDependency2KHR)(h.Data)
+ unpacked = (*C.VkSubresourceLayout)(h.Data)
return
}
-// packSAttachmentDescription2 reads sliced Go data structure out from plain C format.
-func packSAttachmentDescription2(v []AttachmentDescription2, ptr0 *C.VkAttachmentDescription2KHR) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfAttachmentDescription2Value]C.VkAttachmentDescription2KHR)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewAttachmentDescription2Ref(unsafe.Pointer(&ptr1))
- }
-}
-
-// packSSubpassDescription2 reads sliced Go data structure out from plain C format.
-func packSSubpassDescription2(v []SubpassDescription2, ptr0 *C.VkSubpassDescription2KHR) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfSubpassDescription2Value]C.VkSubpassDescription2KHR)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewSubpassDescription2Ref(unsafe.Pointer(&ptr1))
- }
-}
-
-// packSSubpassDependency2 reads sliced Go data structure out from plain C format.
-func packSSubpassDependency2(v []SubpassDependency2, ptr0 *C.VkSubpassDependency2KHR) {
+// packSSubresourceLayout reads sliced Go data structure out from plain C format.
+func packSSubresourceLayout(v []SubresourceLayout, ptr0 *C.VkSubresourceLayout) {
const m = 0x7fffffff
for i0 := range v {
- ptr1 := (*(*[m / sizeOfSubpassDependency2Value]C.VkSubpassDependency2KHR)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewSubpassDependency2Ref(unsafe.Pointer(&ptr1))
+ ptr1 := (*(*[m / sizeOfSubresourceLayoutValue]C.VkSubresourceLayout)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewSubresourceLayoutRef(unsafe.Pointer(&ptr1))
}
}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *RenderPassCreateInfo2) Ref() *C.VkRenderPassCreateInfo2KHR {
+func (x *ImageDrmFormatModifierExplicitCreateInfo) Ref() *C.VkImageDrmFormatModifierExplicitCreateInfoEXT {
if x == nil {
return nil
}
- return x.ref1d4774de
+ return x.ref8fb45ca9
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *RenderPassCreateInfo2) Free() {
- if x != nil && x.allocs1d4774de != nil {
- x.allocs1d4774de.(*cgoAllocMap).Free()
- x.ref1d4774de = nil
+func (x *ImageDrmFormatModifierExplicitCreateInfo) Free() {
+ if x != nil && x.allocs8fb45ca9 != nil {
+ x.allocs8fb45ca9.(*cgoAllocMap).Free()
+ x.ref8fb45ca9 = nil
}
}
-// NewRenderPassCreateInfo2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// NewImageDrmFormatModifierExplicitCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewRenderPassCreateInfo2Ref(ref unsafe.Pointer) *RenderPassCreateInfo2 {
+func NewImageDrmFormatModifierExplicitCreateInfoRef(ref unsafe.Pointer) *ImageDrmFormatModifierExplicitCreateInfo {
if ref == nil {
return nil
}
- obj := new(RenderPassCreateInfo2)
- obj.ref1d4774de = (*C.VkRenderPassCreateInfo2KHR)(unsafe.Pointer(ref))
+ obj := new(ImageDrmFormatModifierExplicitCreateInfo)
+ obj.ref8fb45ca9 = (*C.VkImageDrmFormatModifierExplicitCreateInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *RenderPassCreateInfo2) PassRef() (*C.VkRenderPassCreateInfo2KHR, *cgoAllocMap) {
+func (x *ImageDrmFormatModifierExplicitCreateInfo) PassRef() (*C.VkImageDrmFormatModifierExplicitCreateInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref1d4774de != nil {
- return x.ref1d4774de, nil
+ } else if x.ref8fb45ca9 != nil {
+ return x.ref8fb45ca9, nil
}
- mem1d4774de := allocRenderPassCreateInfo2Memory(1)
- ref1d4774de := (*C.VkRenderPassCreateInfo2KHR)(mem1d4774de)
- allocs1d4774de := new(cgoAllocMap)
- allocs1d4774de.Add(mem1d4774de)
+ mem8fb45ca9 := allocImageDrmFormatModifierExplicitCreateInfoMemory(1)
+ ref8fb45ca9 := (*C.VkImageDrmFormatModifierExplicitCreateInfoEXT)(mem8fb45ca9)
+ allocs8fb45ca9 := new(cgoAllocMap)
+ allocs8fb45ca9.Add(mem8fb45ca9)
var csType_allocs *cgoAllocMap
- ref1d4774de.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs1d4774de.Borrow(csType_allocs)
+ ref8fb45ca9.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs8fb45ca9.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref1d4774de.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs1d4774de.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- ref1d4774de.flags, cflags_allocs = (C.VkRenderPassCreateFlags)(x.Flags), cgoAllocsUnknown
- allocs1d4774de.Borrow(cflags_allocs)
-
- var cattachmentCount_allocs *cgoAllocMap
- ref1d4774de.attachmentCount, cattachmentCount_allocs = (C.uint32_t)(x.AttachmentCount), cgoAllocsUnknown
- allocs1d4774de.Borrow(cattachmentCount_allocs)
-
- var cpAttachments_allocs *cgoAllocMap
- ref1d4774de.pAttachments, cpAttachments_allocs = unpackSAttachmentDescription2(x.PAttachments)
- allocs1d4774de.Borrow(cpAttachments_allocs)
-
- var csubpassCount_allocs *cgoAllocMap
- ref1d4774de.subpassCount, csubpassCount_allocs = (C.uint32_t)(x.SubpassCount), cgoAllocsUnknown
- allocs1d4774de.Borrow(csubpassCount_allocs)
-
- var cpSubpasses_allocs *cgoAllocMap
- ref1d4774de.pSubpasses, cpSubpasses_allocs = unpackSSubpassDescription2(x.PSubpasses)
- allocs1d4774de.Borrow(cpSubpasses_allocs)
-
- var cdependencyCount_allocs *cgoAllocMap
- ref1d4774de.dependencyCount, cdependencyCount_allocs = (C.uint32_t)(x.DependencyCount), cgoAllocsUnknown
- allocs1d4774de.Borrow(cdependencyCount_allocs)
+ ref8fb45ca9.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs8fb45ca9.Borrow(cpNext_allocs)
- var cpDependencies_allocs *cgoAllocMap
- ref1d4774de.pDependencies, cpDependencies_allocs = unpackSSubpassDependency2(x.PDependencies)
- allocs1d4774de.Borrow(cpDependencies_allocs)
+ var cdrmFormatModifier_allocs *cgoAllocMap
+ ref8fb45ca9.drmFormatModifier, cdrmFormatModifier_allocs = (C.uint64_t)(x.DrmFormatModifier), cgoAllocsUnknown
+ allocs8fb45ca9.Borrow(cdrmFormatModifier_allocs)
- var ccorrelatedViewMaskCount_allocs *cgoAllocMap
- ref1d4774de.correlatedViewMaskCount, ccorrelatedViewMaskCount_allocs = (C.uint32_t)(x.CorrelatedViewMaskCount), cgoAllocsUnknown
- allocs1d4774de.Borrow(ccorrelatedViewMaskCount_allocs)
+ var cdrmFormatModifierPlaneCount_allocs *cgoAllocMap
+ ref8fb45ca9.drmFormatModifierPlaneCount, cdrmFormatModifierPlaneCount_allocs = (C.uint32_t)(x.DrmFormatModifierPlaneCount), cgoAllocsUnknown
+ allocs8fb45ca9.Borrow(cdrmFormatModifierPlaneCount_allocs)
- var cpCorrelatedViewMasks_allocs *cgoAllocMap
- ref1d4774de.pCorrelatedViewMasks, cpCorrelatedViewMasks_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PCorrelatedViewMasks)).Data)), cgoAllocsUnknown
- allocs1d4774de.Borrow(cpCorrelatedViewMasks_allocs)
+ var cpPlaneLayouts_allocs *cgoAllocMap
+ ref8fb45ca9.pPlaneLayouts, cpPlaneLayouts_allocs = unpackSSubresourceLayout(x.PPlaneLayouts)
+ allocs8fb45ca9.Borrow(cpPlaneLayouts_allocs)
- x.ref1d4774de = ref1d4774de
- x.allocs1d4774de = allocs1d4774de
- return ref1d4774de, allocs1d4774de
+ x.ref8fb45ca9 = ref8fb45ca9
+ x.allocs8fb45ca9 = allocs8fb45ca9
+ return ref8fb45ca9, allocs8fb45ca9
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x RenderPassCreateInfo2) PassValue() (C.VkRenderPassCreateInfo2KHR, *cgoAllocMap) {
- if x.ref1d4774de != nil {
- return *x.ref1d4774de, nil
+func (x ImageDrmFormatModifierExplicitCreateInfo) PassValue() (C.VkImageDrmFormatModifierExplicitCreateInfoEXT, *cgoAllocMap) {
+ if x.ref8fb45ca9 != nil {
+ return *x.ref8fb45ca9, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -23533,102 +50398,92 @@ func (x RenderPassCreateInfo2) PassValue() (C.VkRenderPassCreateInfo2KHR, *cgoAl
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *RenderPassCreateInfo2) Deref() {
- if x.ref1d4774de == nil {
- return
- }
- x.SType = (StructureType)(x.ref1d4774de.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref1d4774de.pNext))
- x.Flags = (RenderPassCreateFlags)(x.ref1d4774de.flags)
- x.AttachmentCount = (uint32)(x.ref1d4774de.attachmentCount)
- packSAttachmentDescription2(x.PAttachments, x.ref1d4774de.pAttachments)
- x.SubpassCount = (uint32)(x.ref1d4774de.subpassCount)
- packSSubpassDescription2(x.PSubpasses, x.ref1d4774de.pSubpasses)
- x.DependencyCount = (uint32)(x.ref1d4774de.dependencyCount)
- packSSubpassDependency2(x.PDependencies, x.ref1d4774de.pDependencies)
- x.CorrelatedViewMaskCount = (uint32)(x.ref1d4774de.correlatedViewMaskCount)
- hxfd687ee := (*sliceHeader)(unsafe.Pointer(&x.PCorrelatedViewMasks))
- hxfd687ee.Data = unsafe.Pointer(x.ref1d4774de.pCorrelatedViewMasks)
- hxfd687ee.Cap = 0x7fffffff
- // hxfd687ee.Len = ?
-
+func (x *ImageDrmFormatModifierExplicitCreateInfo) Deref() {
+ if x.ref8fb45ca9 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref8fb45ca9.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref8fb45ca9.pNext))
+ x.DrmFormatModifier = (uint64)(x.ref8fb45ca9.drmFormatModifier)
+ x.DrmFormatModifierPlaneCount = (uint32)(x.ref8fb45ca9.drmFormatModifierPlaneCount)
+ packSSubresourceLayout(x.PPlaneLayouts, x.ref8fb45ca9.pPlaneLayouts)
}
-// allocSubpassBeginInfoMemory allocates memory for type C.VkSubpassBeginInfoKHR in C.
+// allocImageDrmFormatModifierPropertiesMemory allocates memory for type C.VkImageDrmFormatModifierPropertiesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSubpassBeginInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSubpassBeginInfoValue))
+func allocImageDrmFormatModifierPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageDrmFormatModifierPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSubpassBeginInfoValue = unsafe.Sizeof([1]C.VkSubpassBeginInfoKHR{})
+const sizeOfImageDrmFormatModifierPropertiesValue = unsafe.Sizeof([1]C.VkImageDrmFormatModifierPropertiesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SubpassBeginInfo) Ref() *C.VkSubpassBeginInfoKHR {
+func (x *ImageDrmFormatModifierProperties) Ref() *C.VkImageDrmFormatModifierPropertiesEXT {
if x == nil {
return nil
}
- return x.ref7b9f19b8
+ return x.ref86a0f149
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SubpassBeginInfo) Free() {
- if x != nil && x.allocs7b9f19b8 != nil {
- x.allocs7b9f19b8.(*cgoAllocMap).Free()
- x.ref7b9f19b8 = nil
+func (x *ImageDrmFormatModifierProperties) Free() {
+ if x != nil && x.allocs86a0f149 != nil {
+ x.allocs86a0f149.(*cgoAllocMap).Free()
+ x.ref86a0f149 = nil
}
}
-// NewSubpassBeginInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewImageDrmFormatModifierPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSubpassBeginInfoRef(ref unsafe.Pointer) *SubpassBeginInfo {
+func NewImageDrmFormatModifierPropertiesRef(ref unsafe.Pointer) *ImageDrmFormatModifierProperties {
if ref == nil {
return nil
}
- obj := new(SubpassBeginInfo)
- obj.ref7b9f19b8 = (*C.VkSubpassBeginInfoKHR)(unsafe.Pointer(ref))
+ obj := new(ImageDrmFormatModifierProperties)
+ obj.ref86a0f149 = (*C.VkImageDrmFormatModifierPropertiesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SubpassBeginInfo) PassRef() (*C.VkSubpassBeginInfoKHR, *cgoAllocMap) {
+func (x *ImageDrmFormatModifierProperties) PassRef() (*C.VkImageDrmFormatModifierPropertiesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref7b9f19b8 != nil {
- return x.ref7b9f19b8, nil
+ } else if x.ref86a0f149 != nil {
+ return x.ref86a0f149, nil
}
- mem7b9f19b8 := allocSubpassBeginInfoMemory(1)
- ref7b9f19b8 := (*C.VkSubpassBeginInfoKHR)(mem7b9f19b8)
- allocs7b9f19b8 := new(cgoAllocMap)
- allocs7b9f19b8.Add(mem7b9f19b8)
+ mem86a0f149 := allocImageDrmFormatModifierPropertiesMemory(1)
+ ref86a0f149 := (*C.VkImageDrmFormatModifierPropertiesEXT)(mem86a0f149)
+ allocs86a0f149 := new(cgoAllocMap)
+ allocs86a0f149.Add(mem86a0f149)
var csType_allocs *cgoAllocMap
- ref7b9f19b8.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs7b9f19b8.Borrow(csType_allocs)
+ ref86a0f149.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs86a0f149.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref7b9f19b8.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs7b9f19b8.Borrow(cpNext_allocs)
+ ref86a0f149.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs86a0f149.Borrow(cpNext_allocs)
- var ccontents_allocs *cgoAllocMap
- ref7b9f19b8.contents, ccontents_allocs = (C.VkSubpassContents)(x.Contents), cgoAllocsUnknown
- allocs7b9f19b8.Borrow(ccontents_allocs)
+ var cdrmFormatModifier_allocs *cgoAllocMap
+ ref86a0f149.drmFormatModifier, cdrmFormatModifier_allocs = (C.uint64_t)(x.DrmFormatModifier), cgoAllocsUnknown
+ allocs86a0f149.Borrow(cdrmFormatModifier_allocs)
- x.ref7b9f19b8 = ref7b9f19b8
- x.allocs7b9f19b8 = allocs7b9f19b8
- return ref7b9f19b8, allocs7b9f19b8
+ x.ref86a0f149 = ref86a0f149
+ x.allocs86a0f149 = allocs86a0f149
+ return ref86a0f149, allocs86a0f149
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SubpassBeginInfo) PassValue() (C.VkSubpassBeginInfoKHR, *cgoAllocMap) {
- if x.ref7b9f19b8 != nil {
- return *x.ref7b9f19b8, nil
+func (x ImageDrmFormatModifierProperties) PassValue() (C.VkImageDrmFormatModifierPropertiesEXT, *cgoAllocMap) {
+ if x.ref86a0f149 != nil {
+ return *x.ref86a0f149, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -23636,86 +50491,90 @@ func (x SubpassBeginInfo) PassValue() (C.VkSubpassBeginInfoKHR, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SubpassBeginInfo) Deref() {
- if x.ref7b9f19b8 == nil {
+func (x *ImageDrmFormatModifierProperties) Deref() {
+ if x.ref86a0f149 == nil {
return
}
- x.SType = (StructureType)(x.ref7b9f19b8.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref7b9f19b8.pNext))
- x.Contents = (SubpassContents)(x.ref7b9f19b8.contents)
+ x.SType = (StructureType)(x.ref86a0f149.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref86a0f149.pNext))
+ x.DrmFormatModifier = (uint64)(x.ref86a0f149.drmFormatModifier)
}
-// allocSubpassEndInfoMemory allocates memory for type C.VkSubpassEndInfoKHR in C.
+// allocDrmFormatModifierProperties2Memory allocates memory for type C.VkDrmFormatModifierProperties2EXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSubpassEndInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSubpassEndInfoValue))
+func allocDrmFormatModifierProperties2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDrmFormatModifierProperties2Value))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSubpassEndInfoValue = unsafe.Sizeof([1]C.VkSubpassEndInfoKHR{})
+const sizeOfDrmFormatModifierProperties2Value = unsafe.Sizeof([1]C.VkDrmFormatModifierProperties2EXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SubpassEndInfo) Ref() *C.VkSubpassEndInfoKHR {
+func (x *DrmFormatModifierProperties2) Ref() *C.VkDrmFormatModifierProperties2EXT {
if x == nil {
return nil
}
- return x.refb755d027
+ return x.ref6d0821ba
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SubpassEndInfo) Free() {
- if x != nil && x.allocsb755d027 != nil {
- x.allocsb755d027.(*cgoAllocMap).Free()
- x.refb755d027 = nil
+func (x *DrmFormatModifierProperties2) Free() {
+ if x != nil && x.allocs6d0821ba != nil {
+ x.allocs6d0821ba.(*cgoAllocMap).Free()
+ x.ref6d0821ba = nil
}
}
-// NewSubpassEndInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDrmFormatModifierProperties2Ref creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSubpassEndInfoRef(ref unsafe.Pointer) *SubpassEndInfo {
+func NewDrmFormatModifierProperties2Ref(ref unsafe.Pointer) *DrmFormatModifierProperties2 {
if ref == nil {
return nil
}
- obj := new(SubpassEndInfo)
- obj.refb755d027 = (*C.VkSubpassEndInfoKHR)(unsafe.Pointer(ref))
+ obj := new(DrmFormatModifierProperties2)
+ obj.ref6d0821ba = (*C.VkDrmFormatModifierProperties2EXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SubpassEndInfo) PassRef() (*C.VkSubpassEndInfoKHR, *cgoAllocMap) {
+func (x *DrmFormatModifierProperties2) PassRef() (*C.VkDrmFormatModifierProperties2EXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refb755d027 != nil {
- return x.refb755d027, nil
+ } else if x.ref6d0821ba != nil {
+ return x.ref6d0821ba, nil
}
- memb755d027 := allocSubpassEndInfoMemory(1)
- refb755d027 := (*C.VkSubpassEndInfoKHR)(memb755d027)
- allocsb755d027 := new(cgoAllocMap)
- allocsb755d027.Add(memb755d027)
+ mem6d0821ba := allocDrmFormatModifierProperties2Memory(1)
+ ref6d0821ba := (*C.VkDrmFormatModifierProperties2EXT)(mem6d0821ba)
+ allocs6d0821ba := new(cgoAllocMap)
+ allocs6d0821ba.Add(mem6d0821ba)
- var csType_allocs *cgoAllocMap
- refb755d027.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsb755d027.Borrow(csType_allocs)
+ var cdrmFormatModifier_allocs *cgoAllocMap
+ ref6d0821ba.drmFormatModifier, cdrmFormatModifier_allocs = (C.uint64_t)(x.DrmFormatModifier), cgoAllocsUnknown
+ allocs6d0821ba.Borrow(cdrmFormatModifier_allocs)
- var cpNext_allocs *cgoAllocMap
- refb755d027.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsb755d027.Borrow(cpNext_allocs)
+ var cdrmFormatModifierPlaneCount_allocs *cgoAllocMap
+ ref6d0821ba.drmFormatModifierPlaneCount, cdrmFormatModifierPlaneCount_allocs = (C.uint32_t)(x.DrmFormatModifierPlaneCount), cgoAllocsUnknown
+ allocs6d0821ba.Borrow(cdrmFormatModifierPlaneCount_allocs)
+
+ var cdrmFormatModifierTilingFeatures_allocs *cgoAllocMap
+ ref6d0821ba.drmFormatModifierTilingFeatures, cdrmFormatModifierTilingFeatures_allocs = (C.VkFormatFeatureFlags2)(x.DrmFormatModifierTilingFeatures), cgoAllocsUnknown
+ allocs6d0821ba.Borrow(cdrmFormatModifierTilingFeatures_allocs)
- x.refb755d027 = refb755d027
- x.allocsb755d027 = allocsb755d027
- return refb755d027, allocsb755d027
+ x.ref6d0821ba = ref6d0821ba
+ x.allocs6d0821ba = allocs6d0821ba
+ return ref6d0821ba, allocs6d0821ba
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SubpassEndInfo) PassValue() (C.VkSubpassEndInfoKHR, *cgoAllocMap) {
- if x.refb755d027 != nil {
- return *x.refb755d027, nil
+func (x DrmFormatModifierProperties2) PassValue() (C.VkDrmFormatModifierProperties2EXT, *cgoAllocMap) {
+ if x.ref6d0821ba != nil {
+ return *x.ref6d0821ba, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -23723,89 +50582,132 @@ func (x SubpassEndInfo) PassValue() (C.VkSubpassEndInfoKHR, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SubpassEndInfo) Deref() {
- if x.refb755d027 == nil {
+func (x *DrmFormatModifierProperties2) Deref() {
+ if x.ref6d0821ba == nil {
return
}
- x.SType = (StructureType)(x.refb755d027.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb755d027.pNext))
+ x.DrmFormatModifier = (uint64)(x.ref6d0821ba.drmFormatModifier)
+ x.DrmFormatModifierPlaneCount = (uint32)(x.ref6d0821ba.drmFormatModifierPlaneCount)
+ x.DrmFormatModifierTilingFeatures = (FormatFeatureFlags2)(x.ref6d0821ba.drmFormatModifierTilingFeatures)
}
-// allocSharedPresentSurfaceCapabilitiesMemory allocates memory for type C.VkSharedPresentSurfaceCapabilitiesKHR in C.
+// allocDrmFormatModifierPropertiesList2Memory allocates memory for type C.VkDrmFormatModifierPropertiesList2EXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSharedPresentSurfaceCapabilitiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSharedPresentSurfaceCapabilitiesValue))
+func allocDrmFormatModifierPropertiesList2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDrmFormatModifierPropertiesList2Value))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSharedPresentSurfaceCapabilitiesValue = unsafe.Sizeof([1]C.VkSharedPresentSurfaceCapabilitiesKHR{})
+const sizeOfDrmFormatModifierPropertiesList2Value = unsafe.Sizeof([1]C.VkDrmFormatModifierPropertiesList2EXT{})
+
+// unpackSDrmFormatModifierProperties2 transforms a sliced Go data structure into plain C format.
+func unpackSDrmFormatModifierProperties2(x []DrmFormatModifierProperties2) (unpacked *C.VkDrmFormatModifierProperties2EXT, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkDrmFormatModifierProperties2EXT) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocDrmFormatModifierProperties2Memory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkDrmFormatModifierProperties2EXT)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkDrmFormatModifierProperties2EXT)(h.Data)
+ return
+}
+
+// packSDrmFormatModifierProperties2 reads sliced Go data structure out from plain C format.
+func packSDrmFormatModifierProperties2(v []DrmFormatModifierProperties2, ptr0 *C.VkDrmFormatModifierProperties2EXT) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfDrmFormatModifierProperties2Value]C.VkDrmFormatModifierProperties2EXT)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewDrmFormatModifierProperties2Ref(unsafe.Pointer(&ptr1))
+ }
+}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SharedPresentSurfaceCapabilities) Ref() *C.VkSharedPresentSurfaceCapabilitiesKHR {
+func (x *DrmFormatModifierPropertiesList2) Ref() *C.VkDrmFormatModifierPropertiesList2EXT {
if x == nil {
return nil
}
- return x.ref3f98a814
+ return x.refbea4fdd3
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SharedPresentSurfaceCapabilities) Free() {
- if x != nil && x.allocs3f98a814 != nil {
- x.allocs3f98a814.(*cgoAllocMap).Free()
- x.ref3f98a814 = nil
+func (x *DrmFormatModifierPropertiesList2) Free() {
+ if x != nil && x.allocsbea4fdd3 != nil {
+ x.allocsbea4fdd3.(*cgoAllocMap).Free()
+ x.refbea4fdd3 = nil
}
}
-// NewSharedPresentSurfaceCapabilitiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDrmFormatModifierPropertiesList2Ref creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSharedPresentSurfaceCapabilitiesRef(ref unsafe.Pointer) *SharedPresentSurfaceCapabilities {
+func NewDrmFormatModifierPropertiesList2Ref(ref unsafe.Pointer) *DrmFormatModifierPropertiesList2 {
if ref == nil {
return nil
}
- obj := new(SharedPresentSurfaceCapabilities)
- obj.ref3f98a814 = (*C.VkSharedPresentSurfaceCapabilitiesKHR)(unsafe.Pointer(ref))
+ obj := new(DrmFormatModifierPropertiesList2)
+ obj.refbea4fdd3 = (*C.VkDrmFormatModifierPropertiesList2EXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SharedPresentSurfaceCapabilities) PassRef() (*C.VkSharedPresentSurfaceCapabilitiesKHR, *cgoAllocMap) {
+func (x *DrmFormatModifierPropertiesList2) PassRef() (*C.VkDrmFormatModifierPropertiesList2EXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref3f98a814 != nil {
- return x.ref3f98a814, nil
+ } else if x.refbea4fdd3 != nil {
+ return x.refbea4fdd3, nil
}
- mem3f98a814 := allocSharedPresentSurfaceCapabilitiesMemory(1)
- ref3f98a814 := (*C.VkSharedPresentSurfaceCapabilitiesKHR)(mem3f98a814)
- allocs3f98a814 := new(cgoAllocMap)
- allocs3f98a814.Add(mem3f98a814)
+ membea4fdd3 := allocDrmFormatModifierPropertiesList2Memory(1)
+ refbea4fdd3 := (*C.VkDrmFormatModifierPropertiesList2EXT)(membea4fdd3)
+ allocsbea4fdd3 := new(cgoAllocMap)
+ allocsbea4fdd3.Add(membea4fdd3)
var csType_allocs *cgoAllocMap
- ref3f98a814.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs3f98a814.Borrow(csType_allocs)
+ refbea4fdd3.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsbea4fdd3.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref3f98a814.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs3f98a814.Borrow(cpNext_allocs)
+ refbea4fdd3.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsbea4fdd3.Borrow(cpNext_allocs)
- var csharedPresentSupportedUsageFlags_allocs *cgoAllocMap
- ref3f98a814.sharedPresentSupportedUsageFlags, csharedPresentSupportedUsageFlags_allocs = (C.VkImageUsageFlags)(x.SharedPresentSupportedUsageFlags), cgoAllocsUnknown
- allocs3f98a814.Borrow(csharedPresentSupportedUsageFlags_allocs)
+ var cdrmFormatModifierCount_allocs *cgoAllocMap
+ refbea4fdd3.drmFormatModifierCount, cdrmFormatModifierCount_allocs = (C.uint32_t)(x.DrmFormatModifierCount), cgoAllocsUnknown
+ allocsbea4fdd3.Borrow(cdrmFormatModifierCount_allocs)
- x.ref3f98a814 = ref3f98a814
- x.allocs3f98a814 = allocs3f98a814
- return ref3f98a814, allocs3f98a814
+ var cpDrmFormatModifierProperties_allocs *cgoAllocMap
+ refbea4fdd3.pDrmFormatModifierProperties, cpDrmFormatModifierProperties_allocs = unpackSDrmFormatModifierProperties2(x.PDrmFormatModifierProperties)
+ allocsbea4fdd3.Borrow(cpDrmFormatModifierProperties_allocs)
+
+ x.refbea4fdd3 = refbea4fdd3
+ x.allocsbea4fdd3 = allocsbea4fdd3
+ return refbea4fdd3, allocsbea4fdd3
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SharedPresentSurfaceCapabilities) PassValue() (C.VkSharedPresentSurfaceCapabilitiesKHR, *cgoAllocMap) {
- if x.ref3f98a814 != nil {
- return *x.ref3f98a814, nil
+func (x DrmFormatModifierPropertiesList2) PassValue() (C.VkDrmFormatModifierPropertiesList2EXT, *cgoAllocMap) {
+ if x.refbea4fdd3 != nil {
+ return *x.refbea4fdd3, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -23813,102 +50715,99 @@ func (x SharedPresentSurfaceCapabilities) PassValue() (C.VkSharedPresentSurfaceC
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SharedPresentSurfaceCapabilities) Deref() {
- if x.ref3f98a814 == nil {
+func (x *DrmFormatModifierPropertiesList2) Deref() {
+ if x.refbea4fdd3 == nil {
return
}
- x.SType = (StructureType)(x.ref3f98a814.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref3f98a814.pNext))
- x.SharedPresentSupportedUsageFlags = (ImageUsageFlags)(x.ref3f98a814.sharedPresentSupportedUsageFlags)
+ x.SType = (StructureType)(x.refbea4fdd3.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refbea4fdd3.pNext))
+ x.DrmFormatModifierCount = (uint32)(x.refbea4fdd3.drmFormatModifierCount)
+ packSDrmFormatModifierProperties2(x.PDrmFormatModifierProperties, x.refbea4fdd3.pDrmFormatModifierProperties)
}
-// allocImportFenceFdInfoMemory allocates memory for type C.VkImportFenceFdInfoKHR in C.
+// allocValidationCacheCreateInfoMemory allocates memory for type C.VkValidationCacheCreateInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocImportFenceFdInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImportFenceFdInfoValue))
+func allocValidationCacheCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfValidationCacheCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfImportFenceFdInfoValue = unsafe.Sizeof([1]C.VkImportFenceFdInfoKHR{})
+const sizeOfValidationCacheCreateInfoValue = unsafe.Sizeof([1]C.VkValidationCacheCreateInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ImportFenceFdInfo) Ref() *C.VkImportFenceFdInfoKHR {
+func (x *ValidationCacheCreateInfo) Ref() *C.VkValidationCacheCreateInfoEXT {
if x == nil {
return nil
}
- return x.ref86ebd28c
+ return x.ref3d8ac8aa
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ImportFenceFdInfo) Free() {
- if x != nil && x.allocs86ebd28c != nil {
- x.allocs86ebd28c.(*cgoAllocMap).Free()
- x.ref86ebd28c = nil
+func (x *ValidationCacheCreateInfo) Free() {
+ if x != nil && x.allocs3d8ac8aa != nil {
+ x.allocs3d8ac8aa.(*cgoAllocMap).Free()
+ x.ref3d8ac8aa = nil
}
}
-// NewImportFenceFdInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewValidationCacheCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewImportFenceFdInfoRef(ref unsafe.Pointer) *ImportFenceFdInfo {
+func NewValidationCacheCreateInfoRef(ref unsafe.Pointer) *ValidationCacheCreateInfo {
if ref == nil {
return nil
}
- obj := new(ImportFenceFdInfo)
- obj.ref86ebd28c = (*C.VkImportFenceFdInfoKHR)(unsafe.Pointer(ref))
+ obj := new(ValidationCacheCreateInfo)
+ obj.ref3d8ac8aa = (*C.VkValidationCacheCreateInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ImportFenceFdInfo) PassRef() (*C.VkImportFenceFdInfoKHR, *cgoAllocMap) {
+func (x *ValidationCacheCreateInfo) PassRef() (*C.VkValidationCacheCreateInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref86ebd28c != nil {
- return x.ref86ebd28c, nil
+ } else if x.ref3d8ac8aa != nil {
+ return x.ref3d8ac8aa, nil
}
- mem86ebd28c := allocImportFenceFdInfoMemory(1)
- ref86ebd28c := (*C.VkImportFenceFdInfoKHR)(mem86ebd28c)
- allocs86ebd28c := new(cgoAllocMap)
- allocs86ebd28c.Add(mem86ebd28c)
+ mem3d8ac8aa := allocValidationCacheCreateInfoMemory(1)
+ ref3d8ac8aa := (*C.VkValidationCacheCreateInfoEXT)(mem3d8ac8aa)
+ allocs3d8ac8aa := new(cgoAllocMap)
+ allocs3d8ac8aa.Add(mem3d8ac8aa)
var csType_allocs *cgoAllocMap
- ref86ebd28c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs86ebd28c.Borrow(csType_allocs)
+ ref3d8ac8aa.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs3d8ac8aa.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref86ebd28c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs86ebd28c.Borrow(cpNext_allocs)
-
- var cfence_allocs *cgoAllocMap
- ref86ebd28c.fence, cfence_allocs = *(*C.VkFence)(unsafe.Pointer(&x.Fence)), cgoAllocsUnknown
- allocs86ebd28c.Borrow(cfence_allocs)
+ ref3d8ac8aa.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs3d8ac8aa.Borrow(cpNext_allocs)
var cflags_allocs *cgoAllocMap
- ref86ebd28c.flags, cflags_allocs = (C.VkFenceImportFlags)(x.Flags), cgoAllocsUnknown
- allocs86ebd28c.Borrow(cflags_allocs)
+ ref3d8ac8aa.flags, cflags_allocs = (C.VkValidationCacheCreateFlagsEXT)(x.Flags), cgoAllocsUnknown
+ allocs3d8ac8aa.Borrow(cflags_allocs)
- var chandleType_allocs *cgoAllocMap
- ref86ebd28c.handleType, chandleType_allocs = (C.VkExternalFenceHandleTypeFlagBits)(x.HandleType), cgoAllocsUnknown
- allocs86ebd28c.Borrow(chandleType_allocs)
+ var cinitialDataSize_allocs *cgoAllocMap
+ ref3d8ac8aa.initialDataSize, cinitialDataSize_allocs = (C.size_t)(x.InitialDataSize), cgoAllocsUnknown
+ allocs3d8ac8aa.Borrow(cinitialDataSize_allocs)
- var cfd_allocs *cgoAllocMap
- ref86ebd28c.fd, cfd_allocs = (C.int)(x.Fd), cgoAllocsUnknown
- allocs86ebd28c.Borrow(cfd_allocs)
+ var cpInitialData_allocs *cgoAllocMap
+ ref3d8ac8aa.pInitialData, cpInitialData_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PInitialData)), cgoAllocsUnknown
+ allocs3d8ac8aa.Borrow(cpInitialData_allocs)
- x.ref86ebd28c = ref86ebd28c
- x.allocs86ebd28c = allocs86ebd28c
- return ref86ebd28c, allocs86ebd28c
+ x.ref3d8ac8aa = ref3d8ac8aa
+ x.allocs3d8ac8aa = allocs3d8ac8aa
+ return ref3d8ac8aa, allocs3d8ac8aa
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ImportFenceFdInfo) PassValue() (C.VkImportFenceFdInfoKHR, *cgoAllocMap) {
- if x.ref86ebd28c != nil {
- return *x.ref86ebd28c, nil
+func (x ValidationCacheCreateInfo) PassValue() (C.VkValidationCacheCreateInfoEXT, *cgoAllocMap) {
+ if x.ref3d8ac8aa != nil {
+ return *x.ref3d8ac8aa, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -23916,97 +50815,92 @@ func (x ImportFenceFdInfo) PassValue() (C.VkImportFenceFdInfoKHR, *cgoAllocMap)
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ImportFenceFdInfo) Deref() {
- if x.ref86ebd28c == nil {
+func (x *ValidationCacheCreateInfo) Deref() {
+ if x.ref3d8ac8aa == nil {
return
}
- x.SType = (StructureType)(x.ref86ebd28c.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref86ebd28c.pNext))
- x.Fence = *(*Fence)(unsafe.Pointer(&x.ref86ebd28c.fence))
- x.Flags = (FenceImportFlags)(x.ref86ebd28c.flags)
- x.HandleType = (ExternalFenceHandleTypeFlagBits)(x.ref86ebd28c.handleType)
- x.Fd = (int32)(x.ref86ebd28c.fd)
+ x.SType = (StructureType)(x.ref3d8ac8aa.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref3d8ac8aa.pNext))
+ x.Flags = (ValidationCacheCreateFlags)(x.ref3d8ac8aa.flags)
+ x.InitialDataSize = (uint64)(x.ref3d8ac8aa.initialDataSize)
+ x.PInitialData = (unsafe.Pointer)(unsafe.Pointer(x.ref3d8ac8aa.pInitialData))
}
-// allocFenceGetFdInfoMemory allocates memory for type C.VkFenceGetFdInfoKHR in C.
+// allocShaderModuleValidationCacheCreateInfoMemory allocates memory for type C.VkShaderModuleValidationCacheCreateInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocFenceGetFdInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfFenceGetFdInfoValue))
+func allocShaderModuleValidationCacheCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfShaderModuleValidationCacheCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfFenceGetFdInfoValue = unsafe.Sizeof([1]C.VkFenceGetFdInfoKHR{})
+const sizeOfShaderModuleValidationCacheCreateInfoValue = unsafe.Sizeof([1]C.VkShaderModuleValidationCacheCreateInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *FenceGetFdInfo) Ref() *C.VkFenceGetFdInfoKHR {
+func (x *ShaderModuleValidationCacheCreateInfo) Ref() *C.VkShaderModuleValidationCacheCreateInfoEXT {
if x == nil {
return nil
}
- return x.refc2668bc3
+ return x.ref37065f24
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *FenceGetFdInfo) Free() {
- if x != nil && x.allocsc2668bc3 != nil {
- x.allocsc2668bc3.(*cgoAllocMap).Free()
- x.refc2668bc3 = nil
+func (x *ShaderModuleValidationCacheCreateInfo) Free() {
+ if x != nil && x.allocs37065f24 != nil {
+ x.allocs37065f24.(*cgoAllocMap).Free()
+ x.ref37065f24 = nil
}
}
-// NewFenceGetFdInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewShaderModuleValidationCacheCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewFenceGetFdInfoRef(ref unsafe.Pointer) *FenceGetFdInfo {
+func NewShaderModuleValidationCacheCreateInfoRef(ref unsafe.Pointer) *ShaderModuleValidationCacheCreateInfo {
if ref == nil {
return nil
}
- obj := new(FenceGetFdInfo)
- obj.refc2668bc3 = (*C.VkFenceGetFdInfoKHR)(unsafe.Pointer(ref))
+ obj := new(ShaderModuleValidationCacheCreateInfo)
+ obj.ref37065f24 = (*C.VkShaderModuleValidationCacheCreateInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *FenceGetFdInfo) PassRef() (*C.VkFenceGetFdInfoKHR, *cgoAllocMap) {
+func (x *ShaderModuleValidationCacheCreateInfo) PassRef() (*C.VkShaderModuleValidationCacheCreateInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refc2668bc3 != nil {
- return x.refc2668bc3, nil
+ } else if x.ref37065f24 != nil {
+ return x.ref37065f24, nil
}
- memc2668bc3 := allocFenceGetFdInfoMemory(1)
- refc2668bc3 := (*C.VkFenceGetFdInfoKHR)(memc2668bc3)
- allocsc2668bc3 := new(cgoAllocMap)
- allocsc2668bc3.Add(memc2668bc3)
+ mem37065f24 := allocShaderModuleValidationCacheCreateInfoMemory(1)
+ ref37065f24 := (*C.VkShaderModuleValidationCacheCreateInfoEXT)(mem37065f24)
+ allocs37065f24 := new(cgoAllocMap)
+ allocs37065f24.Add(mem37065f24)
var csType_allocs *cgoAllocMap
- refc2668bc3.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsc2668bc3.Borrow(csType_allocs)
+ ref37065f24.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs37065f24.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refc2668bc3.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsc2668bc3.Borrow(cpNext_allocs)
-
- var cfence_allocs *cgoAllocMap
- refc2668bc3.fence, cfence_allocs = *(*C.VkFence)(unsafe.Pointer(&x.Fence)), cgoAllocsUnknown
- allocsc2668bc3.Borrow(cfence_allocs)
+ ref37065f24.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs37065f24.Borrow(cpNext_allocs)
- var chandleType_allocs *cgoAllocMap
- refc2668bc3.handleType, chandleType_allocs = (C.VkExternalFenceHandleTypeFlagBits)(x.HandleType), cgoAllocsUnknown
- allocsc2668bc3.Borrow(chandleType_allocs)
+ var cvalidationCache_allocs *cgoAllocMap
+ ref37065f24.validationCache, cvalidationCache_allocs = *(*C.VkValidationCacheEXT)(unsafe.Pointer(&x.ValidationCache)), cgoAllocsUnknown
+ allocs37065f24.Borrow(cvalidationCache_allocs)
- x.refc2668bc3 = refc2668bc3
- x.allocsc2668bc3 = allocsc2668bc3
- return refc2668bc3, allocsc2668bc3
+ x.ref37065f24 = ref37065f24
+ x.allocs37065f24 = allocs37065f24
+ return ref37065f24, allocs37065f24
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x FenceGetFdInfo) PassValue() (C.VkFenceGetFdInfoKHR, *cgoAllocMap) {
- if x.refc2668bc3 != nil {
- return *x.refc2668bc3, nil
+func (x ShaderModuleValidationCacheCreateInfo) PassValue() (C.VkShaderModuleValidationCacheCreateInfoEXT, *cgoAllocMap) {
+ if x.ref37065f24 != nil {
+ return *x.ref37065f24, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -24014,91 +50908,86 @@ func (x FenceGetFdInfo) PassValue() (C.VkFenceGetFdInfoKHR, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *FenceGetFdInfo) Deref() {
- if x.refc2668bc3 == nil {
+func (x *ShaderModuleValidationCacheCreateInfo) Deref() {
+ if x.ref37065f24 == nil {
return
}
- x.SType = (StructureType)(x.refc2668bc3.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc2668bc3.pNext))
- x.Fence = *(*Fence)(unsafe.Pointer(&x.refc2668bc3.fence))
- x.HandleType = (ExternalFenceHandleTypeFlagBits)(x.refc2668bc3.handleType)
+ x.SType = (StructureType)(x.ref37065f24.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref37065f24.pNext))
+ x.ValidationCache = *(*ValidationCache)(unsafe.Pointer(&x.ref37065f24.validationCache))
}
-// allocPhysicalDeviceSurfaceInfo2Memory allocates memory for type C.VkPhysicalDeviceSurfaceInfo2KHR in C.
+// allocShadingRatePaletteNVMemory allocates memory for type C.VkShadingRatePaletteNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceSurfaceInfo2Memory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceSurfaceInfo2Value))
+func allocShadingRatePaletteNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfShadingRatePaletteNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceSurfaceInfo2Value = unsafe.Sizeof([1]C.VkPhysicalDeviceSurfaceInfo2KHR{})
+const sizeOfShadingRatePaletteNVValue = unsafe.Sizeof([1]C.VkShadingRatePaletteNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceSurfaceInfo2) Ref() *C.VkPhysicalDeviceSurfaceInfo2KHR {
+func (x *ShadingRatePaletteNV) Ref() *C.VkShadingRatePaletteNV {
if x == nil {
return nil
}
- return x.refd22370ae
+ return x.refa5c4ae3a
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceSurfaceInfo2) Free() {
- if x != nil && x.allocsd22370ae != nil {
- x.allocsd22370ae.(*cgoAllocMap).Free()
- x.refd22370ae = nil
+func (x *ShadingRatePaletteNV) Free() {
+ if x != nil && x.allocsa5c4ae3a != nil {
+ x.allocsa5c4ae3a.(*cgoAllocMap).Free()
+ x.refa5c4ae3a = nil
}
}
-// NewPhysicalDeviceSurfaceInfo2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// NewShadingRatePaletteNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceSurfaceInfo2Ref(ref unsafe.Pointer) *PhysicalDeviceSurfaceInfo2 {
+func NewShadingRatePaletteNVRef(ref unsafe.Pointer) *ShadingRatePaletteNV {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceSurfaceInfo2)
- obj.refd22370ae = (*C.VkPhysicalDeviceSurfaceInfo2KHR)(unsafe.Pointer(ref))
+ obj := new(ShadingRatePaletteNV)
+ obj.refa5c4ae3a = (*C.VkShadingRatePaletteNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceSurfaceInfo2) PassRef() (*C.VkPhysicalDeviceSurfaceInfo2KHR, *cgoAllocMap) {
+func (x *ShadingRatePaletteNV) PassRef() (*C.VkShadingRatePaletteNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refd22370ae != nil {
- return x.refd22370ae, nil
+ } else if x.refa5c4ae3a != nil {
+ return x.refa5c4ae3a, nil
}
- memd22370ae := allocPhysicalDeviceSurfaceInfo2Memory(1)
- refd22370ae := (*C.VkPhysicalDeviceSurfaceInfo2KHR)(memd22370ae)
- allocsd22370ae := new(cgoAllocMap)
- allocsd22370ae.Add(memd22370ae)
-
- var csType_allocs *cgoAllocMap
- refd22370ae.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsd22370ae.Borrow(csType_allocs)
-
- var cpNext_allocs *cgoAllocMap
- refd22370ae.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsd22370ae.Borrow(cpNext_allocs)
+ mema5c4ae3a := allocShadingRatePaletteNVMemory(1)
+ refa5c4ae3a := (*C.VkShadingRatePaletteNV)(mema5c4ae3a)
+ allocsa5c4ae3a := new(cgoAllocMap)
+ allocsa5c4ae3a.Add(mema5c4ae3a)
- var csurface_allocs *cgoAllocMap
- refd22370ae.surface, csurface_allocs = *(*C.VkSurfaceKHR)(unsafe.Pointer(&x.Surface)), cgoAllocsUnknown
- allocsd22370ae.Borrow(csurface_allocs)
+ var cshadingRatePaletteEntryCount_allocs *cgoAllocMap
+ refa5c4ae3a.shadingRatePaletteEntryCount, cshadingRatePaletteEntryCount_allocs = (C.uint32_t)(x.ShadingRatePaletteEntryCount), cgoAllocsUnknown
+ allocsa5c4ae3a.Borrow(cshadingRatePaletteEntryCount_allocs)
- x.refd22370ae = refd22370ae
- x.allocsd22370ae = allocsd22370ae
- return refd22370ae, allocsd22370ae
+ var cpShadingRatePaletteEntries_allocs *cgoAllocMap
+ refa5c4ae3a.pShadingRatePaletteEntries, cpShadingRatePaletteEntries_allocs = (*C.VkShadingRatePaletteEntryNV)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PShadingRatePaletteEntries)).Data)), cgoAllocsUnknown
+ allocsa5c4ae3a.Borrow(cpShadingRatePaletteEntries_allocs)
+
+ x.refa5c4ae3a = refa5c4ae3a
+ x.allocsa5c4ae3a = allocsa5c4ae3a
+ return refa5c4ae3a, allocsa5c4ae3a
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceSurfaceInfo2) PassValue() (C.VkPhysicalDeviceSurfaceInfo2KHR, *cgoAllocMap) {
- if x.refd22370ae != nil {
- return *x.refd22370ae, nil
+func (x ShadingRatePaletteNV) PassValue() (C.VkShadingRatePaletteNV, *cgoAllocMap) {
+ if x.refa5c4ae3a != nil {
+ return *x.refa5c4ae3a, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -24106,90 +50995,139 @@ func (x PhysicalDeviceSurfaceInfo2) PassValue() (C.VkPhysicalDeviceSurfaceInfo2K
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceSurfaceInfo2) Deref() {
- if x.refd22370ae == nil {
+func (x *ShadingRatePaletteNV) Deref() {
+ if x.refa5c4ae3a == nil {
return
}
- x.SType = (StructureType)(x.refd22370ae.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd22370ae.pNext))
- x.Surface = *(*Surface)(unsafe.Pointer(&x.refd22370ae.surface))
+ x.ShadingRatePaletteEntryCount = (uint32)(x.refa5c4ae3a.shadingRatePaletteEntryCount)
+ hxf4a9453 := (*sliceHeader)(unsafe.Pointer(&x.PShadingRatePaletteEntries))
+ hxf4a9453.Data = unsafe.Pointer(x.refa5c4ae3a.pShadingRatePaletteEntries)
+ hxf4a9453.Cap = 0x7fffffff
+ // hxf4a9453.Len = ?
+
}
-// allocSurfaceCapabilities2Memory allocates memory for type C.VkSurfaceCapabilities2KHR in C.
+// allocPipelineViewportShadingRateImageStateCreateInfoNVMemory allocates memory for type C.VkPipelineViewportShadingRateImageStateCreateInfoNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSurfaceCapabilities2Memory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSurfaceCapabilities2Value))
+func allocPipelineViewportShadingRateImageStateCreateInfoNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineViewportShadingRateImageStateCreateInfoNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSurfaceCapabilities2Value = unsafe.Sizeof([1]C.VkSurfaceCapabilities2KHR{})
+const sizeOfPipelineViewportShadingRateImageStateCreateInfoNVValue = unsafe.Sizeof([1]C.VkPipelineViewportShadingRateImageStateCreateInfoNV{})
+
+// unpackSShadingRatePaletteNV transforms a sliced Go data structure into plain C format.
+func unpackSShadingRatePaletteNV(x []ShadingRatePaletteNV) (unpacked *C.VkShadingRatePaletteNV, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkShadingRatePaletteNV) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocShadingRatePaletteNVMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkShadingRatePaletteNV)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkShadingRatePaletteNV)(h.Data)
+ return
+}
+
+// packSShadingRatePaletteNV reads sliced Go data structure out from plain C format.
+func packSShadingRatePaletteNV(v []ShadingRatePaletteNV, ptr0 *C.VkShadingRatePaletteNV) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfShadingRatePaletteNVValue]C.VkShadingRatePaletteNV)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewShadingRatePaletteNVRef(unsafe.Pointer(&ptr1))
+ }
+}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SurfaceCapabilities2) Ref() *C.VkSurfaceCapabilities2KHR {
+func (x *PipelineViewportShadingRateImageStateCreateInfoNV) Ref() *C.VkPipelineViewportShadingRateImageStateCreateInfoNV {
if x == nil {
return nil
}
- return x.refea469745
+ return x.ref6f2ec732
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SurfaceCapabilities2) Free() {
- if x != nil && x.allocsea469745 != nil {
- x.allocsea469745.(*cgoAllocMap).Free()
- x.refea469745 = nil
+func (x *PipelineViewportShadingRateImageStateCreateInfoNV) Free() {
+ if x != nil && x.allocs6f2ec732 != nil {
+ x.allocs6f2ec732.(*cgoAllocMap).Free()
+ x.ref6f2ec732 = nil
}
}
-// NewSurfaceCapabilities2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineViewportShadingRateImageStateCreateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSurfaceCapabilities2Ref(ref unsafe.Pointer) *SurfaceCapabilities2 {
+func NewPipelineViewportShadingRateImageStateCreateInfoNVRef(ref unsafe.Pointer) *PipelineViewportShadingRateImageStateCreateInfoNV {
if ref == nil {
return nil
}
- obj := new(SurfaceCapabilities2)
- obj.refea469745 = (*C.VkSurfaceCapabilities2KHR)(unsafe.Pointer(ref))
+ obj := new(PipelineViewportShadingRateImageStateCreateInfoNV)
+ obj.ref6f2ec732 = (*C.VkPipelineViewportShadingRateImageStateCreateInfoNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SurfaceCapabilities2) PassRef() (*C.VkSurfaceCapabilities2KHR, *cgoAllocMap) {
+func (x *PipelineViewportShadingRateImageStateCreateInfoNV) PassRef() (*C.VkPipelineViewportShadingRateImageStateCreateInfoNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refea469745 != nil {
- return x.refea469745, nil
+ } else if x.ref6f2ec732 != nil {
+ return x.ref6f2ec732, nil
}
- memea469745 := allocSurfaceCapabilities2Memory(1)
- refea469745 := (*C.VkSurfaceCapabilities2KHR)(memea469745)
- allocsea469745 := new(cgoAllocMap)
- allocsea469745.Add(memea469745)
+ mem6f2ec732 := allocPipelineViewportShadingRateImageStateCreateInfoNVMemory(1)
+ ref6f2ec732 := (*C.VkPipelineViewportShadingRateImageStateCreateInfoNV)(mem6f2ec732)
+ allocs6f2ec732 := new(cgoAllocMap)
+ allocs6f2ec732.Add(mem6f2ec732)
var csType_allocs *cgoAllocMap
- refea469745.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsea469745.Borrow(csType_allocs)
+ ref6f2ec732.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs6f2ec732.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refea469745.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsea469745.Borrow(cpNext_allocs)
+ ref6f2ec732.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs6f2ec732.Borrow(cpNext_allocs)
- var csurfaceCapabilities_allocs *cgoAllocMap
- refea469745.surfaceCapabilities, csurfaceCapabilities_allocs = x.SurfaceCapabilities.PassValue()
- allocsea469745.Borrow(csurfaceCapabilities_allocs)
+ var cshadingRateImageEnable_allocs *cgoAllocMap
+ ref6f2ec732.shadingRateImageEnable, cshadingRateImageEnable_allocs = (C.VkBool32)(x.ShadingRateImageEnable), cgoAllocsUnknown
+ allocs6f2ec732.Borrow(cshadingRateImageEnable_allocs)
- x.refea469745 = refea469745
- x.allocsea469745 = allocsea469745
- return refea469745, allocsea469745
+ var cviewportCount_allocs *cgoAllocMap
+ ref6f2ec732.viewportCount, cviewportCount_allocs = (C.uint32_t)(x.ViewportCount), cgoAllocsUnknown
+ allocs6f2ec732.Borrow(cviewportCount_allocs)
+
+ var cpShadingRatePalettes_allocs *cgoAllocMap
+ ref6f2ec732.pShadingRatePalettes, cpShadingRatePalettes_allocs = unpackSShadingRatePaletteNV(x.PShadingRatePalettes)
+ allocs6f2ec732.Borrow(cpShadingRatePalettes_allocs)
+
+ x.ref6f2ec732 = ref6f2ec732
+ x.allocs6f2ec732 = allocs6f2ec732
+ return ref6f2ec732, allocs6f2ec732
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SurfaceCapabilities2) PassValue() (C.VkSurfaceCapabilities2KHR, *cgoAllocMap) {
- if x.refea469745 != nil {
- return *x.refea469745, nil
+func (x PipelineViewportShadingRateImageStateCreateInfoNV) PassValue() (C.VkPipelineViewportShadingRateImageStateCreateInfoNV, *cgoAllocMap) {
+ if x.ref6f2ec732 != nil {
+ return *x.ref6f2ec732, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -24197,90 +51135,96 @@ func (x SurfaceCapabilities2) PassValue() (C.VkSurfaceCapabilities2KHR, *cgoAllo
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SurfaceCapabilities2) Deref() {
- if x.refea469745 == nil {
+func (x *PipelineViewportShadingRateImageStateCreateInfoNV) Deref() {
+ if x.ref6f2ec732 == nil {
return
}
- x.SType = (StructureType)(x.refea469745.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refea469745.pNext))
- x.SurfaceCapabilities = *NewSurfaceCapabilitiesRef(unsafe.Pointer(&x.refea469745.surfaceCapabilities))
+ x.SType = (StructureType)(x.ref6f2ec732.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref6f2ec732.pNext))
+ x.ShadingRateImageEnable = (Bool32)(x.ref6f2ec732.shadingRateImageEnable)
+ x.ViewportCount = (uint32)(x.ref6f2ec732.viewportCount)
+ packSShadingRatePaletteNV(x.PShadingRatePalettes, x.ref6f2ec732.pShadingRatePalettes)
}
-// allocSurfaceFormat2Memory allocates memory for type C.VkSurfaceFormat2KHR in C.
+// allocPhysicalDeviceShadingRateImageFeaturesNVMemory allocates memory for type C.VkPhysicalDeviceShadingRateImageFeaturesNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSurfaceFormat2Memory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSurfaceFormat2Value))
+func allocPhysicalDeviceShadingRateImageFeaturesNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceShadingRateImageFeaturesNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSurfaceFormat2Value = unsafe.Sizeof([1]C.VkSurfaceFormat2KHR{})
+const sizeOfPhysicalDeviceShadingRateImageFeaturesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceShadingRateImageFeaturesNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SurfaceFormat2) Ref() *C.VkSurfaceFormat2KHR {
+func (x *PhysicalDeviceShadingRateImageFeaturesNV) Ref() *C.VkPhysicalDeviceShadingRateImageFeaturesNV {
if x == nil {
return nil
}
- return x.ref8867f0ed
+ return x.ref199a921b
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SurfaceFormat2) Free() {
- if x != nil && x.allocs8867f0ed != nil {
- x.allocs8867f0ed.(*cgoAllocMap).Free()
- x.ref8867f0ed = nil
+func (x *PhysicalDeviceShadingRateImageFeaturesNV) Free() {
+ if x != nil && x.allocs199a921b != nil {
+ x.allocs199a921b.(*cgoAllocMap).Free()
+ x.ref199a921b = nil
}
}
-// NewSurfaceFormat2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceShadingRateImageFeaturesNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSurfaceFormat2Ref(ref unsafe.Pointer) *SurfaceFormat2 {
+func NewPhysicalDeviceShadingRateImageFeaturesNVRef(ref unsafe.Pointer) *PhysicalDeviceShadingRateImageFeaturesNV {
if ref == nil {
return nil
}
- obj := new(SurfaceFormat2)
- obj.ref8867f0ed = (*C.VkSurfaceFormat2KHR)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceShadingRateImageFeaturesNV)
+ obj.ref199a921b = (*C.VkPhysicalDeviceShadingRateImageFeaturesNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SurfaceFormat2) PassRef() (*C.VkSurfaceFormat2KHR, *cgoAllocMap) {
+func (x *PhysicalDeviceShadingRateImageFeaturesNV) PassRef() (*C.VkPhysicalDeviceShadingRateImageFeaturesNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref8867f0ed != nil {
- return x.ref8867f0ed, nil
+ } else if x.ref199a921b != nil {
+ return x.ref199a921b, nil
}
- mem8867f0ed := allocSurfaceFormat2Memory(1)
- ref8867f0ed := (*C.VkSurfaceFormat2KHR)(mem8867f0ed)
- allocs8867f0ed := new(cgoAllocMap)
- allocs8867f0ed.Add(mem8867f0ed)
+ mem199a921b := allocPhysicalDeviceShadingRateImageFeaturesNVMemory(1)
+ ref199a921b := (*C.VkPhysicalDeviceShadingRateImageFeaturesNV)(mem199a921b)
+ allocs199a921b := new(cgoAllocMap)
+ allocs199a921b.Add(mem199a921b)
var csType_allocs *cgoAllocMap
- ref8867f0ed.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs8867f0ed.Borrow(csType_allocs)
+ ref199a921b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs199a921b.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref8867f0ed.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs8867f0ed.Borrow(cpNext_allocs)
+ ref199a921b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs199a921b.Borrow(cpNext_allocs)
- var csurfaceFormat_allocs *cgoAllocMap
- ref8867f0ed.surfaceFormat, csurfaceFormat_allocs = x.SurfaceFormat.PassValue()
- allocs8867f0ed.Borrow(csurfaceFormat_allocs)
+ var cshadingRateImage_allocs *cgoAllocMap
+ ref199a921b.shadingRateImage, cshadingRateImage_allocs = (C.VkBool32)(x.ShadingRateImage), cgoAllocsUnknown
+ allocs199a921b.Borrow(cshadingRateImage_allocs)
- x.ref8867f0ed = ref8867f0ed
- x.allocs8867f0ed = allocs8867f0ed
- return ref8867f0ed, allocs8867f0ed
+ var cshadingRateCoarseSampleOrder_allocs *cgoAllocMap
+ ref199a921b.shadingRateCoarseSampleOrder, cshadingRateCoarseSampleOrder_allocs = (C.VkBool32)(x.ShadingRateCoarseSampleOrder), cgoAllocsUnknown
+ allocs199a921b.Borrow(cshadingRateCoarseSampleOrder_allocs)
+
+ x.ref199a921b = ref199a921b
+ x.allocs199a921b = allocs199a921b
+ return ref199a921b, allocs199a921b
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SurfaceFormat2) PassValue() (C.VkSurfaceFormat2KHR, *cgoAllocMap) {
- if x.ref8867f0ed != nil {
- return *x.ref8867f0ed, nil
+func (x PhysicalDeviceShadingRateImageFeaturesNV) PassValue() (C.VkPhysicalDeviceShadingRateImageFeaturesNV, *cgoAllocMap) {
+ if x.ref199a921b != nil {
+ return *x.ref199a921b, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -24288,90 +51232,99 @@ func (x SurfaceFormat2) PassValue() (C.VkSurfaceFormat2KHR, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SurfaceFormat2) Deref() {
- if x.ref8867f0ed == nil {
+func (x *PhysicalDeviceShadingRateImageFeaturesNV) Deref() {
+ if x.ref199a921b == nil {
return
}
- x.SType = (StructureType)(x.ref8867f0ed.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref8867f0ed.pNext))
- x.SurfaceFormat = *NewSurfaceFormatRef(unsafe.Pointer(&x.ref8867f0ed.surfaceFormat))
+ x.SType = (StructureType)(x.ref199a921b.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref199a921b.pNext))
+ x.ShadingRateImage = (Bool32)(x.ref199a921b.shadingRateImage)
+ x.ShadingRateCoarseSampleOrder = (Bool32)(x.ref199a921b.shadingRateCoarseSampleOrder)
}
-// allocDisplayProperties2Memory allocates memory for type C.VkDisplayProperties2KHR in C.
+// allocPhysicalDeviceShadingRateImagePropertiesNVMemory allocates memory for type C.VkPhysicalDeviceShadingRateImagePropertiesNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDisplayProperties2Memory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplayProperties2Value))
+func allocPhysicalDeviceShadingRateImagePropertiesNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceShadingRateImagePropertiesNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDisplayProperties2Value = unsafe.Sizeof([1]C.VkDisplayProperties2KHR{})
+const sizeOfPhysicalDeviceShadingRateImagePropertiesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceShadingRateImagePropertiesNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DisplayProperties2) Ref() *C.VkDisplayProperties2KHR {
+func (x *PhysicalDeviceShadingRateImagePropertiesNV) Ref() *C.VkPhysicalDeviceShadingRateImagePropertiesNV {
if x == nil {
return nil
}
- return x.ref80194833
+ return x.refea059f34
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DisplayProperties2) Free() {
- if x != nil && x.allocs80194833 != nil {
- x.allocs80194833.(*cgoAllocMap).Free()
- x.ref80194833 = nil
+func (x *PhysicalDeviceShadingRateImagePropertiesNV) Free() {
+ if x != nil && x.allocsea059f34 != nil {
+ x.allocsea059f34.(*cgoAllocMap).Free()
+ x.refea059f34 = nil
}
}
-// NewDisplayProperties2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceShadingRateImagePropertiesNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDisplayProperties2Ref(ref unsafe.Pointer) *DisplayProperties2 {
+func NewPhysicalDeviceShadingRateImagePropertiesNVRef(ref unsafe.Pointer) *PhysicalDeviceShadingRateImagePropertiesNV {
if ref == nil {
return nil
}
- obj := new(DisplayProperties2)
- obj.ref80194833 = (*C.VkDisplayProperties2KHR)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceShadingRateImagePropertiesNV)
+ obj.refea059f34 = (*C.VkPhysicalDeviceShadingRateImagePropertiesNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DisplayProperties2) PassRef() (*C.VkDisplayProperties2KHR, *cgoAllocMap) {
+func (x *PhysicalDeviceShadingRateImagePropertiesNV) PassRef() (*C.VkPhysicalDeviceShadingRateImagePropertiesNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref80194833 != nil {
- return x.ref80194833, nil
+ } else if x.refea059f34 != nil {
+ return x.refea059f34, nil
}
- mem80194833 := allocDisplayProperties2Memory(1)
- ref80194833 := (*C.VkDisplayProperties2KHR)(mem80194833)
- allocs80194833 := new(cgoAllocMap)
- allocs80194833.Add(mem80194833)
+ memea059f34 := allocPhysicalDeviceShadingRateImagePropertiesNVMemory(1)
+ refea059f34 := (*C.VkPhysicalDeviceShadingRateImagePropertiesNV)(memea059f34)
+ allocsea059f34 := new(cgoAllocMap)
+ allocsea059f34.Add(memea059f34)
var csType_allocs *cgoAllocMap
- ref80194833.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs80194833.Borrow(csType_allocs)
+ refea059f34.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsea059f34.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref80194833.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs80194833.Borrow(cpNext_allocs)
+ refea059f34.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsea059f34.Borrow(cpNext_allocs)
- var cdisplayProperties_allocs *cgoAllocMap
- ref80194833.displayProperties, cdisplayProperties_allocs = x.DisplayProperties.PassValue()
- allocs80194833.Borrow(cdisplayProperties_allocs)
+ var cshadingRateTexelSize_allocs *cgoAllocMap
+ refea059f34.shadingRateTexelSize, cshadingRateTexelSize_allocs = x.ShadingRateTexelSize.PassValue()
+ allocsea059f34.Borrow(cshadingRateTexelSize_allocs)
- x.ref80194833 = ref80194833
- x.allocs80194833 = allocs80194833
- return ref80194833, allocs80194833
+ var cshadingRatePaletteSize_allocs *cgoAllocMap
+ refea059f34.shadingRatePaletteSize, cshadingRatePaletteSize_allocs = (C.uint32_t)(x.ShadingRatePaletteSize), cgoAllocsUnknown
+ allocsea059f34.Borrow(cshadingRatePaletteSize_allocs)
+
+ var cshadingRateMaxCoarseSamples_allocs *cgoAllocMap
+ refea059f34.shadingRateMaxCoarseSamples, cshadingRateMaxCoarseSamples_allocs = (C.uint32_t)(x.ShadingRateMaxCoarseSamples), cgoAllocsUnknown
+ allocsea059f34.Borrow(cshadingRateMaxCoarseSamples_allocs)
+
+ x.refea059f34 = refea059f34
+ x.allocsea059f34 = allocsea059f34
+ return refea059f34, allocsea059f34
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DisplayProperties2) PassValue() (C.VkDisplayProperties2KHR, *cgoAllocMap) {
- if x.ref80194833 != nil {
- return *x.ref80194833, nil
+func (x PhysicalDeviceShadingRateImagePropertiesNV) PassValue() (C.VkPhysicalDeviceShadingRateImagePropertiesNV, *cgoAllocMap) {
+ if x.refea059f34 != nil {
+ return *x.refea059f34, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -24379,90 +51332,92 @@ func (x DisplayProperties2) PassValue() (C.VkDisplayProperties2KHR, *cgoAllocMap
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DisplayProperties2) Deref() {
- if x.ref80194833 == nil {
+func (x *PhysicalDeviceShadingRateImagePropertiesNV) Deref() {
+ if x.refea059f34 == nil {
return
}
- x.SType = (StructureType)(x.ref80194833.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref80194833.pNext))
- x.DisplayProperties = *NewDisplayPropertiesRef(unsafe.Pointer(&x.ref80194833.displayProperties))
+ x.SType = (StructureType)(x.refea059f34.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refea059f34.pNext))
+ x.ShadingRateTexelSize = *NewExtent2DRef(unsafe.Pointer(&x.refea059f34.shadingRateTexelSize))
+ x.ShadingRatePaletteSize = (uint32)(x.refea059f34.shadingRatePaletteSize)
+ x.ShadingRateMaxCoarseSamples = (uint32)(x.refea059f34.shadingRateMaxCoarseSamples)
}
-// allocDisplayPlaneProperties2Memory allocates memory for type C.VkDisplayPlaneProperties2KHR in C.
+// allocCoarseSampleLocationNVMemory allocates memory for type C.VkCoarseSampleLocationNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDisplayPlaneProperties2Memory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplayPlaneProperties2Value))
+func allocCoarseSampleLocationNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCoarseSampleLocationNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDisplayPlaneProperties2Value = unsafe.Sizeof([1]C.VkDisplayPlaneProperties2KHR{})
+const sizeOfCoarseSampleLocationNVValue = unsafe.Sizeof([1]C.VkCoarseSampleLocationNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DisplayPlaneProperties2) Ref() *C.VkDisplayPlaneProperties2KHR {
+func (x *CoarseSampleLocationNV) Ref() *C.VkCoarseSampleLocationNV {
if x == nil {
return nil
}
- return x.refa72b1e5b
+ return x.ref2f447beb
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DisplayPlaneProperties2) Free() {
- if x != nil && x.allocsa72b1e5b != nil {
- x.allocsa72b1e5b.(*cgoAllocMap).Free()
- x.refa72b1e5b = nil
+func (x *CoarseSampleLocationNV) Free() {
+ if x != nil && x.allocs2f447beb != nil {
+ x.allocs2f447beb.(*cgoAllocMap).Free()
+ x.ref2f447beb = nil
}
}
-// NewDisplayPlaneProperties2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// NewCoarseSampleLocationNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDisplayPlaneProperties2Ref(ref unsafe.Pointer) *DisplayPlaneProperties2 {
+func NewCoarseSampleLocationNVRef(ref unsafe.Pointer) *CoarseSampleLocationNV {
if ref == nil {
return nil
}
- obj := new(DisplayPlaneProperties2)
- obj.refa72b1e5b = (*C.VkDisplayPlaneProperties2KHR)(unsafe.Pointer(ref))
+ obj := new(CoarseSampleLocationNV)
+ obj.ref2f447beb = (*C.VkCoarseSampleLocationNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DisplayPlaneProperties2) PassRef() (*C.VkDisplayPlaneProperties2KHR, *cgoAllocMap) {
+func (x *CoarseSampleLocationNV) PassRef() (*C.VkCoarseSampleLocationNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refa72b1e5b != nil {
- return x.refa72b1e5b, nil
+ } else if x.ref2f447beb != nil {
+ return x.ref2f447beb, nil
}
- mema72b1e5b := allocDisplayPlaneProperties2Memory(1)
- refa72b1e5b := (*C.VkDisplayPlaneProperties2KHR)(mema72b1e5b)
- allocsa72b1e5b := new(cgoAllocMap)
- allocsa72b1e5b.Add(mema72b1e5b)
+ mem2f447beb := allocCoarseSampleLocationNVMemory(1)
+ ref2f447beb := (*C.VkCoarseSampleLocationNV)(mem2f447beb)
+ allocs2f447beb := new(cgoAllocMap)
+ allocs2f447beb.Add(mem2f447beb)
- var csType_allocs *cgoAllocMap
- refa72b1e5b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsa72b1e5b.Borrow(csType_allocs)
+ var cpixelX_allocs *cgoAllocMap
+ ref2f447beb.pixelX, cpixelX_allocs = (C.uint32_t)(x.PixelX), cgoAllocsUnknown
+ allocs2f447beb.Borrow(cpixelX_allocs)
- var cpNext_allocs *cgoAllocMap
- refa72b1e5b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsa72b1e5b.Borrow(cpNext_allocs)
+ var cpixelY_allocs *cgoAllocMap
+ ref2f447beb.pixelY, cpixelY_allocs = (C.uint32_t)(x.PixelY), cgoAllocsUnknown
+ allocs2f447beb.Borrow(cpixelY_allocs)
- var cdisplayPlaneProperties_allocs *cgoAllocMap
- refa72b1e5b.displayPlaneProperties, cdisplayPlaneProperties_allocs = x.DisplayPlaneProperties.PassValue()
- allocsa72b1e5b.Borrow(cdisplayPlaneProperties_allocs)
+ var csample_allocs *cgoAllocMap
+ ref2f447beb.sample, csample_allocs = (C.uint32_t)(x.Sample), cgoAllocsUnknown
+ allocs2f447beb.Borrow(csample_allocs)
- x.refa72b1e5b = refa72b1e5b
- x.allocsa72b1e5b = allocsa72b1e5b
- return refa72b1e5b, allocsa72b1e5b
+ x.ref2f447beb = ref2f447beb
+ x.allocs2f447beb = allocs2f447beb
+ return ref2f447beb, allocs2f447beb
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DisplayPlaneProperties2) PassValue() (C.VkDisplayPlaneProperties2KHR, *cgoAllocMap) {
- if x.refa72b1e5b != nil {
- return *x.refa72b1e5b, nil
+func (x CoarseSampleLocationNV) PassValue() (C.VkCoarseSampleLocationNV, *cgoAllocMap) {
+ if x.ref2f447beb != nil {
+ return *x.ref2f447beb, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -24470,90 +51425,132 @@ func (x DisplayPlaneProperties2) PassValue() (C.VkDisplayPlaneProperties2KHR, *c
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DisplayPlaneProperties2) Deref() {
- if x.refa72b1e5b == nil {
+func (x *CoarseSampleLocationNV) Deref() {
+ if x.ref2f447beb == nil {
return
}
- x.SType = (StructureType)(x.refa72b1e5b.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa72b1e5b.pNext))
- x.DisplayPlaneProperties = *NewDisplayPlanePropertiesRef(unsafe.Pointer(&x.refa72b1e5b.displayPlaneProperties))
+ x.PixelX = (uint32)(x.ref2f447beb.pixelX)
+ x.PixelY = (uint32)(x.ref2f447beb.pixelY)
+ x.Sample = (uint32)(x.ref2f447beb.sample)
}
-// allocDisplayModeProperties2Memory allocates memory for type C.VkDisplayModeProperties2KHR in C.
+// allocCoarseSampleOrderCustomNVMemory allocates memory for type C.VkCoarseSampleOrderCustomNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDisplayModeProperties2Memory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplayModeProperties2Value))
+func allocCoarseSampleOrderCustomNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCoarseSampleOrderCustomNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDisplayModeProperties2Value = unsafe.Sizeof([1]C.VkDisplayModeProperties2KHR{})
+const sizeOfCoarseSampleOrderCustomNVValue = unsafe.Sizeof([1]C.VkCoarseSampleOrderCustomNV{})
+
+// unpackSCoarseSampleLocationNV transforms a sliced Go data structure into plain C format.
+func unpackSCoarseSampleLocationNV(x []CoarseSampleLocationNV) (unpacked *C.VkCoarseSampleLocationNV, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkCoarseSampleLocationNV) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocCoarseSampleLocationNVMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkCoarseSampleLocationNV)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkCoarseSampleLocationNV)(h.Data)
+ return
+}
+
+// packSCoarseSampleLocationNV reads sliced Go data structure out from plain C format.
+func packSCoarseSampleLocationNV(v []CoarseSampleLocationNV, ptr0 *C.VkCoarseSampleLocationNV) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfCoarseSampleLocationNVValue]C.VkCoarseSampleLocationNV)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewCoarseSampleLocationNVRef(unsafe.Pointer(&ptr1))
+ }
+}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DisplayModeProperties2) Ref() *C.VkDisplayModeProperties2KHR {
+func (x *CoarseSampleOrderCustomNV) Ref() *C.VkCoarseSampleOrderCustomNV {
if x == nil {
return nil
}
- return x.refc566048d
+ return x.ref4524fa09
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DisplayModeProperties2) Free() {
- if x != nil && x.allocsc566048d != nil {
- x.allocsc566048d.(*cgoAllocMap).Free()
- x.refc566048d = nil
+func (x *CoarseSampleOrderCustomNV) Free() {
+ if x != nil && x.allocs4524fa09 != nil {
+ x.allocs4524fa09.(*cgoAllocMap).Free()
+ x.ref4524fa09 = nil
}
}
-// NewDisplayModeProperties2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// NewCoarseSampleOrderCustomNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDisplayModeProperties2Ref(ref unsafe.Pointer) *DisplayModeProperties2 {
+func NewCoarseSampleOrderCustomNVRef(ref unsafe.Pointer) *CoarseSampleOrderCustomNV {
if ref == nil {
return nil
}
- obj := new(DisplayModeProperties2)
- obj.refc566048d = (*C.VkDisplayModeProperties2KHR)(unsafe.Pointer(ref))
+ obj := new(CoarseSampleOrderCustomNV)
+ obj.ref4524fa09 = (*C.VkCoarseSampleOrderCustomNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DisplayModeProperties2) PassRef() (*C.VkDisplayModeProperties2KHR, *cgoAllocMap) {
+func (x *CoarseSampleOrderCustomNV) PassRef() (*C.VkCoarseSampleOrderCustomNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refc566048d != nil {
- return x.refc566048d, nil
+ } else if x.ref4524fa09 != nil {
+ return x.ref4524fa09, nil
}
- memc566048d := allocDisplayModeProperties2Memory(1)
- refc566048d := (*C.VkDisplayModeProperties2KHR)(memc566048d)
- allocsc566048d := new(cgoAllocMap)
- allocsc566048d.Add(memc566048d)
+ mem4524fa09 := allocCoarseSampleOrderCustomNVMemory(1)
+ ref4524fa09 := (*C.VkCoarseSampleOrderCustomNV)(mem4524fa09)
+ allocs4524fa09 := new(cgoAllocMap)
+ allocs4524fa09.Add(mem4524fa09)
- var csType_allocs *cgoAllocMap
- refc566048d.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsc566048d.Borrow(csType_allocs)
+ var cshadingRate_allocs *cgoAllocMap
+ ref4524fa09.shadingRate, cshadingRate_allocs = (C.VkShadingRatePaletteEntryNV)(x.ShadingRate), cgoAllocsUnknown
+ allocs4524fa09.Borrow(cshadingRate_allocs)
- var cpNext_allocs *cgoAllocMap
- refc566048d.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsc566048d.Borrow(cpNext_allocs)
+ var csampleCount_allocs *cgoAllocMap
+ ref4524fa09.sampleCount, csampleCount_allocs = (C.uint32_t)(x.SampleCount), cgoAllocsUnknown
+ allocs4524fa09.Borrow(csampleCount_allocs)
- var cdisplayModeProperties_allocs *cgoAllocMap
- refc566048d.displayModeProperties, cdisplayModeProperties_allocs = x.DisplayModeProperties.PassValue()
- allocsc566048d.Borrow(cdisplayModeProperties_allocs)
+ var csampleLocationCount_allocs *cgoAllocMap
+ ref4524fa09.sampleLocationCount, csampleLocationCount_allocs = (C.uint32_t)(x.SampleLocationCount), cgoAllocsUnknown
+ allocs4524fa09.Borrow(csampleLocationCount_allocs)
- x.refc566048d = refc566048d
- x.allocsc566048d = allocsc566048d
- return refc566048d, allocsc566048d
+ var cpSampleLocations_allocs *cgoAllocMap
+ ref4524fa09.pSampleLocations, cpSampleLocations_allocs = unpackSCoarseSampleLocationNV(x.PSampleLocations)
+ allocs4524fa09.Borrow(cpSampleLocations_allocs)
+
+ x.ref4524fa09 = ref4524fa09
+ x.allocs4524fa09 = allocs4524fa09
+ return ref4524fa09, allocs4524fa09
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DisplayModeProperties2) PassValue() (C.VkDisplayModeProperties2KHR, *cgoAllocMap) {
- if x.refc566048d != nil {
- return *x.refc566048d, nil
+func (x CoarseSampleOrderCustomNV) PassValue() (C.VkCoarseSampleOrderCustomNV, *cgoAllocMap) {
+ if x.ref4524fa09 != nil {
+ return *x.ref4524fa09, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -24561,94 +51558,137 @@ func (x DisplayModeProperties2) PassValue() (C.VkDisplayModeProperties2KHR, *cgo
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DisplayModeProperties2) Deref() {
- if x.refc566048d == nil {
+func (x *CoarseSampleOrderCustomNV) Deref() {
+ if x.ref4524fa09 == nil {
return
}
- x.SType = (StructureType)(x.refc566048d.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc566048d.pNext))
- x.DisplayModeProperties = *NewDisplayModePropertiesRef(unsafe.Pointer(&x.refc566048d.displayModeProperties))
+ x.ShadingRate = (ShadingRatePaletteEntryNV)(x.ref4524fa09.shadingRate)
+ x.SampleCount = (uint32)(x.ref4524fa09.sampleCount)
+ x.SampleLocationCount = (uint32)(x.ref4524fa09.sampleLocationCount)
+ packSCoarseSampleLocationNV(x.PSampleLocations, x.ref4524fa09.pSampleLocations)
}
-// allocDisplayPlaneInfo2Memory allocates memory for type C.VkDisplayPlaneInfo2KHR in C.
+// allocPipelineViewportCoarseSampleOrderStateCreateInfoNVMemory allocates memory for type C.VkPipelineViewportCoarseSampleOrderStateCreateInfoNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDisplayPlaneInfo2Memory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplayPlaneInfo2Value))
+func allocPipelineViewportCoarseSampleOrderStateCreateInfoNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineViewportCoarseSampleOrderStateCreateInfoNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDisplayPlaneInfo2Value = unsafe.Sizeof([1]C.VkDisplayPlaneInfo2KHR{})
+const sizeOfPipelineViewportCoarseSampleOrderStateCreateInfoNVValue = unsafe.Sizeof([1]C.VkPipelineViewportCoarseSampleOrderStateCreateInfoNV{})
+
+// unpackSCoarseSampleOrderCustomNV transforms a sliced Go data structure into plain C format.
+func unpackSCoarseSampleOrderCustomNV(x []CoarseSampleOrderCustomNV) (unpacked *C.VkCoarseSampleOrderCustomNV, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkCoarseSampleOrderCustomNV) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocCoarseSampleOrderCustomNVMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkCoarseSampleOrderCustomNV)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkCoarseSampleOrderCustomNV)(h.Data)
+ return
+}
+
+// packSCoarseSampleOrderCustomNV reads sliced Go data structure out from plain C format.
+func packSCoarseSampleOrderCustomNV(v []CoarseSampleOrderCustomNV, ptr0 *C.VkCoarseSampleOrderCustomNV) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfCoarseSampleOrderCustomNVValue]C.VkCoarseSampleOrderCustomNV)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewCoarseSampleOrderCustomNVRef(unsafe.Pointer(&ptr1))
+ }
+}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DisplayPlaneInfo2) Ref() *C.VkDisplayPlaneInfo2KHR {
+func (x *PipelineViewportCoarseSampleOrderStateCreateInfoNV) Ref() *C.VkPipelineViewportCoarseSampleOrderStateCreateInfoNV {
if x == nil {
return nil
}
- return x.reff355ccbf
+ return x.ref54de8ca6
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DisplayPlaneInfo2) Free() {
- if x != nil && x.allocsf355ccbf != nil {
- x.allocsf355ccbf.(*cgoAllocMap).Free()
- x.reff355ccbf = nil
+func (x *PipelineViewportCoarseSampleOrderStateCreateInfoNV) Free() {
+ if x != nil && x.allocs54de8ca6 != nil {
+ x.allocs54de8ca6.(*cgoAllocMap).Free()
+ x.ref54de8ca6 = nil
}
}
-// NewDisplayPlaneInfo2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineViewportCoarseSampleOrderStateCreateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDisplayPlaneInfo2Ref(ref unsafe.Pointer) *DisplayPlaneInfo2 {
+func NewPipelineViewportCoarseSampleOrderStateCreateInfoNVRef(ref unsafe.Pointer) *PipelineViewportCoarseSampleOrderStateCreateInfoNV {
if ref == nil {
return nil
}
- obj := new(DisplayPlaneInfo2)
- obj.reff355ccbf = (*C.VkDisplayPlaneInfo2KHR)(unsafe.Pointer(ref))
+ obj := new(PipelineViewportCoarseSampleOrderStateCreateInfoNV)
+ obj.ref54de8ca6 = (*C.VkPipelineViewportCoarseSampleOrderStateCreateInfoNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DisplayPlaneInfo2) PassRef() (*C.VkDisplayPlaneInfo2KHR, *cgoAllocMap) {
+func (x *PipelineViewportCoarseSampleOrderStateCreateInfoNV) PassRef() (*C.VkPipelineViewportCoarseSampleOrderStateCreateInfoNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.reff355ccbf != nil {
- return x.reff355ccbf, nil
+ } else if x.ref54de8ca6 != nil {
+ return x.ref54de8ca6, nil
}
- memf355ccbf := allocDisplayPlaneInfo2Memory(1)
- reff355ccbf := (*C.VkDisplayPlaneInfo2KHR)(memf355ccbf)
- allocsf355ccbf := new(cgoAllocMap)
- allocsf355ccbf.Add(memf355ccbf)
+ mem54de8ca6 := allocPipelineViewportCoarseSampleOrderStateCreateInfoNVMemory(1)
+ ref54de8ca6 := (*C.VkPipelineViewportCoarseSampleOrderStateCreateInfoNV)(mem54de8ca6)
+ allocs54de8ca6 := new(cgoAllocMap)
+ allocs54de8ca6.Add(mem54de8ca6)
var csType_allocs *cgoAllocMap
- reff355ccbf.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsf355ccbf.Borrow(csType_allocs)
+ ref54de8ca6.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs54de8ca6.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- reff355ccbf.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsf355ccbf.Borrow(cpNext_allocs)
+ ref54de8ca6.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs54de8ca6.Borrow(cpNext_allocs)
- var cmode_allocs *cgoAllocMap
- reff355ccbf.mode, cmode_allocs = *(*C.VkDisplayModeKHR)(unsafe.Pointer(&x.Mode)), cgoAllocsUnknown
- allocsf355ccbf.Borrow(cmode_allocs)
+ var csampleOrderType_allocs *cgoAllocMap
+ ref54de8ca6.sampleOrderType, csampleOrderType_allocs = (C.VkCoarseSampleOrderTypeNV)(x.SampleOrderType), cgoAllocsUnknown
+ allocs54de8ca6.Borrow(csampleOrderType_allocs)
- var cplaneIndex_allocs *cgoAllocMap
- reff355ccbf.planeIndex, cplaneIndex_allocs = (C.uint32_t)(x.PlaneIndex), cgoAllocsUnknown
- allocsf355ccbf.Borrow(cplaneIndex_allocs)
+ var ccustomSampleOrderCount_allocs *cgoAllocMap
+ ref54de8ca6.customSampleOrderCount, ccustomSampleOrderCount_allocs = (C.uint32_t)(x.CustomSampleOrderCount), cgoAllocsUnknown
+ allocs54de8ca6.Borrow(ccustomSampleOrderCount_allocs)
- x.reff355ccbf = reff355ccbf
- x.allocsf355ccbf = allocsf355ccbf
- return reff355ccbf, allocsf355ccbf
+ var cpCustomSampleOrders_allocs *cgoAllocMap
+ ref54de8ca6.pCustomSampleOrders, cpCustomSampleOrders_allocs = unpackSCoarseSampleOrderCustomNV(x.PCustomSampleOrders)
+ allocs54de8ca6.Borrow(cpCustomSampleOrders_allocs)
+
+ x.ref54de8ca6 = ref54de8ca6
+ x.allocs54de8ca6 = allocs54de8ca6
+ return ref54de8ca6, allocs54de8ca6
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DisplayPlaneInfo2) PassValue() (C.VkDisplayPlaneInfo2KHR, *cgoAllocMap) {
- if x.reff355ccbf != nil {
- return *x.reff355ccbf, nil
+func (x PipelineViewportCoarseSampleOrderStateCreateInfoNV) PassValue() (C.VkPipelineViewportCoarseSampleOrderStateCreateInfoNV, *cgoAllocMap) {
+ if x.ref54de8ca6 != nil {
+ return *x.ref54de8ca6, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -24656,91 +51696,92 @@ func (x DisplayPlaneInfo2) PassValue() (C.VkDisplayPlaneInfo2KHR, *cgoAllocMap)
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DisplayPlaneInfo2) Deref() {
- if x.reff355ccbf == nil {
+func (x *PipelineViewportCoarseSampleOrderStateCreateInfoNV) Deref() {
+ if x.ref54de8ca6 == nil {
return
}
- x.SType = (StructureType)(x.reff355ccbf.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff355ccbf.pNext))
- x.Mode = *(*DisplayMode)(unsafe.Pointer(&x.reff355ccbf.mode))
- x.PlaneIndex = (uint32)(x.reff355ccbf.planeIndex)
+ x.SType = (StructureType)(x.ref54de8ca6.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref54de8ca6.pNext))
+ x.SampleOrderType = (CoarseSampleOrderTypeNV)(x.ref54de8ca6.sampleOrderType)
+ x.CustomSampleOrderCount = (uint32)(x.ref54de8ca6.customSampleOrderCount)
+ packSCoarseSampleOrderCustomNV(x.PCustomSampleOrders, x.ref54de8ca6.pCustomSampleOrders)
}
-// allocDisplayPlaneCapabilities2Memory allocates memory for type C.VkDisplayPlaneCapabilities2KHR in C.
+// allocPhysicalDeviceRepresentativeFragmentTestFeaturesNVMemory allocates memory for type C.VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDisplayPlaneCapabilities2Memory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplayPlaneCapabilities2Value))
+func allocPhysicalDeviceRepresentativeFragmentTestFeaturesNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceRepresentativeFragmentTestFeaturesNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDisplayPlaneCapabilities2Value = unsafe.Sizeof([1]C.VkDisplayPlaneCapabilities2KHR{})
+const sizeOfPhysicalDeviceRepresentativeFragmentTestFeaturesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DisplayPlaneCapabilities2) Ref() *C.VkDisplayPlaneCapabilities2KHR {
+func (x *PhysicalDeviceRepresentativeFragmentTestFeaturesNV) Ref() *C.VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV {
if x == nil {
return nil
}
- return x.refb53dfb44
+ return x.reff1f69e03
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DisplayPlaneCapabilities2) Free() {
- if x != nil && x.allocsb53dfb44 != nil {
- x.allocsb53dfb44.(*cgoAllocMap).Free()
- x.refb53dfb44 = nil
+func (x *PhysicalDeviceRepresentativeFragmentTestFeaturesNV) Free() {
+ if x != nil && x.allocsf1f69e03 != nil {
+ x.allocsf1f69e03.(*cgoAllocMap).Free()
+ x.reff1f69e03 = nil
}
}
-// NewDisplayPlaneCapabilities2Ref creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceRepresentativeFragmentTestFeaturesNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDisplayPlaneCapabilities2Ref(ref unsafe.Pointer) *DisplayPlaneCapabilities2 {
+func NewPhysicalDeviceRepresentativeFragmentTestFeaturesNVRef(ref unsafe.Pointer) *PhysicalDeviceRepresentativeFragmentTestFeaturesNV {
if ref == nil {
return nil
}
- obj := new(DisplayPlaneCapabilities2)
- obj.refb53dfb44 = (*C.VkDisplayPlaneCapabilities2KHR)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceRepresentativeFragmentTestFeaturesNV)
+ obj.reff1f69e03 = (*C.VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DisplayPlaneCapabilities2) PassRef() (*C.VkDisplayPlaneCapabilities2KHR, *cgoAllocMap) {
+func (x *PhysicalDeviceRepresentativeFragmentTestFeaturesNV) PassRef() (*C.VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refb53dfb44 != nil {
- return x.refb53dfb44, nil
+ } else if x.reff1f69e03 != nil {
+ return x.reff1f69e03, nil
}
- memb53dfb44 := allocDisplayPlaneCapabilities2Memory(1)
- refb53dfb44 := (*C.VkDisplayPlaneCapabilities2KHR)(memb53dfb44)
- allocsb53dfb44 := new(cgoAllocMap)
- allocsb53dfb44.Add(memb53dfb44)
+ memf1f69e03 := allocPhysicalDeviceRepresentativeFragmentTestFeaturesNVMemory(1)
+ reff1f69e03 := (*C.VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV)(memf1f69e03)
+ allocsf1f69e03 := new(cgoAllocMap)
+ allocsf1f69e03.Add(memf1f69e03)
var csType_allocs *cgoAllocMap
- refb53dfb44.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsb53dfb44.Borrow(csType_allocs)
+ reff1f69e03.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsf1f69e03.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refb53dfb44.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsb53dfb44.Borrow(cpNext_allocs)
+ reff1f69e03.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsf1f69e03.Borrow(cpNext_allocs)
- var ccapabilities_allocs *cgoAllocMap
- refb53dfb44.capabilities, ccapabilities_allocs = x.Capabilities.PassValue()
- allocsb53dfb44.Borrow(ccapabilities_allocs)
+ var crepresentativeFragmentTest_allocs *cgoAllocMap
+ reff1f69e03.representativeFragmentTest, crepresentativeFragmentTest_allocs = (C.VkBool32)(x.RepresentativeFragmentTest), cgoAllocsUnknown
+ allocsf1f69e03.Borrow(crepresentativeFragmentTest_allocs)
- x.refb53dfb44 = refb53dfb44
- x.allocsb53dfb44 = allocsb53dfb44
- return refb53dfb44, allocsb53dfb44
+ x.reff1f69e03 = reff1f69e03
+ x.allocsf1f69e03 = allocsf1f69e03
+ return reff1f69e03, allocsf1f69e03
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DisplayPlaneCapabilities2) PassValue() (C.VkDisplayPlaneCapabilities2KHR, *cgoAllocMap) {
- if x.refb53dfb44 != nil {
- return *x.refb53dfb44, nil
+func (x PhysicalDeviceRepresentativeFragmentTestFeaturesNV) PassValue() (C.VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV, *cgoAllocMap) {
+ if x.reff1f69e03 != nil {
+ return *x.reff1f69e03, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -24748,94 +51789,90 @@ func (x DisplayPlaneCapabilities2) PassValue() (C.VkDisplayPlaneCapabilities2KHR
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DisplayPlaneCapabilities2) Deref() {
- if x.refb53dfb44 == nil {
+func (x *PhysicalDeviceRepresentativeFragmentTestFeaturesNV) Deref() {
+ if x.reff1f69e03 == nil {
return
}
- x.SType = (StructureType)(x.refb53dfb44.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb53dfb44.pNext))
- x.Capabilities = *NewDisplayPlaneCapabilitiesRef(unsafe.Pointer(&x.refb53dfb44.capabilities))
+ x.SType = (StructureType)(x.reff1f69e03.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff1f69e03.pNext))
+ x.RepresentativeFragmentTest = (Bool32)(x.reff1f69e03.representativeFragmentTest)
}
-// allocImageFormatListCreateInfoMemory allocates memory for type C.VkImageFormatListCreateInfoKHR in C.
+// allocPipelineRepresentativeFragmentTestStateCreateInfoNVMemory allocates memory for type C.VkPipelineRepresentativeFragmentTestStateCreateInfoNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocImageFormatListCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageFormatListCreateInfoValue))
+func allocPipelineRepresentativeFragmentTestStateCreateInfoNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineRepresentativeFragmentTestStateCreateInfoNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfImageFormatListCreateInfoValue = unsafe.Sizeof([1]C.VkImageFormatListCreateInfoKHR{})
+const sizeOfPipelineRepresentativeFragmentTestStateCreateInfoNVValue = unsafe.Sizeof([1]C.VkPipelineRepresentativeFragmentTestStateCreateInfoNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ImageFormatListCreateInfo) Ref() *C.VkImageFormatListCreateInfoKHR {
+func (x *PipelineRepresentativeFragmentTestStateCreateInfoNV) Ref() *C.VkPipelineRepresentativeFragmentTestStateCreateInfoNV {
if x == nil {
return nil
}
- return x.ref815daf8c
+ return x.ref9c224e21
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ImageFormatListCreateInfo) Free() {
- if x != nil && x.allocs815daf8c != nil {
- x.allocs815daf8c.(*cgoAllocMap).Free()
- x.ref815daf8c = nil
+func (x *PipelineRepresentativeFragmentTestStateCreateInfoNV) Free() {
+ if x != nil && x.allocs9c224e21 != nil {
+ x.allocs9c224e21.(*cgoAllocMap).Free()
+ x.ref9c224e21 = nil
}
}
-// NewImageFormatListCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineRepresentativeFragmentTestStateCreateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewImageFormatListCreateInfoRef(ref unsafe.Pointer) *ImageFormatListCreateInfo {
+func NewPipelineRepresentativeFragmentTestStateCreateInfoNVRef(ref unsafe.Pointer) *PipelineRepresentativeFragmentTestStateCreateInfoNV {
if ref == nil {
return nil
}
- obj := new(ImageFormatListCreateInfo)
- obj.ref815daf8c = (*C.VkImageFormatListCreateInfoKHR)(unsafe.Pointer(ref))
+ obj := new(PipelineRepresentativeFragmentTestStateCreateInfoNV)
+ obj.ref9c224e21 = (*C.VkPipelineRepresentativeFragmentTestStateCreateInfoNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ImageFormatListCreateInfo) PassRef() (*C.VkImageFormatListCreateInfoKHR, *cgoAllocMap) {
+func (x *PipelineRepresentativeFragmentTestStateCreateInfoNV) PassRef() (*C.VkPipelineRepresentativeFragmentTestStateCreateInfoNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref815daf8c != nil {
- return x.ref815daf8c, nil
+ } else if x.ref9c224e21 != nil {
+ return x.ref9c224e21, nil
}
- mem815daf8c := allocImageFormatListCreateInfoMemory(1)
- ref815daf8c := (*C.VkImageFormatListCreateInfoKHR)(mem815daf8c)
- allocs815daf8c := new(cgoAllocMap)
- allocs815daf8c.Add(mem815daf8c)
+ mem9c224e21 := allocPipelineRepresentativeFragmentTestStateCreateInfoNVMemory(1)
+ ref9c224e21 := (*C.VkPipelineRepresentativeFragmentTestStateCreateInfoNV)(mem9c224e21)
+ allocs9c224e21 := new(cgoAllocMap)
+ allocs9c224e21.Add(mem9c224e21)
var csType_allocs *cgoAllocMap
- ref815daf8c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs815daf8c.Borrow(csType_allocs)
+ ref9c224e21.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs9c224e21.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref815daf8c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs815daf8c.Borrow(cpNext_allocs)
-
- var cviewFormatCount_allocs *cgoAllocMap
- ref815daf8c.viewFormatCount, cviewFormatCount_allocs = (C.uint32_t)(x.ViewFormatCount), cgoAllocsUnknown
- allocs815daf8c.Borrow(cviewFormatCount_allocs)
+ ref9c224e21.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs9c224e21.Borrow(cpNext_allocs)
- var cpViewFormats_allocs *cgoAllocMap
- ref815daf8c.pViewFormats, cpViewFormats_allocs = (*C.VkFormat)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PViewFormats)).Data)), cgoAllocsUnknown
- allocs815daf8c.Borrow(cpViewFormats_allocs)
+ var crepresentativeFragmentTestEnable_allocs *cgoAllocMap
+ ref9c224e21.representativeFragmentTestEnable, crepresentativeFragmentTestEnable_allocs = (C.VkBool32)(x.RepresentativeFragmentTestEnable), cgoAllocsUnknown
+ allocs9c224e21.Borrow(crepresentativeFragmentTestEnable_allocs)
- x.ref815daf8c = ref815daf8c
- x.allocs815daf8c = allocs815daf8c
- return ref815daf8c, allocs815daf8c
+ x.ref9c224e21 = ref9c224e21
+ x.allocs9c224e21 = allocs9c224e21
+ return ref9c224e21, allocs9c224e21
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ImageFormatListCreateInfo) PassValue() (C.VkImageFormatListCreateInfoKHR, *cgoAllocMap) {
- if x.ref815daf8c != nil {
- return *x.ref815daf8c, nil
+func (x PipelineRepresentativeFragmentTestStateCreateInfoNV) PassValue() (C.VkPipelineRepresentativeFragmentTestStateCreateInfoNV, *cgoAllocMap) {
+ if x.ref9c224e21 != nil {
+ return *x.ref9c224e21, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -24843,103 +51880,90 @@ func (x ImageFormatListCreateInfo) PassValue() (C.VkImageFormatListCreateInfoKHR
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ImageFormatListCreateInfo) Deref() {
- if x.ref815daf8c == nil {
+func (x *PipelineRepresentativeFragmentTestStateCreateInfoNV) Deref() {
+ if x.ref9c224e21 == nil {
return
}
- x.SType = (StructureType)(x.ref815daf8c.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref815daf8c.pNext))
- x.ViewFormatCount = (uint32)(x.ref815daf8c.viewFormatCount)
- hxf15a567 := (*sliceHeader)(unsafe.Pointer(&x.PViewFormats))
- hxf15a567.Data = unsafe.Pointer(x.ref815daf8c.pViewFormats)
- hxf15a567.Cap = 0x7fffffff
- // hxf15a567.Len = ?
-
+ x.SType = (StructureType)(x.ref9c224e21.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref9c224e21.pNext))
+ x.RepresentativeFragmentTestEnable = (Bool32)(x.ref9c224e21.representativeFragmentTestEnable)
}
-// allocPhysicalDevice8BitStorageFeaturesMemory allocates memory for type C.VkPhysicalDevice8BitStorageFeaturesKHR in C.
+// allocPhysicalDeviceImageViewImageFormatInfoMemory allocates memory for type C.VkPhysicalDeviceImageViewImageFormatInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDevice8BitStorageFeaturesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDevice8BitStorageFeaturesValue))
+func allocPhysicalDeviceImageViewImageFormatInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceImageViewImageFormatInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDevice8BitStorageFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDevice8BitStorageFeaturesKHR{})
+const sizeOfPhysicalDeviceImageViewImageFormatInfoValue = unsafe.Sizeof([1]C.VkPhysicalDeviceImageViewImageFormatInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDevice8BitStorageFeatures) Ref() *C.VkPhysicalDevice8BitStorageFeaturesKHR {
+func (x *PhysicalDeviceImageViewImageFormatInfo) Ref() *C.VkPhysicalDeviceImageViewImageFormatInfoEXT {
if x == nil {
return nil
}
- return x.ref906ef48e
+ return x.ref99e4ab46
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDevice8BitStorageFeatures) Free() {
- if x != nil && x.allocs906ef48e != nil {
- x.allocs906ef48e.(*cgoAllocMap).Free()
- x.ref906ef48e = nil
+func (x *PhysicalDeviceImageViewImageFormatInfo) Free() {
+ if x != nil && x.allocs99e4ab46 != nil {
+ x.allocs99e4ab46.(*cgoAllocMap).Free()
+ x.ref99e4ab46 = nil
}
}
-// NewPhysicalDevice8BitStorageFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceImageViewImageFormatInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDevice8BitStorageFeaturesRef(ref unsafe.Pointer) *PhysicalDevice8BitStorageFeatures {
+func NewPhysicalDeviceImageViewImageFormatInfoRef(ref unsafe.Pointer) *PhysicalDeviceImageViewImageFormatInfo {
if ref == nil {
return nil
}
- obj := new(PhysicalDevice8BitStorageFeatures)
- obj.ref906ef48e = (*C.VkPhysicalDevice8BitStorageFeaturesKHR)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceImageViewImageFormatInfo)
+ obj.ref99e4ab46 = (*C.VkPhysicalDeviceImageViewImageFormatInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDevice8BitStorageFeatures) PassRef() (*C.VkPhysicalDevice8BitStorageFeaturesKHR, *cgoAllocMap) {
+func (x *PhysicalDeviceImageViewImageFormatInfo) PassRef() (*C.VkPhysicalDeviceImageViewImageFormatInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref906ef48e != nil {
- return x.ref906ef48e, nil
+ } else if x.ref99e4ab46 != nil {
+ return x.ref99e4ab46, nil
}
- mem906ef48e := allocPhysicalDevice8BitStorageFeaturesMemory(1)
- ref906ef48e := (*C.VkPhysicalDevice8BitStorageFeaturesKHR)(mem906ef48e)
- allocs906ef48e := new(cgoAllocMap)
- allocs906ef48e.Add(mem906ef48e)
+ mem99e4ab46 := allocPhysicalDeviceImageViewImageFormatInfoMemory(1)
+ ref99e4ab46 := (*C.VkPhysicalDeviceImageViewImageFormatInfoEXT)(mem99e4ab46)
+ allocs99e4ab46 := new(cgoAllocMap)
+ allocs99e4ab46.Add(mem99e4ab46)
var csType_allocs *cgoAllocMap
- ref906ef48e.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs906ef48e.Borrow(csType_allocs)
+ ref99e4ab46.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs99e4ab46.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref906ef48e.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs906ef48e.Borrow(cpNext_allocs)
-
- var cstorageBuffer8BitAccess_allocs *cgoAllocMap
- ref906ef48e.storageBuffer8BitAccess, cstorageBuffer8BitAccess_allocs = (C.VkBool32)(x.StorageBuffer8BitAccess), cgoAllocsUnknown
- allocs906ef48e.Borrow(cstorageBuffer8BitAccess_allocs)
-
- var cuniformAndStorageBuffer8BitAccess_allocs *cgoAllocMap
- ref906ef48e.uniformAndStorageBuffer8BitAccess, cuniformAndStorageBuffer8BitAccess_allocs = (C.VkBool32)(x.UniformAndStorageBuffer8BitAccess), cgoAllocsUnknown
- allocs906ef48e.Borrow(cuniformAndStorageBuffer8BitAccess_allocs)
+ ref99e4ab46.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs99e4ab46.Borrow(cpNext_allocs)
- var cstoragePushConstant8_allocs *cgoAllocMap
- ref906ef48e.storagePushConstant8, cstoragePushConstant8_allocs = (C.VkBool32)(x.StoragePushConstant8), cgoAllocsUnknown
- allocs906ef48e.Borrow(cstoragePushConstant8_allocs)
+ var cimageViewType_allocs *cgoAllocMap
+ ref99e4ab46.imageViewType, cimageViewType_allocs = (C.VkImageViewType)(x.ImageViewType), cgoAllocsUnknown
+ allocs99e4ab46.Borrow(cimageViewType_allocs)
- x.ref906ef48e = ref906ef48e
- x.allocs906ef48e = allocs906ef48e
- return ref906ef48e, allocs906ef48e
+ x.ref99e4ab46 = ref99e4ab46
+ x.allocs99e4ab46 = allocs99e4ab46
+ return ref99e4ab46, allocs99e4ab46
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDevice8BitStorageFeatures) PassValue() (C.VkPhysicalDevice8BitStorageFeaturesKHR, *cgoAllocMap) {
- if x.ref906ef48e != nil {
- return *x.ref906ef48e, nil
+func (x PhysicalDeviceImageViewImageFormatInfo) PassValue() (C.VkPhysicalDeviceImageViewImageFormatInfoEXT, *cgoAllocMap) {
+ if x.ref99e4ab46 != nil {
+ return *x.ref99e4ab46, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -24947,96 +51971,94 @@ func (x PhysicalDevice8BitStorageFeatures) PassValue() (C.VkPhysicalDevice8BitSt
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDevice8BitStorageFeatures) Deref() {
- if x.ref906ef48e == nil {
+func (x *PhysicalDeviceImageViewImageFormatInfo) Deref() {
+ if x.ref99e4ab46 == nil {
return
}
- x.SType = (StructureType)(x.ref906ef48e.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref906ef48e.pNext))
- x.StorageBuffer8BitAccess = (Bool32)(x.ref906ef48e.storageBuffer8BitAccess)
- x.UniformAndStorageBuffer8BitAccess = (Bool32)(x.ref906ef48e.uniformAndStorageBuffer8BitAccess)
- x.StoragePushConstant8 = (Bool32)(x.ref906ef48e.storagePushConstant8)
+ x.SType = (StructureType)(x.ref99e4ab46.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref99e4ab46.pNext))
+ x.ImageViewType = (ImageViewType)(x.ref99e4ab46.imageViewType)
}
-// allocPhysicalDeviceShaderAtomicInt64FeaturesMemory allocates memory for type C.VkPhysicalDeviceShaderAtomicInt64FeaturesKHR in C.
+// allocFilterCubicImageViewImageFormatPropertiesMemory allocates memory for type C.VkFilterCubicImageViewImageFormatPropertiesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceShaderAtomicInt64FeaturesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceShaderAtomicInt64FeaturesValue))
+func allocFilterCubicImageViewImageFormatPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfFilterCubicImageViewImageFormatPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceShaderAtomicInt64FeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceShaderAtomicInt64FeaturesKHR{})
+const sizeOfFilterCubicImageViewImageFormatPropertiesValue = unsafe.Sizeof([1]C.VkFilterCubicImageViewImageFormatPropertiesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceShaderAtomicInt64Features) Ref() *C.VkPhysicalDeviceShaderAtomicInt64FeaturesKHR {
+func (x *FilterCubicImageViewImageFormatProperties) Ref() *C.VkFilterCubicImageViewImageFormatPropertiesEXT {
if x == nil {
return nil
}
- return x.ref51c409c6
+ return x.refcf60927c
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceShaderAtomicInt64Features) Free() {
- if x != nil && x.allocs51c409c6 != nil {
- x.allocs51c409c6.(*cgoAllocMap).Free()
- x.ref51c409c6 = nil
+func (x *FilterCubicImageViewImageFormatProperties) Free() {
+ if x != nil && x.allocscf60927c != nil {
+ x.allocscf60927c.(*cgoAllocMap).Free()
+ x.refcf60927c = nil
}
}
-// NewPhysicalDeviceShaderAtomicInt64FeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewFilterCubicImageViewImageFormatPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceShaderAtomicInt64FeaturesRef(ref unsafe.Pointer) *PhysicalDeviceShaderAtomicInt64Features {
+func NewFilterCubicImageViewImageFormatPropertiesRef(ref unsafe.Pointer) *FilterCubicImageViewImageFormatProperties {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceShaderAtomicInt64Features)
- obj.ref51c409c6 = (*C.VkPhysicalDeviceShaderAtomicInt64FeaturesKHR)(unsafe.Pointer(ref))
+ obj := new(FilterCubicImageViewImageFormatProperties)
+ obj.refcf60927c = (*C.VkFilterCubicImageViewImageFormatPropertiesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceShaderAtomicInt64Features) PassRef() (*C.VkPhysicalDeviceShaderAtomicInt64FeaturesKHR, *cgoAllocMap) {
+func (x *FilterCubicImageViewImageFormatProperties) PassRef() (*C.VkFilterCubicImageViewImageFormatPropertiesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref51c409c6 != nil {
- return x.ref51c409c6, nil
+ } else if x.refcf60927c != nil {
+ return x.refcf60927c, nil
}
- mem51c409c6 := allocPhysicalDeviceShaderAtomicInt64FeaturesMemory(1)
- ref51c409c6 := (*C.VkPhysicalDeviceShaderAtomicInt64FeaturesKHR)(mem51c409c6)
- allocs51c409c6 := new(cgoAllocMap)
- allocs51c409c6.Add(mem51c409c6)
+ memcf60927c := allocFilterCubicImageViewImageFormatPropertiesMemory(1)
+ refcf60927c := (*C.VkFilterCubicImageViewImageFormatPropertiesEXT)(memcf60927c)
+ allocscf60927c := new(cgoAllocMap)
+ allocscf60927c.Add(memcf60927c)
var csType_allocs *cgoAllocMap
- ref51c409c6.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs51c409c6.Borrow(csType_allocs)
+ refcf60927c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocscf60927c.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref51c409c6.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs51c409c6.Borrow(cpNext_allocs)
+ refcf60927c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocscf60927c.Borrow(cpNext_allocs)
- var cshaderBufferInt64Atomics_allocs *cgoAllocMap
- ref51c409c6.shaderBufferInt64Atomics, cshaderBufferInt64Atomics_allocs = (C.VkBool32)(x.ShaderBufferInt64Atomics), cgoAllocsUnknown
- allocs51c409c6.Borrow(cshaderBufferInt64Atomics_allocs)
+ var cfilterCubic_allocs *cgoAllocMap
+ refcf60927c.filterCubic, cfilterCubic_allocs = (C.VkBool32)(x.FilterCubic), cgoAllocsUnknown
+ allocscf60927c.Borrow(cfilterCubic_allocs)
- var cshaderSharedInt64Atomics_allocs *cgoAllocMap
- ref51c409c6.shaderSharedInt64Atomics, cshaderSharedInt64Atomics_allocs = (C.VkBool32)(x.ShaderSharedInt64Atomics), cgoAllocsUnknown
- allocs51c409c6.Borrow(cshaderSharedInt64Atomics_allocs)
+ var cfilterCubicMinmax_allocs *cgoAllocMap
+ refcf60927c.filterCubicMinmax, cfilterCubicMinmax_allocs = (C.VkBool32)(x.FilterCubicMinmax), cgoAllocsUnknown
+ allocscf60927c.Borrow(cfilterCubicMinmax_allocs)
- x.ref51c409c6 = ref51c409c6
- x.allocs51c409c6 = allocs51c409c6
- return ref51c409c6, allocs51c409c6
+ x.refcf60927c = refcf60927c
+ x.allocscf60927c = allocscf60927c
+ return refcf60927c, allocscf60927c
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceShaderAtomicInt64Features) PassValue() (C.VkPhysicalDeviceShaderAtomicInt64FeaturesKHR, *cgoAllocMap) {
- if x.ref51c409c6 != nil {
- return *x.ref51c409c6, nil
+func (x FilterCubicImageViewImageFormatProperties) PassValue() (C.VkFilterCubicImageViewImageFormatPropertiesEXT, *cgoAllocMap) {
+ if x.refcf60927c != nil {
+ return *x.refcf60927c, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -25044,95 +52066,95 @@ func (x PhysicalDeviceShaderAtomicInt64Features) PassValue() (C.VkPhysicalDevice
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceShaderAtomicInt64Features) Deref() {
- if x.ref51c409c6 == nil {
+func (x *FilterCubicImageViewImageFormatProperties) Deref() {
+ if x.refcf60927c == nil {
return
}
- x.SType = (StructureType)(x.ref51c409c6.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref51c409c6.pNext))
- x.ShaderBufferInt64Atomics = (Bool32)(x.ref51c409c6.shaderBufferInt64Atomics)
- x.ShaderSharedInt64Atomics = (Bool32)(x.ref51c409c6.shaderSharedInt64Atomics)
+ x.SType = (StructureType)(x.refcf60927c.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refcf60927c.pNext))
+ x.FilterCubic = (Bool32)(x.refcf60927c.filterCubic)
+ x.FilterCubicMinmax = (Bool32)(x.refcf60927c.filterCubicMinmax)
}
-// allocConformanceVersionMemory allocates memory for type C.VkConformanceVersionKHR in C.
+// allocImportMemoryHostPointerInfoMemory allocates memory for type C.VkImportMemoryHostPointerInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocConformanceVersionMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfConformanceVersionValue))
+func allocImportMemoryHostPointerInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImportMemoryHostPointerInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfConformanceVersionValue = unsafe.Sizeof([1]C.VkConformanceVersionKHR{})
+const sizeOfImportMemoryHostPointerInfoValue = unsafe.Sizeof([1]C.VkImportMemoryHostPointerInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ConformanceVersion) Ref() *C.VkConformanceVersionKHR {
+func (x *ImportMemoryHostPointerInfo) Ref() *C.VkImportMemoryHostPointerInfoEXT {
if x == nil {
return nil
}
- return x.refe4627a5f
+ return x.reffe09253e
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ConformanceVersion) Free() {
- if x != nil && x.allocse4627a5f != nil {
- x.allocse4627a5f.(*cgoAllocMap).Free()
- x.refe4627a5f = nil
+func (x *ImportMemoryHostPointerInfo) Free() {
+ if x != nil && x.allocsfe09253e != nil {
+ x.allocsfe09253e.(*cgoAllocMap).Free()
+ x.reffe09253e = nil
}
}
-// NewConformanceVersionRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewImportMemoryHostPointerInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewConformanceVersionRef(ref unsafe.Pointer) *ConformanceVersion {
+func NewImportMemoryHostPointerInfoRef(ref unsafe.Pointer) *ImportMemoryHostPointerInfo {
if ref == nil {
return nil
}
- obj := new(ConformanceVersion)
- obj.refe4627a5f = (*C.VkConformanceVersionKHR)(unsafe.Pointer(ref))
+ obj := new(ImportMemoryHostPointerInfo)
+ obj.reffe09253e = (*C.VkImportMemoryHostPointerInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ConformanceVersion) PassRef() (*C.VkConformanceVersionKHR, *cgoAllocMap) {
+func (x *ImportMemoryHostPointerInfo) PassRef() (*C.VkImportMemoryHostPointerInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refe4627a5f != nil {
- return x.refe4627a5f, nil
+ } else if x.reffe09253e != nil {
+ return x.reffe09253e, nil
}
- meme4627a5f := allocConformanceVersionMemory(1)
- refe4627a5f := (*C.VkConformanceVersionKHR)(meme4627a5f)
- allocse4627a5f := new(cgoAllocMap)
- allocse4627a5f.Add(meme4627a5f)
+ memfe09253e := allocImportMemoryHostPointerInfoMemory(1)
+ reffe09253e := (*C.VkImportMemoryHostPointerInfoEXT)(memfe09253e)
+ allocsfe09253e := new(cgoAllocMap)
+ allocsfe09253e.Add(memfe09253e)
- var cmajor_allocs *cgoAllocMap
- refe4627a5f.major, cmajor_allocs = (C.uint8_t)(x.Major), cgoAllocsUnknown
- allocse4627a5f.Borrow(cmajor_allocs)
+ var csType_allocs *cgoAllocMap
+ reffe09253e.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsfe09253e.Borrow(csType_allocs)
- var cminor_allocs *cgoAllocMap
- refe4627a5f.minor, cminor_allocs = (C.uint8_t)(x.Minor), cgoAllocsUnknown
- allocse4627a5f.Borrow(cminor_allocs)
+ var cpNext_allocs *cgoAllocMap
+ reffe09253e.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsfe09253e.Borrow(cpNext_allocs)
- var csubminor_allocs *cgoAllocMap
- refe4627a5f.subminor, csubminor_allocs = (C.uint8_t)(x.Subminor), cgoAllocsUnknown
- allocse4627a5f.Borrow(csubminor_allocs)
+ var chandleType_allocs *cgoAllocMap
+ reffe09253e.handleType, chandleType_allocs = (C.VkExternalMemoryHandleTypeFlagBits)(x.HandleType), cgoAllocsUnknown
+ allocsfe09253e.Borrow(chandleType_allocs)
- var cpatch_allocs *cgoAllocMap
- refe4627a5f.patch, cpatch_allocs = (C.uint8_t)(x.Patch), cgoAllocsUnknown
- allocse4627a5f.Borrow(cpatch_allocs)
+ var cpHostPointer_allocs *cgoAllocMap
+ reffe09253e.pHostPointer, cpHostPointer_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PHostPointer)), cgoAllocsUnknown
+ allocsfe09253e.Borrow(cpHostPointer_allocs)
- x.refe4627a5f = refe4627a5f
- x.allocse4627a5f = allocse4627a5f
- return refe4627a5f, allocse4627a5f
+ x.reffe09253e = reffe09253e
+ x.allocsfe09253e = allocsfe09253e
+ return reffe09253e, allocsfe09253e
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ConformanceVersion) PassValue() (C.VkConformanceVersionKHR, *cgoAllocMap) {
- if x.refe4627a5f != nil {
- return *x.refe4627a5f, nil
+func (x ImportMemoryHostPointerInfo) PassValue() (C.VkImportMemoryHostPointerInfoEXT, *cgoAllocMap) {
+ if x.reffe09253e != nil {
+ return *x.reffe09253e, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -25140,103 +52162,91 @@ func (x ConformanceVersion) PassValue() (C.VkConformanceVersionKHR, *cgoAllocMap
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ConformanceVersion) Deref() {
- if x.refe4627a5f == nil {
+func (x *ImportMemoryHostPointerInfo) Deref() {
+ if x.reffe09253e == nil {
return
}
- x.Major = (byte)(x.refe4627a5f.major)
- x.Minor = (byte)(x.refe4627a5f.minor)
- x.Subminor = (byte)(x.refe4627a5f.subminor)
- x.Patch = (byte)(x.refe4627a5f.patch)
+ x.SType = (StructureType)(x.reffe09253e.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reffe09253e.pNext))
+ x.HandleType = (ExternalMemoryHandleTypeFlagBits)(x.reffe09253e.handleType)
+ x.PHostPointer = (unsafe.Pointer)(unsafe.Pointer(x.reffe09253e.pHostPointer))
}
-// allocPhysicalDeviceDriverPropertiesMemory allocates memory for type C.VkPhysicalDeviceDriverPropertiesKHR in C.
+// allocMemoryHostPointerPropertiesMemory allocates memory for type C.VkMemoryHostPointerPropertiesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceDriverPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceDriverPropertiesValue))
+func allocMemoryHostPointerPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMemoryHostPointerPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceDriverPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceDriverPropertiesKHR{})
+const sizeOfMemoryHostPointerPropertiesValue = unsafe.Sizeof([1]C.VkMemoryHostPointerPropertiesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceDriverProperties) Ref() *C.VkPhysicalDeviceDriverPropertiesKHR {
+func (x *MemoryHostPointerProperties) Ref() *C.VkMemoryHostPointerPropertiesEXT {
if x == nil {
return nil
}
- return x.ref9220f954
+ return x.refebf46a84
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceDriverProperties) Free() {
- if x != nil && x.allocs9220f954 != nil {
- x.allocs9220f954.(*cgoAllocMap).Free()
- x.ref9220f954 = nil
+func (x *MemoryHostPointerProperties) Free() {
+ if x != nil && x.allocsebf46a84 != nil {
+ x.allocsebf46a84.(*cgoAllocMap).Free()
+ x.refebf46a84 = nil
}
}
-// NewPhysicalDeviceDriverPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewMemoryHostPointerPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceDriverPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceDriverProperties {
+func NewMemoryHostPointerPropertiesRef(ref unsafe.Pointer) *MemoryHostPointerProperties {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceDriverProperties)
- obj.ref9220f954 = (*C.VkPhysicalDeviceDriverPropertiesKHR)(unsafe.Pointer(ref))
+ obj := new(MemoryHostPointerProperties)
+ obj.refebf46a84 = (*C.VkMemoryHostPointerPropertiesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceDriverProperties) PassRef() (*C.VkPhysicalDeviceDriverPropertiesKHR, *cgoAllocMap) {
+func (x *MemoryHostPointerProperties) PassRef() (*C.VkMemoryHostPointerPropertiesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref9220f954 != nil {
- return x.ref9220f954, nil
+ } else if x.refebf46a84 != nil {
+ return x.refebf46a84, nil
}
- mem9220f954 := allocPhysicalDeviceDriverPropertiesMemory(1)
- ref9220f954 := (*C.VkPhysicalDeviceDriverPropertiesKHR)(mem9220f954)
- allocs9220f954 := new(cgoAllocMap)
- allocs9220f954.Add(mem9220f954)
+ memebf46a84 := allocMemoryHostPointerPropertiesMemory(1)
+ refebf46a84 := (*C.VkMemoryHostPointerPropertiesEXT)(memebf46a84)
+ allocsebf46a84 := new(cgoAllocMap)
+ allocsebf46a84.Add(memebf46a84)
var csType_allocs *cgoAllocMap
- ref9220f954.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs9220f954.Borrow(csType_allocs)
+ refebf46a84.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsebf46a84.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref9220f954.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs9220f954.Borrow(cpNext_allocs)
-
- var cdriverID_allocs *cgoAllocMap
- ref9220f954.driverID, cdriverID_allocs = (C.VkDriverIdKHR)(x.DriverID), cgoAllocsUnknown
- allocs9220f954.Borrow(cdriverID_allocs)
-
- var cdriverName_allocs *cgoAllocMap
- ref9220f954.driverName, cdriverName_allocs = *(*[256]C.char)(unsafe.Pointer(&x.DriverName)), cgoAllocsUnknown
- allocs9220f954.Borrow(cdriverName_allocs)
-
- var cdriverInfo_allocs *cgoAllocMap
- ref9220f954.driverInfo, cdriverInfo_allocs = *(*[256]C.char)(unsafe.Pointer(&x.DriverInfo)), cgoAllocsUnknown
- allocs9220f954.Borrow(cdriverInfo_allocs)
+ refebf46a84.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsebf46a84.Borrow(cpNext_allocs)
- var cconformanceVersion_allocs *cgoAllocMap
- ref9220f954.conformanceVersion, cconformanceVersion_allocs = x.ConformanceVersion.PassValue()
- allocs9220f954.Borrow(cconformanceVersion_allocs)
+ var cmemoryTypeBits_allocs *cgoAllocMap
+ refebf46a84.memoryTypeBits, cmemoryTypeBits_allocs = (C.uint32_t)(x.MemoryTypeBits), cgoAllocsUnknown
+ allocsebf46a84.Borrow(cmemoryTypeBits_allocs)
- x.ref9220f954 = ref9220f954
- x.allocs9220f954 = allocs9220f954
- return ref9220f954, allocs9220f954
+ x.refebf46a84 = refebf46a84
+ x.allocsebf46a84 = allocsebf46a84
+ return refebf46a84, allocsebf46a84
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceDriverProperties) PassValue() (C.VkPhysicalDeviceDriverPropertiesKHR, *cgoAllocMap) {
- if x.ref9220f954 != nil {
- return *x.ref9220f954, nil
+func (x MemoryHostPointerProperties) PassValue() (C.VkMemoryHostPointerPropertiesEXT, *cgoAllocMap) {
+ if x.refebf46a84 != nil {
+ return *x.refebf46a84, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -25244,97 +52254,90 @@ func (x PhysicalDeviceDriverProperties) PassValue() (C.VkPhysicalDeviceDriverPro
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceDriverProperties) Deref() {
- if x.ref9220f954 == nil {
+func (x *MemoryHostPointerProperties) Deref() {
+ if x.refebf46a84 == nil {
return
}
- x.SType = (StructureType)(x.ref9220f954.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref9220f954.pNext))
- x.DriverID = (DriverId)(x.ref9220f954.driverID)
- x.DriverName = *(*[256]byte)(unsafe.Pointer(&x.ref9220f954.driverName))
- x.DriverInfo = *(*[256]byte)(unsafe.Pointer(&x.ref9220f954.driverInfo))
- x.ConformanceVersion = *NewConformanceVersionRef(unsafe.Pointer(&x.ref9220f954.conformanceVersion))
+ x.SType = (StructureType)(x.refebf46a84.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refebf46a84.pNext))
+ x.MemoryTypeBits = (uint32)(x.refebf46a84.memoryTypeBits)
}
-// allocPhysicalDeviceVulkanMemoryModelFeaturesMemory allocates memory for type C.VkPhysicalDeviceVulkanMemoryModelFeaturesKHR in C.
+// allocPhysicalDeviceExternalMemoryHostPropertiesMemory allocates memory for type C.VkPhysicalDeviceExternalMemoryHostPropertiesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceVulkanMemoryModelFeaturesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceVulkanMemoryModelFeaturesValue))
+func allocPhysicalDeviceExternalMemoryHostPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceExternalMemoryHostPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceVulkanMemoryModelFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceVulkanMemoryModelFeaturesKHR{})
+const sizeOfPhysicalDeviceExternalMemoryHostPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceExternalMemoryHostPropertiesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceVulkanMemoryModelFeatures) Ref() *C.VkPhysicalDeviceVulkanMemoryModelFeaturesKHR {
+func (x *PhysicalDeviceExternalMemoryHostProperties) Ref() *C.VkPhysicalDeviceExternalMemoryHostPropertiesEXT {
if x == nil {
return nil
}
- return x.ref2b17642b
+ return x.ref7f697d15
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceVulkanMemoryModelFeatures) Free() {
- if x != nil && x.allocs2b17642b != nil {
- x.allocs2b17642b.(*cgoAllocMap).Free()
- x.ref2b17642b = nil
+func (x *PhysicalDeviceExternalMemoryHostProperties) Free() {
+ if x != nil && x.allocs7f697d15 != nil {
+ x.allocs7f697d15.(*cgoAllocMap).Free()
+ x.ref7f697d15 = nil
}
}
-// NewPhysicalDeviceVulkanMemoryModelFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceExternalMemoryHostPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceVulkanMemoryModelFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceVulkanMemoryModelFeatures {
+func NewPhysicalDeviceExternalMemoryHostPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceExternalMemoryHostProperties {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceVulkanMemoryModelFeatures)
- obj.ref2b17642b = (*C.VkPhysicalDeviceVulkanMemoryModelFeaturesKHR)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceExternalMemoryHostProperties)
+ obj.ref7f697d15 = (*C.VkPhysicalDeviceExternalMemoryHostPropertiesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceVulkanMemoryModelFeatures) PassRef() (*C.VkPhysicalDeviceVulkanMemoryModelFeaturesKHR, *cgoAllocMap) {
+func (x *PhysicalDeviceExternalMemoryHostProperties) PassRef() (*C.VkPhysicalDeviceExternalMemoryHostPropertiesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref2b17642b != nil {
- return x.ref2b17642b, nil
+ } else if x.ref7f697d15 != nil {
+ return x.ref7f697d15, nil
}
- mem2b17642b := allocPhysicalDeviceVulkanMemoryModelFeaturesMemory(1)
- ref2b17642b := (*C.VkPhysicalDeviceVulkanMemoryModelFeaturesKHR)(mem2b17642b)
- allocs2b17642b := new(cgoAllocMap)
- allocs2b17642b.Add(mem2b17642b)
+ mem7f697d15 := allocPhysicalDeviceExternalMemoryHostPropertiesMemory(1)
+ ref7f697d15 := (*C.VkPhysicalDeviceExternalMemoryHostPropertiesEXT)(mem7f697d15)
+ allocs7f697d15 := new(cgoAllocMap)
+ allocs7f697d15.Add(mem7f697d15)
var csType_allocs *cgoAllocMap
- ref2b17642b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs2b17642b.Borrow(csType_allocs)
+ ref7f697d15.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs7f697d15.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref2b17642b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs2b17642b.Borrow(cpNext_allocs)
-
- var cvulkanMemoryModel_allocs *cgoAllocMap
- ref2b17642b.vulkanMemoryModel, cvulkanMemoryModel_allocs = (C.VkBool32)(x.VulkanMemoryModel), cgoAllocsUnknown
- allocs2b17642b.Borrow(cvulkanMemoryModel_allocs)
+ ref7f697d15.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs7f697d15.Borrow(cpNext_allocs)
- var cvulkanMemoryModelDeviceScope_allocs *cgoAllocMap
- ref2b17642b.vulkanMemoryModelDeviceScope, cvulkanMemoryModelDeviceScope_allocs = (C.VkBool32)(x.VulkanMemoryModelDeviceScope), cgoAllocsUnknown
- allocs2b17642b.Borrow(cvulkanMemoryModelDeviceScope_allocs)
+ var cminImportedHostPointerAlignment_allocs *cgoAllocMap
+ ref7f697d15.minImportedHostPointerAlignment, cminImportedHostPointerAlignment_allocs = (C.VkDeviceSize)(x.MinImportedHostPointerAlignment), cgoAllocsUnknown
+ allocs7f697d15.Borrow(cminImportedHostPointerAlignment_allocs)
- x.ref2b17642b = ref2b17642b
- x.allocs2b17642b = allocs2b17642b
- return ref2b17642b, allocs2b17642b
+ x.ref7f697d15 = ref7f697d15
+ x.allocs7f697d15 = allocs7f697d15
+ return ref7f697d15, allocs7f697d15
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceVulkanMemoryModelFeatures) PassValue() (C.VkPhysicalDeviceVulkanMemoryModelFeaturesKHR, *cgoAllocMap) {
- if x.ref2b17642b != nil {
- return *x.ref2b17642b, nil
+func (x PhysicalDeviceExternalMemoryHostProperties) PassValue() (C.VkPhysicalDeviceExternalMemoryHostPropertiesEXT, *cgoAllocMap) {
+ if x.ref7f697d15 != nil {
+ return *x.ref7f697d15, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -25342,143 +52345,90 @@ func (x PhysicalDeviceVulkanMemoryModelFeatures) PassValue() (C.VkPhysicalDevice
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceVulkanMemoryModelFeatures) Deref() {
- if x.ref2b17642b == nil {
+func (x *PhysicalDeviceExternalMemoryHostProperties) Deref() {
+ if x.ref7f697d15 == nil {
return
}
- x.SType = (StructureType)(x.ref2b17642b.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref2b17642b.pNext))
- x.VulkanMemoryModel = (Bool32)(x.ref2b17642b.vulkanMemoryModel)
- x.VulkanMemoryModelDeviceScope = (Bool32)(x.ref2b17642b.vulkanMemoryModelDeviceScope)
-}
-
-func (x DebugReportCallbackFunc) PassRef() (ref *C.PFN_vkDebugReportCallbackEXT, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- if debugReportCallbackFuncC918AAC4Func == nil {
- debugReportCallbackFuncC918AAC4Func = x
- }
- return (*C.PFN_vkDebugReportCallbackEXT)(C.PFN_vkDebugReportCallbackEXT_c918aac4), nil
-}
-
-func (x DebugReportCallbackFunc) PassValue() (ref C.PFN_vkDebugReportCallbackEXT, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- if debugReportCallbackFuncC918AAC4Func == nil {
- debugReportCallbackFuncC918AAC4Func = x
- }
- return (C.PFN_vkDebugReportCallbackEXT)(C.PFN_vkDebugReportCallbackEXT_c918aac4), nil
-}
-
-func NewDebugReportCallbackFuncRef(ref unsafe.Pointer) *DebugReportCallbackFunc {
- return (*DebugReportCallbackFunc)(ref)
-}
-
-//export debugReportCallbackFuncC918AAC4
-func debugReportCallbackFuncC918AAC4(cflags C.VkDebugReportFlagsEXT, cobjectType C.VkDebugReportObjectTypeEXT, cobject C.uint64_t, clocation C.size_t, cmessageCode C.int32_t, cpLayerPrefix *C.char, cpMessage *C.char, cpUserData unsafe.Pointer) C.VkBool32 {
- if debugReportCallbackFuncC918AAC4Func != nil {
- flagsc918aac4 := (DebugReportFlags)(cflags)
- objectTypec918aac4 := (DebugReportObjectType)(cobjectType)
- objectc918aac4 := (uint64)(cobject)
- locationc918aac4 := (uint)(clocation)
- messageCodec918aac4 := (int32)(cmessageCode)
- pLayerPrefixc918aac4 := packPCharString(cpLayerPrefix)
- pMessagec918aac4 := packPCharString(cpMessage)
- pUserDatac918aac4 := (unsafe.Pointer)(unsafe.Pointer(cpUserData))
- retc918aac4 := debugReportCallbackFuncC918AAC4Func(flagsc918aac4, objectTypec918aac4, objectc918aac4, locationc918aac4, messageCodec918aac4, pLayerPrefixc918aac4, pMessagec918aac4, pUserDatac918aac4)
- ret, _ := (C.VkBool32)(retc918aac4), cgoAllocsUnknown
- return ret
- }
- panic("callback func has not been set (race?)")
+ x.SType = (StructureType)(x.ref7f697d15.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref7f697d15.pNext))
+ x.MinImportedHostPointerAlignment = (DeviceSize)(x.ref7f697d15.minImportedHostPointerAlignment)
}
-var debugReportCallbackFuncC918AAC4Func DebugReportCallbackFunc
-
-// allocDebugReportCallbackCreateInfoMemory allocates memory for type C.VkDebugReportCallbackCreateInfoEXT in C.
+// allocPipelineCompilerControlCreateInfoAMDMemory allocates memory for type C.VkPipelineCompilerControlCreateInfoAMD in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDebugReportCallbackCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDebugReportCallbackCreateInfoValue))
+func allocPipelineCompilerControlCreateInfoAMDMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineCompilerControlCreateInfoAMDValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDebugReportCallbackCreateInfoValue = unsafe.Sizeof([1]C.VkDebugReportCallbackCreateInfoEXT{})
+const sizeOfPipelineCompilerControlCreateInfoAMDValue = unsafe.Sizeof([1]C.VkPipelineCompilerControlCreateInfoAMD{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DebugReportCallbackCreateInfo) Ref() *C.VkDebugReportCallbackCreateInfoEXT {
+func (x *PipelineCompilerControlCreateInfoAMD) Ref() *C.VkPipelineCompilerControlCreateInfoAMD {
if x == nil {
return nil
}
- return x.refc8238563
+ return x.ref46a09e46
}
-
-// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
-// Does nothing if struct is nil or has no allocation map.
-func (x *DebugReportCallbackCreateInfo) Free() {
- if x != nil && x.allocsc8238563 != nil {
- x.allocsc8238563.(*cgoAllocMap).Free()
- x.refc8238563 = nil
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PipelineCompilerControlCreateInfoAMD) Free() {
+ if x != nil && x.allocs46a09e46 != nil {
+ x.allocs46a09e46.(*cgoAllocMap).Free()
+ x.ref46a09e46 = nil
}
}
-// NewDebugReportCallbackCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineCompilerControlCreateInfoAMDRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDebugReportCallbackCreateInfoRef(ref unsafe.Pointer) *DebugReportCallbackCreateInfo {
+func NewPipelineCompilerControlCreateInfoAMDRef(ref unsafe.Pointer) *PipelineCompilerControlCreateInfoAMD {
if ref == nil {
return nil
}
- obj := new(DebugReportCallbackCreateInfo)
- obj.refc8238563 = (*C.VkDebugReportCallbackCreateInfoEXT)(unsafe.Pointer(ref))
+ obj := new(PipelineCompilerControlCreateInfoAMD)
+ obj.ref46a09e46 = (*C.VkPipelineCompilerControlCreateInfoAMD)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DebugReportCallbackCreateInfo) PassRef() (*C.VkDebugReportCallbackCreateInfoEXT, *cgoAllocMap) {
+func (x *PipelineCompilerControlCreateInfoAMD) PassRef() (*C.VkPipelineCompilerControlCreateInfoAMD, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refc8238563 != nil {
- return x.refc8238563, nil
+ } else if x.ref46a09e46 != nil {
+ return x.ref46a09e46, nil
}
- memc8238563 := allocDebugReportCallbackCreateInfoMemory(1)
- refc8238563 := (*C.VkDebugReportCallbackCreateInfoEXT)(memc8238563)
- allocsc8238563 := new(cgoAllocMap)
- allocsc8238563.Add(memc8238563)
+ mem46a09e46 := allocPipelineCompilerControlCreateInfoAMDMemory(1)
+ ref46a09e46 := (*C.VkPipelineCompilerControlCreateInfoAMD)(mem46a09e46)
+ allocs46a09e46 := new(cgoAllocMap)
+ allocs46a09e46.Add(mem46a09e46)
var csType_allocs *cgoAllocMap
- refc8238563.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsc8238563.Borrow(csType_allocs)
+ ref46a09e46.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs46a09e46.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refc8238563.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsc8238563.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- refc8238563.flags, cflags_allocs = (C.VkDebugReportFlagsEXT)(x.Flags), cgoAllocsUnknown
- allocsc8238563.Borrow(cflags_allocs)
-
- var cpfnCallback_allocs *cgoAllocMap
- refc8238563.pfnCallback, cpfnCallback_allocs = x.PfnCallback.PassValue()
- allocsc8238563.Borrow(cpfnCallback_allocs)
+ ref46a09e46.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs46a09e46.Borrow(cpNext_allocs)
- var cpUserData_allocs *cgoAllocMap
- refc8238563.pUserData, cpUserData_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PUserData)), cgoAllocsUnknown
- allocsc8238563.Borrow(cpUserData_allocs)
+ var ccompilerControlFlags_allocs *cgoAllocMap
+ ref46a09e46.compilerControlFlags, ccompilerControlFlags_allocs = (C.VkPipelineCompilerControlFlagsAMD)(x.CompilerControlFlags), cgoAllocsUnknown
+ allocs46a09e46.Borrow(ccompilerControlFlags_allocs)
- x.refc8238563 = refc8238563
- x.allocsc8238563 = allocsc8238563
- return refc8238563, allocsc8238563
+ x.ref46a09e46 = ref46a09e46
+ x.allocs46a09e46 = allocs46a09e46
+ return ref46a09e46, allocs46a09e46
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DebugReportCallbackCreateInfo) PassValue() (C.VkDebugReportCallbackCreateInfoEXT, *cgoAllocMap) {
- if x.refc8238563 != nil {
- return *x.refc8238563, nil
+func (x PipelineCompilerControlCreateInfoAMD) PassValue() (C.VkPipelineCompilerControlCreateInfoAMD, *cgoAllocMap) {
+ if x.ref46a09e46 != nil {
+ return *x.ref46a09e46, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -25486,92 +52436,90 @@ func (x DebugReportCallbackCreateInfo) PassValue() (C.VkDebugReportCallbackCreat
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DebugReportCallbackCreateInfo) Deref() {
- if x.refc8238563 == nil {
+func (x *PipelineCompilerControlCreateInfoAMD) Deref() {
+ if x.ref46a09e46 == nil {
return
}
- x.SType = (StructureType)(x.refc8238563.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc8238563.pNext))
- x.Flags = (DebugReportFlags)(x.refc8238563.flags)
- x.PfnCallback = *NewDebugReportCallbackFuncRef(unsafe.Pointer(&x.refc8238563.pfnCallback))
- x.PUserData = (unsafe.Pointer)(unsafe.Pointer(x.refc8238563.pUserData))
+ x.SType = (StructureType)(x.ref46a09e46.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref46a09e46.pNext))
+ x.CompilerControlFlags = (PipelineCompilerControlFlagsAMD)(x.ref46a09e46.compilerControlFlags)
}
-// allocPipelineRasterizationStateRasterizationOrderAMDMemory allocates memory for type C.VkPipelineRasterizationStateRasterizationOrderAMD in C.
+// allocCalibratedTimestampInfoMemory allocates memory for type C.VkCalibratedTimestampInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPipelineRasterizationStateRasterizationOrderAMDMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineRasterizationStateRasterizationOrderAMDValue))
+func allocCalibratedTimestampInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCalibratedTimestampInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPipelineRasterizationStateRasterizationOrderAMDValue = unsafe.Sizeof([1]C.VkPipelineRasterizationStateRasterizationOrderAMD{})
+const sizeOfCalibratedTimestampInfoValue = unsafe.Sizeof([1]C.VkCalibratedTimestampInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PipelineRasterizationStateRasterizationOrderAMD) Ref() *C.VkPipelineRasterizationStateRasterizationOrderAMD {
+func (x *CalibratedTimestampInfo) Ref() *C.VkCalibratedTimestampInfoEXT {
if x == nil {
return nil
}
- return x.ref5098cf82
+ return x.ref5f061d2a
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PipelineRasterizationStateRasterizationOrderAMD) Free() {
- if x != nil && x.allocs5098cf82 != nil {
- x.allocs5098cf82.(*cgoAllocMap).Free()
- x.ref5098cf82 = nil
+func (x *CalibratedTimestampInfo) Free() {
+ if x != nil && x.allocs5f061d2a != nil {
+ x.allocs5f061d2a.(*cgoAllocMap).Free()
+ x.ref5f061d2a = nil
}
}
-// NewPipelineRasterizationStateRasterizationOrderAMDRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewCalibratedTimestampInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPipelineRasterizationStateRasterizationOrderAMDRef(ref unsafe.Pointer) *PipelineRasterizationStateRasterizationOrderAMD {
+func NewCalibratedTimestampInfoRef(ref unsafe.Pointer) *CalibratedTimestampInfo {
if ref == nil {
return nil
}
- obj := new(PipelineRasterizationStateRasterizationOrderAMD)
- obj.ref5098cf82 = (*C.VkPipelineRasterizationStateRasterizationOrderAMD)(unsafe.Pointer(ref))
+ obj := new(CalibratedTimestampInfo)
+ obj.ref5f061d2a = (*C.VkCalibratedTimestampInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PipelineRasterizationStateRasterizationOrderAMD) PassRef() (*C.VkPipelineRasterizationStateRasterizationOrderAMD, *cgoAllocMap) {
+func (x *CalibratedTimestampInfo) PassRef() (*C.VkCalibratedTimestampInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref5098cf82 != nil {
- return x.ref5098cf82, nil
+ } else if x.ref5f061d2a != nil {
+ return x.ref5f061d2a, nil
}
- mem5098cf82 := allocPipelineRasterizationStateRasterizationOrderAMDMemory(1)
- ref5098cf82 := (*C.VkPipelineRasterizationStateRasterizationOrderAMD)(mem5098cf82)
- allocs5098cf82 := new(cgoAllocMap)
- allocs5098cf82.Add(mem5098cf82)
+ mem5f061d2a := allocCalibratedTimestampInfoMemory(1)
+ ref5f061d2a := (*C.VkCalibratedTimestampInfoEXT)(mem5f061d2a)
+ allocs5f061d2a := new(cgoAllocMap)
+ allocs5f061d2a.Add(mem5f061d2a)
var csType_allocs *cgoAllocMap
- ref5098cf82.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs5098cf82.Borrow(csType_allocs)
+ ref5f061d2a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs5f061d2a.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref5098cf82.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs5098cf82.Borrow(cpNext_allocs)
+ ref5f061d2a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs5f061d2a.Borrow(cpNext_allocs)
- var crasterizationOrder_allocs *cgoAllocMap
- ref5098cf82.rasterizationOrder, crasterizationOrder_allocs = (C.VkRasterizationOrderAMD)(x.RasterizationOrder), cgoAllocsUnknown
- allocs5098cf82.Borrow(crasterizationOrder_allocs)
+ var ctimeDomain_allocs *cgoAllocMap
+ ref5f061d2a.timeDomain, ctimeDomain_allocs = (C.VkTimeDomainEXT)(x.TimeDomain), cgoAllocsUnknown
+ allocs5f061d2a.Borrow(ctimeDomain_allocs)
- x.ref5098cf82 = ref5098cf82
- x.allocs5098cf82 = allocs5098cf82
- return ref5098cf82, allocs5098cf82
+ x.ref5f061d2a = ref5f061d2a
+ x.allocs5f061d2a = allocs5f061d2a
+ return ref5f061d2a, allocs5f061d2a
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PipelineRasterizationStateRasterizationOrderAMD) PassValue() (C.VkPipelineRasterizationStateRasterizationOrderAMD, *cgoAllocMap) {
- if x.ref5098cf82 != nil {
- return *x.ref5098cf82, nil
+func (x CalibratedTimestampInfo) PassValue() (C.VkCalibratedTimestampInfoEXT, *cgoAllocMap) {
+ if x.ref5f061d2a != nil {
+ return *x.ref5f061d2a, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -25579,98 +52527,142 @@ func (x PipelineRasterizationStateRasterizationOrderAMD) PassValue() (C.VkPipeli
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PipelineRasterizationStateRasterizationOrderAMD) Deref() {
- if x.ref5098cf82 == nil {
+func (x *CalibratedTimestampInfo) Deref() {
+ if x.ref5f061d2a == nil {
return
}
- x.SType = (StructureType)(x.ref5098cf82.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5098cf82.pNext))
- x.RasterizationOrder = (RasterizationOrderAMD)(x.ref5098cf82.rasterizationOrder)
+ x.SType = (StructureType)(x.ref5f061d2a.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5f061d2a.pNext))
+ x.TimeDomain = (TimeDomain)(x.ref5f061d2a.timeDomain)
}
-// allocDebugMarkerObjectNameInfoMemory allocates memory for type C.VkDebugMarkerObjectNameInfoEXT in C.
+// allocPhysicalDeviceShaderCorePropertiesAMDMemory allocates memory for type C.VkPhysicalDeviceShaderCorePropertiesAMD in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDebugMarkerObjectNameInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDebugMarkerObjectNameInfoValue))
+func allocPhysicalDeviceShaderCorePropertiesAMDMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceShaderCorePropertiesAMDValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDebugMarkerObjectNameInfoValue = unsafe.Sizeof([1]C.VkDebugMarkerObjectNameInfoEXT{})
+const sizeOfPhysicalDeviceShaderCorePropertiesAMDValue = unsafe.Sizeof([1]C.VkPhysicalDeviceShaderCorePropertiesAMD{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DebugMarkerObjectNameInfo) Ref() *C.VkDebugMarkerObjectNameInfoEXT {
+func (x *PhysicalDeviceShaderCorePropertiesAMD) Ref() *C.VkPhysicalDeviceShaderCorePropertiesAMD {
if x == nil {
return nil
}
- return x.refe4983fab
+ return x.refde4b3b09
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DebugMarkerObjectNameInfo) Free() {
- if x != nil && x.allocse4983fab != nil {
- x.allocse4983fab.(*cgoAllocMap).Free()
- x.refe4983fab = nil
+func (x *PhysicalDeviceShaderCorePropertiesAMD) Free() {
+ if x != nil && x.allocsde4b3b09 != nil {
+ x.allocsde4b3b09.(*cgoAllocMap).Free()
+ x.refde4b3b09 = nil
}
}
-// NewDebugMarkerObjectNameInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceShaderCorePropertiesAMDRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDebugMarkerObjectNameInfoRef(ref unsafe.Pointer) *DebugMarkerObjectNameInfo {
+func NewPhysicalDeviceShaderCorePropertiesAMDRef(ref unsafe.Pointer) *PhysicalDeviceShaderCorePropertiesAMD {
if ref == nil {
return nil
}
- obj := new(DebugMarkerObjectNameInfo)
- obj.refe4983fab = (*C.VkDebugMarkerObjectNameInfoEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceShaderCorePropertiesAMD)
+ obj.refde4b3b09 = (*C.VkPhysicalDeviceShaderCorePropertiesAMD)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DebugMarkerObjectNameInfo) PassRef() (*C.VkDebugMarkerObjectNameInfoEXT, *cgoAllocMap) {
+func (x *PhysicalDeviceShaderCorePropertiesAMD) PassRef() (*C.VkPhysicalDeviceShaderCorePropertiesAMD, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refe4983fab != nil {
- return x.refe4983fab, nil
+ } else if x.refde4b3b09 != nil {
+ return x.refde4b3b09, nil
}
- meme4983fab := allocDebugMarkerObjectNameInfoMemory(1)
- refe4983fab := (*C.VkDebugMarkerObjectNameInfoEXT)(meme4983fab)
- allocse4983fab := new(cgoAllocMap)
- allocse4983fab.Add(meme4983fab)
+ memde4b3b09 := allocPhysicalDeviceShaderCorePropertiesAMDMemory(1)
+ refde4b3b09 := (*C.VkPhysicalDeviceShaderCorePropertiesAMD)(memde4b3b09)
+ allocsde4b3b09 := new(cgoAllocMap)
+ allocsde4b3b09.Add(memde4b3b09)
var csType_allocs *cgoAllocMap
- refe4983fab.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocse4983fab.Borrow(csType_allocs)
+ refde4b3b09.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsde4b3b09.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refe4983fab.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocse4983fab.Borrow(cpNext_allocs)
+ refde4b3b09.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsde4b3b09.Borrow(cpNext_allocs)
- var cobjectType_allocs *cgoAllocMap
- refe4983fab.objectType, cobjectType_allocs = (C.VkDebugReportObjectTypeEXT)(x.ObjectType), cgoAllocsUnknown
- allocse4983fab.Borrow(cobjectType_allocs)
+ var cshaderEngineCount_allocs *cgoAllocMap
+ refde4b3b09.shaderEngineCount, cshaderEngineCount_allocs = (C.uint32_t)(x.ShaderEngineCount), cgoAllocsUnknown
+ allocsde4b3b09.Borrow(cshaderEngineCount_allocs)
- var cobject_allocs *cgoAllocMap
- refe4983fab.object, cobject_allocs = (C.uint64_t)(x.Object), cgoAllocsUnknown
- allocse4983fab.Borrow(cobject_allocs)
+ var cshaderArraysPerEngineCount_allocs *cgoAllocMap
+ refde4b3b09.shaderArraysPerEngineCount, cshaderArraysPerEngineCount_allocs = (C.uint32_t)(x.ShaderArraysPerEngineCount), cgoAllocsUnknown
+ allocsde4b3b09.Borrow(cshaderArraysPerEngineCount_allocs)
- var cpObjectName_allocs *cgoAllocMap
- refe4983fab.pObjectName, cpObjectName_allocs = unpackPCharString(x.PObjectName)
- allocse4983fab.Borrow(cpObjectName_allocs)
+ var ccomputeUnitsPerShaderArray_allocs *cgoAllocMap
+ refde4b3b09.computeUnitsPerShaderArray, ccomputeUnitsPerShaderArray_allocs = (C.uint32_t)(x.ComputeUnitsPerShaderArray), cgoAllocsUnknown
+ allocsde4b3b09.Borrow(ccomputeUnitsPerShaderArray_allocs)
- x.refe4983fab = refe4983fab
- x.allocse4983fab = allocse4983fab
- return refe4983fab, allocse4983fab
+ var csimdPerComputeUnit_allocs *cgoAllocMap
+ refde4b3b09.simdPerComputeUnit, csimdPerComputeUnit_allocs = (C.uint32_t)(x.SimdPerComputeUnit), cgoAllocsUnknown
+ allocsde4b3b09.Borrow(csimdPerComputeUnit_allocs)
+
+ var cwavefrontsPerSimd_allocs *cgoAllocMap
+ refde4b3b09.wavefrontsPerSimd, cwavefrontsPerSimd_allocs = (C.uint32_t)(x.WavefrontsPerSimd), cgoAllocsUnknown
+ allocsde4b3b09.Borrow(cwavefrontsPerSimd_allocs)
+
+ var cwavefrontSize_allocs *cgoAllocMap
+ refde4b3b09.wavefrontSize, cwavefrontSize_allocs = (C.uint32_t)(x.WavefrontSize), cgoAllocsUnknown
+ allocsde4b3b09.Borrow(cwavefrontSize_allocs)
+
+ var csgprsPerSimd_allocs *cgoAllocMap
+ refde4b3b09.sgprsPerSimd, csgprsPerSimd_allocs = (C.uint32_t)(x.SgprsPerSimd), cgoAllocsUnknown
+ allocsde4b3b09.Borrow(csgprsPerSimd_allocs)
+
+ var cminSgprAllocation_allocs *cgoAllocMap
+ refde4b3b09.minSgprAllocation, cminSgprAllocation_allocs = (C.uint32_t)(x.MinSgprAllocation), cgoAllocsUnknown
+ allocsde4b3b09.Borrow(cminSgprAllocation_allocs)
+
+ var cmaxSgprAllocation_allocs *cgoAllocMap
+ refde4b3b09.maxSgprAllocation, cmaxSgprAllocation_allocs = (C.uint32_t)(x.MaxSgprAllocation), cgoAllocsUnknown
+ allocsde4b3b09.Borrow(cmaxSgprAllocation_allocs)
+
+ var csgprAllocationGranularity_allocs *cgoAllocMap
+ refde4b3b09.sgprAllocationGranularity, csgprAllocationGranularity_allocs = (C.uint32_t)(x.SgprAllocationGranularity), cgoAllocsUnknown
+ allocsde4b3b09.Borrow(csgprAllocationGranularity_allocs)
+
+ var cvgprsPerSimd_allocs *cgoAllocMap
+ refde4b3b09.vgprsPerSimd, cvgprsPerSimd_allocs = (C.uint32_t)(x.VgprsPerSimd), cgoAllocsUnknown
+ allocsde4b3b09.Borrow(cvgprsPerSimd_allocs)
+
+ var cminVgprAllocation_allocs *cgoAllocMap
+ refde4b3b09.minVgprAllocation, cminVgprAllocation_allocs = (C.uint32_t)(x.MinVgprAllocation), cgoAllocsUnknown
+ allocsde4b3b09.Borrow(cminVgprAllocation_allocs)
+
+ var cmaxVgprAllocation_allocs *cgoAllocMap
+ refde4b3b09.maxVgprAllocation, cmaxVgprAllocation_allocs = (C.uint32_t)(x.MaxVgprAllocation), cgoAllocsUnknown
+ allocsde4b3b09.Borrow(cmaxVgprAllocation_allocs)
+
+ var cvgprAllocationGranularity_allocs *cgoAllocMap
+ refde4b3b09.vgprAllocationGranularity, cvgprAllocationGranularity_allocs = (C.uint32_t)(x.VgprAllocationGranularity), cgoAllocsUnknown
+ allocsde4b3b09.Borrow(cvgprAllocationGranularity_allocs)
+
+ x.refde4b3b09 = refde4b3b09
+ x.allocsde4b3b09 = allocsde4b3b09
+ return refde4b3b09, allocsde4b3b09
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DebugMarkerObjectNameInfo) PassValue() (C.VkDebugMarkerObjectNameInfoEXT, *cgoAllocMap) {
- if x.refe4983fab != nil {
- return *x.refe4983fab, nil
+func (x PhysicalDeviceShaderCorePropertiesAMD) PassValue() (C.VkPhysicalDeviceShaderCorePropertiesAMD, *cgoAllocMap) {
+ if x.refde4b3b09 != nil {
+ return *x.refde4b3b09, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -25678,108 +52670,103 @@ func (x DebugMarkerObjectNameInfo) PassValue() (C.VkDebugMarkerObjectNameInfoEXT
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DebugMarkerObjectNameInfo) Deref() {
- if x.refe4983fab == nil {
+func (x *PhysicalDeviceShaderCorePropertiesAMD) Deref() {
+ if x.refde4b3b09 == nil {
return
}
- x.SType = (StructureType)(x.refe4983fab.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refe4983fab.pNext))
- x.ObjectType = (DebugReportObjectType)(x.refe4983fab.objectType)
- x.Object = (uint64)(x.refe4983fab.object)
- x.PObjectName = packPCharString(x.refe4983fab.pObjectName)
+ x.SType = (StructureType)(x.refde4b3b09.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refde4b3b09.pNext))
+ x.ShaderEngineCount = (uint32)(x.refde4b3b09.shaderEngineCount)
+ x.ShaderArraysPerEngineCount = (uint32)(x.refde4b3b09.shaderArraysPerEngineCount)
+ x.ComputeUnitsPerShaderArray = (uint32)(x.refde4b3b09.computeUnitsPerShaderArray)
+ x.SimdPerComputeUnit = (uint32)(x.refde4b3b09.simdPerComputeUnit)
+ x.WavefrontsPerSimd = (uint32)(x.refde4b3b09.wavefrontsPerSimd)
+ x.WavefrontSize = (uint32)(x.refde4b3b09.wavefrontSize)
+ x.SgprsPerSimd = (uint32)(x.refde4b3b09.sgprsPerSimd)
+ x.MinSgprAllocation = (uint32)(x.refde4b3b09.minSgprAllocation)
+ x.MaxSgprAllocation = (uint32)(x.refde4b3b09.maxSgprAllocation)
+ x.SgprAllocationGranularity = (uint32)(x.refde4b3b09.sgprAllocationGranularity)
+ x.VgprsPerSimd = (uint32)(x.refde4b3b09.vgprsPerSimd)
+ x.MinVgprAllocation = (uint32)(x.refde4b3b09.minVgprAllocation)
+ x.MaxVgprAllocation = (uint32)(x.refde4b3b09.maxVgprAllocation)
+ x.VgprAllocationGranularity = (uint32)(x.refde4b3b09.vgprAllocationGranularity)
}
-// allocDebugMarkerObjectTagInfoMemory allocates memory for type C.VkDebugMarkerObjectTagInfoEXT in C.
+// allocDeviceMemoryOverallocationCreateInfoAMDMemory allocates memory for type C.VkDeviceMemoryOverallocationCreateInfoAMD in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDebugMarkerObjectTagInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDebugMarkerObjectTagInfoValue))
+func allocDeviceMemoryOverallocationCreateInfoAMDMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceMemoryOverallocationCreateInfoAMDValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDebugMarkerObjectTagInfoValue = unsafe.Sizeof([1]C.VkDebugMarkerObjectTagInfoEXT{})
+const sizeOfDeviceMemoryOverallocationCreateInfoAMDValue = unsafe.Sizeof([1]C.VkDeviceMemoryOverallocationCreateInfoAMD{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DebugMarkerObjectTagInfo) Ref() *C.VkDebugMarkerObjectTagInfoEXT {
+func (x *DeviceMemoryOverallocationCreateInfoAMD) Ref() *C.VkDeviceMemoryOverallocationCreateInfoAMD {
if x == nil {
return nil
}
- return x.refa41a5c3b
+ return x.ref5ccee475
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DebugMarkerObjectTagInfo) Free() {
- if x != nil && x.allocsa41a5c3b != nil {
- x.allocsa41a5c3b.(*cgoAllocMap).Free()
- x.refa41a5c3b = nil
+func (x *DeviceMemoryOverallocationCreateInfoAMD) Free() {
+ if x != nil && x.allocs5ccee475 != nil {
+ x.allocs5ccee475.(*cgoAllocMap).Free()
+ x.ref5ccee475 = nil
}
}
-// NewDebugMarkerObjectTagInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDeviceMemoryOverallocationCreateInfoAMDRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDebugMarkerObjectTagInfoRef(ref unsafe.Pointer) *DebugMarkerObjectTagInfo {
+func NewDeviceMemoryOverallocationCreateInfoAMDRef(ref unsafe.Pointer) *DeviceMemoryOverallocationCreateInfoAMD {
if ref == nil {
return nil
}
- obj := new(DebugMarkerObjectTagInfo)
- obj.refa41a5c3b = (*C.VkDebugMarkerObjectTagInfoEXT)(unsafe.Pointer(ref))
+ obj := new(DeviceMemoryOverallocationCreateInfoAMD)
+ obj.ref5ccee475 = (*C.VkDeviceMemoryOverallocationCreateInfoAMD)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DebugMarkerObjectTagInfo) PassRef() (*C.VkDebugMarkerObjectTagInfoEXT, *cgoAllocMap) {
+func (x *DeviceMemoryOverallocationCreateInfoAMD) PassRef() (*C.VkDeviceMemoryOverallocationCreateInfoAMD, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refa41a5c3b != nil {
- return x.refa41a5c3b, nil
+ } else if x.ref5ccee475 != nil {
+ return x.ref5ccee475, nil
}
- mema41a5c3b := allocDebugMarkerObjectTagInfoMemory(1)
- refa41a5c3b := (*C.VkDebugMarkerObjectTagInfoEXT)(mema41a5c3b)
- allocsa41a5c3b := new(cgoAllocMap)
- allocsa41a5c3b.Add(mema41a5c3b)
+ mem5ccee475 := allocDeviceMemoryOverallocationCreateInfoAMDMemory(1)
+ ref5ccee475 := (*C.VkDeviceMemoryOverallocationCreateInfoAMD)(mem5ccee475)
+ allocs5ccee475 := new(cgoAllocMap)
+ allocs5ccee475.Add(mem5ccee475)
var csType_allocs *cgoAllocMap
- refa41a5c3b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsa41a5c3b.Borrow(csType_allocs)
+ ref5ccee475.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs5ccee475.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refa41a5c3b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsa41a5c3b.Borrow(cpNext_allocs)
-
- var cobjectType_allocs *cgoAllocMap
- refa41a5c3b.objectType, cobjectType_allocs = (C.VkDebugReportObjectTypeEXT)(x.ObjectType), cgoAllocsUnknown
- allocsa41a5c3b.Borrow(cobjectType_allocs)
-
- var cobject_allocs *cgoAllocMap
- refa41a5c3b.object, cobject_allocs = (C.uint64_t)(x.Object), cgoAllocsUnknown
- allocsa41a5c3b.Borrow(cobject_allocs)
-
- var ctagName_allocs *cgoAllocMap
- refa41a5c3b.tagName, ctagName_allocs = (C.uint64_t)(x.TagName), cgoAllocsUnknown
- allocsa41a5c3b.Borrow(ctagName_allocs)
-
- var ctagSize_allocs *cgoAllocMap
- refa41a5c3b.tagSize, ctagSize_allocs = (C.size_t)(x.TagSize), cgoAllocsUnknown
- allocsa41a5c3b.Borrow(ctagSize_allocs)
+ ref5ccee475.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs5ccee475.Borrow(cpNext_allocs)
- var cpTag_allocs *cgoAllocMap
- refa41a5c3b.pTag, cpTag_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PTag)), cgoAllocsUnknown
- allocsa41a5c3b.Borrow(cpTag_allocs)
+ var coverallocationBehavior_allocs *cgoAllocMap
+ ref5ccee475.overallocationBehavior, coverallocationBehavior_allocs = (C.VkMemoryOverallocationBehaviorAMD)(x.OverallocationBehavior), cgoAllocsUnknown
+ allocs5ccee475.Borrow(coverallocationBehavior_allocs)
- x.refa41a5c3b = refa41a5c3b
- x.allocsa41a5c3b = allocsa41a5c3b
- return refa41a5c3b, allocsa41a5c3b
+ x.ref5ccee475 = ref5ccee475
+ x.allocs5ccee475 = allocs5ccee475
+ return ref5ccee475, allocs5ccee475
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DebugMarkerObjectTagInfo) PassValue() (C.VkDebugMarkerObjectTagInfoEXT, *cgoAllocMap) {
- if x.refa41a5c3b != nil {
- return *x.refa41a5c3b, nil
+func (x DeviceMemoryOverallocationCreateInfoAMD) PassValue() (C.VkDeviceMemoryOverallocationCreateInfoAMD, *cgoAllocMap) {
+ if x.ref5ccee475 != nil {
+ return *x.ref5ccee475, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -25787,98 +52774,90 @@ func (x DebugMarkerObjectTagInfo) PassValue() (C.VkDebugMarkerObjectTagInfoEXT,
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DebugMarkerObjectTagInfo) Deref() {
- if x.refa41a5c3b == nil {
+func (x *DeviceMemoryOverallocationCreateInfoAMD) Deref() {
+ if x.ref5ccee475 == nil {
return
}
- x.SType = (StructureType)(x.refa41a5c3b.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa41a5c3b.pNext))
- x.ObjectType = (DebugReportObjectType)(x.refa41a5c3b.objectType)
- x.Object = (uint64)(x.refa41a5c3b.object)
- x.TagName = (uint64)(x.refa41a5c3b.tagName)
- x.TagSize = (uint)(x.refa41a5c3b.tagSize)
- x.PTag = (unsafe.Pointer)(unsafe.Pointer(x.refa41a5c3b.pTag))
+ x.SType = (StructureType)(x.ref5ccee475.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5ccee475.pNext))
+ x.OverallocationBehavior = (MemoryOverallocationBehaviorAMD)(x.ref5ccee475.overallocationBehavior)
}
-// allocDebugMarkerMarkerInfoMemory allocates memory for type C.VkDebugMarkerMarkerInfoEXT in C.
+// allocPhysicalDeviceVertexAttributeDivisorPropertiesMemory allocates memory for type C.VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDebugMarkerMarkerInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDebugMarkerMarkerInfoValue))
+func allocPhysicalDeviceVertexAttributeDivisorPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceVertexAttributeDivisorPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDebugMarkerMarkerInfoValue = unsafe.Sizeof([1]C.VkDebugMarkerMarkerInfoEXT{})
+const sizeOfPhysicalDeviceVertexAttributeDivisorPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DebugMarkerMarkerInfo) Ref() *C.VkDebugMarkerMarkerInfoEXT {
+func (x *PhysicalDeviceVertexAttributeDivisorProperties) Ref() *C.VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT {
if x == nil {
return nil
}
- return x.ref234b91fd
+ return x.refbd6b5075
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DebugMarkerMarkerInfo) Free() {
- if x != nil && x.allocs234b91fd != nil {
- x.allocs234b91fd.(*cgoAllocMap).Free()
- x.ref234b91fd = nil
+func (x *PhysicalDeviceVertexAttributeDivisorProperties) Free() {
+ if x != nil && x.allocsbd6b5075 != nil {
+ x.allocsbd6b5075.(*cgoAllocMap).Free()
+ x.refbd6b5075 = nil
}
}
-// NewDebugMarkerMarkerInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceVertexAttributeDivisorPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDebugMarkerMarkerInfoRef(ref unsafe.Pointer) *DebugMarkerMarkerInfo {
+func NewPhysicalDeviceVertexAttributeDivisorPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceVertexAttributeDivisorProperties {
if ref == nil {
return nil
}
- obj := new(DebugMarkerMarkerInfo)
- obj.ref234b91fd = (*C.VkDebugMarkerMarkerInfoEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceVertexAttributeDivisorProperties)
+ obj.refbd6b5075 = (*C.VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DebugMarkerMarkerInfo) PassRef() (*C.VkDebugMarkerMarkerInfoEXT, *cgoAllocMap) {
+func (x *PhysicalDeviceVertexAttributeDivisorProperties) PassRef() (*C.VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref234b91fd != nil {
- return x.ref234b91fd, nil
+ } else if x.refbd6b5075 != nil {
+ return x.refbd6b5075, nil
}
- mem234b91fd := allocDebugMarkerMarkerInfoMemory(1)
- ref234b91fd := (*C.VkDebugMarkerMarkerInfoEXT)(mem234b91fd)
- allocs234b91fd := new(cgoAllocMap)
- allocs234b91fd.Add(mem234b91fd)
+ membd6b5075 := allocPhysicalDeviceVertexAttributeDivisorPropertiesMemory(1)
+ refbd6b5075 := (*C.VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT)(membd6b5075)
+ allocsbd6b5075 := new(cgoAllocMap)
+ allocsbd6b5075.Add(membd6b5075)
var csType_allocs *cgoAllocMap
- ref234b91fd.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs234b91fd.Borrow(csType_allocs)
+ refbd6b5075.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsbd6b5075.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref234b91fd.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs234b91fd.Borrow(cpNext_allocs)
-
- var cpMarkerName_allocs *cgoAllocMap
- ref234b91fd.pMarkerName, cpMarkerName_allocs = unpackPCharString(x.PMarkerName)
- allocs234b91fd.Borrow(cpMarkerName_allocs)
+ refbd6b5075.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsbd6b5075.Borrow(cpNext_allocs)
- var ccolor_allocs *cgoAllocMap
- ref234b91fd.color, ccolor_allocs = *(*[4]C.float)(unsafe.Pointer(&x.Color)), cgoAllocsUnknown
- allocs234b91fd.Borrow(ccolor_allocs)
+ var cmaxVertexAttribDivisor_allocs *cgoAllocMap
+ refbd6b5075.maxVertexAttribDivisor, cmaxVertexAttribDivisor_allocs = (C.uint32_t)(x.MaxVertexAttribDivisor), cgoAllocsUnknown
+ allocsbd6b5075.Borrow(cmaxVertexAttribDivisor_allocs)
- x.ref234b91fd = ref234b91fd
- x.allocs234b91fd = allocs234b91fd
- return ref234b91fd, allocs234b91fd
+ x.refbd6b5075 = refbd6b5075
+ x.allocsbd6b5075 = allocsbd6b5075
+ return refbd6b5075, allocsbd6b5075
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DebugMarkerMarkerInfo) PassValue() (C.VkDebugMarkerMarkerInfoEXT, *cgoAllocMap) {
- if x.ref234b91fd != nil {
- return *x.ref234b91fd, nil
+func (x PhysicalDeviceVertexAttributeDivisorProperties) PassValue() (C.VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT, *cgoAllocMap) {
+ if x.refbd6b5075 != nil {
+ return *x.refbd6b5075, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -25886,91 +52865,86 @@ func (x DebugMarkerMarkerInfo) PassValue() (C.VkDebugMarkerMarkerInfoEXT, *cgoAl
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DebugMarkerMarkerInfo) Deref() {
- if x.ref234b91fd == nil {
+func (x *PhysicalDeviceVertexAttributeDivisorProperties) Deref() {
+ if x.refbd6b5075 == nil {
return
}
- x.SType = (StructureType)(x.ref234b91fd.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref234b91fd.pNext))
- x.PMarkerName = packPCharString(x.ref234b91fd.pMarkerName)
- x.Color = *(*[4]float32)(unsafe.Pointer(&x.ref234b91fd.color))
+ x.SType = (StructureType)(x.refbd6b5075.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refbd6b5075.pNext))
+ x.MaxVertexAttribDivisor = (uint32)(x.refbd6b5075.maxVertexAttribDivisor)
}
-// allocDedicatedAllocationImageCreateInfoNVMemory allocates memory for type C.VkDedicatedAllocationImageCreateInfoNV in C.
+// allocVertexInputBindingDivisorDescriptionMemory allocates memory for type C.VkVertexInputBindingDivisorDescriptionEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDedicatedAllocationImageCreateInfoNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDedicatedAllocationImageCreateInfoNVValue))
+func allocVertexInputBindingDivisorDescriptionMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfVertexInputBindingDivisorDescriptionValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDedicatedAllocationImageCreateInfoNVValue = unsafe.Sizeof([1]C.VkDedicatedAllocationImageCreateInfoNV{})
+const sizeOfVertexInputBindingDivisorDescriptionValue = unsafe.Sizeof([1]C.VkVertexInputBindingDivisorDescriptionEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DedicatedAllocationImageCreateInfoNV) Ref() *C.VkDedicatedAllocationImageCreateInfoNV {
+func (x *VertexInputBindingDivisorDescription) Ref() *C.VkVertexInputBindingDivisorDescriptionEXT {
if x == nil {
return nil
}
- return x.ref685d878b
+ return x.refd64d4396
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DedicatedAllocationImageCreateInfoNV) Free() {
- if x != nil && x.allocs685d878b != nil {
- x.allocs685d878b.(*cgoAllocMap).Free()
- x.ref685d878b = nil
+func (x *VertexInputBindingDivisorDescription) Free() {
+ if x != nil && x.allocsd64d4396 != nil {
+ x.allocsd64d4396.(*cgoAllocMap).Free()
+ x.refd64d4396 = nil
}
}
-// NewDedicatedAllocationImageCreateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewVertexInputBindingDivisorDescriptionRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDedicatedAllocationImageCreateInfoNVRef(ref unsafe.Pointer) *DedicatedAllocationImageCreateInfoNV {
+func NewVertexInputBindingDivisorDescriptionRef(ref unsafe.Pointer) *VertexInputBindingDivisorDescription {
if ref == nil {
return nil
}
- obj := new(DedicatedAllocationImageCreateInfoNV)
- obj.ref685d878b = (*C.VkDedicatedAllocationImageCreateInfoNV)(unsafe.Pointer(ref))
+ obj := new(VertexInputBindingDivisorDescription)
+ obj.refd64d4396 = (*C.VkVertexInputBindingDivisorDescriptionEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DedicatedAllocationImageCreateInfoNV) PassRef() (*C.VkDedicatedAllocationImageCreateInfoNV, *cgoAllocMap) {
+func (x *VertexInputBindingDivisorDescription) PassRef() (*C.VkVertexInputBindingDivisorDescriptionEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref685d878b != nil {
- return x.ref685d878b, nil
+ } else if x.refd64d4396 != nil {
+ return x.refd64d4396, nil
}
- mem685d878b := allocDedicatedAllocationImageCreateInfoNVMemory(1)
- ref685d878b := (*C.VkDedicatedAllocationImageCreateInfoNV)(mem685d878b)
- allocs685d878b := new(cgoAllocMap)
- allocs685d878b.Add(mem685d878b)
-
- var csType_allocs *cgoAllocMap
- ref685d878b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs685d878b.Borrow(csType_allocs)
+ memd64d4396 := allocVertexInputBindingDivisorDescriptionMemory(1)
+ refd64d4396 := (*C.VkVertexInputBindingDivisorDescriptionEXT)(memd64d4396)
+ allocsd64d4396 := new(cgoAllocMap)
+ allocsd64d4396.Add(memd64d4396)
- var cpNext_allocs *cgoAllocMap
- ref685d878b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs685d878b.Borrow(cpNext_allocs)
+ var cbinding_allocs *cgoAllocMap
+ refd64d4396.binding, cbinding_allocs = (C.uint32_t)(x.Binding), cgoAllocsUnknown
+ allocsd64d4396.Borrow(cbinding_allocs)
- var cdedicatedAllocation_allocs *cgoAllocMap
- ref685d878b.dedicatedAllocation, cdedicatedAllocation_allocs = (C.VkBool32)(x.DedicatedAllocation), cgoAllocsUnknown
- allocs685d878b.Borrow(cdedicatedAllocation_allocs)
+ var cdivisor_allocs *cgoAllocMap
+ refd64d4396.divisor, cdivisor_allocs = (C.uint32_t)(x.Divisor), cgoAllocsUnknown
+ allocsd64d4396.Borrow(cdivisor_allocs)
- x.ref685d878b = ref685d878b
- x.allocs685d878b = allocs685d878b
- return ref685d878b, allocs685d878b
+ x.refd64d4396 = refd64d4396
+ x.allocsd64d4396 = allocsd64d4396
+ return refd64d4396, allocsd64d4396
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DedicatedAllocationImageCreateInfoNV) PassValue() (C.VkDedicatedAllocationImageCreateInfoNV, *cgoAllocMap) {
- if x.ref685d878b != nil {
- return *x.ref685d878b, nil
+func (x VertexInputBindingDivisorDescription) PassValue() (C.VkVertexInputBindingDivisorDescriptionEXT, *cgoAllocMap) {
+ if x.refd64d4396 != nil {
+ return *x.refd64d4396, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -25978,90 +52952,131 @@ func (x DedicatedAllocationImageCreateInfoNV) PassValue() (C.VkDedicatedAllocati
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DedicatedAllocationImageCreateInfoNV) Deref() {
- if x.ref685d878b == nil {
+func (x *VertexInputBindingDivisorDescription) Deref() {
+ if x.refd64d4396 == nil {
return
}
- x.SType = (StructureType)(x.ref685d878b.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref685d878b.pNext))
- x.DedicatedAllocation = (Bool32)(x.ref685d878b.dedicatedAllocation)
+ x.Binding = (uint32)(x.refd64d4396.binding)
+ x.Divisor = (uint32)(x.refd64d4396.divisor)
+}
+
+// allocPipelineVertexInputDivisorStateCreateInfoMemory allocates memory for type C.VkPipelineVertexInputDivisorStateCreateInfoEXT in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPipelineVertexInputDivisorStateCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineVertexInputDivisorStateCreateInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfPipelineVertexInputDivisorStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineVertexInputDivisorStateCreateInfoEXT{})
+
+// unpackSVertexInputBindingDivisorDescription transforms a sliced Go data structure into plain C format.
+func unpackSVertexInputBindingDivisorDescription(x []VertexInputBindingDivisorDescription) (unpacked *C.VkVertexInputBindingDivisorDescriptionEXT, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkVertexInputBindingDivisorDescriptionEXT) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocVertexInputBindingDivisorDescriptionMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkVertexInputBindingDivisorDescriptionEXT)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkVertexInputBindingDivisorDescriptionEXT)(h.Data)
+ return
}
-// allocDedicatedAllocationBufferCreateInfoNVMemory allocates memory for type C.VkDedicatedAllocationBufferCreateInfoNV in C.
-// The caller is responsible for freeing the this memory via C.free.
-func allocDedicatedAllocationBufferCreateInfoNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDedicatedAllocationBufferCreateInfoNVValue))
- if err != nil {
- panic("memory alloc error: " + err.Error())
+// packSVertexInputBindingDivisorDescription reads sliced Go data structure out from plain C format.
+func packSVertexInputBindingDivisorDescription(v []VertexInputBindingDivisorDescription, ptr0 *C.VkVertexInputBindingDivisorDescriptionEXT) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfVertexInputBindingDivisorDescriptionValue]C.VkVertexInputBindingDivisorDescriptionEXT)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewVertexInputBindingDivisorDescriptionRef(unsafe.Pointer(&ptr1))
}
- return mem
}
-const sizeOfDedicatedAllocationBufferCreateInfoNVValue = unsafe.Sizeof([1]C.VkDedicatedAllocationBufferCreateInfoNV{})
-
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DedicatedAllocationBufferCreateInfoNV) Ref() *C.VkDedicatedAllocationBufferCreateInfoNV {
+func (x *PipelineVertexInputDivisorStateCreateInfo) Ref() *C.VkPipelineVertexInputDivisorStateCreateInfoEXT {
if x == nil {
return nil
}
- return x.refbc745a8
+ return x.ref86096bfd
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DedicatedAllocationBufferCreateInfoNV) Free() {
- if x != nil && x.allocsbc745a8 != nil {
- x.allocsbc745a8.(*cgoAllocMap).Free()
- x.refbc745a8 = nil
+func (x *PipelineVertexInputDivisorStateCreateInfo) Free() {
+ if x != nil && x.allocs86096bfd != nil {
+ x.allocs86096bfd.(*cgoAllocMap).Free()
+ x.ref86096bfd = nil
}
}
-// NewDedicatedAllocationBufferCreateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineVertexInputDivisorStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDedicatedAllocationBufferCreateInfoNVRef(ref unsafe.Pointer) *DedicatedAllocationBufferCreateInfoNV {
+func NewPipelineVertexInputDivisorStateCreateInfoRef(ref unsafe.Pointer) *PipelineVertexInputDivisorStateCreateInfo {
if ref == nil {
return nil
}
- obj := new(DedicatedAllocationBufferCreateInfoNV)
- obj.refbc745a8 = (*C.VkDedicatedAllocationBufferCreateInfoNV)(unsafe.Pointer(ref))
+ obj := new(PipelineVertexInputDivisorStateCreateInfo)
+ obj.ref86096bfd = (*C.VkPipelineVertexInputDivisorStateCreateInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DedicatedAllocationBufferCreateInfoNV) PassRef() (*C.VkDedicatedAllocationBufferCreateInfoNV, *cgoAllocMap) {
+func (x *PipelineVertexInputDivisorStateCreateInfo) PassRef() (*C.VkPipelineVertexInputDivisorStateCreateInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refbc745a8 != nil {
- return x.refbc745a8, nil
+ } else if x.ref86096bfd != nil {
+ return x.ref86096bfd, nil
}
- membc745a8 := allocDedicatedAllocationBufferCreateInfoNVMemory(1)
- refbc745a8 := (*C.VkDedicatedAllocationBufferCreateInfoNV)(membc745a8)
- allocsbc745a8 := new(cgoAllocMap)
- allocsbc745a8.Add(membc745a8)
+ mem86096bfd := allocPipelineVertexInputDivisorStateCreateInfoMemory(1)
+ ref86096bfd := (*C.VkPipelineVertexInputDivisorStateCreateInfoEXT)(mem86096bfd)
+ allocs86096bfd := new(cgoAllocMap)
+ allocs86096bfd.Add(mem86096bfd)
var csType_allocs *cgoAllocMap
- refbc745a8.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsbc745a8.Borrow(csType_allocs)
+ ref86096bfd.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs86096bfd.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refbc745a8.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsbc745a8.Borrow(cpNext_allocs)
+ ref86096bfd.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs86096bfd.Borrow(cpNext_allocs)
- var cdedicatedAllocation_allocs *cgoAllocMap
- refbc745a8.dedicatedAllocation, cdedicatedAllocation_allocs = (C.VkBool32)(x.DedicatedAllocation), cgoAllocsUnknown
- allocsbc745a8.Borrow(cdedicatedAllocation_allocs)
+ var cvertexBindingDivisorCount_allocs *cgoAllocMap
+ ref86096bfd.vertexBindingDivisorCount, cvertexBindingDivisorCount_allocs = (C.uint32_t)(x.VertexBindingDivisorCount), cgoAllocsUnknown
+ allocs86096bfd.Borrow(cvertexBindingDivisorCount_allocs)
- x.refbc745a8 = refbc745a8
- x.allocsbc745a8 = allocsbc745a8
- return refbc745a8, allocsbc745a8
+ var cpVertexBindingDivisors_allocs *cgoAllocMap
+ ref86096bfd.pVertexBindingDivisors, cpVertexBindingDivisors_allocs = unpackSVertexInputBindingDivisorDescription(x.PVertexBindingDivisors)
+ allocs86096bfd.Borrow(cpVertexBindingDivisors_allocs)
+
+ x.ref86096bfd = ref86096bfd
+ x.allocs86096bfd = allocs86096bfd
+ return ref86096bfd, allocs86096bfd
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DedicatedAllocationBufferCreateInfoNV) PassValue() (C.VkDedicatedAllocationBufferCreateInfoNV, *cgoAllocMap) {
- if x.refbc745a8 != nil {
- return *x.refbc745a8, nil
+func (x PipelineVertexInputDivisorStateCreateInfo) PassValue() (C.VkPipelineVertexInputDivisorStateCreateInfoEXT, *cgoAllocMap) {
+ if x.ref86096bfd != nil {
+ return *x.ref86096bfd, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -26069,94 +53084,95 @@ func (x DedicatedAllocationBufferCreateInfoNV) PassValue() (C.VkDedicatedAllocat
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DedicatedAllocationBufferCreateInfoNV) Deref() {
- if x.refbc745a8 == nil {
+func (x *PipelineVertexInputDivisorStateCreateInfo) Deref() {
+ if x.ref86096bfd == nil {
return
}
- x.SType = (StructureType)(x.refbc745a8.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refbc745a8.pNext))
- x.DedicatedAllocation = (Bool32)(x.refbc745a8.dedicatedAllocation)
+ x.SType = (StructureType)(x.ref86096bfd.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref86096bfd.pNext))
+ x.VertexBindingDivisorCount = (uint32)(x.ref86096bfd.vertexBindingDivisorCount)
+ packSVertexInputBindingDivisorDescription(x.PVertexBindingDivisors, x.ref86096bfd.pVertexBindingDivisors)
}
-// allocDedicatedAllocationMemoryAllocateInfoNVMemory allocates memory for type C.VkDedicatedAllocationMemoryAllocateInfoNV in C.
+// allocPhysicalDeviceVertexAttributeDivisorFeaturesMemory allocates memory for type C.VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDedicatedAllocationMemoryAllocateInfoNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDedicatedAllocationMemoryAllocateInfoNVValue))
+func allocPhysicalDeviceVertexAttributeDivisorFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceVertexAttributeDivisorFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDedicatedAllocationMemoryAllocateInfoNVValue = unsafe.Sizeof([1]C.VkDedicatedAllocationMemoryAllocateInfoNV{})
+const sizeOfPhysicalDeviceVertexAttributeDivisorFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DedicatedAllocationMemoryAllocateInfoNV) Ref() *C.VkDedicatedAllocationMemoryAllocateInfoNV {
+func (x *PhysicalDeviceVertexAttributeDivisorFeatures) Ref() *C.VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT {
if x == nil {
return nil
}
- return x.ref9a72b107
+ return x.refffe7619a
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DedicatedAllocationMemoryAllocateInfoNV) Free() {
- if x != nil && x.allocs9a72b107 != nil {
- x.allocs9a72b107.(*cgoAllocMap).Free()
- x.ref9a72b107 = nil
+func (x *PhysicalDeviceVertexAttributeDivisorFeatures) Free() {
+ if x != nil && x.allocsffe7619a != nil {
+ x.allocsffe7619a.(*cgoAllocMap).Free()
+ x.refffe7619a = nil
}
}
-// NewDedicatedAllocationMemoryAllocateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceVertexAttributeDivisorFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDedicatedAllocationMemoryAllocateInfoNVRef(ref unsafe.Pointer) *DedicatedAllocationMemoryAllocateInfoNV {
+func NewPhysicalDeviceVertexAttributeDivisorFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceVertexAttributeDivisorFeatures {
if ref == nil {
return nil
}
- obj := new(DedicatedAllocationMemoryAllocateInfoNV)
- obj.ref9a72b107 = (*C.VkDedicatedAllocationMemoryAllocateInfoNV)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceVertexAttributeDivisorFeatures)
+ obj.refffe7619a = (*C.VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DedicatedAllocationMemoryAllocateInfoNV) PassRef() (*C.VkDedicatedAllocationMemoryAllocateInfoNV, *cgoAllocMap) {
+func (x *PhysicalDeviceVertexAttributeDivisorFeatures) PassRef() (*C.VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref9a72b107 != nil {
- return x.ref9a72b107, nil
+ } else if x.refffe7619a != nil {
+ return x.refffe7619a, nil
}
- mem9a72b107 := allocDedicatedAllocationMemoryAllocateInfoNVMemory(1)
- ref9a72b107 := (*C.VkDedicatedAllocationMemoryAllocateInfoNV)(mem9a72b107)
- allocs9a72b107 := new(cgoAllocMap)
- allocs9a72b107.Add(mem9a72b107)
+ memffe7619a := allocPhysicalDeviceVertexAttributeDivisorFeaturesMemory(1)
+ refffe7619a := (*C.VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT)(memffe7619a)
+ allocsffe7619a := new(cgoAllocMap)
+ allocsffe7619a.Add(memffe7619a)
var csType_allocs *cgoAllocMap
- ref9a72b107.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs9a72b107.Borrow(csType_allocs)
+ refffe7619a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsffe7619a.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref9a72b107.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs9a72b107.Borrow(cpNext_allocs)
+ refffe7619a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsffe7619a.Borrow(cpNext_allocs)
- var cimage_allocs *cgoAllocMap
- ref9a72b107.image, cimage_allocs = *(*C.VkImage)(unsafe.Pointer(&x.Image)), cgoAllocsUnknown
- allocs9a72b107.Borrow(cimage_allocs)
+ var cvertexAttributeInstanceRateDivisor_allocs *cgoAllocMap
+ refffe7619a.vertexAttributeInstanceRateDivisor, cvertexAttributeInstanceRateDivisor_allocs = (C.VkBool32)(x.VertexAttributeInstanceRateDivisor), cgoAllocsUnknown
+ allocsffe7619a.Borrow(cvertexAttributeInstanceRateDivisor_allocs)
- var cbuffer_allocs *cgoAllocMap
- ref9a72b107.buffer, cbuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.Buffer)), cgoAllocsUnknown
- allocs9a72b107.Borrow(cbuffer_allocs)
+ var cvertexAttributeInstanceRateZeroDivisor_allocs *cgoAllocMap
+ refffe7619a.vertexAttributeInstanceRateZeroDivisor, cvertexAttributeInstanceRateZeroDivisor_allocs = (C.VkBool32)(x.VertexAttributeInstanceRateZeroDivisor), cgoAllocsUnknown
+ allocsffe7619a.Borrow(cvertexAttributeInstanceRateZeroDivisor_allocs)
- x.ref9a72b107 = ref9a72b107
- x.allocs9a72b107 = allocs9a72b107
- return ref9a72b107, allocs9a72b107
+ x.refffe7619a = refffe7619a
+ x.allocsffe7619a = allocsffe7619a
+ return refffe7619a, allocsffe7619a
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DedicatedAllocationMemoryAllocateInfoNV) PassValue() (C.VkDedicatedAllocationMemoryAllocateInfoNV, *cgoAllocMap) {
- if x.ref9a72b107 != nil {
- return *x.ref9a72b107, nil
+func (x PhysicalDeviceVertexAttributeDivisorFeatures) PassValue() (C.VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT, *cgoAllocMap) {
+ if x.refffe7619a != nil {
+ return *x.refffe7619a, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -26164,95 +53180,95 @@ func (x DedicatedAllocationMemoryAllocateInfoNV) PassValue() (C.VkDedicatedAlloc
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DedicatedAllocationMemoryAllocateInfoNV) Deref() {
- if x.ref9a72b107 == nil {
+func (x *PhysicalDeviceVertexAttributeDivisorFeatures) Deref() {
+ if x.refffe7619a == nil {
return
}
- x.SType = (StructureType)(x.ref9a72b107.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref9a72b107.pNext))
- x.Image = *(*Image)(unsafe.Pointer(&x.ref9a72b107.image))
- x.Buffer = *(*Buffer)(unsafe.Pointer(&x.ref9a72b107.buffer))
+ x.SType = (StructureType)(x.refffe7619a.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refffe7619a.pNext))
+ x.VertexAttributeInstanceRateDivisor = (Bool32)(x.refffe7619a.vertexAttributeInstanceRateDivisor)
+ x.VertexAttributeInstanceRateZeroDivisor = (Bool32)(x.refffe7619a.vertexAttributeInstanceRateZeroDivisor)
}
-// allocPhysicalDeviceTransformFeedbackFeaturesMemory allocates memory for type C.VkPhysicalDeviceTransformFeedbackFeaturesEXT in C.
+// allocPhysicalDeviceComputeShaderDerivativesFeaturesNVMemory allocates memory for type C.VkPhysicalDeviceComputeShaderDerivativesFeaturesNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceTransformFeedbackFeaturesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceTransformFeedbackFeaturesValue))
+func allocPhysicalDeviceComputeShaderDerivativesFeaturesNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceComputeShaderDerivativesFeaturesNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceTransformFeedbackFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceTransformFeedbackFeaturesEXT{})
+const sizeOfPhysicalDeviceComputeShaderDerivativesFeaturesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceComputeShaderDerivativesFeaturesNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceTransformFeedbackFeatures) Ref() *C.VkPhysicalDeviceTransformFeedbackFeaturesEXT {
+func (x *PhysicalDeviceComputeShaderDerivativesFeaturesNV) Ref() *C.VkPhysicalDeviceComputeShaderDerivativesFeaturesNV {
if x == nil {
return nil
}
- return x.ref64b2a913
+ return x.reff31d599c
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceTransformFeedbackFeatures) Free() {
- if x != nil && x.allocs64b2a913 != nil {
- x.allocs64b2a913.(*cgoAllocMap).Free()
- x.ref64b2a913 = nil
+func (x *PhysicalDeviceComputeShaderDerivativesFeaturesNV) Free() {
+ if x != nil && x.allocsf31d599c != nil {
+ x.allocsf31d599c.(*cgoAllocMap).Free()
+ x.reff31d599c = nil
}
}
-// NewPhysicalDeviceTransformFeedbackFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceComputeShaderDerivativesFeaturesNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceTransformFeedbackFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceTransformFeedbackFeatures {
+func NewPhysicalDeviceComputeShaderDerivativesFeaturesNVRef(ref unsafe.Pointer) *PhysicalDeviceComputeShaderDerivativesFeaturesNV {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceTransformFeedbackFeatures)
- obj.ref64b2a913 = (*C.VkPhysicalDeviceTransformFeedbackFeaturesEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceComputeShaderDerivativesFeaturesNV)
+ obj.reff31d599c = (*C.VkPhysicalDeviceComputeShaderDerivativesFeaturesNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceTransformFeedbackFeatures) PassRef() (*C.VkPhysicalDeviceTransformFeedbackFeaturesEXT, *cgoAllocMap) {
+func (x *PhysicalDeviceComputeShaderDerivativesFeaturesNV) PassRef() (*C.VkPhysicalDeviceComputeShaderDerivativesFeaturesNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref64b2a913 != nil {
- return x.ref64b2a913, nil
+ } else if x.reff31d599c != nil {
+ return x.reff31d599c, nil
}
- mem64b2a913 := allocPhysicalDeviceTransformFeedbackFeaturesMemory(1)
- ref64b2a913 := (*C.VkPhysicalDeviceTransformFeedbackFeaturesEXT)(mem64b2a913)
- allocs64b2a913 := new(cgoAllocMap)
- allocs64b2a913.Add(mem64b2a913)
+ memf31d599c := allocPhysicalDeviceComputeShaderDerivativesFeaturesNVMemory(1)
+ reff31d599c := (*C.VkPhysicalDeviceComputeShaderDerivativesFeaturesNV)(memf31d599c)
+ allocsf31d599c := new(cgoAllocMap)
+ allocsf31d599c.Add(memf31d599c)
var csType_allocs *cgoAllocMap
- ref64b2a913.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs64b2a913.Borrow(csType_allocs)
+ reff31d599c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsf31d599c.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref64b2a913.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs64b2a913.Borrow(cpNext_allocs)
+ reff31d599c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsf31d599c.Borrow(cpNext_allocs)
- var ctransformFeedback_allocs *cgoAllocMap
- ref64b2a913.transformFeedback, ctransformFeedback_allocs = (C.VkBool32)(x.TransformFeedback), cgoAllocsUnknown
- allocs64b2a913.Borrow(ctransformFeedback_allocs)
+ var ccomputeDerivativeGroupQuads_allocs *cgoAllocMap
+ reff31d599c.computeDerivativeGroupQuads, ccomputeDerivativeGroupQuads_allocs = (C.VkBool32)(x.ComputeDerivativeGroupQuads), cgoAllocsUnknown
+ allocsf31d599c.Borrow(ccomputeDerivativeGroupQuads_allocs)
- var cgeometryStreams_allocs *cgoAllocMap
- ref64b2a913.geometryStreams, cgeometryStreams_allocs = (C.VkBool32)(x.GeometryStreams), cgoAllocsUnknown
- allocs64b2a913.Borrow(cgeometryStreams_allocs)
+ var ccomputeDerivativeGroupLinear_allocs *cgoAllocMap
+ reff31d599c.computeDerivativeGroupLinear, ccomputeDerivativeGroupLinear_allocs = (C.VkBool32)(x.ComputeDerivativeGroupLinear), cgoAllocsUnknown
+ allocsf31d599c.Borrow(ccomputeDerivativeGroupLinear_allocs)
- x.ref64b2a913 = ref64b2a913
- x.allocs64b2a913 = allocs64b2a913
- return ref64b2a913, allocs64b2a913
+ x.reff31d599c = reff31d599c
+ x.allocsf31d599c = allocsf31d599c
+ return reff31d599c, allocsf31d599c
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceTransformFeedbackFeatures) PassValue() (C.VkPhysicalDeviceTransformFeedbackFeaturesEXT, *cgoAllocMap) {
- if x.ref64b2a913 != nil {
- return *x.ref64b2a913, nil
+func (x PhysicalDeviceComputeShaderDerivativesFeaturesNV) PassValue() (C.VkPhysicalDeviceComputeShaderDerivativesFeaturesNV, *cgoAllocMap) {
+ if x.reff31d599c != nil {
+ return *x.reff31d599c, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -26260,127 +53276,95 @@ func (x PhysicalDeviceTransformFeedbackFeatures) PassValue() (C.VkPhysicalDevice
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceTransformFeedbackFeatures) Deref() {
- if x.ref64b2a913 == nil {
+func (x *PhysicalDeviceComputeShaderDerivativesFeaturesNV) Deref() {
+ if x.reff31d599c == nil {
return
}
- x.SType = (StructureType)(x.ref64b2a913.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref64b2a913.pNext))
- x.TransformFeedback = (Bool32)(x.ref64b2a913.transformFeedback)
- x.GeometryStreams = (Bool32)(x.ref64b2a913.geometryStreams)
+ x.SType = (StructureType)(x.reff31d599c.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff31d599c.pNext))
+ x.ComputeDerivativeGroupQuads = (Bool32)(x.reff31d599c.computeDerivativeGroupQuads)
+ x.ComputeDerivativeGroupLinear = (Bool32)(x.reff31d599c.computeDerivativeGroupLinear)
}
-// allocPhysicalDeviceTransformFeedbackPropertiesMemory allocates memory for type C.VkPhysicalDeviceTransformFeedbackPropertiesEXT in C.
+// allocPhysicalDeviceMeshShaderFeaturesNVMemory allocates memory for type C.VkPhysicalDeviceMeshShaderFeaturesNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceTransformFeedbackPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceTransformFeedbackPropertiesValue))
+func allocPhysicalDeviceMeshShaderFeaturesNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceMeshShaderFeaturesNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceTransformFeedbackPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceTransformFeedbackPropertiesEXT{})
+const sizeOfPhysicalDeviceMeshShaderFeaturesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceMeshShaderFeaturesNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceTransformFeedbackProperties) Ref() *C.VkPhysicalDeviceTransformFeedbackPropertiesEXT {
+func (x *PhysicalDeviceMeshShaderFeaturesNV) Ref() *C.VkPhysicalDeviceMeshShaderFeaturesNV {
if x == nil {
return nil
}
- return x.refc295a2a0
+ return x.ref802b98a
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceTransformFeedbackProperties) Free() {
- if x != nil && x.allocsc295a2a0 != nil {
- x.allocsc295a2a0.(*cgoAllocMap).Free()
- x.refc295a2a0 = nil
+func (x *PhysicalDeviceMeshShaderFeaturesNV) Free() {
+ if x != nil && x.allocs802b98a != nil {
+ x.allocs802b98a.(*cgoAllocMap).Free()
+ x.ref802b98a = nil
}
}
-// NewPhysicalDeviceTransformFeedbackPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceMeshShaderFeaturesNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceTransformFeedbackPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceTransformFeedbackProperties {
+func NewPhysicalDeviceMeshShaderFeaturesNVRef(ref unsafe.Pointer) *PhysicalDeviceMeshShaderFeaturesNV {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceTransformFeedbackProperties)
- obj.refc295a2a0 = (*C.VkPhysicalDeviceTransformFeedbackPropertiesEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceMeshShaderFeaturesNV)
+ obj.ref802b98a = (*C.VkPhysicalDeviceMeshShaderFeaturesNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceTransformFeedbackProperties) PassRef() (*C.VkPhysicalDeviceTransformFeedbackPropertiesEXT, *cgoAllocMap) {
+func (x *PhysicalDeviceMeshShaderFeaturesNV) PassRef() (*C.VkPhysicalDeviceMeshShaderFeaturesNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refc295a2a0 != nil {
- return x.refc295a2a0, nil
+ } else if x.ref802b98a != nil {
+ return x.ref802b98a, nil
}
- memc295a2a0 := allocPhysicalDeviceTransformFeedbackPropertiesMemory(1)
- refc295a2a0 := (*C.VkPhysicalDeviceTransformFeedbackPropertiesEXT)(memc295a2a0)
- allocsc295a2a0 := new(cgoAllocMap)
- allocsc295a2a0.Add(memc295a2a0)
+ mem802b98a := allocPhysicalDeviceMeshShaderFeaturesNVMemory(1)
+ ref802b98a := (*C.VkPhysicalDeviceMeshShaderFeaturesNV)(mem802b98a)
+ allocs802b98a := new(cgoAllocMap)
+ allocs802b98a.Add(mem802b98a)
var csType_allocs *cgoAllocMap
- refc295a2a0.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsc295a2a0.Borrow(csType_allocs)
+ ref802b98a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs802b98a.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refc295a2a0.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsc295a2a0.Borrow(cpNext_allocs)
-
- var cmaxTransformFeedbackStreams_allocs *cgoAllocMap
- refc295a2a0.maxTransformFeedbackStreams, cmaxTransformFeedbackStreams_allocs = (C.uint32_t)(x.MaxTransformFeedbackStreams), cgoAllocsUnknown
- allocsc295a2a0.Borrow(cmaxTransformFeedbackStreams_allocs)
-
- var cmaxTransformFeedbackBuffers_allocs *cgoAllocMap
- refc295a2a0.maxTransformFeedbackBuffers, cmaxTransformFeedbackBuffers_allocs = (C.uint32_t)(x.MaxTransformFeedbackBuffers), cgoAllocsUnknown
- allocsc295a2a0.Borrow(cmaxTransformFeedbackBuffers_allocs)
-
- var cmaxTransformFeedbackBufferSize_allocs *cgoAllocMap
- refc295a2a0.maxTransformFeedbackBufferSize, cmaxTransformFeedbackBufferSize_allocs = (C.VkDeviceSize)(x.MaxTransformFeedbackBufferSize), cgoAllocsUnknown
- allocsc295a2a0.Borrow(cmaxTransformFeedbackBufferSize_allocs)
-
- var cmaxTransformFeedbackStreamDataSize_allocs *cgoAllocMap
- refc295a2a0.maxTransformFeedbackStreamDataSize, cmaxTransformFeedbackStreamDataSize_allocs = (C.uint32_t)(x.MaxTransformFeedbackStreamDataSize), cgoAllocsUnknown
- allocsc295a2a0.Borrow(cmaxTransformFeedbackStreamDataSize_allocs)
-
- var cmaxTransformFeedbackBufferDataSize_allocs *cgoAllocMap
- refc295a2a0.maxTransformFeedbackBufferDataSize, cmaxTransformFeedbackBufferDataSize_allocs = (C.uint32_t)(x.MaxTransformFeedbackBufferDataSize), cgoAllocsUnknown
- allocsc295a2a0.Borrow(cmaxTransformFeedbackBufferDataSize_allocs)
-
- var cmaxTransformFeedbackBufferDataStride_allocs *cgoAllocMap
- refc295a2a0.maxTransformFeedbackBufferDataStride, cmaxTransformFeedbackBufferDataStride_allocs = (C.uint32_t)(x.MaxTransformFeedbackBufferDataStride), cgoAllocsUnknown
- allocsc295a2a0.Borrow(cmaxTransformFeedbackBufferDataStride_allocs)
-
- var ctransformFeedbackQueries_allocs *cgoAllocMap
- refc295a2a0.transformFeedbackQueries, ctransformFeedbackQueries_allocs = (C.VkBool32)(x.TransformFeedbackQueries), cgoAllocsUnknown
- allocsc295a2a0.Borrow(ctransformFeedbackQueries_allocs)
-
- var ctransformFeedbackStreamsLinesTriangles_allocs *cgoAllocMap
- refc295a2a0.transformFeedbackStreamsLinesTriangles, ctransformFeedbackStreamsLinesTriangles_allocs = (C.VkBool32)(x.TransformFeedbackStreamsLinesTriangles), cgoAllocsUnknown
- allocsc295a2a0.Borrow(ctransformFeedbackStreamsLinesTriangles_allocs)
+ ref802b98a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs802b98a.Borrow(cpNext_allocs)
- var ctransformFeedbackRasterizationStreamSelect_allocs *cgoAllocMap
- refc295a2a0.transformFeedbackRasterizationStreamSelect, ctransformFeedbackRasterizationStreamSelect_allocs = (C.VkBool32)(x.TransformFeedbackRasterizationStreamSelect), cgoAllocsUnknown
- allocsc295a2a0.Borrow(ctransformFeedbackRasterizationStreamSelect_allocs)
+ var ctaskShader_allocs *cgoAllocMap
+ ref802b98a.taskShader, ctaskShader_allocs = (C.VkBool32)(x.TaskShader), cgoAllocsUnknown
+ allocs802b98a.Borrow(ctaskShader_allocs)
- var ctransformFeedbackDraw_allocs *cgoAllocMap
- refc295a2a0.transformFeedbackDraw, ctransformFeedbackDraw_allocs = (C.VkBool32)(x.TransformFeedbackDraw), cgoAllocsUnknown
- allocsc295a2a0.Borrow(ctransformFeedbackDraw_allocs)
+ var cmeshShader_allocs *cgoAllocMap
+ ref802b98a.meshShader, cmeshShader_allocs = (C.VkBool32)(x.MeshShader), cgoAllocsUnknown
+ allocs802b98a.Borrow(cmeshShader_allocs)
- x.refc295a2a0 = refc295a2a0
- x.allocsc295a2a0 = allocsc295a2a0
- return refc295a2a0, allocsc295a2a0
+ x.ref802b98a = ref802b98a
+ x.allocs802b98a = allocs802b98a
+ return ref802b98a, allocs802b98a
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceTransformFeedbackProperties) PassValue() (C.VkPhysicalDeviceTransformFeedbackPropertiesEXT, *cgoAllocMap) {
- if x.refc295a2a0 != nil {
- return *x.refc295a2a0, nil
+func (x PhysicalDeviceMeshShaderFeaturesNV) PassValue() (C.VkPhysicalDeviceMeshShaderFeaturesNV, *cgoAllocMap) {
+ if x.ref802b98a != nil {
+ return *x.ref802b98a, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -26388,195 +53372,139 @@ func (x PhysicalDeviceTransformFeedbackProperties) PassValue() (C.VkPhysicalDevi
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceTransformFeedbackProperties) Deref() {
- if x.refc295a2a0 == nil {
+func (x *PhysicalDeviceMeshShaderFeaturesNV) Deref() {
+ if x.ref802b98a == nil {
return
}
- x.SType = (StructureType)(x.refc295a2a0.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc295a2a0.pNext))
- x.MaxTransformFeedbackStreams = (uint32)(x.refc295a2a0.maxTransformFeedbackStreams)
- x.MaxTransformFeedbackBuffers = (uint32)(x.refc295a2a0.maxTransformFeedbackBuffers)
- x.MaxTransformFeedbackBufferSize = (DeviceSize)(x.refc295a2a0.maxTransformFeedbackBufferSize)
- x.MaxTransformFeedbackStreamDataSize = (uint32)(x.refc295a2a0.maxTransformFeedbackStreamDataSize)
- x.MaxTransformFeedbackBufferDataSize = (uint32)(x.refc295a2a0.maxTransformFeedbackBufferDataSize)
- x.MaxTransformFeedbackBufferDataStride = (uint32)(x.refc295a2a0.maxTransformFeedbackBufferDataStride)
- x.TransformFeedbackQueries = (Bool32)(x.refc295a2a0.transformFeedbackQueries)
- x.TransformFeedbackStreamsLinesTriangles = (Bool32)(x.refc295a2a0.transformFeedbackStreamsLinesTriangles)
- x.TransformFeedbackRasterizationStreamSelect = (Bool32)(x.refc295a2a0.transformFeedbackRasterizationStreamSelect)
- x.TransformFeedbackDraw = (Bool32)(x.refc295a2a0.transformFeedbackDraw)
+ x.SType = (StructureType)(x.ref802b98a.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref802b98a.pNext))
+ x.TaskShader = (Bool32)(x.ref802b98a.taskShader)
+ x.MeshShader = (Bool32)(x.ref802b98a.meshShader)
}
-// allocPipelineRasterizationStateStreamCreateInfoMemory allocates memory for type C.VkPipelineRasterizationStateStreamCreateInfoEXT in C.
+// allocPhysicalDeviceMeshShaderPropertiesNVMemory allocates memory for type C.VkPhysicalDeviceMeshShaderPropertiesNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPipelineRasterizationStateStreamCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineRasterizationStateStreamCreateInfoValue))
+func allocPhysicalDeviceMeshShaderPropertiesNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceMeshShaderPropertiesNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPipelineRasterizationStateStreamCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineRasterizationStateStreamCreateInfoEXT{})
+const sizeOfPhysicalDeviceMeshShaderPropertiesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceMeshShaderPropertiesNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PipelineRasterizationStateStreamCreateInfo) Ref() *C.VkPipelineRasterizationStateStreamCreateInfoEXT {
+func (x *PhysicalDeviceMeshShaderPropertiesNV) Ref() *C.VkPhysicalDeviceMeshShaderPropertiesNV {
if x == nil {
return nil
}
- return x.refed6e1fb9
+ return x.ref2ee3ccb7
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PipelineRasterizationStateStreamCreateInfo) Free() {
- if x != nil && x.allocsed6e1fb9 != nil {
- x.allocsed6e1fb9.(*cgoAllocMap).Free()
- x.refed6e1fb9 = nil
+func (x *PhysicalDeviceMeshShaderPropertiesNV) Free() {
+ if x != nil && x.allocs2ee3ccb7 != nil {
+ x.allocs2ee3ccb7.(*cgoAllocMap).Free()
+ x.ref2ee3ccb7 = nil
}
}
-// NewPipelineRasterizationStateStreamCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceMeshShaderPropertiesNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPipelineRasterizationStateStreamCreateInfoRef(ref unsafe.Pointer) *PipelineRasterizationStateStreamCreateInfo {
+func NewPhysicalDeviceMeshShaderPropertiesNVRef(ref unsafe.Pointer) *PhysicalDeviceMeshShaderPropertiesNV {
if ref == nil {
return nil
}
- obj := new(PipelineRasterizationStateStreamCreateInfo)
- obj.refed6e1fb9 = (*C.VkPipelineRasterizationStateStreamCreateInfoEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceMeshShaderPropertiesNV)
+ obj.ref2ee3ccb7 = (*C.VkPhysicalDeviceMeshShaderPropertiesNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PipelineRasterizationStateStreamCreateInfo) PassRef() (*C.VkPipelineRasterizationStateStreamCreateInfoEXT, *cgoAllocMap) {
+func (x *PhysicalDeviceMeshShaderPropertiesNV) PassRef() (*C.VkPhysicalDeviceMeshShaderPropertiesNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refed6e1fb9 != nil {
- return x.refed6e1fb9, nil
+ } else if x.ref2ee3ccb7 != nil {
+ return x.ref2ee3ccb7, nil
}
- memed6e1fb9 := allocPipelineRasterizationStateStreamCreateInfoMemory(1)
- refed6e1fb9 := (*C.VkPipelineRasterizationStateStreamCreateInfoEXT)(memed6e1fb9)
- allocsed6e1fb9 := new(cgoAllocMap)
- allocsed6e1fb9.Add(memed6e1fb9)
+ mem2ee3ccb7 := allocPhysicalDeviceMeshShaderPropertiesNVMemory(1)
+ ref2ee3ccb7 := (*C.VkPhysicalDeviceMeshShaderPropertiesNV)(mem2ee3ccb7)
+ allocs2ee3ccb7 := new(cgoAllocMap)
+ allocs2ee3ccb7.Add(mem2ee3ccb7)
var csType_allocs *cgoAllocMap
- refed6e1fb9.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsed6e1fb9.Borrow(csType_allocs)
+ ref2ee3ccb7.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs2ee3ccb7.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refed6e1fb9.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsed6e1fb9.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- refed6e1fb9.flags, cflags_allocs = (C.VkPipelineRasterizationStateStreamCreateFlagsEXT)(x.Flags), cgoAllocsUnknown
- allocsed6e1fb9.Borrow(cflags_allocs)
-
- var crasterizationStream_allocs *cgoAllocMap
- refed6e1fb9.rasterizationStream, crasterizationStream_allocs = (C.uint32_t)(x.RasterizationStream), cgoAllocsUnknown
- allocsed6e1fb9.Borrow(crasterizationStream_allocs)
+ ref2ee3ccb7.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs2ee3ccb7.Borrow(cpNext_allocs)
- x.refed6e1fb9 = refed6e1fb9
- x.allocsed6e1fb9 = allocsed6e1fb9
- return refed6e1fb9, allocsed6e1fb9
+ var cmaxDrawMeshTasksCount_allocs *cgoAllocMap
+ ref2ee3ccb7.maxDrawMeshTasksCount, cmaxDrawMeshTasksCount_allocs = (C.uint32_t)(x.MaxDrawMeshTasksCount), cgoAllocsUnknown
+ allocs2ee3ccb7.Borrow(cmaxDrawMeshTasksCount_allocs)
-}
+ var cmaxTaskWorkGroupInvocations_allocs *cgoAllocMap
+ ref2ee3ccb7.maxTaskWorkGroupInvocations, cmaxTaskWorkGroupInvocations_allocs = (C.uint32_t)(x.MaxTaskWorkGroupInvocations), cgoAllocsUnknown
+ allocs2ee3ccb7.Borrow(cmaxTaskWorkGroupInvocations_allocs)
-// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PipelineRasterizationStateStreamCreateInfo) PassValue() (C.VkPipelineRasterizationStateStreamCreateInfoEXT, *cgoAllocMap) {
- if x.refed6e1fb9 != nil {
- return *x.refed6e1fb9, nil
- }
- ref, allocs := x.PassRef()
- return *ref, allocs
-}
+ var cmaxTaskWorkGroupSize_allocs *cgoAllocMap
+ ref2ee3ccb7.maxTaskWorkGroupSize, cmaxTaskWorkGroupSize_allocs = *(*[3]C.uint32_t)(unsafe.Pointer(&x.MaxTaskWorkGroupSize)), cgoAllocsUnknown
+ allocs2ee3ccb7.Borrow(cmaxTaskWorkGroupSize_allocs)
-// Deref uses the underlying reference to C object and fills the wrapping struct with values.
-// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PipelineRasterizationStateStreamCreateInfo) Deref() {
- if x.refed6e1fb9 == nil {
- return
- }
- x.SType = (StructureType)(x.refed6e1fb9.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refed6e1fb9.pNext))
- x.Flags = (PipelineRasterizationStateStreamCreateFlags)(x.refed6e1fb9.flags)
- x.RasterizationStream = (uint32)(x.refed6e1fb9.rasterizationStream)
-}
+ var cmaxTaskTotalMemorySize_allocs *cgoAllocMap
+ ref2ee3ccb7.maxTaskTotalMemorySize, cmaxTaskTotalMemorySize_allocs = (C.uint32_t)(x.MaxTaskTotalMemorySize), cgoAllocsUnknown
+ allocs2ee3ccb7.Borrow(cmaxTaskTotalMemorySize_allocs)
-// allocTextureLODGatherFormatPropertiesAMDMemory allocates memory for type C.VkTextureLODGatherFormatPropertiesAMD in C.
-// The caller is responsible for freeing the this memory via C.free.
-func allocTextureLODGatherFormatPropertiesAMDMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfTextureLODGatherFormatPropertiesAMDValue))
- if err != nil {
- panic("memory alloc error: " + err.Error())
- }
- return mem
-}
+ var cmaxTaskOutputCount_allocs *cgoAllocMap
+ ref2ee3ccb7.maxTaskOutputCount, cmaxTaskOutputCount_allocs = (C.uint32_t)(x.MaxTaskOutputCount), cgoAllocsUnknown
+ allocs2ee3ccb7.Borrow(cmaxTaskOutputCount_allocs)
-const sizeOfTextureLODGatherFormatPropertiesAMDValue = unsafe.Sizeof([1]C.VkTextureLODGatherFormatPropertiesAMD{})
+ var cmaxMeshWorkGroupInvocations_allocs *cgoAllocMap
+ ref2ee3ccb7.maxMeshWorkGroupInvocations, cmaxMeshWorkGroupInvocations_allocs = (C.uint32_t)(x.MaxMeshWorkGroupInvocations), cgoAllocsUnknown
+ allocs2ee3ccb7.Borrow(cmaxMeshWorkGroupInvocations_allocs)
-// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *TextureLODGatherFormatPropertiesAMD) Ref() *C.VkTextureLODGatherFormatPropertiesAMD {
- if x == nil {
- return nil
- }
- return x.ref519ba3a9
-}
+ var cmaxMeshWorkGroupSize_allocs *cgoAllocMap
+ ref2ee3ccb7.maxMeshWorkGroupSize, cmaxMeshWorkGroupSize_allocs = *(*[3]C.uint32_t)(unsafe.Pointer(&x.MaxMeshWorkGroupSize)), cgoAllocsUnknown
+ allocs2ee3ccb7.Borrow(cmaxMeshWorkGroupSize_allocs)
-// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
-// Does nothing if struct is nil or has no allocation map.
-func (x *TextureLODGatherFormatPropertiesAMD) Free() {
- if x != nil && x.allocs519ba3a9 != nil {
- x.allocs519ba3a9.(*cgoAllocMap).Free()
- x.ref519ba3a9 = nil
- }
-}
+ var cmaxMeshTotalMemorySize_allocs *cgoAllocMap
+ ref2ee3ccb7.maxMeshTotalMemorySize, cmaxMeshTotalMemorySize_allocs = (C.uint32_t)(x.MaxMeshTotalMemorySize), cgoAllocsUnknown
+ allocs2ee3ccb7.Borrow(cmaxMeshTotalMemorySize_allocs)
-// NewTextureLODGatherFormatPropertiesAMDRef creates a new wrapper struct with underlying reference set to the original C object.
-// Returns nil if the provided pointer to C object is nil too.
-func NewTextureLODGatherFormatPropertiesAMDRef(ref unsafe.Pointer) *TextureLODGatherFormatPropertiesAMD {
- if ref == nil {
- return nil
- }
- obj := new(TextureLODGatherFormatPropertiesAMD)
- obj.ref519ba3a9 = (*C.VkTextureLODGatherFormatPropertiesAMD)(unsafe.Pointer(ref))
- return obj
-}
+ var cmaxMeshOutputVertices_allocs *cgoAllocMap
+ ref2ee3ccb7.maxMeshOutputVertices, cmaxMeshOutputVertices_allocs = (C.uint32_t)(x.MaxMeshOutputVertices), cgoAllocsUnknown
+ allocs2ee3ccb7.Borrow(cmaxMeshOutputVertices_allocs)
-// PassRef returns the underlying C object, otherwise it will allocate one and set its values
-// from this wrapping struct, counting allocations into an allocation map.
-func (x *TextureLODGatherFormatPropertiesAMD) PassRef() (*C.VkTextureLODGatherFormatPropertiesAMD, *cgoAllocMap) {
- if x == nil {
- return nil, nil
- } else if x.ref519ba3a9 != nil {
- return x.ref519ba3a9, nil
- }
- mem519ba3a9 := allocTextureLODGatherFormatPropertiesAMDMemory(1)
- ref519ba3a9 := (*C.VkTextureLODGatherFormatPropertiesAMD)(mem519ba3a9)
- allocs519ba3a9 := new(cgoAllocMap)
- allocs519ba3a9.Add(mem519ba3a9)
+ var cmaxMeshOutputPrimitives_allocs *cgoAllocMap
+ ref2ee3ccb7.maxMeshOutputPrimitives, cmaxMeshOutputPrimitives_allocs = (C.uint32_t)(x.MaxMeshOutputPrimitives), cgoAllocsUnknown
+ allocs2ee3ccb7.Borrow(cmaxMeshOutputPrimitives_allocs)
- var csType_allocs *cgoAllocMap
- ref519ba3a9.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs519ba3a9.Borrow(csType_allocs)
+ var cmaxMeshMultiviewViewCount_allocs *cgoAllocMap
+ ref2ee3ccb7.maxMeshMultiviewViewCount, cmaxMeshMultiviewViewCount_allocs = (C.uint32_t)(x.MaxMeshMultiviewViewCount), cgoAllocsUnknown
+ allocs2ee3ccb7.Borrow(cmaxMeshMultiviewViewCount_allocs)
- var cpNext_allocs *cgoAllocMap
- ref519ba3a9.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs519ba3a9.Borrow(cpNext_allocs)
+ var cmeshOutputPerVertexGranularity_allocs *cgoAllocMap
+ ref2ee3ccb7.meshOutputPerVertexGranularity, cmeshOutputPerVertexGranularity_allocs = (C.uint32_t)(x.MeshOutputPerVertexGranularity), cgoAllocsUnknown
+ allocs2ee3ccb7.Borrow(cmeshOutputPerVertexGranularity_allocs)
- var csupportsTextureGatherLODBiasAMD_allocs *cgoAllocMap
- ref519ba3a9.supportsTextureGatherLODBiasAMD, csupportsTextureGatherLODBiasAMD_allocs = (C.VkBool32)(x.SupportsTextureGatherLODBiasAMD), cgoAllocsUnknown
- allocs519ba3a9.Borrow(csupportsTextureGatherLODBiasAMD_allocs)
+ var cmeshOutputPerPrimitiveGranularity_allocs *cgoAllocMap
+ ref2ee3ccb7.meshOutputPerPrimitiveGranularity, cmeshOutputPerPrimitiveGranularity_allocs = (C.uint32_t)(x.MeshOutputPerPrimitiveGranularity), cgoAllocsUnknown
+ allocs2ee3ccb7.Borrow(cmeshOutputPerPrimitiveGranularity_allocs)
- x.ref519ba3a9 = ref519ba3a9
- x.allocs519ba3a9 = allocs519ba3a9
- return ref519ba3a9, allocs519ba3a9
+ x.ref2ee3ccb7 = ref2ee3ccb7
+ x.allocs2ee3ccb7 = allocs2ee3ccb7
+ return ref2ee3ccb7, allocs2ee3ccb7
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x TextureLODGatherFormatPropertiesAMD) PassValue() (C.VkTextureLODGatherFormatPropertiesAMD, *cgoAllocMap) {
- if x.ref519ba3a9 != nil {
- return *x.ref519ba3a9, nil
+func (x PhysicalDeviceMeshShaderPropertiesNV) PassValue() (C.VkPhysicalDeviceMeshShaderPropertiesNV, *cgoAllocMap) {
+ if x.ref2ee3ccb7 != nil {
+ return *x.ref2ee3ccb7, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -26584,98 +53512,98 @@ func (x TextureLODGatherFormatPropertiesAMD) PassValue() (C.VkTextureLODGatherFo
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *TextureLODGatherFormatPropertiesAMD) Deref() {
- if x.ref519ba3a9 == nil {
+func (x *PhysicalDeviceMeshShaderPropertiesNV) Deref() {
+ if x.ref2ee3ccb7 == nil {
return
}
- x.SType = (StructureType)(x.ref519ba3a9.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref519ba3a9.pNext))
- x.SupportsTextureGatherLODBiasAMD = (Bool32)(x.ref519ba3a9.supportsTextureGatherLODBiasAMD)
+ x.SType = (StructureType)(x.ref2ee3ccb7.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref2ee3ccb7.pNext))
+ x.MaxDrawMeshTasksCount = (uint32)(x.ref2ee3ccb7.maxDrawMeshTasksCount)
+ x.MaxTaskWorkGroupInvocations = (uint32)(x.ref2ee3ccb7.maxTaskWorkGroupInvocations)
+ x.MaxTaskWorkGroupSize = *(*[3]uint32)(unsafe.Pointer(&x.ref2ee3ccb7.maxTaskWorkGroupSize))
+ x.MaxTaskTotalMemorySize = (uint32)(x.ref2ee3ccb7.maxTaskTotalMemorySize)
+ x.MaxTaskOutputCount = (uint32)(x.ref2ee3ccb7.maxTaskOutputCount)
+ x.MaxMeshWorkGroupInvocations = (uint32)(x.ref2ee3ccb7.maxMeshWorkGroupInvocations)
+ x.MaxMeshWorkGroupSize = *(*[3]uint32)(unsafe.Pointer(&x.ref2ee3ccb7.maxMeshWorkGroupSize))
+ x.MaxMeshTotalMemorySize = (uint32)(x.ref2ee3ccb7.maxMeshTotalMemorySize)
+ x.MaxMeshOutputVertices = (uint32)(x.ref2ee3ccb7.maxMeshOutputVertices)
+ x.MaxMeshOutputPrimitives = (uint32)(x.ref2ee3ccb7.maxMeshOutputPrimitives)
+ x.MaxMeshMultiviewViewCount = (uint32)(x.ref2ee3ccb7.maxMeshMultiviewViewCount)
+ x.MeshOutputPerVertexGranularity = (uint32)(x.ref2ee3ccb7.meshOutputPerVertexGranularity)
+ x.MeshOutputPerPrimitiveGranularity = (uint32)(x.ref2ee3ccb7.meshOutputPerPrimitiveGranularity)
}
-// allocShaderResourceUsageAMDMemory allocates memory for type C.VkShaderResourceUsageAMD in C.
+// allocDrawMeshTasksIndirectCommandNVMemory allocates memory for type C.VkDrawMeshTasksIndirectCommandNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocShaderResourceUsageAMDMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfShaderResourceUsageAMDValue))
+func allocDrawMeshTasksIndirectCommandNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDrawMeshTasksIndirectCommandNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfShaderResourceUsageAMDValue = unsafe.Sizeof([1]C.VkShaderResourceUsageAMD{})
+const sizeOfDrawMeshTasksIndirectCommandNVValue = unsafe.Sizeof([1]C.VkDrawMeshTasksIndirectCommandNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ShaderResourceUsageAMD) Ref() *C.VkShaderResourceUsageAMD {
+func (x *DrawMeshTasksIndirectCommandNV) Ref() *C.VkDrawMeshTasksIndirectCommandNV {
if x == nil {
return nil
}
- return x.ref8a688131
+ return x.refda6c46ea
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ShaderResourceUsageAMD) Free() {
- if x != nil && x.allocs8a688131 != nil {
- x.allocs8a688131.(*cgoAllocMap).Free()
- x.ref8a688131 = nil
+func (x *DrawMeshTasksIndirectCommandNV) Free() {
+ if x != nil && x.allocsda6c46ea != nil {
+ x.allocsda6c46ea.(*cgoAllocMap).Free()
+ x.refda6c46ea = nil
}
}
-// NewShaderResourceUsageAMDRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDrawMeshTasksIndirectCommandNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewShaderResourceUsageAMDRef(ref unsafe.Pointer) *ShaderResourceUsageAMD {
+func NewDrawMeshTasksIndirectCommandNVRef(ref unsafe.Pointer) *DrawMeshTasksIndirectCommandNV {
if ref == nil {
return nil
}
- obj := new(ShaderResourceUsageAMD)
- obj.ref8a688131 = (*C.VkShaderResourceUsageAMD)(unsafe.Pointer(ref))
+ obj := new(DrawMeshTasksIndirectCommandNV)
+ obj.refda6c46ea = (*C.VkDrawMeshTasksIndirectCommandNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ShaderResourceUsageAMD) PassRef() (*C.VkShaderResourceUsageAMD, *cgoAllocMap) {
+func (x *DrawMeshTasksIndirectCommandNV) PassRef() (*C.VkDrawMeshTasksIndirectCommandNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref8a688131 != nil {
- return x.ref8a688131, nil
+ } else if x.refda6c46ea != nil {
+ return x.refda6c46ea, nil
}
- mem8a688131 := allocShaderResourceUsageAMDMemory(1)
- ref8a688131 := (*C.VkShaderResourceUsageAMD)(mem8a688131)
- allocs8a688131 := new(cgoAllocMap)
- allocs8a688131.Add(mem8a688131)
-
- var cnumUsedVgprs_allocs *cgoAllocMap
- ref8a688131.numUsedVgprs, cnumUsedVgprs_allocs = (C.uint32_t)(x.NumUsedVgprs), cgoAllocsUnknown
- allocs8a688131.Borrow(cnumUsedVgprs_allocs)
-
- var cnumUsedSgprs_allocs *cgoAllocMap
- ref8a688131.numUsedSgprs, cnumUsedSgprs_allocs = (C.uint32_t)(x.NumUsedSgprs), cgoAllocsUnknown
- allocs8a688131.Borrow(cnumUsedSgprs_allocs)
-
- var cldsSizePerLocalWorkGroup_allocs *cgoAllocMap
- ref8a688131.ldsSizePerLocalWorkGroup, cldsSizePerLocalWorkGroup_allocs = (C.uint32_t)(x.LdsSizePerLocalWorkGroup), cgoAllocsUnknown
- allocs8a688131.Borrow(cldsSizePerLocalWorkGroup_allocs)
+ memda6c46ea := allocDrawMeshTasksIndirectCommandNVMemory(1)
+ refda6c46ea := (*C.VkDrawMeshTasksIndirectCommandNV)(memda6c46ea)
+ allocsda6c46ea := new(cgoAllocMap)
+ allocsda6c46ea.Add(memda6c46ea)
- var cldsUsageSizeInBytes_allocs *cgoAllocMap
- ref8a688131.ldsUsageSizeInBytes, cldsUsageSizeInBytes_allocs = (C.size_t)(x.LdsUsageSizeInBytes), cgoAllocsUnknown
- allocs8a688131.Borrow(cldsUsageSizeInBytes_allocs)
+ var ctaskCount_allocs *cgoAllocMap
+ refda6c46ea.taskCount, ctaskCount_allocs = (C.uint32_t)(x.TaskCount), cgoAllocsUnknown
+ allocsda6c46ea.Borrow(ctaskCount_allocs)
- var cscratchMemUsageInBytes_allocs *cgoAllocMap
- ref8a688131.scratchMemUsageInBytes, cscratchMemUsageInBytes_allocs = (C.size_t)(x.ScratchMemUsageInBytes), cgoAllocsUnknown
- allocs8a688131.Borrow(cscratchMemUsageInBytes_allocs)
+ var cfirstTask_allocs *cgoAllocMap
+ refda6c46ea.firstTask, cfirstTask_allocs = (C.uint32_t)(x.FirstTask), cgoAllocsUnknown
+ allocsda6c46ea.Borrow(cfirstTask_allocs)
- x.ref8a688131 = ref8a688131
- x.allocs8a688131 = allocs8a688131
- return ref8a688131, allocs8a688131
+ x.refda6c46ea = refda6c46ea
+ x.allocsda6c46ea = allocsda6c46ea
+ return refda6c46ea, allocsda6c46ea
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ShaderResourceUsageAMD) PassValue() (C.VkShaderResourceUsageAMD, *cgoAllocMap) {
- if x.ref8a688131 != nil {
- return *x.ref8a688131, nil
+func (x DrawMeshTasksIndirectCommandNV) PassValue() (C.VkDrawMeshTasksIndirectCommandNV, *cgoAllocMap) {
+ if x.refda6c46ea != nil {
+ return *x.refda6c46ea, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -26683,108 +53611,77 @@ func (x ShaderResourceUsageAMD) PassValue() (C.VkShaderResourceUsageAMD, *cgoAll
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ShaderResourceUsageAMD) Deref() {
- if x.ref8a688131 == nil {
+func (x *DrawMeshTasksIndirectCommandNV) Deref() {
+ if x.refda6c46ea == nil {
return
}
- x.NumUsedVgprs = (uint32)(x.ref8a688131.numUsedVgprs)
- x.NumUsedSgprs = (uint32)(x.ref8a688131.numUsedSgprs)
- x.LdsSizePerLocalWorkGroup = (uint32)(x.ref8a688131.ldsSizePerLocalWorkGroup)
- x.LdsUsageSizeInBytes = (uint)(x.ref8a688131.ldsUsageSizeInBytes)
- x.ScratchMemUsageInBytes = (uint)(x.ref8a688131.scratchMemUsageInBytes)
-}
-
-// allocShaderStatisticsInfoAMDMemory allocates memory for type C.VkShaderStatisticsInfoAMD in C.
-// The caller is responsible for freeing the this memory via C.free.
-func allocShaderStatisticsInfoAMDMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfShaderStatisticsInfoAMDValue))
- if err != nil {
- panic("memory alloc error: " + err.Error())
- }
- return mem
+ x.TaskCount = (uint32)(x.refda6c46ea.taskCount)
+ x.FirstTask = (uint32)(x.refda6c46ea.firstTask)
}
-const sizeOfShaderStatisticsInfoAMDValue = unsafe.Sizeof([1]C.VkShaderStatisticsInfoAMD{})
-
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ShaderStatisticsInfoAMD) Ref() *C.VkShaderStatisticsInfoAMD {
+func (x *PhysicalDeviceFragmentShaderBarycentricFeaturesNV) Ref() *C.VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR {
if x == nil {
return nil
}
- return x.ref896a52bf
+ return x.reff7f35e73
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ShaderStatisticsInfoAMD) Free() {
- if x != nil && x.allocs896a52bf != nil {
- x.allocs896a52bf.(*cgoAllocMap).Free()
- x.ref896a52bf = nil
+func (x *PhysicalDeviceFragmentShaderBarycentricFeaturesNV) Free() {
+ if x != nil && x.allocsf7f35e73 != nil {
+ x.allocsf7f35e73.(*cgoAllocMap).Free()
+ x.reff7f35e73 = nil
}
}
-// NewShaderStatisticsInfoAMDRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceFragmentShaderBarycentricFeaturesNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewShaderStatisticsInfoAMDRef(ref unsafe.Pointer) *ShaderStatisticsInfoAMD {
+func NewPhysicalDeviceFragmentShaderBarycentricFeaturesNVRef(ref unsafe.Pointer) *PhysicalDeviceFragmentShaderBarycentricFeaturesNV {
if ref == nil {
return nil
}
- obj := new(ShaderStatisticsInfoAMD)
- obj.ref896a52bf = (*C.VkShaderStatisticsInfoAMD)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceFragmentShaderBarycentricFeaturesNV)
+ obj.reff7f35e73 = (*C.VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ShaderStatisticsInfoAMD) PassRef() (*C.VkShaderStatisticsInfoAMD, *cgoAllocMap) {
+func (x *PhysicalDeviceFragmentShaderBarycentricFeaturesNV) PassRef() (*C.VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref896a52bf != nil {
- return x.ref896a52bf, nil
+ } else if x.reff7f35e73 != nil {
+ return x.reff7f35e73, nil
}
- mem896a52bf := allocShaderStatisticsInfoAMDMemory(1)
- ref896a52bf := (*C.VkShaderStatisticsInfoAMD)(mem896a52bf)
- allocs896a52bf := new(cgoAllocMap)
- allocs896a52bf.Add(mem896a52bf)
+ memf7f35e73 := allocPhysicalDeviceFragmentShaderBarycentricFeaturesMemory(1)
+ reff7f35e73 := (*C.VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR)(memf7f35e73)
+ allocsf7f35e73 := new(cgoAllocMap)
+ allocsf7f35e73.Add(memf7f35e73)
- var cshaderStageMask_allocs *cgoAllocMap
- ref896a52bf.shaderStageMask, cshaderStageMask_allocs = (C.VkShaderStageFlags)(x.ShaderStageMask), cgoAllocsUnknown
- allocs896a52bf.Borrow(cshaderStageMask_allocs)
-
- var cresourceUsage_allocs *cgoAllocMap
- ref896a52bf.resourceUsage, cresourceUsage_allocs = x.ResourceUsage.PassValue()
- allocs896a52bf.Borrow(cresourceUsage_allocs)
-
- var cnumPhysicalVgprs_allocs *cgoAllocMap
- ref896a52bf.numPhysicalVgprs, cnumPhysicalVgprs_allocs = (C.uint32_t)(x.NumPhysicalVgprs), cgoAllocsUnknown
- allocs896a52bf.Borrow(cnumPhysicalVgprs_allocs)
-
- var cnumPhysicalSgprs_allocs *cgoAllocMap
- ref896a52bf.numPhysicalSgprs, cnumPhysicalSgprs_allocs = (C.uint32_t)(x.NumPhysicalSgprs), cgoAllocsUnknown
- allocs896a52bf.Borrow(cnumPhysicalSgprs_allocs)
-
- var cnumAvailableVgprs_allocs *cgoAllocMap
- ref896a52bf.numAvailableVgprs, cnumAvailableVgprs_allocs = (C.uint32_t)(x.NumAvailableVgprs), cgoAllocsUnknown
- allocs896a52bf.Borrow(cnumAvailableVgprs_allocs)
+ var csType_allocs *cgoAllocMap
+ reff7f35e73.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsf7f35e73.Borrow(csType_allocs)
- var cnumAvailableSgprs_allocs *cgoAllocMap
- ref896a52bf.numAvailableSgprs, cnumAvailableSgprs_allocs = (C.uint32_t)(x.NumAvailableSgprs), cgoAllocsUnknown
- allocs896a52bf.Borrow(cnumAvailableSgprs_allocs)
+ var cpNext_allocs *cgoAllocMap
+ reff7f35e73.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsf7f35e73.Borrow(cpNext_allocs)
- var ccomputeWorkGroupSize_allocs *cgoAllocMap
- ref896a52bf.computeWorkGroupSize, ccomputeWorkGroupSize_allocs = *(*[3]C.uint32_t)(unsafe.Pointer(&x.ComputeWorkGroupSize)), cgoAllocsUnknown
- allocs896a52bf.Borrow(ccomputeWorkGroupSize_allocs)
+ var cfragmentShaderBarycentric_allocs *cgoAllocMap
+ reff7f35e73.fragmentShaderBarycentric, cfragmentShaderBarycentric_allocs = (C.VkBool32)(x.FragmentShaderBarycentric), cgoAllocsUnknown
+ allocsf7f35e73.Borrow(cfragmentShaderBarycentric_allocs)
- x.ref896a52bf = ref896a52bf
- x.allocs896a52bf = allocs896a52bf
- return ref896a52bf, allocs896a52bf
+ x.reff7f35e73 = reff7f35e73
+ x.allocsf7f35e73 = allocsf7f35e73
+ return reff7f35e73, allocsf7f35e73
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ShaderStatisticsInfoAMD) PassValue() (C.VkShaderStatisticsInfoAMD, *cgoAllocMap) {
- if x.ref896a52bf != nil {
- return *x.ref896a52bf, nil
+func (x PhysicalDeviceFragmentShaderBarycentricFeaturesNV) PassValue() (C.VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR, *cgoAllocMap) {
+ if x.reff7f35e73 != nil {
+ return *x.reff7f35e73, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -26792,94 +53689,90 @@ func (x ShaderStatisticsInfoAMD) PassValue() (C.VkShaderStatisticsInfoAMD, *cgoA
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ShaderStatisticsInfoAMD) Deref() {
- if x.ref896a52bf == nil {
+func (x *PhysicalDeviceFragmentShaderBarycentricFeaturesNV) Deref() {
+ if x.reff7f35e73 == nil {
return
}
- x.ShaderStageMask = (ShaderStageFlags)(x.ref896a52bf.shaderStageMask)
- x.ResourceUsage = *NewShaderResourceUsageAMDRef(unsafe.Pointer(&x.ref896a52bf.resourceUsage))
- x.NumPhysicalVgprs = (uint32)(x.ref896a52bf.numPhysicalVgprs)
- x.NumPhysicalSgprs = (uint32)(x.ref896a52bf.numPhysicalSgprs)
- x.NumAvailableVgprs = (uint32)(x.ref896a52bf.numAvailableVgprs)
- x.NumAvailableSgprs = (uint32)(x.ref896a52bf.numAvailableSgprs)
- x.ComputeWorkGroupSize = *(*[3]uint32)(unsafe.Pointer(&x.ref896a52bf.computeWorkGroupSize))
+ x.SType = (StructureType)(x.reff7f35e73.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff7f35e73.pNext))
+ x.FragmentShaderBarycentric = (Bool32)(x.reff7f35e73.fragmentShaderBarycentric)
}
-// allocPhysicalDeviceCornerSampledImageFeaturesNVMemory allocates memory for type C.VkPhysicalDeviceCornerSampledImageFeaturesNV in C.
+// allocPhysicalDeviceShaderImageFootprintFeaturesNVMemory allocates memory for type C.VkPhysicalDeviceShaderImageFootprintFeaturesNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceCornerSampledImageFeaturesNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceCornerSampledImageFeaturesNVValue))
+func allocPhysicalDeviceShaderImageFootprintFeaturesNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceShaderImageFootprintFeaturesNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceCornerSampledImageFeaturesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceCornerSampledImageFeaturesNV{})
+const sizeOfPhysicalDeviceShaderImageFootprintFeaturesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceShaderImageFootprintFeaturesNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceCornerSampledImageFeaturesNV) Ref() *C.VkPhysicalDeviceCornerSampledImageFeaturesNV {
+func (x *PhysicalDeviceShaderImageFootprintFeaturesNV) Ref() *C.VkPhysicalDeviceShaderImageFootprintFeaturesNV {
if x == nil {
return nil
}
- return x.refdf4a62d1
+ return x.ref9d61e1b2
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceCornerSampledImageFeaturesNV) Free() {
- if x != nil && x.allocsdf4a62d1 != nil {
- x.allocsdf4a62d1.(*cgoAllocMap).Free()
- x.refdf4a62d1 = nil
+func (x *PhysicalDeviceShaderImageFootprintFeaturesNV) Free() {
+ if x != nil && x.allocs9d61e1b2 != nil {
+ x.allocs9d61e1b2.(*cgoAllocMap).Free()
+ x.ref9d61e1b2 = nil
}
}
-// NewPhysicalDeviceCornerSampledImageFeaturesNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceShaderImageFootprintFeaturesNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceCornerSampledImageFeaturesNVRef(ref unsafe.Pointer) *PhysicalDeviceCornerSampledImageFeaturesNV {
+func NewPhysicalDeviceShaderImageFootprintFeaturesNVRef(ref unsafe.Pointer) *PhysicalDeviceShaderImageFootprintFeaturesNV {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceCornerSampledImageFeaturesNV)
- obj.refdf4a62d1 = (*C.VkPhysicalDeviceCornerSampledImageFeaturesNV)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceShaderImageFootprintFeaturesNV)
+ obj.ref9d61e1b2 = (*C.VkPhysicalDeviceShaderImageFootprintFeaturesNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceCornerSampledImageFeaturesNV) PassRef() (*C.VkPhysicalDeviceCornerSampledImageFeaturesNV, *cgoAllocMap) {
+func (x *PhysicalDeviceShaderImageFootprintFeaturesNV) PassRef() (*C.VkPhysicalDeviceShaderImageFootprintFeaturesNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refdf4a62d1 != nil {
- return x.refdf4a62d1, nil
+ } else if x.ref9d61e1b2 != nil {
+ return x.ref9d61e1b2, nil
}
- memdf4a62d1 := allocPhysicalDeviceCornerSampledImageFeaturesNVMemory(1)
- refdf4a62d1 := (*C.VkPhysicalDeviceCornerSampledImageFeaturesNV)(memdf4a62d1)
- allocsdf4a62d1 := new(cgoAllocMap)
- allocsdf4a62d1.Add(memdf4a62d1)
+ mem9d61e1b2 := allocPhysicalDeviceShaderImageFootprintFeaturesNVMemory(1)
+ ref9d61e1b2 := (*C.VkPhysicalDeviceShaderImageFootprintFeaturesNV)(mem9d61e1b2)
+ allocs9d61e1b2 := new(cgoAllocMap)
+ allocs9d61e1b2.Add(mem9d61e1b2)
var csType_allocs *cgoAllocMap
- refdf4a62d1.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsdf4a62d1.Borrow(csType_allocs)
+ ref9d61e1b2.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs9d61e1b2.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refdf4a62d1.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsdf4a62d1.Borrow(cpNext_allocs)
+ ref9d61e1b2.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs9d61e1b2.Borrow(cpNext_allocs)
- var ccornerSampledImage_allocs *cgoAllocMap
- refdf4a62d1.cornerSampledImage, ccornerSampledImage_allocs = (C.VkBool32)(x.CornerSampledImage), cgoAllocsUnknown
- allocsdf4a62d1.Borrow(ccornerSampledImage_allocs)
+ var cimageFootprint_allocs *cgoAllocMap
+ ref9d61e1b2.imageFootprint, cimageFootprint_allocs = (C.VkBool32)(x.ImageFootprint), cgoAllocsUnknown
+ allocs9d61e1b2.Borrow(cimageFootprint_allocs)
- x.refdf4a62d1 = refdf4a62d1
- x.allocsdf4a62d1 = allocsdf4a62d1
- return refdf4a62d1, allocsdf4a62d1
+ x.ref9d61e1b2 = ref9d61e1b2
+ x.allocs9d61e1b2 = allocs9d61e1b2
+ return ref9d61e1b2, allocs9d61e1b2
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceCornerSampledImageFeaturesNV) PassValue() (C.VkPhysicalDeviceCornerSampledImageFeaturesNV, *cgoAllocMap) {
- if x.refdf4a62d1 != nil {
- return *x.refdf4a62d1, nil
+func (x PhysicalDeviceShaderImageFootprintFeaturesNV) PassValue() (C.VkPhysicalDeviceShaderImageFootprintFeaturesNV, *cgoAllocMap) {
+ if x.ref9d61e1b2 != nil {
+ return *x.ref9d61e1b2, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -26887,94 +53780,94 @@ func (x PhysicalDeviceCornerSampledImageFeaturesNV) PassValue() (C.VkPhysicalDev
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceCornerSampledImageFeaturesNV) Deref() {
- if x.refdf4a62d1 == nil {
+func (x *PhysicalDeviceShaderImageFootprintFeaturesNV) Deref() {
+ if x.ref9d61e1b2 == nil {
return
}
- x.SType = (StructureType)(x.refdf4a62d1.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refdf4a62d1.pNext))
- x.CornerSampledImage = (Bool32)(x.refdf4a62d1.cornerSampledImage)
+ x.SType = (StructureType)(x.ref9d61e1b2.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref9d61e1b2.pNext))
+ x.ImageFootprint = (Bool32)(x.ref9d61e1b2.imageFootprint)
}
-// allocExternalImageFormatPropertiesNVMemory allocates memory for type C.VkExternalImageFormatPropertiesNV in C.
+// allocPipelineViewportExclusiveScissorStateCreateInfoNVMemory allocates memory for type C.VkPipelineViewportExclusiveScissorStateCreateInfoNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocExternalImageFormatPropertiesNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExternalImageFormatPropertiesNVValue))
+func allocPipelineViewportExclusiveScissorStateCreateInfoNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineViewportExclusiveScissorStateCreateInfoNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfExternalImageFormatPropertiesNVValue = unsafe.Sizeof([1]C.VkExternalImageFormatPropertiesNV{})
+const sizeOfPipelineViewportExclusiveScissorStateCreateInfoNVValue = unsafe.Sizeof([1]C.VkPipelineViewportExclusiveScissorStateCreateInfoNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ExternalImageFormatPropertiesNV) Ref() *C.VkExternalImageFormatPropertiesNV {
+func (x *PipelineViewportExclusiveScissorStateCreateInfoNV) Ref() *C.VkPipelineViewportExclusiveScissorStateCreateInfoNV {
if x == nil {
return nil
}
- return x.refa8900ce5
+ return x.refa8715ba6
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ExternalImageFormatPropertiesNV) Free() {
- if x != nil && x.allocsa8900ce5 != nil {
- x.allocsa8900ce5.(*cgoAllocMap).Free()
- x.refa8900ce5 = nil
+func (x *PipelineViewportExclusiveScissorStateCreateInfoNV) Free() {
+ if x != nil && x.allocsa8715ba6 != nil {
+ x.allocsa8715ba6.(*cgoAllocMap).Free()
+ x.refa8715ba6 = nil
}
}
-// NewExternalImageFormatPropertiesNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineViewportExclusiveScissorStateCreateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewExternalImageFormatPropertiesNVRef(ref unsafe.Pointer) *ExternalImageFormatPropertiesNV {
+func NewPipelineViewportExclusiveScissorStateCreateInfoNVRef(ref unsafe.Pointer) *PipelineViewportExclusiveScissorStateCreateInfoNV {
if ref == nil {
return nil
}
- obj := new(ExternalImageFormatPropertiesNV)
- obj.refa8900ce5 = (*C.VkExternalImageFormatPropertiesNV)(unsafe.Pointer(ref))
+ obj := new(PipelineViewportExclusiveScissorStateCreateInfoNV)
+ obj.refa8715ba6 = (*C.VkPipelineViewportExclusiveScissorStateCreateInfoNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ExternalImageFormatPropertiesNV) PassRef() (*C.VkExternalImageFormatPropertiesNV, *cgoAllocMap) {
+func (x *PipelineViewportExclusiveScissorStateCreateInfoNV) PassRef() (*C.VkPipelineViewportExclusiveScissorStateCreateInfoNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refa8900ce5 != nil {
- return x.refa8900ce5, nil
+ } else if x.refa8715ba6 != nil {
+ return x.refa8715ba6, nil
}
- mema8900ce5 := allocExternalImageFormatPropertiesNVMemory(1)
- refa8900ce5 := (*C.VkExternalImageFormatPropertiesNV)(mema8900ce5)
- allocsa8900ce5 := new(cgoAllocMap)
- allocsa8900ce5.Add(mema8900ce5)
+ mema8715ba6 := allocPipelineViewportExclusiveScissorStateCreateInfoNVMemory(1)
+ refa8715ba6 := (*C.VkPipelineViewportExclusiveScissorStateCreateInfoNV)(mema8715ba6)
+ allocsa8715ba6 := new(cgoAllocMap)
+ allocsa8715ba6.Add(mema8715ba6)
- var cimageFormatProperties_allocs *cgoAllocMap
- refa8900ce5.imageFormatProperties, cimageFormatProperties_allocs = x.ImageFormatProperties.PassValue()
- allocsa8900ce5.Borrow(cimageFormatProperties_allocs)
+ var csType_allocs *cgoAllocMap
+ refa8715ba6.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsa8715ba6.Borrow(csType_allocs)
- var cexternalMemoryFeatures_allocs *cgoAllocMap
- refa8900ce5.externalMemoryFeatures, cexternalMemoryFeatures_allocs = (C.VkExternalMemoryFeatureFlagsNV)(x.ExternalMemoryFeatures), cgoAllocsUnknown
- allocsa8900ce5.Borrow(cexternalMemoryFeatures_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refa8715ba6.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsa8715ba6.Borrow(cpNext_allocs)
- var cexportFromImportedHandleTypes_allocs *cgoAllocMap
- refa8900ce5.exportFromImportedHandleTypes, cexportFromImportedHandleTypes_allocs = (C.VkExternalMemoryHandleTypeFlagsNV)(x.ExportFromImportedHandleTypes), cgoAllocsUnknown
- allocsa8900ce5.Borrow(cexportFromImportedHandleTypes_allocs)
+ var cexclusiveScissorCount_allocs *cgoAllocMap
+ refa8715ba6.exclusiveScissorCount, cexclusiveScissorCount_allocs = (C.uint32_t)(x.ExclusiveScissorCount), cgoAllocsUnknown
+ allocsa8715ba6.Borrow(cexclusiveScissorCount_allocs)
- var ccompatibleHandleTypes_allocs *cgoAllocMap
- refa8900ce5.compatibleHandleTypes, ccompatibleHandleTypes_allocs = (C.VkExternalMemoryHandleTypeFlagsNV)(x.CompatibleHandleTypes), cgoAllocsUnknown
- allocsa8900ce5.Borrow(ccompatibleHandleTypes_allocs)
+ var cpExclusiveScissors_allocs *cgoAllocMap
+ refa8715ba6.pExclusiveScissors, cpExclusiveScissors_allocs = unpackSRect2D(x.PExclusiveScissors)
+ allocsa8715ba6.Borrow(cpExclusiveScissors_allocs)
- x.refa8900ce5 = refa8900ce5
- x.allocsa8900ce5 = allocsa8900ce5
- return refa8900ce5, allocsa8900ce5
+ x.refa8715ba6 = refa8715ba6
+ x.allocsa8715ba6 = allocsa8715ba6
+ return refa8715ba6, allocsa8715ba6
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ExternalImageFormatPropertiesNV) PassValue() (C.VkExternalImageFormatPropertiesNV, *cgoAllocMap) {
- if x.refa8900ce5 != nil {
- return *x.refa8900ce5, nil
+func (x PipelineViewportExclusiveScissorStateCreateInfoNV) PassValue() (C.VkPipelineViewportExclusiveScissorStateCreateInfoNV, *cgoAllocMap) {
+ if x.refa8715ba6 != nil {
+ return *x.refa8715ba6, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -26982,91 +53875,91 @@ func (x ExternalImageFormatPropertiesNV) PassValue() (C.VkExternalImageFormatPro
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ExternalImageFormatPropertiesNV) Deref() {
- if x.refa8900ce5 == nil {
+func (x *PipelineViewportExclusiveScissorStateCreateInfoNV) Deref() {
+ if x.refa8715ba6 == nil {
return
}
- x.ImageFormatProperties = *NewImageFormatPropertiesRef(unsafe.Pointer(&x.refa8900ce5.imageFormatProperties))
- x.ExternalMemoryFeatures = (ExternalMemoryFeatureFlagsNV)(x.refa8900ce5.externalMemoryFeatures)
- x.ExportFromImportedHandleTypes = (ExternalMemoryHandleTypeFlagsNV)(x.refa8900ce5.exportFromImportedHandleTypes)
- x.CompatibleHandleTypes = (ExternalMemoryHandleTypeFlagsNV)(x.refa8900ce5.compatibleHandleTypes)
+ x.SType = (StructureType)(x.refa8715ba6.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa8715ba6.pNext))
+ x.ExclusiveScissorCount = (uint32)(x.refa8715ba6.exclusiveScissorCount)
+ packSRect2D(x.PExclusiveScissors, x.refa8715ba6.pExclusiveScissors)
}
-// allocExternalMemoryImageCreateInfoNVMemory allocates memory for type C.VkExternalMemoryImageCreateInfoNV in C.
+// allocPhysicalDeviceExclusiveScissorFeaturesNVMemory allocates memory for type C.VkPhysicalDeviceExclusiveScissorFeaturesNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocExternalMemoryImageCreateInfoNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExternalMemoryImageCreateInfoNVValue))
+func allocPhysicalDeviceExclusiveScissorFeaturesNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceExclusiveScissorFeaturesNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfExternalMemoryImageCreateInfoNVValue = unsafe.Sizeof([1]C.VkExternalMemoryImageCreateInfoNV{})
+const sizeOfPhysicalDeviceExclusiveScissorFeaturesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceExclusiveScissorFeaturesNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ExternalMemoryImageCreateInfoNV) Ref() *C.VkExternalMemoryImageCreateInfoNV {
+func (x *PhysicalDeviceExclusiveScissorFeaturesNV) Ref() *C.VkPhysicalDeviceExclusiveScissorFeaturesNV {
if x == nil {
return nil
}
- return x.ref9a7fb6c8
+ return x.ref52c9fcfc
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ExternalMemoryImageCreateInfoNV) Free() {
- if x != nil && x.allocs9a7fb6c8 != nil {
- x.allocs9a7fb6c8.(*cgoAllocMap).Free()
- x.ref9a7fb6c8 = nil
+func (x *PhysicalDeviceExclusiveScissorFeaturesNV) Free() {
+ if x != nil && x.allocs52c9fcfc != nil {
+ x.allocs52c9fcfc.(*cgoAllocMap).Free()
+ x.ref52c9fcfc = nil
}
}
-// NewExternalMemoryImageCreateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceExclusiveScissorFeaturesNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewExternalMemoryImageCreateInfoNVRef(ref unsafe.Pointer) *ExternalMemoryImageCreateInfoNV {
+func NewPhysicalDeviceExclusiveScissorFeaturesNVRef(ref unsafe.Pointer) *PhysicalDeviceExclusiveScissorFeaturesNV {
if ref == nil {
return nil
}
- obj := new(ExternalMemoryImageCreateInfoNV)
- obj.ref9a7fb6c8 = (*C.VkExternalMemoryImageCreateInfoNV)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceExclusiveScissorFeaturesNV)
+ obj.ref52c9fcfc = (*C.VkPhysicalDeviceExclusiveScissorFeaturesNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ExternalMemoryImageCreateInfoNV) PassRef() (*C.VkExternalMemoryImageCreateInfoNV, *cgoAllocMap) {
+func (x *PhysicalDeviceExclusiveScissorFeaturesNV) PassRef() (*C.VkPhysicalDeviceExclusiveScissorFeaturesNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref9a7fb6c8 != nil {
- return x.ref9a7fb6c8, nil
+ } else if x.ref52c9fcfc != nil {
+ return x.ref52c9fcfc, nil
}
- mem9a7fb6c8 := allocExternalMemoryImageCreateInfoNVMemory(1)
- ref9a7fb6c8 := (*C.VkExternalMemoryImageCreateInfoNV)(mem9a7fb6c8)
- allocs9a7fb6c8 := new(cgoAllocMap)
- allocs9a7fb6c8.Add(mem9a7fb6c8)
+ mem52c9fcfc := allocPhysicalDeviceExclusiveScissorFeaturesNVMemory(1)
+ ref52c9fcfc := (*C.VkPhysicalDeviceExclusiveScissorFeaturesNV)(mem52c9fcfc)
+ allocs52c9fcfc := new(cgoAllocMap)
+ allocs52c9fcfc.Add(mem52c9fcfc)
var csType_allocs *cgoAllocMap
- ref9a7fb6c8.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs9a7fb6c8.Borrow(csType_allocs)
+ ref52c9fcfc.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs52c9fcfc.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref9a7fb6c8.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs9a7fb6c8.Borrow(cpNext_allocs)
+ ref52c9fcfc.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs52c9fcfc.Borrow(cpNext_allocs)
- var chandleTypes_allocs *cgoAllocMap
- ref9a7fb6c8.handleTypes, chandleTypes_allocs = (C.VkExternalMemoryHandleTypeFlagsNV)(x.HandleTypes), cgoAllocsUnknown
- allocs9a7fb6c8.Borrow(chandleTypes_allocs)
+ var cexclusiveScissor_allocs *cgoAllocMap
+ ref52c9fcfc.exclusiveScissor, cexclusiveScissor_allocs = (C.VkBool32)(x.ExclusiveScissor), cgoAllocsUnknown
+ allocs52c9fcfc.Borrow(cexclusiveScissor_allocs)
- x.ref9a7fb6c8 = ref9a7fb6c8
- x.allocs9a7fb6c8 = allocs9a7fb6c8
- return ref9a7fb6c8, allocs9a7fb6c8
+ x.ref52c9fcfc = ref52c9fcfc
+ x.allocs52c9fcfc = allocs52c9fcfc
+ return ref52c9fcfc, allocs52c9fcfc
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ExternalMemoryImageCreateInfoNV) PassValue() (C.VkExternalMemoryImageCreateInfoNV, *cgoAllocMap) {
- if x.ref9a7fb6c8 != nil {
- return *x.ref9a7fb6c8, nil
+func (x PhysicalDeviceExclusiveScissorFeaturesNV) PassValue() (C.VkPhysicalDeviceExclusiveScissorFeaturesNV, *cgoAllocMap) {
+ if x.ref52c9fcfc != nil {
+ return *x.ref52c9fcfc, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -27074,90 +53967,90 @@ func (x ExternalMemoryImageCreateInfoNV) PassValue() (C.VkExternalMemoryImageCre
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ExternalMemoryImageCreateInfoNV) Deref() {
- if x.ref9a7fb6c8 == nil {
+func (x *PhysicalDeviceExclusiveScissorFeaturesNV) Deref() {
+ if x.ref52c9fcfc == nil {
return
}
- x.SType = (StructureType)(x.ref9a7fb6c8.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref9a7fb6c8.pNext))
- x.HandleTypes = (ExternalMemoryHandleTypeFlagsNV)(x.ref9a7fb6c8.handleTypes)
+ x.SType = (StructureType)(x.ref52c9fcfc.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref52c9fcfc.pNext))
+ x.ExclusiveScissor = (Bool32)(x.ref52c9fcfc.exclusiveScissor)
}
-// allocExportMemoryAllocateInfoNVMemory allocates memory for type C.VkExportMemoryAllocateInfoNV in C.
+// allocQueueFamilyCheckpointPropertiesNVMemory allocates memory for type C.VkQueueFamilyCheckpointPropertiesNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocExportMemoryAllocateInfoNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfExportMemoryAllocateInfoNVValue))
+func allocQueueFamilyCheckpointPropertiesNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfQueueFamilyCheckpointPropertiesNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfExportMemoryAllocateInfoNVValue = unsafe.Sizeof([1]C.VkExportMemoryAllocateInfoNV{})
+const sizeOfQueueFamilyCheckpointPropertiesNVValue = unsafe.Sizeof([1]C.VkQueueFamilyCheckpointPropertiesNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ExportMemoryAllocateInfoNV) Ref() *C.VkExportMemoryAllocateInfoNV {
+func (x *QueueFamilyCheckpointPropertiesNV) Ref() *C.VkQueueFamilyCheckpointPropertiesNV {
if x == nil {
return nil
}
- return x.ref5066f33
+ return x.ref351f58c6
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ExportMemoryAllocateInfoNV) Free() {
- if x != nil && x.allocs5066f33 != nil {
- x.allocs5066f33.(*cgoAllocMap).Free()
- x.ref5066f33 = nil
+func (x *QueueFamilyCheckpointPropertiesNV) Free() {
+ if x != nil && x.allocs351f58c6 != nil {
+ x.allocs351f58c6.(*cgoAllocMap).Free()
+ x.ref351f58c6 = nil
}
}
-// NewExportMemoryAllocateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewQueueFamilyCheckpointPropertiesNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewExportMemoryAllocateInfoNVRef(ref unsafe.Pointer) *ExportMemoryAllocateInfoNV {
+func NewQueueFamilyCheckpointPropertiesNVRef(ref unsafe.Pointer) *QueueFamilyCheckpointPropertiesNV {
if ref == nil {
return nil
}
- obj := new(ExportMemoryAllocateInfoNV)
- obj.ref5066f33 = (*C.VkExportMemoryAllocateInfoNV)(unsafe.Pointer(ref))
+ obj := new(QueueFamilyCheckpointPropertiesNV)
+ obj.ref351f58c6 = (*C.VkQueueFamilyCheckpointPropertiesNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ExportMemoryAllocateInfoNV) PassRef() (*C.VkExportMemoryAllocateInfoNV, *cgoAllocMap) {
+func (x *QueueFamilyCheckpointPropertiesNV) PassRef() (*C.VkQueueFamilyCheckpointPropertiesNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref5066f33 != nil {
- return x.ref5066f33, nil
+ } else if x.ref351f58c6 != nil {
+ return x.ref351f58c6, nil
}
- mem5066f33 := allocExportMemoryAllocateInfoNVMemory(1)
- ref5066f33 := (*C.VkExportMemoryAllocateInfoNV)(mem5066f33)
- allocs5066f33 := new(cgoAllocMap)
- allocs5066f33.Add(mem5066f33)
+ mem351f58c6 := allocQueueFamilyCheckpointPropertiesNVMemory(1)
+ ref351f58c6 := (*C.VkQueueFamilyCheckpointPropertiesNV)(mem351f58c6)
+ allocs351f58c6 := new(cgoAllocMap)
+ allocs351f58c6.Add(mem351f58c6)
var csType_allocs *cgoAllocMap
- ref5066f33.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs5066f33.Borrow(csType_allocs)
+ ref351f58c6.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs351f58c6.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref5066f33.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs5066f33.Borrow(cpNext_allocs)
+ ref351f58c6.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs351f58c6.Borrow(cpNext_allocs)
- var chandleTypes_allocs *cgoAllocMap
- ref5066f33.handleTypes, chandleTypes_allocs = (C.VkExternalMemoryHandleTypeFlagsNV)(x.HandleTypes), cgoAllocsUnknown
- allocs5066f33.Borrow(chandleTypes_allocs)
+ var ccheckpointExecutionStageMask_allocs *cgoAllocMap
+ ref351f58c6.checkpointExecutionStageMask, ccheckpointExecutionStageMask_allocs = (C.VkPipelineStageFlags)(x.CheckpointExecutionStageMask), cgoAllocsUnknown
+ allocs351f58c6.Borrow(ccheckpointExecutionStageMask_allocs)
- x.ref5066f33 = ref5066f33
- x.allocs5066f33 = allocs5066f33
- return ref5066f33, allocs5066f33
+ x.ref351f58c6 = ref351f58c6
+ x.allocs351f58c6 = allocs351f58c6
+ return ref351f58c6, allocs351f58c6
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ExportMemoryAllocateInfoNV) PassValue() (C.VkExportMemoryAllocateInfoNV, *cgoAllocMap) {
- if x.ref5066f33 != nil {
- return *x.ref5066f33, nil
+func (x QueueFamilyCheckpointPropertiesNV) PassValue() (C.VkQueueFamilyCheckpointPropertiesNV, *cgoAllocMap) {
+ if x.ref351f58c6 != nil {
+ return *x.ref351f58c6, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -27165,94 +54058,94 @@ func (x ExportMemoryAllocateInfoNV) PassValue() (C.VkExportMemoryAllocateInfoNV,
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ExportMemoryAllocateInfoNV) Deref() {
- if x.ref5066f33 == nil {
+func (x *QueueFamilyCheckpointPropertiesNV) Deref() {
+ if x.ref351f58c6 == nil {
return
}
- x.SType = (StructureType)(x.ref5066f33.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5066f33.pNext))
- x.HandleTypes = (ExternalMemoryHandleTypeFlagsNV)(x.ref5066f33.handleTypes)
+ x.SType = (StructureType)(x.ref351f58c6.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref351f58c6.pNext))
+ x.CheckpointExecutionStageMask = (PipelineStageFlags)(x.ref351f58c6.checkpointExecutionStageMask)
}
-// allocValidationFlagsMemory allocates memory for type C.VkValidationFlagsEXT in C.
+// allocCheckpointDataNVMemory allocates memory for type C.VkCheckpointDataNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocValidationFlagsMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfValidationFlagsValue))
+func allocCheckpointDataNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCheckpointDataNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfValidationFlagsValue = unsafe.Sizeof([1]C.VkValidationFlagsEXT{})
+const sizeOfCheckpointDataNVValue = unsafe.Sizeof([1]C.VkCheckpointDataNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ValidationFlags) Ref() *C.VkValidationFlagsEXT {
+func (x *CheckpointDataNV) Ref() *C.VkCheckpointDataNV {
if x == nil {
return nil
}
- return x.refffe080ad
+ return x.refd1c9224b
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ValidationFlags) Free() {
- if x != nil && x.allocsffe080ad != nil {
- x.allocsffe080ad.(*cgoAllocMap).Free()
- x.refffe080ad = nil
+func (x *CheckpointDataNV) Free() {
+ if x != nil && x.allocsd1c9224b != nil {
+ x.allocsd1c9224b.(*cgoAllocMap).Free()
+ x.refd1c9224b = nil
}
}
-// NewValidationFlagsRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewCheckpointDataNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewValidationFlagsRef(ref unsafe.Pointer) *ValidationFlags {
+func NewCheckpointDataNVRef(ref unsafe.Pointer) *CheckpointDataNV {
if ref == nil {
return nil
}
- obj := new(ValidationFlags)
- obj.refffe080ad = (*C.VkValidationFlagsEXT)(unsafe.Pointer(ref))
+ obj := new(CheckpointDataNV)
+ obj.refd1c9224b = (*C.VkCheckpointDataNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ValidationFlags) PassRef() (*C.VkValidationFlagsEXT, *cgoAllocMap) {
+func (x *CheckpointDataNV) PassRef() (*C.VkCheckpointDataNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refffe080ad != nil {
- return x.refffe080ad, nil
+ } else if x.refd1c9224b != nil {
+ return x.refd1c9224b, nil
}
- memffe080ad := allocValidationFlagsMemory(1)
- refffe080ad := (*C.VkValidationFlagsEXT)(memffe080ad)
- allocsffe080ad := new(cgoAllocMap)
- allocsffe080ad.Add(memffe080ad)
+ memd1c9224b := allocCheckpointDataNVMemory(1)
+ refd1c9224b := (*C.VkCheckpointDataNV)(memd1c9224b)
+ allocsd1c9224b := new(cgoAllocMap)
+ allocsd1c9224b.Add(memd1c9224b)
var csType_allocs *cgoAllocMap
- refffe080ad.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsffe080ad.Borrow(csType_allocs)
+ refd1c9224b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd1c9224b.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refffe080ad.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsffe080ad.Borrow(cpNext_allocs)
+ refd1c9224b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsd1c9224b.Borrow(cpNext_allocs)
- var cdisabledValidationCheckCount_allocs *cgoAllocMap
- refffe080ad.disabledValidationCheckCount, cdisabledValidationCheckCount_allocs = (C.uint32_t)(x.DisabledValidationCheckCount), cgoAllocsUnknown
- allocsffe080ad.Borrow(cdisabledValidationCheckCount_allocs)
+ var cstage_allocs *cgoAllocMap
+ refd1c9224b.stage, cstage_allocs = (C.VkPipelineStageFlagBits)(x.Stage), cgoAllocsUnknown
+ allocsd1c9224b.Borrow(cstage_allocs)
- var cpDisabledValidationChecks_allocs *cgoAllocMap
- refffe080ad.pDisabledValidationChecks, cpDisabledValidationChecks_allocs = (*C.VkValidationCheckEXT)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PDisabledValidationChecks)).Data)), cgoAllocsUnknown
- allocsffe080ad.Borrow(cpDisabledValidationChecks_allocs)
+ var cpCheckpointMarker_allocs *cgoAllocMap
+ refd1c9224b.pCheckpointMarker, cpCheckpointMarker_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PCheckpointMarker)), cgoAllocsUnknown
+ allocsd1c9224b.Borrow(cpCheckpointMarker_allocs)
- x.refffe080ad = refffe080ad
- x.allocsffe080ad = allocsffe080ad
- return refffe080ad, allocsffe080ad
+ x.refd1c9224b = refd1c9224b
+ x.allocsd1c9224b = allocsd1c9224b
+ return refd1c9224b, allocsd1c9224b
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ValidationFlags) PassValue() (C.VkValidationFlagsEXT, *cgoAllocMap) {
- if x.refffe080ad != nil {
- return *x.refffe080ad, nil
+func (x CheckpointDataNV) PassValue() (C.VkCheckpointDataNV, *cgoAllocMap) {
+ if x.refd1c9224b != nil {
+ return *x.refd1c9224b, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -27260,95 +54153,91 @@ func (x ValidationFlags) PassValue() (C.VkValidationFlagsEXT, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ValidationFlags) Deref() {
- if x.refffe080ad == nil {
+func (x *CheckpointDataNV) Deref() {
+ if x.refd1c9224b == nil {
return
}
- x.SType = (StructureType)(x.refffe080ad.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refffe080ad.pNext))
- x.DisabledValidationCheckCount = (uint32)(x.refffe080ad.disabledValidationCheckCount)
- hxf8aebb5 := (*sliceHeader)(unsafe.Pointer(&x.PDisabledValidationChecks))
- hxf8aebb5.Data = unsafe.Pointer(x.refffe080ad.pDisabledValidationChecks)
- hxf8aebb5.Cap = 0x7fffffff
- // hxf8aebb5.Len = ?
-
+ x.SType = (StructureType)(x.refd1c9224b.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd1c9224b.pNext))
+ x.Stage = (PipelineStageFlagBits)(x.refd1c9224b.stage)
+ x.PCheckpointMarker = (unsafe.Pointer)(unsafe.Pointer(x.refd1c9224b.pCheckpointMarker))
}
-// allocImageViewASTCDecodeModeMemory allocates memory for type C.VkImageViewASTCDecodeModeEXT in C.
+// allocPhysicalDeviceShaderIntegerFunctions2FeaturesINTELMemory allocates memory for type C.VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocImageViewASTCDecodeModeMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageViewASTCDecodeModeValue))
+func allocPhysicalDeviceShaderIntegerFunctions2FeaturesINTELMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceShaderIntegerFunctions2FeaturesINTELValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfImageViewASTCDecodeModeValue = unsafe.Sizeof([1]C.VkImageViewASTCDecodeModeEXT{})
+const sizeOfPhysicalDeviceShaderIntegerFunctions2FeaturesINTELValue = unsafe.Sizeof([1]C.VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ImageViewASTCDecodeMode) Ref() *C.VkImageViewASTCDecodeModeEXT {
+func (x *PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL) Ref() *C.VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL {
if x == nil {
return nil
}
- return x.ref3a973fc0
+ return x.refff2cd6c
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ImageViewASTCDecodeMode) Free() {
- if x != nil && x.allocs3a973fc0 != nil {
- x.allocs3a973fc0.(*cgoAllocMap).Free()
- x.ref3a973fc0 = nil
+func (x *PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL) Free() {
+ if x != nil && x.allocsff2cd6c != nil {
+ x.allocsff2cd6c.(*cgoAllocMap).Free()
+ x.refff2cd6c = nil
}
}
-// NewImageViewASTCDecodeModeRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceShaderIntegerFunctions2FeaturesINTELRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewImageViewASTCDecodeModeRef(ref unsafe.Pointer) *ImageViewASTCDecodeMode {
+func NewPhysicalDeviceShaderIntegerFunctions2FeaturesINTELRef(ref unsafe.Pointer) *PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL {
if ref == nil {
return nil
}
- obj := new(ImageViewASTCDecodeMode)
- obj.ref3a973fc0 = (*C.VkImageViewASTCDecodeModeEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL)
+ obj.refff2cd6c = (*C.VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ImageViewASTCDecodeMode) PassRef() (*C.VkImageViewASTCDecodeModeEXT, *cgoAllocMap) {
+func (x *PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL) PassRef() (*C.VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref3a973fc0 != nil {
- return x.ref3a973fc0, nil
+ } else if x.refff2cd6c != nil {
+ return x.refff2cd6c, nil
}
- mem3a973fc0 := allocImageViewASTCDecodeModeMemory(1)
- ref3a973fc0 := (*C.VkImageViewASTCDecodeModeEXT)(mem3a973fc0)
- allocs3a973fc0 := new(cgoAllocMap)
- allocs3a973fc0.Add(mem3a973fc0)
+ memff2cd6c := allocPhysicalDeviceShaderIntegerFunctions2FeaturesINTELMemory(1)
+ refff2cd6c := (*C.VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL)(memff2cd6c)
+ allocsff2cd6c := new(cgoAllocMap)
+ allocsff2cd6c.Add(memff2cd6c)
var csType_allocs *cgoAllocMap
- ref3a973fc0.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs3a973fc0.Borrow(csType_allocs)
+ refff2cd6c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsff2cd6c.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref3a973fc0.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs3a973fc0.Borrow(cpNext_allocs)
+ refff2cd6c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsff2cd6c.Borrow(cpNext_allocs)
- var cdecodeMode_allocs *cgoAllocMap
- ref3a973fc0.decodeMode, cdecodeMode_allocs = (C.VkFormat)(x.DecodeMode), cgoAllocsUnknown
- allocs3a973fc0.Borrow(cdecodeMode_allocs)
+ var cshaderIntegerFunctions2_allocs *cgoAllocMap
+ refff2cd6c.shaderIntegerFunctions2, cshaderIntegerFunctions2_allocs = (C.VkBool32)(x.ShaderIntegerFunctions2), cgoAllocsUnknown
+ allocsff2cd6c.Borrow(cshaderIntegerFunctions2_allocs)
- x.ref3a973fc0 = ref3a973fc0
- x.allocs3a973fc0 = allocs3a973fc0
- return ref3a973fc0, allocs3a973fc0
+ x.refff2cd6c = refff2cd6c
+ x.allocsff2cd6c = allocsff2cd6c
+ return refff2cd6c, allocsff2cd6c
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ImageViewASTCDecodeMode) PassValue() (C.VkImageViewASTCDecodeModeEXT, *cgoAllocMap) {
- if x.ref3a973fc0 != nil {
- return *x.ref3a973fc0, nil
+func (x PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL) PassValue() (C.VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL, *cgoAllocMap) {
+ if x.refff2cd6c != nil {
+ return *x.refff2cd6c, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -27356,90 +54245,86 @@ func (x ImageViewASTCDecodeMode) PassValue() (C.VkImageViewASTCDecodeModeEXT, *c
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ImageViewASTCDecodeMode) Deref() {
- if x.ref3a973fc0 == nil {
+func (x *PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL) Deref() {
+ if x.refff2cd6c == nil {
return
}
- x.SType = (StructureType)(x.ref3a973fc0.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref3a973fc0.pNext))
- x.DecodeMode = (Format)(x.ref3a973fc0.decodeMode)
+ x.SType = (StructureType)(x.refff2cd6c.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refff2cd6c.pNext))
+ x.ShaderIntegerFunctions2 = (Bool32)(x.refff2cd6c.shaderIntegerFunctions2)
}
-// allocPhysicalDeviceASTCDecodeFeaturesMemory allocates memory for type C.VkPhysicalDeviceASTCDecodeFeaturesEXT in C.
+// allocPerformanceValueINTELMemory allocates memory for type C.VkPerformanceValueINTEL in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceASTCDecodeFeaturesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceASTCDecodeFeaturesValue))
+func allocPerformanceValueINTELMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPerformanceValueINTELValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceASTCDecodeFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceASTCDecodeFeaturesEXT{})
+const sizeOfPerformanceValueINTELValue = unsafe.Sizeof([1]C.VkPerformanceValueINTEL{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceASTCDecodeFeatures) Ref() *C.VkPhysicalDeviceASTCDecodeFeaturesEXT {
+func (x *PerformanceValueINTEL) Ref() *C.VkPerformanceValueINTEL {
if x == nil {
return nil
}
- return x.refd8af7d5a
+ return x.refe6a134ae
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceASTCDecodeFeatures) Free() {
- if x != nil && x.allocsd8af7d5a != nil {
- x.allocsd8af7d5a.(*cgoAllocMap).Free()
- x.refd8af7d5a = nil
+func (x *PerformanceValueINTEL) Free() {
+ if x != nil && x.allocse6a134ae != nil {
+ x.allocse6a134ae.(*cgoAllocMap).Free()
+ x.refe6a134ae = nil
}
}
-// NewPhysicalDeviceASTCDecodeFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPerformanceValueINTELRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceASTCDecodeFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceASTCDecodeFeatures {
+func NewPerformanceValueINTELRef(ref unsafe.Pointer) *PerformanceValueINTEL {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceASTCDecodeFeatures)
- obj.refd8af7d5a = (*C.VkPhysicalDeviceASTCDecodeFeaturesEXT)(unsafe.Pointer(ref))
+ obj := new(PerformanceValueINTEL)
+ obj.refe6a134ae = (*C.VkPerformanceValueINTEL)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceASTCDecodeFeatures) PassRef() (*C.VkPhysicalDeviceASTCDecodeFeaturesEXT, *cgoAllocMap) {
+func (x *PerformanceValueINTEL) PassRef() (*C.VkPerformanceValueINTEL, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refd8af7d5a != nil {
- return x.refd8af7d5a, nil
+ } else if x.refe6a134ae != nil {
+ return x.refe6a134ae, nil
}
- memd8af7d5a := allocPhysicalDeviceASTCDecodeFeaturesMemory(1)
- refd8af7d5a := (*C.VkPhysicalDeviceASTCDecodeFeaturesEXT)(memd8af7d5a)
- allocsd8af7d5a := new(cgoAllocMap)
- allocsd8af7d5a.Add(memd8af7d5a)
-
- var csType_allocs *cgoAllocMap
- refd8af7d5a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsd8af7d5a.Borrow(csType_allocs)
+ meme6a134ae := allocPerformanceValueINTELMemory(1)
+ refe6a134ae := (*C.VkPerformanceValueINTEL)(meme6a134ae)
+ allocse6a134ae := new(cgoAllocMap)
+ allocse6a134ae.Add(meme6a134ae)
- var cpNext_allocs *cgoAllocMap
- refd8af7d5a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsd8af7d5a.Borrow(cpNext_allocs)
+ var c_type_allocs *cgoAllocMap
+ refe6a134ae._type, c_type_allocs = (C.VkPerformanceValueTypeINTEL)(x.Type), cgoAllocsUnknown
+ allocse6a134ae.Borrow(c_type_allocs)
- var cdecodeModeSharedExponent_allocs *cgoAllocMap
- refd8af7d5a.decodeModeSharedExponent, cdecodeModeSharedExponent_allocs = (C.VkBool32)(x.DecodeModeSharedExponent), cgoAllocsUnknown
- allocsd8af7d5a.Borrow(cdecodeModeSharedExponent_allocs)
+ var cdata_allocs *cgoAllocMap
+ refe6a134ae.data, cdata_allocs = *(*C.VkPerformanceValueDataINTEL)(unsafe.Pointer(&x.Data)), cgoAllocsUnknown
+ allocse6a134ae.Borrow(cdata_allocs)
- x.refd8af7d5a = refd8af7d5a
- x.allocsd8af7d5a = allocsd8af7d5a
- return refd8af7d5a, allocsd8af7d5a
+ x.refe6a134ae = refe6a134ae
+ x.allocse6a134ae = allocse6a134ae
+ return refe6a134ae, allocse6a134ae
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceASTCDecodeFeatures) PassValue() (C.VkPhysicalDeviceASTCDecodeFeaturesEXT, *cgoAllocMap) {
- if x.refd8af7d5a != nil {
- return *x.refd8af7d5a, nil
+func (x PerformanceValueINTEL) PassValue() (C.VkPerformanceValueINTEL, *cgoAllocMap) {
+ if x.refe6a134ae != nil {
+ return *x.refe6a134ae, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -27447,98 +54332,89 @@ func (x PhysicalDeviceASTCDecodeFeatures) PassValue() (C.VkPhysicalDeviceASTCDec
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceASTCDecodeFeatures) Deref() {
- if x.refd8af7d5a == nil {
+func (x *PerformanceValueINTEL) Deref() {
+ if x.refe6a134ae == nil {
return
}
- x.SType = (StructureType)(x.refd8af7d5a.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd8af7d5a.pNext))
- x.DecodeModeSharedExponent = (Bool32)(x.refd8af7d5a.decodeModeSharedExponent)
+ x.Type = (PerformanceValueTypeINTEL)(x.refe6a134ae._type)
+ x.Data = *(*PerformanceValueDataINTEL)(unsafe.Pointer(&x.refe6a134ae.data))
}
-// allocConditionalRenderingBeginInfoMemory allocates memory for type C.VkConditionalRenderingBeginInfoEXT in C.
+// allocInitializePerformanceApiInfoINTELMemory allocates memory for type C.VkInitializePerformanceApiInfoINTEL in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocConditionalRenderingBeginInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfConditionalRenderingBeginInfoValue))
+func allocInitializePerformanceApiInfoINTELMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfInitializePerformanceApiInfoINTELValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfConditionalRenderingBeginInfoValue = unsafe.Sizeof([1]C.VkConditionalRenderingBeginInfoEXT{})
+const sizeOfInitializePerformanceApiInfoINTELValue = unsafe.Sizeof([1]C.VkInitializePerformanceApiInfoINTEL{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ConditionalRenderingBeginInfo) Ref() *C.VkConditionalRenderingBeginInfoEXT {
+func (x *InitializePerformanceApiInfoINTEL) Ref() *C.VkInitializePerformanceApiInfoINTEL {
if x == nil {
return nil
}
- return x.ref82da87c9
+ return x.refb72b1cf3
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ConditionalRenderingBeginInfo) Free() {
- if x != nil && x.allocs82da87c9 != nil {
- x.allocs82da87c9.(*cgoAllocMap).Free()
- x.ref82da87c9 = nil
+func (x *InitializePerformanceApiInfoINTEL) Free() {
+ if x != nil && x.allocsb72b1cf3 != nil {
+ x.allocsb72b1cf3.(*cgoAllocMap).Free()
+ x.refb72b1cf3 = nil
}
}
-// NewConditionalRenderingBeginInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewInitializePerformanceApiInfoINTELRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewConditionalRenderingBeginInfoRef(ref unsafe.Pointer) *ConditionalRenderingBeginInfo {
+func NewInitializePerformanceApiInfoINTELRef(ref unsafe.Pointer) *InitializePerformanceApiInfoINTEL {
if ref == nil {
return nil
}
- obj := new(ConditionalRenderingBeginInfo)
- obj.ref82da87c9 = (*C.VkConditionalRenderingBeginInfoEXT)(unsafe.Pointer(ref))
+ obj := new(InitializePerformanceApiInfoINTEL)
+ obj.refb72b1cf3 = (*C.VkInitializePerformanceApiInfoINTEL)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ConditionalRenderingBeginInfo) PassRef() (*C.VkConditionalRenderingBeginInfoEXT, *cgoAllocMap) {
+func (x *InitializePerformanceApiInfoINTEL) PassRef() (*C.VkInitializePerformanceApiInfoINTEL, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref82da87c9 != nil {
- return x.ref82da87c9, nil
+ } else if x.refb72b1cf3 != nil {
+ return x.refb72b1cf3, nil
}
- mem82da87c9 := allocConditionalRenderingBeginInfoMemory(1)
- ref82da87c9 := (*C.VkConditionalRenderingBeginInfoEXT)(mem82da87c9)
- allocs82da87c9 := new(cgoAllocMap)
- allocs82da87c9.Add(mem82da87c9)
+ memb72b1cf3 := allocInitializePerformanceApiInfoINTELMemory(1)
+ refb72b1cf3 := (*C.VkInitializePerformanceApiInfoINTEL)(memb72b1cf3)
+ allocsb72b1cf3 := new(cgoAllocMap)
+ allocsb72b1cf3.Add(memb72b1cf3)
var csType_allocs *cgoAllocMap
- ref82da87c9.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs82da87c9.Borrow(csType_allocs)
+ refb72b1cf3.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsb72b1cf3.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref82da87c9.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs82da87c9.Borrow(cpNext_allocs)
-
- var cbuffer_allocs *cgoAllocMap
- ref82da87c9.buffer, cbuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.Buffer)), cgoAllocsUnknown
- allocs82da87c9.Borrow(cbuffer_allocs)
-
- var coffset_allocs *cgoAllocMap
- ref82da87c9.offset, coffset_allocs = (C.VkDeviceSize)(x.Offset), cgoAllocsUnknown
- allocs82da87c9.Borrow(coffset_allocs)
+ refb72b1cf3.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsb72b1cf3.Borrow(cpNext_allocs)
- var cflags_allocs *cgoAllocMap
- ref82da87c9.flags, cflags_allocs = (C.VkConditionalRenderingFlagsEXT)(x.Flags), cgoAllocsUnknown
- allocs82da87c9.Borrow(cflags_allocs)
+ var cpUserData_allocs *cgoAllocMap
+ refb72b1cf3.pUserData, cpUserData_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PUserData)), cgoAllocsUnknown
+ allocsb72b1cf3.Borrow(cpUserData_allocs)
- x.ref82da87c9 = ref82da87c9
- x.allocs82da87c9 = allocs82da87c9
- return ref82da87c9, allocs82da87c9
+ x.refb72b1cf3 = refb72b1cf3
+ x.allocsb72b1cf3 = allocsb72b1cf3
+ return refb72b1cf3, allocsb72b1cf3
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ConditionalRenderingBeginInfo) PassValue() (C.VkConditionalRenderingBeginInfoEXT, *cgoAllocMap) {
- if x.ref82da87c9 != nil {
- return *x.ref82da87c9, nil
+func (x InitializePerformanceApiInfoINTEL) PassValue() (C.VkInitializePerformanceApiInfoINTEL, *cgoAllocMap) {
+ if x.refb72b1cf3 != nil {
+ return *x.refb72b1cf3, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -27546,96 +54422,90 @@ func (x ConditionalRenderingBeginInfo) PassValue() (C.VkConditionalRenderingBegi
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ConditionalRenderingBeginInfo) Deref() {
- if x.ref82da87c9 == nil {
+func (x *InitializePerformanceApiInfoINTEL) Deref() {
+ if x.refb72b1cf3 == nil {
return
}
- x.SType = (StructureType)(x.ref82da87c9.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref82da87c9.pNext))
- x.Buffer = *(*Buffer)(unsafe.Pointer(&x.ref82da87c9.buffer))
- x.Offset = (DeviceSize)(x.ref82da87c9.offset)
- x.Flags = (ConditionalRenderingFlags)(x.ref82da87c9.flags)
+ x.SType = (StructureType)(x.refb72b1cf3.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb72b1cf3.pNext))
+ x.PUserData = (unsafe.Pointer)(unsafe.Pointer(x.refb72b1cf3.pUserData))
}
-// allocPhysicalDeviceConditionalRenderingFeaturesMemory allocates memory for type C.VkPhysicalDeviceConditionalRenderingFeaturesEXT in C.
+// allocQueryPoolPerformanceQueryCreateInfoINTELMemory allocates memory for type C.VkQueryPoolPerformanceQueryCreateInfoINTEL in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceConditionalRenderingFeaturesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceConditionalRenderingFeaturesValue))
+func allocQueryPoolPerformanceQueryCreateInfoINTELMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfQueryPoolPerformanceQueryCreateInfoINTELValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceConditionalRenderingFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceConditionalRenderingFeaturesEXT{})
+const sizeOfQueryPoolPerformanceQueryCreateInfoINTELValue = unsafe.Sizeof([1]C.VkQueryPoolPerformanceQueryCreateInfoINTEL{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceConditionalRenderingFeatures) Ref() *C.VkPhysicalDeviceConditionalRenderingFeaturesEXT {
+func (x *QueryPoolPerformanceQueryCreateInfoINTEL) Ref() *C.VkQueryPoolPerformanceQueryCreateInfoINTEL {
if x == nil {
return nil
}
- return x.ref89d2a224
+ return x.refb8883992
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceConditionalRenderingFeatures) Free() {
- if x != nil && x.allocs89d2a224 != nil {
- x.allocs89d2a224.(*cgoAllocMap).Free()
- x.ref89d2a224 = nil
+func (x *QueryPoolPerformanceQueryCreateInfoINTEL) Free() {
+ if x != nil && x.allocsb8883992 != nil {
+ x.allocsb8883992.(*cgoAllocMap).Free()
+ x.refb8883992 = nil
}
}
-// NewPhysicalDeviceConditionalRenderingFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewQueryPoolPerformanceQueryCreateInfoINTELRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceConditionalRenderingFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceConditionalRenderingFeatures {
+func NewQueryPoolPerformanceQueryCreateInfoINTELRef(ref unsafe.Pointer) *QueryPoolPerformanceQueryCreateInfoINTEL {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceConditionalRenderingFeatures)
- obj.ref89d2a224 = (*C.VkPhysicalDeviceConditionalRenderingFeaturesEXT)(unsafe.Pointer(ref))
+ obj := new(QueryPoolPerformanceQueryCreateInfoINTEL)
+ obj.refb8883992 = (*C.VkQueryPoolPerformanceQueryCreateInfoINTEL)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceConditionalRenderingFeatures) PassRef() (*C.VkPhysicalDeviceConditionalRenderingFeaturesEXT, *cgoAllocMap) {
+func (x *QueryPoolPerformanceQueryCreateInfoINTEL) PassRef() (*C.VkQueryPoolPerformanceQueryCreateInfoINTEL, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref89d2a224 != nil {
- return x.ref89d2a224, nil
+ } else if x.refb8883992 != nil {
+ return x.refb8883992, nil
}
- mem89d2a224 := allocPhysicalDeviceConditionalRenderingFeaturesMemory(1)
- ref89d2a224 := (*C.VkPhysicalDeviceConditionalRenderingFeaturesEXT)(mem89d2a224)
- allocs89d2a224 := new(cgoAllocMap)
- allocs89d2a224.Add(mem89d2a224)
+ memb8883992 := allocQueryPoolPerformanceQueryCreateInfoINTELMemory(1)
+ refb8883992 := (*C.VkQueryPoolPerformanceQueryCreateInfoINTEL)(memb8883992)
+ allocsb8883992 := new(cgoAllocMap)
+ allocsb8883992.Add(memb8883992)
var csType_allocs *cgoAllocMap
- ref89d2a224.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs89d2a224.Borrow(csType_allocs)
+ refb8883992.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsb8883992.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref89d2a224.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs89d2a224.Borrow(cpNext_allocs)
-
- var cconditionalRendering_allocs *cgoAllocMap
- ref89d2a224.conditionalRendering, cconditionalRendering_allocs = (C.VkBool32)(x.ConditionalRendering), cgoAllocsUnknown
- allocs89d2a224.Borrow(cconditionalRendering_allocs)
+ refb8883992.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsb8883992.Borrow(cpNext_allocs)
- var cinheritedConditionalRendering_allocs *cgoAllocMap
- ref89d2a224.inheritedConditionalRendering, cinheritedConditionalRendering_allocs = (C.VkBool32)(x.InheritedConditionalRendering), cgoAllocsUnknown
- allocs89d2a224.Borrow(cinheritedConditionalRendering_allocs)
+ var cperformanceCountersSampling_allocs *cgoAllocMap
+ refb8883992.performanceCountersSampling, cperformanceCountersSampling_allocs = (C.VkQueryPoolSamplingModeINTEL)(x.PerformanceCountersSampling), cgoAllocsUnknown
+ allocsb8883992.Borrow(cperformanceCountersSampling_allocs)
- x.ref89d2a224 = ref89d2a224
- x.allocs89d2a224 = allocs89d2a224
- return ref89d2a224, allocs89d2a224
+ x.refb8883992 = refb8883992
+ x.allocsb8883992 = allocsb8883992
+ return refb8883992, allocsb8883992
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceConditionalRenderingFeatures) PassValue() (C.VkPhysicalDeviceConditionalRenderingFeaturesEXT, *cgoAllocMap) {
- if x.ref89d2a224 != nil {
- return *x.ref89d2a224, nil
+func (x QueryPoolPerformanceQueryCreateInfoINTEL) PassValue() (C.VkQueryPoolPerformanceQueryCreateInfoINTEL, *cgoAllocMap) {
+ if x.refb8883992 != nil {
+ return *x.refb8883992, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -27643,91 +54513,78 @@ func (x PhysicalDeviceConditionalRenderingFeatures) PassValue() (C.VkPhysicalDev
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceConditionalRenderingFeatures) Deref() {
- if x.ref89d2a224 == nil {
+func (x *QueryPoolPerformanceQueryCreateInfoINTEL) Deref() {
+ if x.refb8883992 == nil {
return
}
- x.SType = (StructureType)(x.ref89d2a224.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref89d2a224.pNext))
- x.ConditionalRendering = (Bool32)(x.ref89d2a224.conditionalRendering)
- x.InheritedConditionalRendering = (Bool32)(x.ref89d2a224.inheritedConditionalRendering)
-}
-
-// allocCommandBufferInheritanceConditionalRenderingInfoMemory allocates memory for type C.VkCommandBufferInheritanceConditionalRenderingInfoEXT in C.
-// The caller is responsible for freeing the this memory via C.free.
-func allocCommandBufferInheritanceConditionalRenderingInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCommandBufferInheritanceConditionalRenderingInfoValue))
- if err != nil {
- panic("memory alloc error: " + err.Error())
- }
- return mem
+ x.SType = (StructureType)(x.refb8883992.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb8883992.pNext))
+ x.PerformanceCountersSampling = (QueryPoolSamplingModeINTEL)(x.refb8883992.performanceCountersSampling)
}
-const sizeOfCommandBufferInheritanceConditionalRenderingInfoValue = unsafe.Sizeof([1]C.VkCommandBufferInheritanceConditionalRenderingInfoEXT{})
-
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *CommandBufferInheritanceConditionalRenderingInfo) Ref() *C.VkCommandBufferInheritanceConditionalRenderingInfoEXT {
+func (x *QueryPoolCreateInfoINTEL) Ref() *C.VkQueryPoolPerformanceQueryCreateInfoINTEL {
if x == nil {
return nil
}
- return x.ref7155f49c
+ return x.refb8883992
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *CommandBufferInheritanceConditionalRenderingInfo) Free() {
- if x != nil && x.allocs7155f49c != nil {
- x.allocs7155f49c.(*cgoAllocMap).Free()
- x.ref7155f49c = nil
+func (x *QueryPoolCreateInfoINTEL) Free() {
+ if x != nil && x.allocsb8883992 != nil {
+ x.allocsb8883992.(*cgoAllocMap).Free()
+ x.refb8883992 = nil
}
}
-// NewCommandBufferInheritanceConditionalRenderingInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewQueryPoolCreateInfoINTELRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewCommandBufferInheritanceConditionalRenderingInfoRef(ref unsafe.Pointer) *CommandBufferInheritanceConditionalRenderingInfo {
+func NewQueryPoolCreateInfoINTELRef(ref unsafe.Pointer) *QueryPoolCreateInfoINTEL {
if ref == nil {
return nil
}
- obj := new(CommandBufferInheritanceConditionalRenderingInfo)
- obj.ref7155f49c = (*C.VkCommandBufferInheritanceConditionalRenderingInfoEXT)(unsafe.Pointer(ref))
+ obj := new(QueryPoolCreateInfoINTEL)
+ obj.refb8883992 = (*C.VkQueryPoolPerformanceQueryCreateInfoINTEL)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *CommandBufferInheritanceConditionalRenderingInfo) PassRef() (*C.VkCommandBufferInheritanceConditionalRenderingInfoEXT, *cgoAllocMap) {
+func (x *QueryPoolCreateInfoINTEL) PassRef() (*C.VkQueryPoolPerformanceQueryCreateInfoINTEL, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref7155f49c != nil {
- return x.ref7155f49c, nil
+ } else if x.refb8883992 != nil {
+ return x.refb8883992, nil
}
- mem7155f49c := allocCommandBufferInheritanceConditionalRenderingInfoMemory(1)
- ref7155f49c := (*C.VkCommandBufferInheritanceConditionalRenderingInfoEXT)(mem7155f49c)
- allocs7155f49c := new(cgoAllocMap)
- allocs7155f49c.Add(mem7155f49c)
+ memb8883992 := allocQueryPoolPerformanceQueryCreateInfoINTELMemory(1)
+ refb8883992 := (*C.VkQueryPoolPerformanceQueryCreateInfoINTEL)(memb8883992)
+ allocsb8883992 := new(cgoAllocMap)
+ allocsb8883992.Add(memb8883992)
var csType_allocs *cgoAllocMap
- ref7155f49c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs7155f49c.Borrow(csType_allocs)
+ refb8883992.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsb8883992.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref7155f49c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs7155f49c.Borrow(cpNext_allocs)
+ refb8883992.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsb8883992.Borrow(cpNext_allocs)
- var cconditionalRenderingEnable_allocs *cgoAllocMap
- ref7155f49c.conditionalRenderingEnable, cconditionalRenderingEnable_allocs = (C.VkBool32)(x.ConditionalRenderingEnable), cgoAllocsUnknown
- allocs7155f49c.Borrow(cconditionalRenderingEnable_allocs)
+ var cperformanceCountersSampling_allocs *cgoAllocMap
+ refb8883992.performanceCountersSampling, cperformanceCountersSampling_allocs = (C.VkQueryPoolSamplingModeINTEL)(x.PerformanceCountersSampling), cgoAllocsUnknown
+ allocsb8883992.Borrow(cperformanceCountersSampling_allocs)
- x.ref7155f49c = ref7155f49c
- x.allocs7155f49c = allocs7155f49c
- return ref7155f49c, allocs7155f49c
+ x.refb8883992 = refb8883992
+ x.allocsb8883992 = allocsb8883992
+ return refb8883992, allocsb8883992
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x CommandBufferInheritanceConditionalRenderingInfo) PassValue() (C.VkCommandBufferInheritanceConditionalRenderingInfoEXT, *cgoAllocMap) {
- if x.ref7155f49c != nil {
- return *x.ref7155f49c, nil
+func (x QueryPoolCreateInfoINTEL) PassValue() (C.VkQueryPoolPerformanceQueryCreateInfoINTEL, *cgoAllocMap) {
+ if x.refb8883992 != nil {
+ return *x.refb8883992, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -27735,90 +54592,90 @@ func (x CommandBufferInheritanceConditionalRenderingInfo) PassValue() (C.VkComma
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *CommandBufferInheritanceConditionalRenderingInfo) Deref() {
- if x.ref7155f49c == nil {
+func (x *QueryPoolCreateInfoINTEL) Deref() {
+ if x.refb8883992 == nil {
return
}
- x.SType = (StructureType)(x.ref7155f49c.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref7155f49c.pNext))
- x.ConditionalRenderingEnable = (Bool32)(x.ref7155f49c.conditionalRenderingEnable)
+ x.SType = (StructureType)(x.refb8883992.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb8883992.pNext))
+ x.PerformanceCountersSampling = (QueryPoolSamplingModeINTEL)(x.refb8883992.performanceCountersSampling)
}
-// allocDeviceGeneratedCommandsFeaturesNVXMemory allocates memory for type C.VkDeviceGeneratedCommandsFeaturesNVX in C.
+// allocPerformanceMarkerInfoINTELMemory allocates memory for type C.VkPerformanceMarkerInfoINTEL in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDeviceGeneratedCommandsFeaturesNVXMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceGeneratedCommandsFeaturesNVXValue))
+func allocPerformanceMarkerInfoINTELMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPerformanceMarkerInfoINTELValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDeviceGeneratedCommandsFeaturesNVXValue = unsafe.Sizeof([1]C.VkDeviceGeneratedCommandsFeaturesNVX{})
+const sizeOfPerformanceMarkerInfoINTELValue = unsafe.Sizeof([1]C.VkPerformanceMarkerInfoINTEL{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DeviceGeneratedCommandsFeaturesNVX) Ref() *C.VkDeviceGeneratedCommandsFeaturesNVX {
+func (x *PerformanceMarkerInfoINTEL) Ref() *C.VkPerformanceMarkerInfoINTEL {
if x == nil {
return nil
}
- return x.ref489899be
+ return x.refbf575d93
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DeviceGeneratedCommandsFeaturesNVX) Free() {
- if x != nil && x.allocs489899be != nil {
- x.allocs489899be.(*cgoAllocMap).Free()
- x.ref489899be = nil
+func (x *PerformanceMarkerInfoINTEL) Free() {
+ if x != nil && x.allocsbf575d93 != nil {
+ x.allocsbf575d93.(*cgoAllocMap).Free()
+ x.refbf575d93 = nil
}
}
-// NewDeviceGeneratedCommandsFeaturesNVXRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPerformanceMarkerInfoINTELRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDeviceGeneratedCommandsFeaturesNVXRef(ref unsafe.Pointer) *DeviceGeneratedCommandsFeaturesNVX {
+func NewPerformanceMarkerInfoINTELRef(ref unsafe.Pointer) *PerformanceMarkerInfoINTEL {
if ref == nil {
return nil
}
- obj := new(DeviceGeneratedCommandsFeaturesNVX)
- obj.ref489899be = (*C.VkDeviceGeneratedCommandsFeaturesNVX)(unsafe.Pointer(ref))
+ obj := new(PerformanceMarkerInfoINTEL)
+ obj.refbf575d93 = (*C.VkPerformanceMarkerInfoINTEL)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DeviceGeneratedCommandsFeaturesNVX) PassRef() (*C.VkDeviceGeneratedCommandsFeaturesNVX, *cgoAllocMap) {
+func (x *PerformanceMarkerInfoINTEL) PassRef() (*C.VkPerformanceMarkerInfoINTEL, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref489899be != nil {
- return x.ref489899be, nil
+ } else if x.refbf575d93 != nil {
+ return x.refbf575d93, nil
}
- mem489899be := allocDeviceGeneratedCommandsFeaturesNVXMemory(1)
- ref489899be := (*C.VkDeviceGeneratedCommandsFeaturesNVX)(mem489899be)
- allocs489899be := new(cgoAllocMap)
- allocs489899be.Add(mem489899be)
+ membf575d93 := allocPerformanceMarkerInfoINTELMemory(1)
+ refbf575d93 := (*C.VkPerformanceMarkerInfoINTEL)(membf575d93)
+ allocsbf575d93 := new(cgoAllocMap)
+ allocsbf575d93.Add(membf575d93)
var csType_allocs *cgoAllocMap
- ref489899be.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs489899be.Borrow(csType_allocs)
+ refbf575d93.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsbf575d93.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref489899be.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs489899be.Borrow(cpNext_allocs)
+ refbf575d93.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsbf575d93.Borrow(cpNext_allocs)
- var ccomputeBindingPointSupport_allocs *cgoAllocMap
- ref489899be.computeBindingPointSupport, ccomputeBindingPointSupport_allocs = (C.VkBool32)(x.ComputeBindingPointSupport), cgoAllocsUnknown
- allocs489899be.Borrow(ccomputeBindingPointSupport_allocs)
+ var cmarker_allocs *cgoAllocMap
+ refbf575d93.marker, cmarker_allocs = (C.uint64_t)(x.Marker), cgoAllocsUnknown
+ allocsbf575d93.Borrow(cmarker_allocs)
- x.ref489899be = ref489899be
- x.allocs489899be = allocs489899be
- return ref489899be, allocs489899be
+ x.refbf575d93 = refbf575d93
+ x.allocsbf575d93 = allocsbf575d93
+ return refbf575d93, allocsbf575d93
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DeviceGeneratedCommandsFeaturesNVX) PassValue() (C.VkDeviceGeneratedCommandsFeaturesNVX, *cgoAllocMap) {
- if x.ref489899be != nil {
- return *x.ref489899be, nil
+func (x PerformanceMarkerInfoINTEL) PassValue() (C.VkPerformanceMarkerInfoINTEL, *cgoAllocMap) {
+ if x.refbf575d93 != nil {
+ return *x.refbf575d93, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -27826,106 +54683,90 @@ func (x DeviceGeneratedCommandsFeaturesNVX) PassValue() (C.VkDeviceGeneratedComm
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DeviceGeneratedCommandsFeaturesNVX) Deref() {
- if x.ref489899be == nil {
+func (x *PerformanceMarkerInfoINTEL) Deref() {
+ if x.refbf575d93 == nil {
return
}
- x.SType = (StructureType)(x.ref489899be.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref489899be.pNext))
- x.ComputeBindingPointSupport = (Bool32)(x.ref489899be.computeBindingPointSupport)
+ x.SType = (StructureType)(x.refbf575d93.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refbf575d93.pNext))
+ x.Marker = (uint64)(x.refbf575d93.marker)
}
-// allocDeviceGeneratedCommandsLimitsNVXMemory allocates memory for type C.VkDeviceGeneratedCommandsLimitsNVX in C.
+// allocPerformanceStreamMarkerInfoINTELMemory allocates memory for type C.VkPerformanceStreamMarkerInfoINTEL in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDeviceGeneratedCommandsLimitsNVXMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceGeneratedCommandsLimitsNVXValue))
+func allocPerformanceStreamMarkerInfoINTELMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPerformanceStreamMarkerInfoINTELValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDeviceGeneratedCommandsLimitsNVXValue = unsafe.Sizeof([1]C.VkDeviceGeneratedCommandsLimitsNVX{})
+const sizeOfPerformanceStreamMarkerInfoINTELValue = unsafe.Sizeof([1]C.VkPerformanceStreamMarkerInfoINTEL{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DeviceGeneratedCommandsLimitsNVX) Ref() *C.VkDeviceGeneratedCommandsLimitsNVX {
+func (x *PerformanceStreamMarkerInfoINTEL) Ref() *C.VkPerformanceStreamMarkerInfoINTEL {
if x == nil {
return nil
}
- return x.refb2b76f40
+ return x.refaaf8355c
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DeviceGeneratedCommandsLimitsNVX) Free() {
- if x != nil && x.allocsb2b76f40 != nil {
- x.allocsb2b76f40.(*cgoAllocMap).Free()
- x.refb2b76f40 = nil
+func (x *PerformanceStreamMarkerInfoINTEL) Free() {
+ if x != nil && x.allocsaaf8355c != nil {
+ x.allocsaaf8355c.(*cgoAllocMap).Free()
+ x.refaaf8355c = nil
}
}
-// NewDeviceGeneratedCommandsLimitsNVXRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPerformanceStreamMarkerInfoINTELRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDeviceGeneratedCommandsLimitsNVXRef(ref unsafe.Pointer) *DeviceGeneratedCommandsLimitsNVX {
+func NewPerformanceStreamMarkerInfoINTELRef(ref unsafe.Pointer) *PerformanceStreamMarkerInfoINTEL {
if ref == nil {
return nil
}
- obj := new(DeviceGeneratedCommandsLimitsNVX)
- obj.refb2b76f40 = (*C.VkDeviceGeneratedCommandsLimitsNVX)(unsafe.Pointer(ref))
+ obj := new(PerformanceStreamMarkerInfoINTEL)
+ obj.refaaf8355c = (*C.VkPerformanceStreamMarkerInfoINTEL)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DeviceGeneratedCommandsLimitsNVX) PassRef() (*C.VkDeviceGeneratedCommandsLimitsNVX, *cgoAllocMap) {
+func (x *PerformanceStreamMarkerInfoINTEL) PassRef() (*C.VkPerformanceStreamMarkerInfoINTEL, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refb2b76f40 != nil {
- return x.refb2b76f40, nil
+ } else if x.refaaf8355c != nil {
+ return x.refaaf8355c, nil
}
- memb2b76f40 := allocDeviceGeneratedCommandsLimitsNVXMemory(1)
- refb2b76f40 := (*C.VkDeviceGeneratedCommandsLimitsNVX)(memb2b76f40)
- allocsb2b76f40 := new(cgoAllocMap)
- allocsb2b76f40.Add(memb2b76f40)
+ memaaf8355c := allocPerformanceStreamMarkerInfoINTELMemory(1)
+ refaaf8355c := (*C.VkPerformanceStreamMarkerInfoINTEL)(memaaf8355c)
+ allocsaaf8355c := new(cgoAllocMap)
+ allocsaaf8355c.Add(memaaf8355c)
var csType_allocs *cgoAllocMap
- refb2b76f40.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsb2b76f40.Borrow(csType_allocs)
+ refaaf8355c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsaaf8355c.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refb2b76f40.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsb2b76f40.Borrow(cpNext_allocs)
-
- var cmaxIndirectCommandsLayoutTokenCount_allocs *cgoAllocMap
- refb2b76f40.maxIndirectCommandsLayoutTokenCount, cmaxIndirectCommandsLayoutTokenCount_allocs = (C.uint32_t)(x.MaxIndirectCommandsLayoutTokenCount), cgoAllocsUnknown
- allocsb2b76f40.Borrow(cmaxIndirectCommandsLayoutTokenCount_allocs)
+ refaaf8355c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsaaf8355c.Borrow(cpNext_allocs)
- var cmaxObjectEntryCounts_allocs *cgoAllocMap
- refb2b76f40.maxObjectEntryCounts, cmaxObjectEntryCounts_allocs = (C.uint32_t)(x.MaxObjectEntryCounts), cgoAllocsUnknown
- allocsb2b76f40.Borrow(cmaxObjectEntryCounts_allocs)
+ var cmarker_allocs *cgoAllocMap
+ refaaf8355c.marker, cmarker_allocs = (C.uint32_t)(x.Marker), cgoAllocsUnknown
+ allocsaaf8355c.Borrow(cmarker_allocs)
- var cminSequenceCountBufferOffsetAlignment_allocs *cgoAllocMap
- refb2b76f40.minSequenceCountBufferOffsetAlignment, cminSequenceCountBufferOffsetAlignment_allocs = (C.uint32_t)(x.MinSequenceCountBufferOffsetAlignment), cgoAllocsUnknown
- allocsb2b76f40.Borrow(cminSequenceCountBufferOffsetAlignment_allocs)
-
- var cminSequenceIndexBufferOffsetAlignment_allocs *cgoAllocMap
- refb2b76f40.minSequenceIndexBufferOffsetAlignment, cminSequenceIndexBufferOffsetAlignment_allocs = (C.uint32_t)(x.MinSequenceIndexBufferOffsetAlignment), cgoAllocsUnknown
- allocsb2b76f40.Borrow(cminSequenceIndexBufferOffsetAlignment_allocs)
-
- var cminCommandsTokenBufferOffsetAlignment_allocs *cgoAllocMap
- refb2b76f40.minCommandsTokenBufferOffsetAlignment, cminCommandsTokenBufferOffsetAlignment_allocs = (C.uint32_t)(x.MinCommandsTokenBufferOffsetAlignment), cgoAllocsUnknown
- allocsb2b76f40.Borrow(cminCommandsTokenBufferOffsetAlignment_allocs)
-
- x.refb2b76f40 = refb2b76f40
- x.allocsb2b76f40 = allocsb2b76f40
- return refb2b76f40, allocsb2b76f40
+ x.refaaf8355c = refaaf8355c
+ x.allocsaaf8355c = allocsaaf8355c
+ return refaaf8355c, allocsaaf8355c
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DeviceGeneratedCommandsLimitsNVX) PassValue() (C.VkDeviceGeneratedCommandsLimitsNVX, *cgoAllocMap) {
- if x.refb2b76f40 != nil {
- return *x.refb2b76f40, nil
+func (x PerformanceStreamMarkerInfoINTEL) PassValue() (C.VkPerformanceStreamMarkerInfoINTEL, *cgoAllocMap) {
+ if x.refaaf8355c != nil {
+ return *x.refaaf8355c, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -27933,94 +54774,98 @@ func (x DeviceGeneratedCommandsLimitsNVX) PassValue() (C.VkDeviceGeneratedComman
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DeviceGeneratedCommandsLimitsNVX) Deref() {
- if x.refb2b76f40 == nil {
+func (x *PerformanceStreamMarkerInfoINTEL) Deref() {
+ if x.refaaf8355c == nil {
return
}
- x.SType = (StructureType)(x.refb2b76f40.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb2b76f40.pNext))
- x.MaxIndirectCommandsLayoutTokenCount = (uint32)(x.refb2b76f40.maxIndirectCommandsLayoutTokenCount)
- x.MaxObjectEntryCounts = (uint32)(x.refb2b76f40.maxObjectEntryCounts)
- x.MinSequenceCountBufferOffsetAlignment = (uint32)(x.refb2b76f40.minSequenceCountBufferOffsetAlignment)
- x.MinSequenceIndexBufferOffsetAlignment = (uint32)(x.refb2b76f40.minSequenceIndexBufferOffsetAlignment)
- x.MinCommandsTokenBufferOffsetAlignment = (uint32)(x.refb2b76f40.minCommandsTokenBufferOffsetAlignment)
+ x.SType = (StructureType)(x.refaaf8355c.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refaaf8355c.pNext))
+ x.Marker = (uint32)(x.refaaf8355c.marker)
}
-// allocIndirectCommandsTokenNVXMemory allocates memory for type C.VkIndirectCommandsTokenNVX in C.
+// allocPerformanceOverrideInfoINTELMemory allocates memory for type C.VkPerformanceOverrideInfoINTEL in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocIndirectCommandsTokenNVXMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfIndirectCommandsTokenNVXValue))
+func allocPerformanceOverrideInfoINTELMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPerformanceOverrideInfoINTELValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfIndirectCommandsTokenNVXValue = unsafe.Sizeof([1]C.VkIndirectCommandsTokenNVX{})
+const sizeOfPerformanceOverrideInfoINTELValue = unsafe.Sizeof([1]C.VkPerformanceOverrideInfoINTEL{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *IndirectCommandsTokenNVX) Ref() *C.VkIndirectCommandsTokenNVX {
+func (x *PerformanceOverrideInfoINTEL) Ref() *C.VkPerformanceOverrideInfoINTEL {
if x == nil {
return nil
}
- return x.ref8a2daca5
+ return x.ref1cdbce31
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *IndirectCommandsTokenNVX) Free() {
- if x != nil && x.allocs8a2daca5 != nil {
- x.allocs8a2daca5.(*cgoAllocMap).Free()
- x.ref8a2daca5 = nil
+func (x *PerformanceOverrideInfoINTEL) Free() {
+ if x != nil && x.allocs1cdbce31 != nil {
+ x.allocs1cdbce31.(*cgoAllocMap).Free()
+ x.ref1cdbce31 = nil
}
}
-// NewIndirectCommandsTokenNVXRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPerformanceOverrideInfoINTELRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewIndirectCommandsTokenNVXRef(ref unsafe.Pointer) *IndirectCommandsTokenNVX {
+func NewPerformanceOverrideInfoINTELRef(ref unsafe.Pointer) *PerformanceOverrideInfoINTEL {
if ref == nil {
return nil
}
- obj := new(IndirectCommandsTokenNVX)
- obj.ref8a2daca5 = (*C.VkIndirectCommandsTokenNVX)(unsafe.Pointer(ref))
+ obj := new(PerformanceOverrideInfoINTEL)
+ obj.ref1cdbce31 = (*C.VkPerformanceOverrideInfoINTEL)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *IndirectCommandsTokenNVX) PassRef() (*C.VkIndirectCommandsTokenNVX, *cgoAllocMap) {
+func (x *PerformanceOverrideInfoINTEL) PassRef() (*C.VkPerformanceOverrideInfoINTEL, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref8a2daca5 != nil {
- return x.ref8a2daca5, nil
+ } else if x.ref1cdbce31 != nil {
+ return x.ref1cdbce31, nil
}
- mem8a2daca5 := allocIndirectCommandsTokenNVXMemory(1)
- ref8a2daca5 := (*C.VkIndirectCommandsTokenNVX)(mem8a2daca5)
- allocs8a2daca5 := new(cgoAllocMap)
- allocs8a2daca5.Add(mem8a2daca5)
+ mem1cdbce31 := allocPerformanceOverrideInfoINTELMemory(1)
+ ref1cdbce31 := (*C.VkPerformanceOverrideInfoINTEL)(mem1cdbce31)
+ allocs1cdbce31 := new(cgoAllocMap)
+ allocs1cdbce31.Add(mem1cdbce31)
- var ctokenType_allocs *cgoAllocMap
- ref8a2daca5.tokenType, ctokenType_allocs = (C.VkIndirectCommandsTokenTypeNVX)(x.TokenType), cgoAllocsUnknown
- allocs8a2daca5.Borrow(ctokenType_allocs)
+ var csType_allocs *cgoAllocMap
+ ref1cdbce31.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs1cdbce31.Borrow(csType_allocs)
- var cbuffer_allocs *cgoAllocMap
- ref8a2daca5.buffer, cbuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.Buffer)), cgoAllocsUnknown
- allocs8a2daca5.Borrow(cbuffer_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref1cdbce31.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs1cdbce31.Borrow(cpNext_allocs)
- var coffset_allocs *cgoAllocMap
- ref8a2daca5.offset, coffset_allocs = (C.VkDeviceSize)(x.Offset), cgoAllocsUnknown
- allocs8a2daca5.Borrow(coffset_allocs)
+ var c_type_allocs *cgoAllocMap
+ ref1cdbce31._type, c_type_allocs = (C.VkPerformanceOverrideTypeINTEL)(x.Type), cgoAllocsUnknown
+ allocs1cdbce31.Borrow(c_type_allocs)
+
+ var cenable_allocs *cgoAllocMap
+ ref1cdbce31.enable, cenable_allocs = (C.VkBool32)(x.Enable), cgoAllocsUnknown
+ allocs1cdbce31.Borrow(cenable_allocs)
- x.ref8a2daca5 = ref8a2daca5
- x.allocs8a2daca5 = allocs8a2daca5
- return ref8a2daca5, allocs8a2daca5
+ var cparameter_allocs *cgoAllocMap
+ ref1cdbce31.parameter, cparameter_allocs = (C.uint64_t)(x.Parameter), cgoAllocsUnknown
+ allocs1cdbce31.Borrow(cparameter_allocs)
+
+ x.ref1cdbce31 = ref1cdbce31
+ x.allocs1cdbce31 = allocs1cdbce31
+ return ref1cdbce31, allocs1cdbce31
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x IndirectCommandsTokenNVX) PassValue() (C.VkIndirectCommandsTokenNVX, *cgoAllocMap) {
- if x.ref8a2daca5 != nil {
- return *x.ref8a2daca5, nil
+func (x PerformanceOverrideInfoINTEL) PassValue() (C.VkPerformanceOverrideInfoINTEL, *cgoAllocMap) {
+ if x.ref1cdbce31 != nil {
+ return *x.ref1cdbce31, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -28028,94 +54873,92 @@ func (x IndirectCommandsTokenNVX) PassValue() (C.VkIndirectCommandsTokenNVX, *cg
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *IndirectCommandsTokenNVX) Deref() {
- if x.ref8a2daca5 == nil {
+func (x *PerformanceOverrideInfoINTEL) Deref() {
+ if x.ref1cdbce31 == nil {
return
}
- x.TokenType = (IndirectCommandsTokenTypeNVX)(x.ref8a2daca5.tokenType)
- x.Buffer = *(*Buffer)(unsafe.Pointer(&x.ref8a2daca5.buffer))
- x.Offset = (DeviceSize)(x.ref8a2daca5.offset)
+ x.SType = (StructureType)(x.ref1cdbce31.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref1cdbce31.pNext))
+ x.Type = (PerformanceOverrideTypeINTEL)(x.ref1cdbce31._type)
+ x.Enable = (Bool32)(x.ref1cdbce31.enable)
+ x.Parameter = (uint64)(x.ref1cdbce31.parameter)
}
-// allocIndirectCommandsLayoutTokenNVXMemory allocates memory for type C.VkIndirectCommandsLayoutTokenNVX in C.
+// allocPerformanceConfigurationAcquireInfoINTELMemory allocates memory for type C.VkPerformanceConfigurationAcquireInfoINTEL in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocIndirectCommandsLayoutTokenNVXMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfIndirectCommandsLayoutTokenNVXValue))
+func allocPerformanceConfigurationAcquireInfoINTELMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPerformanceConfigurationAcquireInfoINTELValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfIndirectCommandsLayoutTokenNVXValue = unsafe.Sizeof([1]C.VkIndirectCommandsLayoutTokenNVX{})
+const sizeOfPerformanceConfigurationAcquireInfoINTELValue = unsafe.Sizeof([1]C.VkPerformanceConfigurationAcquireInfoINTEL{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *IndirectCommandsLayoutTokenNVX) Ref() *C.VkIndirectCommandsLayoutTokenNVX {
+func (x *PerformanceConfigurationAcquireInfoINTEL) Ref() *C.VkPerformanceConfigurationAcquireInfoINTEL {
if x == nil {
return nil
}
- return x.refe421769
+ return x.ref16c1d105
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *IndirectCommandsLayoutTokenNVX) Free() {
- if x != nil && x.allocse421769 != nil {
- x.allocse421769.(*cgoAllocMap).Free()
- x.refe421769 = nil
+func (x *PerformanceConfigurationAcquireInfoINTEL) Free() {
+ if x != nil && x.allocs16c1d105 != nil {
+ x.allocs16c1d105.(*cgoAllocMap).Free()
+ x.ref16c1d105 = nil
}
}
-// NewIndirectCommandsLayoutTokenNVXRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPerformanceConfigurationAcquireInfoINTELRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewIndirectCommandsLayoutTokenNVXRef(ref unsafe.Pointer) *IndirectCommandsLayoutTokenNVX {
+func NewPerformanceConfigurationAcquireInfoINTELRef(ref unsafe.Pointer) *PerformanceConfigurationAcquireInfoINTEL {
if ref == nil {
return nil
}
- obj := new(IndirectCommandsLayoutTokenNVX)
- obj.refe421769 = (*C.VkIndirectCommandsLayoutTokenNVX)(unsafe.Pointer(ref))
+ obj := new(PerformanceConfigurationAcquireInfoINTEL)
+ obj.ref16c1d105 = (*C.VkPerformanceConfigurationAcquireInfoINTEL)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *IndirectCommandsLayoutTokenNVX) PassRef() (*C.VkIndirectCommandsLayoutTokenNVX, *cgoAllocMap) {
+func (x *PerformanceConfigurationAcquireInfoINTEL) PassRef() (*C.VkPerformanceConfigurationAcquireInfoINTEL, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refe421769 != nil {
- return x.refe421769, nil
+ } else if x.ref16c1d105 != nil {
+ return x.ref16c1d105, nil
}
- meme421769 := allocIndirectCommandsLayoutTokenNVXMemory(1)
- refe421769 := (*C.VkIndirectCommandsLayoutTokenNVX)(meme421769)
- allocse421769 := new(cgoAllocMap)
- allocse421769.Add(meme421769)
-
- var ctokenType_allocs *cgoAllocMap
- refe421769.tokenType, ctokenType_allocs = (C.VkIndirectCommandsTokenTypeNVX)(x.TokenType), cgoAllocsUnknown
- allocse421769.Borrow(ctokenType_allocs)
+ mem16c1d105 := allocPerformanceConfigurationAcquireInfoINTELMemory(1)
+ ref16c1d105 := (*C.VkPerformanceConfigurationAcquireInfoINTEL)(mem16c1d105)
+ allocs16c1d105 := new(cgoAllocMap)
+ allocs16c1d105.Add(mem16c1d105)
- var cbindingUnit_allocs *cgoAllocMap
- refe421769.bindingUnit, cbindingUnit_allocs = (C.uint32_t)(x.BindingUnit), cgoAllocsUnknown
- allocse421769.Borrow(cbindingUnit_allocs)
+ var csType_allocs *cgoAllocMap
+ ref16c1d105.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs16c1d105.Borrow(csType_allocs)
- var cdynamicCount_allocs *cgoAllocMap
- refe421769.dynamicCount, cdynamicCount_allocs = (C.uint32_t)(x.DynamicCount), cgoAllocsUnknown
- allocse421769.Borrow(cdynamicCount_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref16c1d105.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs16c1d105.Borrow(cpNext_allocs)
- var cdivisor_allocs *cgoAllocMap
- refe421769.divisor, cdivisor_allocs = (C.uint32_t)(x.Divisor), cgoAllocsUnknown
- allocse421769.Borrow(cdivisor_allocs)
+ var c_type_allocs *cgoAllocMap
+ ref16c1d105._type, c_type_allocs = (C.VkPerformanceConfigurationTypeINTEL)(x.Type), cgoAllocsUnknown
+ allocs16c1d105.Borrow(c_type_allocs)
- x.refe421769 = refe421769
- x.allocse421769 = allocse421769
- return refe421769, allocse421769
+ x.ref16c1d105 = ref16c1d105
+ x.allocs16c1d105 = allocs16c1d105
+ return ref16c1d105, allocs16c1d105
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x IndirectCommandsLayoutTokenNVX) PassValue() (C.VkIndirectCommandsLayoutTokenNVX, *cgoAllocMap) {
- if x.refe421769 != nil {
- return *x.refe421769, nil
+func (x PerformanceConfigurationAcquireInfoINTEL) PassValue() (C.VkPerformanceConfigurationAcquireInfoINTEL, *cgoAllocMap) {
+ if x.ref16c1d105 != nil {
+ return *x.ref16c1d105, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -28123,141 +54966,102 @@ func (x IndirectCommandsLayoutTokenNVX) PassValue() (C.VkIndirectCommandsLayoutT
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *IndirectCommandsLayoutTokenNVX) Deref() {
- if x.refe421769 == nil {
+func (x *PerformanceConfigurationAcquireInfoINTEL) Deref() {
+ if x.ref16c1d105 == nil {
return
}
- x.TokenType = (IndirectCommandsTokenTypeNVX)(x.refe421769.tokenType)
- x.BindingUnit = (uint32)(x.refe421769.bindingUnit)
- x.DynamicCount = (uint32)(x.refe421769.dynamicCount)
- x.Divisor = (uint32)(x.refe421769.divisor)
+ x.SType = (StructureType)(x.ref16c1d105.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref16c1d105.pNext))
+ x.Type = (PerformanceConfigurationTypeINTEL)(x.ref16c1d105._type)
}
-// allocIndirectCommandsLayoutCreateInfoNVXMemory allocates memory for type C.VkIndirectCommandsLayoutCreateInfoNVX in C.
+// allocPhysicalDevicePCIBusInfoPropertiesMemory allocates memory for type C.VkPhysicalDevicePCIBusInfoPropertiesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocIndirectCommandsLayoutCreateInfoNVXMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfIndirectCommandsLayoutCreateInfoNVXValue))
+func allocPhysicalDevicePCIBusInfoPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDevicePCIBusInfoPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfIndirectCommandsLayoutCreateInfoNVXValue = unsafe.Sizeof([1]C.VkIndirectCommandsLayoutCreateInfoNVX{})
-
-// unpackSIndirectCommandsLayoutTokenNVX transforms a sliced Go data structure into plain C format.
-func unpackSIndirectCommandsLayoutTokenNVX(x []IndirectCommandsLayoutTokenNVX) (unpacked *C.VkIndirectCommandsLayoutTokenNVX, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkIndirectCommandsLayoutTokenNVX) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocIndirectCommandsLayoutTokenNVXMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkIndirectCommandsLayoutTokenNVX)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkIndirectCommandsLayoutTokenNVX)(h.Data)
- return
-}
-
-// packSIndirectCommandsLayoutTokenNVX reads sliced Go data structure out from plain C format.
-func packSIndirectCommandsLayoutTokenNVX(v []IndirectCommandsLayoutTokenNVX, ptr0 *C.VkIndirectCommandsLayoutTokenNVX) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfIndirectCommandsLayoutTokenNVXValue]C.VkIndirectCommandsLayoutTokenNVX)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewIndirectCommandsLayoutTokenNVXRef(unsafe.Pointer(&ptr1))
- }
-}
+const sizeOfPhysicalDevicePCIBusInfoPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDevicePCIBusInfoPropertiesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *IndirectCommandsLayoutCreateInfoNVX) Ref() *C.VkIndirectCommandsLayoutCreateInfoNVX {
+func (x *PhysicalDevicePCIBusInfoProperties) Ref() *C.VkPhysicalDevicePCIBusInfoPropertiesEXT {
if x == nil {
return nil
}
- return x.ref2a2866d5
+ return x.refdd9947ff
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *IndirectCommandsLayoutCreateInfoNVX) Free() {
- if x != nil && x.allocs2a2866d5 != nil {
- x.allocs2a2866d5.(*cgoAllocMap).Free()
- x.ref2a2866d5 = nil
+func (x *PhysicalDevicePCIBusInfoProperties) Free() {
+ if x != nil && x.allocsdd9947ff != nil {
+ x.allocsdd9947ff.(*cgoAllocMap).Free()
+ x.refdd9947ff = nil
}
}
-// NewIndirectCommandsLayoutCreateInfoNVXRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDevicePCIBusInfoPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewIndirectCommandsLayoutCreateInfoNVXRef(ref unsafe.Pointer) *IndirectCommandsLayoutCreateInfoNVX {
+func NewPhysicalDevicePCIBusInfoPropertiesRef(ref unsafe.Pointer) *PhysicalDevicePCIBusInfoProperties {
if ref == nil {
return nil
}
- obj := new(IndirectCommandsLayoutCreateInfoNVX)
- obj.ref2a2866d5 = (*C.VkIndirectCommandsLayoutCreateInfoNVX)(unsafe.Pointer(ref))
+ obj := new(PhysicalDevicePCIBusInfoProperties)
+ obj.refdd9947ff = (*C.VkPhysicalDevicePCIBusInfoPropertiesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *IndirectCommandsLayoutCreateInfoNVX) PassRef() (*C.VkIndirectCommandsLayoutCreateInfoNVX, *cgoAllocMap) {
+func (x *PhysicalDevicePCIBusInfoProperties) PassRef() (*C.VkPhysicalDevicePCIBusInfoPropertiesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref2a2866d5 != nil {
- return x.ref2a2866d5, nil
+ } else if x.refdd9947ff != nil {
+ return x.refdd9947ff, nil
}
- mem2a2866d5 := allocIndirectCommandsLayoutCreateInfoNVXMemory(1)
- ref2a2866d5 := (*C.VkIndirectCommandsLayoutCreateInfoNVX)(mem2a2866d5)
- allocs2a2866d5 := new(cgoAllocMap)
- allocs2a2866d5.Add(mem2a2866d5)
+ memdd9947ff := allocPhysicalDevicePCIBusInfoPropertiesMemory(1)
+ refdd9947ff := (*C.VkPhysicalDevicePCIBusInfoPropertiesEXT)(memdd9947ff)
+ allocsdd9947ff := new(cgoAllocMap)
+ allocsdd9947ff.Add(memdd9947ff)
var csType_allocs *cgoAllocMap
- ref2a2866d5.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs2a2866d5.Borrow(csType_allocs)
+ refdd9947ff.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsdd9947ff.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref2a2866d5.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs2a2866d5.Borrow(cpNext_allocs)
+ refdd9947ff.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsdd9947ff.Borrow(cpNext_allocs)
- var cpipelineBindPoint_allocs *cgoAllocMap
- ref2a2866d5.pipelineBindPoint, cpipelineBindPoint_allocs = (C.VkPipelineBindPoint)(x.PipelineBindPoint), cgoAllocsUnknown
- allocs2a2866d5.Borrow(cpipelineBindPoint_allocs)
+ var cpciDomain_allocs *cgoAllocMap
+ refdd9947ff.pciDomain, cpciDomain_allocs = (C.uint32_t)(x.PciDomain), cgoAllocsUnknown
+ allocsdd9947ff.Borrow(cpciDomain_allocs)
- var cflags_allocs *cgoAllocMap
- ref2a2866d5.flags, cflags_allocs = (C.VkIndirectCommandsLayoutUsageFlagsNVX)(x.Flags), cgoAllocsUnknown
- allocs2a2866d5.Borrow(cflags_allocs)
+ var cpciBus_allocs *cgoAllocMap
+ refdd9947ff.pciBus, cpciBus_allocs = (C.uint32_t)(x.PciBus), cgoAllocsUnknown
+ allocsdd9947ff.Borrow(cpciBus_allocs)
- var ctokenCount_allocs *cgoAllocMap
- ref2a2866d5.tokenCount, ctokenCount_allocs = (C.uint32_t)(x.TokenCount), cgoAllocsUnknown
- allocs2a2866d5.Borrow(ctokenCount_allocs)
+ var cpciDevice_allocs *cgoAllocMap
+ refdd9947ff.pciDevice, cpciDevice_allocs = (C.uint32_t)(x.PciDevice), cgoAllocsUnknown
+ allocsdd9947ff.Borrow(cpciDevice_allocs)
- var cpTokens_allocs *cgoAllocMap
- ref2a2866d5.pTokens, cpTokens_allocs = unpackSIndirectCommandsLayoutTokenNVX(x.PTokens)
- allocs2a2866d5.Borrow(cpTokens_allocs)
+ var cpciFunction_allocs *cgoAllocMap
+ refdd9947ff.pciFunction, cpciFunction_allocs = (C.uint32_t)(x.PciFunction), cgoAllocsUnknown
+ allocsdd9947ff.Borrow(cpciFunction_allocs)
- x.ref2a2866d5 = ref2a2866d5
- x.allocs2a2866d5 = allocs2a2866d5
- return ref2a2866d5, allocs2a2866d5
+ x.refdd9947ff = refdd9947ff
+ x.allocsdd9947ff = allocsdd9947ff
+ return refdd9947ff, allocsdd9947ff
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x IndirectCommandsLayoutCreateInfoNVX) PassValue() (C.VkIndirectCommandsLayoutCreateInfoNVX, *cgoAllocMap) {
- if x.ref2a2866d5 != nil {
- return *x.ref2a2866d5, nil
+func (x PhysicalDevicePCIBusInfoProperties) PassValue() (C.VkPhysicalDevicePCIBusInfoPropertiesEXT, *cgoAllocMap) {
+ if x.refdd9947ff != nil {
+ return *x.refdd9947ff, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -28265,167 +55069,93 @@ func (x IndirectCommandsLayoutCreateInfoNVX) PassValue() (C.VkIndirectCommandsLa
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *IndirectCommandsLayoutCreateInfoNVX) Deref() {
- if x.ref2a2866d5 == nil {
+func (x *PhysicalDevicePCIBusInfoProperties) Deref() {
+ if x.refdd9947ff == nil {
return
}
- x.SType = (StructureType)(x.ref2a2866d5.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref2a2866d5.pNext))
- x.PipelineBindPoint = (PipelineBindPoint)(x.ref2a2866d5.pipelineBindPoint)
- x.Flags = (IndirectCommandsLayoutUsageFlagsNVX)(x.ref2a2866d5.flags)
- x.TokenCount = (uint32)(x.ref2a2866d5.tokenCount)
- packSIndirectCommandsLayoutTokenNVX(x.PTokens, x.ref2a2866d5.pTokens)
+ x.SType = (StructureType)(x.refdd9947ff.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refdd9947ff.pNext))
+ x.PciDomain = (uint32)(x.refdd9947ff.pciDomain)
+ x.PciBus = (uint32)(x.refdd9947ff.pciBus)
+ x.PciDevice = (uint32)(x.refdd9947ff.pciDevice)
+ x.PciFunction = (uint32)(x.refdd9947ff.pciFunction)
}
-// allocCmdProcessCommandsInfoNVXMemory allocates memory for type C.VkCmdProcessCommandsInfoNVX in C.
+// allocDisplayNativeHdrSurfaceCapabilitiesAMDMemory allocates memory for type C.VkDisplayNativeHdrSurfaceCapabilitiesAMD in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocCmdProcessCommandsInfoNVXMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCmdProcessCommandsInfoNVXValue))
+func allocDisplayNativeHdrSurfaceCapabilitiesAMDMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplayNativeHdrSurfaceCapabilitiesAMDValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfCmdProcessCommandsInfoNVXValue = unsafe.Sizeof([1]C.VkCmdProcessCommandsInfoNVX{})
-
-// unpackSIndirectCommandsTokenNVX transforms a sliced Go data structure into plain C format.
-func unpackSIndirectCommandsTokenNVX(x []IndirectCommandsTokenNVX) (unpacked *C.VkIndirectCommandsTokenNVX, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkIndirectCommandsTokenNVX) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocIndirectCommandsTokenNVXMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkIndirectCommandsTokenNVX)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkIndirectCommandsTokenNVX)(h.Data)
- return
-}
-
-// packSIndirectCommandsTokenNVX reads sliced Go data structure out from plain C format.
-func packSIndirectCommandsTokenNVX(v []IndirectCommandsTokenNVX, ptr0 *C.VkIndirectCommandsTokenNVX) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfIndirectCommandsTokenNVXValue]C.VkIndirectCommandsTokenNVX)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewIndirectCommandsTokenNVXRef(unsafe.Pointer(&ptr1))
- }
-}
+const sizeOfDisplayNativeHdrSurfaceCapabilitiesAMDValue = unsafe.Sizeof([1]C.VkDisplayNativeHdrSurfaceCapabilitiesAMD{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *CmdProcessCommandsInfoNVX) Ref() *C.VkCmdProcessCommandsInfoNVX {
+func (x *DisplayNativeHdrSurfaceCapabilitiesAMD) Ref() *C.VkDisplayNativeHdrSurfaceCapabilitiesAMD {
if x == nil {
return nil
}
- return x.refcd94895d
+ return x.ref2521293a
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *CmdProcessCommandsInfoNVX) Free() {
- if x != nil && x.allocscd94895d != nil {
- x.allocscd94895d.(*cgoAllocMap).Free()
- x.refcd94895d = nil
+func (x *DisplayNativeHdrSurfaceCapabilitiesAMD) Free() {
+ if x != nil && x.allocs2521293a != nil {
+ x.allocs2521293a.(*cgoAllocMap).Free()
+ x.ref2521293a = nil
}
}
-// NewCmdProcessCommandsInfoNVXRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDisplayNativeHdrSurfaceCapabilitiesAMDRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewCmdProcessCommandsInfoNVXRef(ref unsafe.Pointer) *CmdProcessCommandsInfoNVX {
+func NewDisplayNativeHdrSurfaceCapabilitiesAMDRef(ref unsafe.Pointer) *DisplayNativeHdrSurfaceCapabilitiesAMD {
if ref == nil {
return nil
}
- obj := new(CmdProcessCommandsInfoNVX)
- obj.refcd94895d = (*C.VkCmdProcessCommandsInfoNVX)(unsafe.Pointer(ref))
+ obj := new(DisplayNativeHdrSurfaceCapabilitiesAMD)
+ obj.ref2521293a = (*C.VkDisplayNativeHdrSurfaceCapabilitiesAMD)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *CmdProcessCommandsInfoNVX) PassRef() (*C.VkCmdProcessCommandsInfoNVX, *cgoAllocMap) {
+func (x *DisplayNativeHdrSurfaceCapabilitiesAMD) PassRef() (*C.VkDisplayNativeHdrSurfaceCapabilitiesAMD, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refcd94895d != nil {
- return x.refcd94895d, nil
+ } else if x.ref2521293a != nil {
+ return x.ref2521293a, nil
}
- memcd94895d := allocCmdProcessCommandsInfoNVXMemory(1)
- refcd94895d := (*C.VkCmdProcessCommandsInfoNVX)(memcd94895d)
- allocscd94895d := new(cgoAllocMap)
- allocscd94895d.Add(memcd94895d)
+ mem2521293a := allocDisplayNativeHdrSurfaceCapabilitiesAMDMemory(1)
+ ref2521293a := (*C.VkDisplayNativeHdrSurfaceCapabilitiesAMD)(mem2521293a)
+ allocs2521293a := new(cgoAllocMap)
+ allocs2521293a.Add(mem2521293a)
var csType_allocs *cgoAllocMap
- refcd94895d.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocscd94895d.Borrow(csType_allocs)
+ ref2521293a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs2521293a.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refcd94895d.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocscd94895d.Borrow(cpNext_allocs)
+ ref2521293a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs2521293a.Borrow(cpNext_allocs)
- var cobjectTable_allocs *cgoAllocMap
- refcd94895d.objectTable, cobjectTable_allocs = *(*C.VkObjectTableNVX)(unsafe.Pointer(&x.ObjectTable)), cgoAllocsUnknown
- allocscd94895d.Borrow(cobjectTable_allocs)
+ var clocalDimmingSupport_allocs *cgoAllocMap
+ ref2521293a.localDimmingSupport, clocalDimmingSupport_allocs = (C.VkBool32)(x.LocalDimmingSupport), cgoAllocsUnknown
+ allocs2521293a.Borrow(clocalDimmingSupport_allocs)
- var cindirectCommandsLayout_allocs *cgoAllocMap
- refcd94895d.indirectCommandsLayout, cindirectCommandsLayout_allocs = *(*C.VkIndirectCommandsLayoutNVX)(unsafe.Pointer(&x.IndirectCommandsLayout)), cgoAllocsUnknown
- allocscd94895d.Borrow(cindirectCommandsLayout_allocs)
-
- var cindirectCommandsTokenCount_allocs *cgoAllocMap
- refcd94895d.indirectCommandsTokenCount, cindirectCommandsTokenCount_allocs = (C.uint32_t)(x.IndirectCommandsTokenCount), cgoAllocsUnknown
- allocscd94895d.Borrow(cindirectCommandsTokenCount_allocs)
-
- var cpIndirectCommandsTokens_allocs *cgoAllocMap
- refcd94895d.pIndirectCommandsTokens, cpIndirectCommandsTokens_allocs = unpackSIndirectCommandsTokenNVX(x.PIndirectCommandsTokens)
- allocscd94895d.Borrow(cpIndirectCommandsTokens_allocs)
-
- var cmaxSequencesCount_allocs *cgoAllocMap
- refcd94895d.maxSequencesCount, cmaxSequencesCount_allocs = (C.uint32_t)(x.MaxSequencesCount), cgoAllocsUnknown
- allocscd94895d.Borrow(cmaxSequencesCount_allocs)
-
- var ctargetCommandBuffer_allocs *cgoAllocMap
- refcd94895d.targetCommandBuffer, ctargetCommandBuffer_allocs = *(*C.VkCommandBuffer)(unsafe.Pointer(&x.TargetCommandBuffer)), cgoAllocsUnknown
- allocscd94895d.Borrow(ctargetCommandBuffer_allocs)
-
- var csequencesCountBuffer_allocs *cgoAllocMap
- refcd94895d.sequencesCountBuffer, csequencesCountBuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.SequencesCountBuffer)), cgoAllocsUnknown
- allocscd94895d.Borrow(csequencesCountBuffer_allocs)
-
- var csequencesCountOffset_allocs *cgoAllocMap
- refcd94895d.sequencesCountOffset, csequencesCountOffset_allocs = (C.VkDeviceSize)(x.SequencesCountOffset), cgoAllocsUnknown
- allocscd94895d.Borrow(csequencesCountOffset_allocs)
-
- var csequencesIndexBuffer_allocs *cgoAllocMap
- refcd94895d.sequencesIndexBuffer, csequencesIndexBuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.SequencesIndexBuffer)), cgoAllocsUnknown
- allocscd94895d.Borrow(csequencesIndexBuffer_allocs)
-
- var csequencesIndexOffset_allocs *cgoAllocMap
- refcd94895d.sequencesIndexOffset, csequencesIndexOffset_allocs = (C.VkDeviceSize)(x.SequencesIndexOffset), cgoAllocsUnknown
- allocscd94895d.Borrow(csequencesIndexOffset_allocs)
-
- x.refcd94895d = refcd94895d
- x.allocscd94895d = allocscd94895d
- return refcd94895d, allocscd94895d
+ x.ref2521293a = ref2521293a
+ x.allocs2521293a = allocs2521293a
+ return ref2521293a, allocs2521293a
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x CmdProcessCommandsInfoNVX) PassValue() (C.VkCmdProcessCommandsInfoNVX, *cgoAllocMap) {
- if x.refcd94895d != nil {
- return *x.refcd94895d, nil
+func (x DisplayNativeHdrSurfaceCapabilitiesAMD) PassValue() (C.VkDisplayNativeHdrSurfaceCapabilitiesAMD, *cgoAllocMap) {
+ if x.ref2521293a != nil {
+ return *x.ref2521293a, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -28433,107 +55163,90 @@ func (x CmdProcessCommandsInfoNVX) PassValue() (C.VkCmdProcessCommandsInfoNVX, *
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *CmdProcessCommandsInfoNVX) Deref() {
- if x.refcd94895d == nil {
+func (x *DisplayNativeHdrSurfaceCapabilitiesAMD) Deref() {
+ if x.ref2521293a == nil {
return
}
- x.SType = (StructureType)(x.refcd94895d.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refcd94895d.pNext))
- x.ObjectTable = *(*ObjectTableNVX)(unsafe.Pointer(&x.refcd94895d.objectTable))
- x.IndirectCommandsLayout = *(*IndirectCommandsLayoutNVX)(unsafe.Pointer(&x.refcd94895d.indirectCommandsLayout))
- x.IndirectCommandsTokenCount = (uint32)(x.refcd94895d.indirectCommandsTokenCount)
- packSIndirectCommandsTokenNVX(x.PIndirectCommandsTokens, x.refcd94895d.pIndirectCommandsTokens)
- x.MaxSequencesCount = (uint32)(x.refcd94895d.maxSequencesCount)
- x.TargetCommandBuffer = *(*CommandBuffer)(unsafe.Pointer(&x.refcd94895d.targetCommandBuffer))
- x.SequencesCountBuffer = *(*Buffer)(unsafe.Pointer(&x.refcd94895d.sequencesCountBuffer))
- x.SequencesCountOffset = (DeviceSize)(x.refcd94895d.sequencesCountOffset)
- x.SequencesIndexBuffer = *(*Buffer)(unsafe.Pointer(&x.refcd94895d.sequencesIndexBuffer))
- x.SequencesIndexOffset = (DeviceSize)(x.refcd94895d.sequencesIndexOffset)
+ x.SType = (StructureType)(x.ref2521293a.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref2521293a.pNext))
+ x.LocalDimmingSupport = (Bool32)(x.ref2521293a.localDimmingSupport)
}
-// allocCmdReserveSpaceForCommandsInfoNVXMemory allocates memory for type C.VkCmdReserveSpaceForCommandsInfoNVX in C.
+// allocSwapchainDisplayNativeHdrCreateInfoAMDMemory allocates memory for type C.VkSwapchainDisplayNativeHdrCreateInfoAMD in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocCmdReserveSpaceForCommandsInfoNVXMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCmdReserveSpaceForCommandsInfoNVXValue))
+func allocSwapchainDisplayNativeHdrCreateInfoAMDMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSwapchainDisplayNativeHdrCreateInfoAMDValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfCmdReserveSpaceForCommandsInfoNVXValue = unsafe.Sizeof([1]C.VkCmdReserveSpaceForCommandsInfoNVX{})
+const sizeOfSwapchainDisplayNativeHdrCreateInfoAMDValue = unsafe.Sizeof([1]C.VkSwapchainDisplayNativeHdrCreateInfoAMD{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *CmdReserveSpaceForCommandsInfoNVX) Ref() *C.VkCmdReserveSpaceForCommandsInfoNVX {
+func (x *SwapchainDisplayNativeHdrCreateInfoAMD) Ref() *C.VkSwapchainDisplayNativeHdrCreateInfoAMD {
if x == nil {
return nil
}
- return x.ref900bfee5
+ return x.refffbe2634
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *CmdReserveSpaceForCommandsInfoNVX) Free() {
- if x != nil && x.allocs900bfee5 != nil {
- x.allocs900bfee5.(*cgoAllocMap).Free()
- x.ref900bfee5 = nil
+func (x *SwapchainDisplayNativeHdrCreateInfoAMD) Free() {
+ if x != nil && x.allocsffbe2634 != nil {
+ x.allocsffbe2634.(*cgoAllocMap).Free()
+ x.refffbe2634 = nil
}
}
-// NewCmdReserveSpaceForCommandsInfoNVXRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewSwapchainDisplayNativeHdrCreateInfoAMDRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewCmdReserveSpaceForCommandsInfoNVXRef(ref unsafe.Pointer) *CmdReserveSpaceForCommandsInfoNVX {
+func NewSwapchainDisplayNativeHdrCreateInfoAMDRef(ref unsafe.Pointer) *SwapchainDisplayNativeHdrCreateInfoAMD {
if ref == nil {
return nil
}
- obj := new(CmdReserveSpaceForCommandsInfoNVX)
- obj.ref900bfee5 = (*C.VkCmdReserveSpaceForCommandsInfoNVX)(unsafe.Pointer(ref))
+ obj := new(SwapchainDisplayNativeHdrCreateInfoAMD)
+ obj.refffbe2634 = (*C.VkSwapchainDisplayNativeHdrCreateInfoAMD)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *CmdReserveSpaceForCommandsInfoNVX) PassRef() (*C.VkCmdReserveSpaceForCommandsInfoNVX, *cgoAllocMap) {
+func (x *SwapchainDisplayNativeHdrCreateInfoAMD) PassRef() (*C.VkSwapchainDisplayNativeHdrCreateInfoAMD, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref900bfee5 != nil {
- return x.ref900bfee5, nil
+ } else if x.refffbe2634 != nil {
+ return x.refffbe2634, nil
}
- mem900bfee5 := allocCmdReserveSpaceForCommandsInfoNVXMemory(1)
- ref900bfee5 := (*C.VkCmdReserveSpaceForCommandsInfoNVX)(mem900bfee5)
- allocs900bfee5 := new(cgoAllocMap)
- allocs900bfee5.Add(mem900bfee5)
+ memffbe2634 := allocSwapchainDisplayNativeHdrCreateInfoAMDMemory(1)
+ refffbe2634 := (*C.VkSwapchainDisplayNativeHdrCreateInfoAMD)(memffbe2634)
+ allocsffbe2634 := new(cgoAllocMap)
+ allocsffbe2634.Add(memffbe2634)
var csType_allocs *cgoAllocMap
- ref900bfee5.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs900bfee5.Borrow(csType_allocs)
+ refffbe2634.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsffbe2634.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref900bfee5.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs900bfee5.Borrow(cpNext_allocs)
+ refffbe2634.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsffbe2634.Borrow(cpNext_allocs)
- var cobjectTable_allocs *cgoAllocMap
- ref900bfee5.objectTable, cobjectTable_allocs = *(*C.VkObjectTableNVX)(unsafe.Pointer(&x.ObjectTable)), cgoAllocsUnknown
- allocs900bfee5.Borrow(cobjectTable_allocs)
+ var clocalDimmingEnable_allocs *cgoAllocMap
+ refffbe2634.localDimmingEnable, clocalDimmingEnable_allocs = (C.VkBool32)(x.LocalDimmingEnable), cgoAllocsUnknown
+ allocsffbe2634.Borrow(clocalDimmingEnable_allocs)
- var cindirectCommandsLayout_allocs *cgoAllocMap
- ref900bfee5.indirectCommandsLayout, cindirectCommandsLayout_allocs = *(*C.VkIndirectCommandsLayoutNVX)(unsafe.Pointer(&x.IndirectCommandsLayout)), cgoAllocsUnknown
- allocs900bfee5.Borrow(cindirectCommandsLayout_allocs)
-
- var cmaxSequencesCount_allocs *cgoAllocMap
- ref900bfee5.maxSequencesCount, cmaxSequencesCount_allocs = (C.uint32_t)(x.MaxSequencesCount), cgoAllocsUnknown
- allocs900bfee5.Borrow(cmaxSequencesCount_allocs)
-
- x.ref900bfee5 = ref900bfee5
- x.allocs900bfee5 = allocs900bfee5
- return ref900bfee5, allocs900bfee5
+ x.refffbe2634 = refffbe2634
+ x.allocsffbe2634 = allocsffbe2634
+ return refffbe2634, allocsffbe2634
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x CmdReserveSpaceForCommandsInfoNVX) PassValue() (C.VkCmdReserveSpaceForCommandsInfoNVX, *cgoAllocMap) {
- if x.ref900bfee5 != nil {
- return *x.ref900bfee5, nil
+func (x SwapchainDisplayNativeHdrCreateInfoAMD) PassValue() (C.VkSwapchainDisplayNativeHdrCreateInfoAMD, *cgoAllocMap) {
+ if x.refffbe2634 != nil {
+ return *x.refffbe2634, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -28541,124 +55254,98 @@ func (x CmdReserveSpaceForCommandsInfoNVX) PassValue() (C.VkCmdReserveSpaceForCo
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *CmdReserveSpaceForCommandsInfoNVX) Deref() {
- if x.ref900bfee5 == nil {
+func (x *SwapchainDisplayNativeHdrCreateInfoAMD) Deref() {
+ if x.refffbe2634 == nil {
return
}
- x.SType = (StructureType)(x.ref900bfee5.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref900bfee5.pNext))
- x.ObjectTable = *(*ObjectTableNVX)(unsafe.Pointer(&x.ref900bfee5.objectTable))
- x.IndirectCommandsLayout = *(*IndirectCommandsLayoutNVX)(unsafe.Pointer(&x.ref900bfee5.indirectCommandsLayout))
- x.MaxSequencesCount = (uint32)(x.ref900bfee5.maxSequencesCount)
+ x.SType = (StructureType)(x.refffbe2634.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refffbe2634.pNext))
+ x.LocalDimmingEnable = (Bool32)(x.refffbe2634.localDimmingEnable)
}
-// allocObjectTableCreateInfoNVXMemory allocates memory for type C.VkObjectTableCreateInfoNVX in C.
+// allocPhysicalDeviceFragmentDensityMapFeaturesMemory allocates memory for type C.VkPhysicalDeviceFragmentDensityMapFeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocObjectTableCreateInfoNVXMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfObjectTableCreateInfoNVXValue))
+func allocPhysicalDeviceFragmentDensityMapFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceFragmentDensityMapFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfObjectTableCreateInfoNVXValue = unsafe.Sizeof([1]C.VkObjectTableCreateInfoNVX{})
+const sizeOfPhysicalDeviceFragmentDensityMapFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceFragmentDensityMapFeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ObjectTableCreateInfoNVX) Ref() *C.VkObjectTableCreateInfoNVX {
+func (x *PhysicalDeviceFragmentDensityMapFeatures) Ref() *C.VkPhysicalDeviceFragmentDensityMapFeaturesEXT {
if x == nil {
return nil
}
- return x.refb4a6c9e1
+ return x.reffa0bb2d9
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ObjectTableCreateInfoNVX) Free() {
- if x != nil && x.allocsb4a6c9e1 != nil {
- x.allocsb4a6c9e1.(*cgoAllocMap).Free()
- x.refb4a6c9e1 = nil
+func (x *PhysicalDeviceFragmentDensityMapFeatures) Free() {
+ if x != nil && x.allocsfa0bb2d9 != nil {
+ x.allocsfa0bb2d9.(*cgoAllocMap).Free()
+ x.reffa0bb2d9 = nil
}
}
-// NewObjectTableCreateInfoNVXRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceFragmentDensityMapFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewObjectTableCreateInfoNVXRef(ref unsafe.Pointer) *ObjectTableCreateInfoNVX {
+func NewPhysicalDeviceFragmentDensityMapFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceFragmentDensityMapFeatures {
if ref == nil {
return nil
}
- obj := new(ObjectTableCreateInfoNVX)
- obj.refb4a6c9e1 = (*C.VkObjectTableCreateInfoNVX)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceFragmentDensityMapFeatures)
+ obj.reffa0bb2d9 = (*C.VkPhysicalDeviceFragmentDensityMapFeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ObjectTableCreateInfoNVX) PassRef() (*C.VkObjectTableCreateInfoNVX, *cgoAllocMap) {
+func (x *PhysicalDeviceFragmentDensityMapFeatures) PassRef() (*C.VkPhysicalDeviceFragmentDensityMapFeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refb4a6c9e1 != nil {
- return x.refb4a6c9e1, nil
+ } else if x.reffa0bb2d9 != nil {
+ return x.reffa0bb2d9, nil
}
- memb4a6c9e1 := allocObjectTableCreateInfoNVXMemory(1)
- refb4a6c9e1 := (*C.VkObjectTableCreateInfoNVX)(memb4a6c9e1)
- allocsb4a6c9e1 := new(cgoAllocMap)
- allocsb4a6c9e1.Add(memb4a6c9e1)
+ memfa0bb2d9 := allocPhysicalDeviceFragmentDensityMapFeaturesMemory(1)
+ reffa0bb2d9 := (*C.VkPhysicalDeviceFragmentDensityMapFeaturesEXT)(memfa0bb2d9)
+ allocsfa0bb2d9 := new(cgoAllocMap)
+ allocsfa0bb2d9.Add(memfa0bb2d9)
var csType_allocs *cgoAllocMap
- refb4a6c9e1.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsb4a6c9e1.Borrow(csType_allocs)
+ reffa0bb2d9.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsfa0bb2d9.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refb4a6c9e1.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsb4a6c9e1.Borrow(cpNext_allocs)
-
- var cobjectCount_allocs *cgoAllocMap
- refb4a6c9e1.objectCount, cobjectCount_allocs = (C.uint32_t)(x.ObjectCount), cgoAllocsUnknown
- allocsb4a6c9e1.Borrow(cobjectCount_allocs)
-
- var cpObjectEntryTypes_allocs *cgoAllocMap
- refb4a6c9e1.pObjectEntryTypes, cpObjectEntryTypes_allocs = (*C.VkObjectEntryTypeNVX)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PObjectEntryTypes)).Data)), cgoAllocsUnknown
- allocsb4a6c9e1.Borrow(cpObjectEntryTypes_allocs)
-
- var cpObjectEntryCounts_allocs *cgoAllocMap
- refb4a6c9e1.pObjectEntryCounts, cpObjectEntryCounts_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PObjectEntryCounts)).Data)), cgoAllocsUnknown
- allocsb4a6c9e1.Borrow(cpObjectEntryCounts_allocs)
-
- var cpObjectEntryUsageFlags_allocs *cgoAllocMap
- refb4a6c9e1.pObjectEntryUsageFlags, cpObjectEntryUsageFlags_allocs = (*C.VkObjectEntryUsageFlagsNVX)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PObjectEntryUsageFlags)).Data)), cgoAllocsUnknown
- allocsb4a6c9e1.Borrow(cpObjectEntryUsageFlags_allocs)
-
- var cmaxUniformBuffersPerDescriptor_allocs *cgoAllocMap
- refb4a6c9e1.maxUniformBuffersPerDescriptor, cmaxUniformBuffersPerDescriptor_allocs = (C.uint32_t)(x.MaxUniformBuffersPerDescriptor), cgoAllocsUnknown
- allocsb4a6c9e1.Borrow(cmaxUniformBuffersPerDescriptor_allocs)
-
- var cmaxStorageBuffersPerDescriptor_allocs *cgoAllocMap
- refb4a6c9e1.maxStorageBuffersPerDescriptor, cmaxStorageBuffersPerDescriptor_allocs = (C.uint32_t)(x.MaxStorageBuffersPerDescriptor), cgoAllocsUnknown
- allocsb4a6c9e1.Borrow(cmaxStorageBuffersPerDescriptor_allocs)
+ reffa0bb2d9.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsfa0bb2d9.Borrow(cpNext_allocs)
- var cmaxStorageImagesPerDescriptor_allocs *cgoAllocMap
- refb4a6c9e1.maxStorageImagesPerDescriptor, cmaxStorageImagesPerDescriptor_allocs = (C.uint32_t)(x.MaxStorageImagesPerDescriptor), cgoAllocsUnknown
- allocsb4a6c9e1.Borrow(cmaxStorageImagesPerDescriptor_allocs)
+ var cfragmentDensityMap_allocs *cgoAllocMap
+ reffa0bb2d9.fragmentDensityMap, cfragmentDensityMap_allocs = (C.VkBool32)(x.FragmentDensityMap), cgoAllocsUnknown
+ allocsfa0bb2d9.Borrow(cfragmentDensityMap_allocs)
- var cmaxSampledImagesPerDescriptor_allocs *cgoAllocMap
- refb4a6c9e1.maxSampledImagesPerDescriptor, cmaxSampledImagesPerDescriptor_allocs = (C.uint32_t)(x.MaxSampledImagesPerDescriptor), cgoAllocsUnknown
- allocsb4a6c9e1.Borrow(cmaxSampledImagesPerDescriptor_allocs)
+ var cfragmentDensityMapDynamic_allocs *cgoAllocMap
+ reffa0bb2d9.fragmentDensityMapDynamic, cfragmentDensityMapDynamic_allocs = (C.VkBool32)(x.FragmentDensityMapDynamic), cgoAllocsUnknown
+ allocsfa0bb2d9.Borrow(cfragmentDensityMapDynamic_allocs)
- var cmaxPipelineLayouts_allocs *cgoAllocMap
- refb4a6c9e1.maxPipelineLayouts, cmaxPipelineLayouts_allocs = (C.uint32_t)(x.MaxPipelineLayouts), cgoAllocsUnknown
- allocsb4a6c9e1.Borrow(cmaxPipelineLayouts_allocs)
+ var cfragmentDensityMapNonSubsampledImages_allocs *cgoAllocMap
+ reffa0bb2d9.fragmentDensityMapNonSubsampledImages, cfragmentDensityMapNonSubsampledImages_allocs = (C.VkBool32)(x.FragmentDensityMapNonSubsampledImages), cgoAllocsUnknown
+ allocsfa0bb2d9.Borrow(cfragmentDensityMapNonSubsampledImages_allocs)
- x.refb4a6c9e1 = refb4a6c9e1
- x.allocsb4a6c9e1 = allocsb4a6c9e1
- return refb4a6c9e1, allocsb4a6c9e1
+ x.reffa0bb2d9 = reffa0bb2d9
+ x.allocsfa0bb2d9 = allocsfa0bb2d9
+ return reffa0bb2d9, allocsfa0bb2d9
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ObjectTableCreateInfoNVX) PassValue() (C.VkObjectTableCreateInfoNVX, *cgoAllocMap) {
- if x.refb4a6c9e1 != nil {
- return *x.refb4a6c9e1, nil
+func (x PhysicalDeviceFragmentDensityMapFeatures) PassValue() (C.VkPhysicalDeviceFragmentDensityMapFeaturesEXT, *cgoAllocMap) {
+ if x.reffa0bb2d9 != nil {
+ return *x.reffa0bb2d9, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -28666,106 +55353,100 @@ func (x ObjectTableCreateInfoNVX) PassValue() (C.VkObjectTableCreateInfoNVX, *cg
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ObjectTableCreateInfoNVX) Deref() {
- if x.refb4a6c9e1 == nil {
+func (x *PhysicalDeviceFragmentDensityMapFeatures) Deref() {
+ if x.reffa0bb2d9 == nil {
return
}
- x.SType = (StructureType)(x.refb4a6c9e1.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb4a6c9e1.pNext))
- x.ObjectCount = (uint32)(x.refb4a6c9e1.objectCount)
- hxf5d30cf := (*sliceHeader)(unsafe.Pointer(&x.PObjectEntryTypes))
- hxf5d30cf.Data = unsafe.Pointer(x.refb4a6c9e1.pObjectEntryTypes)
- hxf5d30cf.Cap = 0x7fffffff
- // hxf5d30cf.Len = ?
-
- hxf882e98 := (*sliceHeader)(unsafe.Pointer(&x.PObjectEntryCounts))
- hxf882e98.Data = unsafe.Pointer(x.refb4a6c9e1.pObjectEntryCounts)
- hxf882e98.Cap = 0x7fffffff
- // hxf882e98.Len = ?
-
- hxf992404 := (*sliceHeader)(unsafe.Pointer(&x.PObjectEntryUsageFlags))
- hxf992404.Data = unsafe.Pointer(x.refb4a6c9e1.pObjectEntryUsageFlags)
- hxf992404.Cap = 0x7fffffff
- // hxf992404.Len = ?
-
- x.MaxUniformBuffersPerDescriptor = (uint32)(x.refb4a6c9e1.maxUniformBuffersPerDescriptor)
- x.MaxStorageBuffersPerDescriptor = (uint32)(x.refb4a6c9e1.maxStorageBuffersPerDescriptor)
- x.MaxStorageImagesPerDescriptor = (uint32)(x.refb4a6c9e1.maxStorageImagesPerDescriptor)
- x.MaxSampledImagesPerDescriptor = (uint32)(x.refb4a6c9e1.maxSampledImagesPerDescriptor)
- x.MaxPipelineLayouts = (uint32)(x.refb4a6c9e1.maxPipelineLayouts)
+ x.SType = (StructureType)(x.reffa0bb2d9.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reffa0bb2d9.pNext))
+ x.FragmentDensityMap = (Bool32)(x.reffa0bb2d9.fragmentDensityMap)
+ x.FragmentDensityMapDynamic = (Bool32)(x.reffa0bb2d9.fragmentDensityMapDynamic)
+ x.FragmentDensityMapNonSubsampledImages = (Bool32)(x.reffa0bb2d9.fragmentDensityMapNonSubsampledImages)
}
-// allocObjectTableEntryNVXMemory allocates memory for type C.VkObjectTableEntryNVX in C.
+// allocPhysicalDeviceFragmentDensityMapPropertiesMemory allocates memory for type C.VkPhysicalDeviceFragmentDensityMapPropertiesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocObjectTableEntryNVXMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfObjectTableEntryNVXValue))
+func allocPhysicalDeviceFragmentDensityMapPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceFragmentDensityMapPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfObjectTableEntryNVXValue = unsafe.Sizeof([1]C.VkObjectTableEntryNVX{})
+const sizeOfPhysicalDeviceFragmentDensityMapPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceFragmentDensityMapPropertiesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ObjectTableEntryNVX) Ref() *C.VkObjectTableEntryNVX {
+func (x *PhysicalDeviceFragmentDensityMapProperties) Ref() *C.VkPhysicalDeviceFragmentDensityMapPropertiesEXT {
if x == nil {
return nil
}
- return x.refb8f7ffef
+ return x.ref79e5ca31
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ObjectTableEntryNVX) Free() {
- if x != nil && x.allocsb8f7ffef != nil {
- x.allocsb8f7ffef.(*cgoAllocMap).Free()
- x.refb8f7ffef = nil
+func (x *PhysicalDeviceFragmentDensityMapProperties) Free() {
+ if x != nil && x.allocs79e5ca31 != nil {
+ x.allocs79e5ca31.(*cgoAllocMap).Free()
+ x.ref79e5ca31 = nil
}
}
-// NewObjectTableEntryNVXRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceFragmentDensityMapPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewObjectTableEntryNVXRef(ref unsafe.Pointer) *ObjectTableEntryNVX {
+func NewPhysicalDeviceFragmentDensityMapPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceFragmentDensityMapProperties {
if ref == nil {
return nil
}
- obj := new(ObjectTableEntryNVX)
- obj.refb8f7ffef = (*C.VkObjectTableEntryNVX)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceFragmentDensityMapProperties)
+ obj.ref79e5ca31 = (*C.VkPhysicalDeviceFragmentDensityMapPropertiesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ObjectTableEntryNVX) PassRef() (*C.VkObjectTableEntryNVX, *cgoAllocMap) {
+func (x *PhysicalDeviceFragmentDensityMapProperties) PassRef() (*C.VkPhysicalDeviceFragmentDensityMapPropertiesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refb8f7ffef != nil {
- return x.refb8f7ffef, nil
+ } else if x.ref79e5ca31 != nil {
+ return x.ref79e5ca31, nil
}
- memb8f7ffef := allocObjectTableEntryNVXMemory(1)
- refb8f7ffef := (*C.VkObjectTableEntryNVX)(memb8f7ffef)
- allocsb8f7ffef := new(cgoAllocMap)
- allocsb8f7ffef.Add(memb8f7ffef)
+ mem79e5ca31 := allocPhysicalDeviceFragmentDensityMapPropertiesMemory(1)
+ ref79e5ca31 := (*C.VkPhysicalDeviceFragmentDensityMapPropertiesEXT)(mem79e5ca31)
+ allocs79e5ca31 := new(cgoAllocMap)
+ allocs79e5ca31.Add(mem79e5ca31)
- var c_type_allocs *cgoAllocMap
- refb8f7ffef._type, c_type_allocs = (C.VkObjectEntryTypeNVX)(x.Type), cgoAllocsUnknown
- allocsb8f7ffef.Borrow(c_type_allocs)
+ var csType_allocs *cgoAllocMap
+ ref79e5ca31.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs79e5ca31.Borrow(csType_allocs)
- var cflags_allocs *cgoAllocMap
- refb8f7ffef.flags, cflags_allocs = (C.VkObjectEntryUsageFlagsNVX)(x.Flags), cgoAllocsUnknown
- allocsb8f7ffef.Borrow(cflags_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref79e5ca31.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs79e5ca31.Borrow(cpNext_allocs)
+
+ var cminFragmentDensityTexelSize_allocs *cgoAllocMap
+ ref79e5ca31.minFragmentDensityTexelSize, cminFragmentDensityTexelSize_allocs = x.MinFragmentDensityTexelSize.PassValue()
+ allocs79e5ca31.Borrow(cminFragmentDensityTexelSize_allocs)
+
+ var cmaxFragmentDensityTexelSize_allocs *cgoAllocMap
+ ref79e5ca31.maxFragmentDensityTexelSize, cmaxFragmentDensityTexelSize_allocs = x.MaxFragmentDensityTexelSize.PassValue()
+ allocs79e5ca31.Borrow(cmaxFragmentDensityTexelSize_allocs)
+
+ var cfragmentDensityInvocations_allocs *cgoAllocMap
+ ref79e5ca31.fragmentDensityInvocations, cfragmentDensityInvocations_allocs = (C.VkBool32)(x.FragmentDensityInvocations), cgoAllocsUnknown
+ allocs79e5ca31.Borrow(cfragmentDensityInvocations_allocs)
- x.refb8f7ffef = refb8f7ffef
- x.allocsb8f7ffef = allocsb8f7ffef
- return refb8f7ffef, allocsb8f7ffef
+ x.ref79e5ca31 = ref79e5ca31
+ x.allocs79e5ca31 = allocs79e5ca31
+ return ref79e5ca31, allocs79e5ca31
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ObjectTableEntryNVX) PassValue() (C.VkObjectTableEntryNVX, *cgoAllocMap) {
- if x.refb8f7ffef != nil {
- return *x.refb8f7ffef, nil
+func (x PhysicalDeviceFragmentDensityMapProperties) PassValue() (C.VkPhysicalDeviceFragmentDensityMapPropertiesEXT, *cgoAllocMap) {
+ if x.ref79e5ca31 != nil {
+ return *x.ref79e5ca31, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -28773,89 +55454,92 @@ func (x ObjectTableEntryNVX) PassValue() (C.VkObjectTableEntryNVX, *cgoAllocMap)
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ObjectTableEntryNVX) Deref() {
- if x.refb8f7ffef == nil {
+func (x *PhysicalDeviceFragmentDensityMapProperties) Deref() {
+ if x.ref79e5ca31 == nil {
return
}
- x.Type = (ObjectEntryTypeNVX)(x.refb8f7ffef._type)
- x.Flags = (ObjectEntryUsageFlagsNVX)(x.refb8f7ffef.flags)
+ x.SType = (StructureType)(x.ref79e5ca31.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref79e5ca31.pNext))
+ x.MinFragmentDensityTexelSize = *NewExtent2DRef(unsafe.Pointer(&x.ref79e5ca31.minFragmentDensityTexelSize))
+ x.MaxFragmentDensityTexelSize = *NewExtent2DRef(unsafe.Pointer(&x.ref79e5ca31.maxFragmentDensityTexelSize))
+ x.FragmentDensityInvocations = (Bool32)(x.ref79e5ca31.fragmentDensityInvocations)
}
-// allocObjectTablePipelineEntryNVXMemory allocates memory for type C.VkObjectTablePipelineEntryNVX in C.
+// allocRenderPassFragmentDensityMapCreateInfoMemory allocates memory for type C.VkRenderPassFragmentDensityMapCreateInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocObjectTablePipelineEntryNVXMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfObjectTablePipelineEntryNVXValue))
+func allocRenderPassFragmentDensityMapCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfRenderPassFragmentDensityMapCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfObjectTablePipelineEntryNVXValue = unsafe.Sizeof([1]C.VkObjectTablePipelineEntryNVX{})
+const sizeOfRenderPassFragmentDensityMapCreateInfoValue = unsafe.Sizeof([1]C.VkRenderPassFragmentDensityMapCreateInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ObjectTablePipelineEntryNVX) Ref() *C.VkObjectTablePipelineEntryNVX {
+func (x *RenderPassFragmentDensityMapCreateInfo) Ref() *C.VkRenderPassFragmentDensityMapCreateInfoEXT {
if x == nil {
return nil
}
- return x.ref8112859b
+ return x.ref76b25671
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ObjectTablePipelineEntryNVX) Free() {
- if x != nil && x.allocs8112859b != nil {
- x.allocs8112859b.(*cgoAllocMap).Free()
- x.ref8112859b = nil
+func (x *RenderPassFragmentDensityMapCreateInfo) Free() {
+ if x != nil && x.allocs76b25671 != nil {
+ x.allocs76b25671.(*cgoAllocMap).Free()
+ x.ref76b25671 = nil
}
}
-// NewObjectTablePipelineEntryNVXRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewRenderPassFragmentDensityMapCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewObjectTablePipelineEntryNVXRef(ref unsafe.Pointer) *ObjectTablePipelineEntryNVX {
+func NewRenderPassFragmentDensityMapCreateInfoRef(ref unsafe.Pointer) *RenderPassFragmentDensityMapCreateInfo {
if ref == nil {
return nil
}
- obj := new(ObjectTablePipelineEntryNVX)
- obj.ref8112859b = (*C.VkObjectTablePipelineEntryNVX)(unsafe.Pointer(ref))
+ obj := new(RenderPassFragmentDensityMapCreateInfo)
+ obj.ref76b25671 = (*C.VkRenderPassFragmentDensityMapCreateInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ObjectTablePipelineEntryNVX) PassRef() (*C.VkObjectTablePipelineEntryNVX, *cgoAllocMap) {
+func (x *RenderPassFragmentDensityMapCreateInfo) PassRef() (*C.VkRenderPassFragmentDensityMapCreateInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref8112859b != nil {
- return x.ref8112859b, nil
+ } else if x.ref76b25671 != nil {
+ return x.ref76b25671, nil
}
- mem8112859b := allocObjectTablePipelineEntryNVXMemory(1)
- ref8112859b := (*C.VkObjectTablePipelineEntryNVX)(mem8112859b)
- allocs8112859b := new(cgoAllocMap)
- allocs8112859b.Add(mem8112859b)
+ mem76b25671 := allocRenderPassFragmentDensityMapCreateInfoMemory(1)
+ ref76b25671 := (*C.VkRenderPassFragmentDensityMapCreateInfoEXT)(mem76b25671)
+ allocs76b25671 := new(cgoAllocMap)
+ allocs76b25671.Add(mem76b25671)
- var c_type_allocs *cgoAllocMap
- ref8112859b._type, c_type_allocs = (C.VkObjectEntryTypeNVX)(x.Type), cgoAllocsUnknown
- allocs8112859b.Borrow(c_type_allocs)
+ var csType_allocs *cgoAllocMap
+ ref76b25671.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs76b25671.Borrow(csType_allocs)
- var cflags_allocs *cgoAllocMap
- ref8112859b.flags, cflags_allocs = (C.VkObjectEntryUsageFlagsNVX)(x.Flags), cgoAllocsUnknown
- allocs8112859b.Borrow(cflags_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref76b25671.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs76b25671.Borrow(cpNext_allocs)
- var cpipeline_allocs *cgoAllocMap
- ref8112859b.pipeline, cpipeline_allocs = *(*C.VkPipeline)(unsafe.Pointer(&x.Pipeline)), cgoAllocsUnknown
- allocs8112859b.Borrow(cpipeline_allocs)
+ var cfragmentDensityMapAttachment_allocs *cgoAllocMap
+ ref76b25671.fragmentDensityMapAttachment, cfragmentDensityMapAttachment_allocs = x.FragmentDensityMapAttachment.PassValue()
+ allocs76b25671.Borrow(cfragmentDensityMapAttachment_allocs)
- x.ref8112859b = ref8112859b
- x.allocs8112859b = allocs8112859b
- return ref8112859b, allocs8112859b
+ x.ref76b25671 = ref76b25671
+ x.allocs76b25671 = allocs76b25671
+ return ref76b25671, allocs76b25671
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ObjectTablePipelineEntryNVX) PassValue() (C.VkObjectTablePipelineEntryNVX, *cgoAllocMap) {
- if x.ref8112859b != nil {
- return *x.ref8112859b, nil
+func (x RenderPassFragmentDensityMapCreateInfo) PassValue() (C.VkRenderPassFragmentDensityMapCreateInfoEXT, *cgoAllocMap) {
+ if x.ref76b25671 != nil {
+ return *x.ref76b25671, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -28863,94 +55547,94 @@ func (x ObjectTablePipelineEntryNVX) PassValue() (C.VkObjectTablePipelineEntryNV
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ObjectTablePipelineEntryNVX) Deref() {
- if x.ref8112859b == nil {
+func (x *RenderPassFragmentDensityMapCreateInfo) Deref() {
+ if x.ref76b25671 == nil {
return
}
- x.Type = (ObjectEntryTypeNVX)(x.ref8112859b._type)
- x.Flags = (ObjectEntryUsageFlagsNVX)(x.ref8112859b.flags)
- x.Pipeline = *(*Pipeline)(unsafe.Pointer(&x.ref8112859b.pipeline))
+ x.SType = (StructureType)(x.ref76b25671.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref76b25671.pNext))
+ x.FragmentDensityMapAttachment = *NewAttachmentReferenceRef(unsafe.Pointer(&x.ref76b25671.fragmentDensityMapAttachment))
}
-// allocObjectTableDescriptorSetEntryNVXMemory allocates memory for type C.VkObjectTableDescriptorSetEntryNVX in C.
+// allocPhysicalDeviceShaderCoreProperties2AMDMemory allocates memory for type C.VkPhysicalDeviceShaderCoreProperties2AMD in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocObjectTableDescriptorSetEntryNVXMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfObjectTableDescriptorSetEntryNVXValue))
+func allocPhysicalDeviceShaderCoreProperties2AMDMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceShaderCoreProperties2AMDValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfObjectTableDescriptorSetEntryNVXValue = unsafe.Sizeof([1]C.VkObjectTableDescriptorSetEntryNVX{})
+const sizeOfPhysicalDeviceShaderCoreProperties2AMDValue = unsafe.Sizeof([1]C.VkPhysicalDeviceShaderCoreProperties2AMD{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ObjectTableDescriptorSetEntryNVX) Ref() *C.VkObjectTableDescriptorSetEntryNVX {
+func (x *PhysicalDeviceShaderCoreProperties2AMD) Ref() *C.VkPhysicalDeviceShaderCoreProperties2AMD {
if x == nil {
return nil
}
- return x.ref6fc0d42f
+ return x.ref7be3d4c4
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ObjectTableDescriptorSetEntryNVX) Free() {
- if x != nil && x.allocs6fc0d42f != nil {
- x.allocs6fc0d42f.(*cgoAllocMap).Free()
- x.ref6fc0d42f = nil
+func (x *PhysicalDeviceShaderCoreProperties2AMD) Free() {
+ if x != nil && x.allocs7be3d4c4 != nil {
+ x.allocs7be3d4c4.(*cgoAllocMap).Free()
+ x.ref7be3d4c4 = nil
}
}
-// NewObjectTableDescriptorSetEntryNVXRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceShaderCoreProperties2AMDRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewObjectTableDescriptorSetEntryNVXRef(ref unsafe.Pointer) *ObjectTableDescriptorSetEntryNVX {
+func NewPhysicalDeviceShaderCoreProperties2AMDRef(ref unsafe.Pointer) *PhysicalDeviceShaderCoreProperties2AMD {
if ref == nil {
return nil
}
- obj := new(ObjectTableDescriptorSetEntryNVX)
- obj.ref6fc0d42f = (*C.VkObjectTableDescriptorSetEntryNVX)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceShaderCoreProperties2AMD)
+ obj.ref7be3d4c4 = (*C.VkPhysicalDeviceShaderCoreProperties2AMD)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ObjectTableDescriptorSetEntryNVX) PassRef() (*C.VkObjectTableDescriptorSetEntryNVX, *cgoAllocMap) {
+func (x *PhysicalDeviceShaderCoreProperties2AMD) PassRef() (*C.VkPhysicalDeviceShaderCoreProperties2AMD, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref6fc0d42f != nil {
- return x.ref6fc0d42f, nil
+ } else if x.ref7be3d4c4 != nil {
+ return x.ref7be3d4c4, nil
}
- mem6fc0d42f := allocObjectTableDescriptorSetEntryNVXMemory(1)
- ref6fc0d42f := (*C.VkObjectTableDescriptorSetEntryNVX)(mem6fc0d42f)
- allocs6fc0d42f := new(cgoAllocMap)
- allocs6fc0d42f.Add(mem6fc0d42f)
+ mem7be3d4c4 := allocPhysicalDeviceShaderCoreProperties2AMDMemory(1)
+ ref7be3d4c4 := (*C.VkPhysicalDeviceShaderCoreProperties2AMD)(mem7be3d4c4)
+ allocs7be3d4c4 := new(cgoAllocMap)
+ allocs7be3d4c4.Add(mem7be3d4c4)
- var c_type_allocs *cgoAllocMap
- ref6fc0d42f._type, c_type_allocs = (C.VkObjectEntryTypeNVX)(x.Type), cgoAllocsUnknown
- allocs6fc0d42f.Borrow(c_type_allocs)
+ var csType_allocs *cgoAllocMap
+ ref7be3d4c4.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs7be3d4c4.Borrow(csType_allocs)
- var cflags_allocs *cgoAllocMap
- ref6fc0d42f.flags, cflags_allocs = (C.VkObjectEntryUsageFlagsNVX)(x.Flags), cgoAllocsUnknown
- allocs6fc0d42f.Borrow(cflags_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref7be3d4c4.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs7be3d4c4.Borrow(cpNext_allocs)
- var cpipelineLayout_allocs *cgoAllocMap
- ref6fc0d42f.pipelineLayout, cpipelineLayout_allocs = *(*C.VkPipelineLayout)(unsafe.Pointer(&x.PipelineLayout)), cgoAllocsUnknown
- allocs6fc0d42f.Borrow(cpipelineLayout_allocs)
+ var cshaderCoreFeatures_allocs *cgoAllocMap
+ ref7be3d4c4.shaderCoreFeatures, cshaderCoreFeatures_allocs = (C.VkShaderCorePropertiesFlagsAMD)(x.ShaderCoreFeatures), cgoAllocsUnknown
+ allocs7be3d4c4.Borrow(cshaderCoreFeatures_allocs)
- var cdescriptorSet_allocs *cgoAllocMap
- ref6fc0d42f.descriptorSet, cdescriptorSet_allocs = *(*C.VkDescriptorSet)(unsafe.Pointer(&x.DescriptorSet)), cgoAllocsUnknown
- allocs6fc0d42f.Borrow(cdescriptorSet_allocs)
+ var cactiveComputeUnitCount_allocs *cgoAllocMap
+ ref7be3d4c4.activeComputeUnitCount, cactiveComputeUnitCount_allocs = (C.uint32_t)(x.ActiveComputeUnitCount), cgoAllocsUnknown
+ allocs7be3d4c4.Borrow(cactiveComputeUnitCount_allocs)
- x.ref6fc0d42f = ref6fc0d42f
- x.allocs6fc0d42f = allocs6fc0d42f
- return ref6fc0d42f, allocs6fc0d42f
+ x.ref7be3d4c4 = ref7be3d4c4
+ x.allocs7be3d4c4 = allocs7be3d4c4
+ return ref7be3d4c4, allocs7be3d4c4
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ObjectTableDescriptorSetEntryNVX) PassValue() (C.VkObjectTableDescriptorSetEntryNVX, *cgoAllocMap) {
- if x.ref6fc0d42f != nil {
- return *x.ref6fc0d42f, nil
+func (x PhysicalDeviceShaderCoreProperties2AMD) PassValue() (C.VkPhysicalDeviceShaderCoreProperties2AMD, *cgoAllocMap) {
+ if x.ref7be3d4c4 != nil {
+ return *x.ref7be3d4c4, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -28958,91 +55642,91 @@ func (x ObjectTableDescriptorSetEntryNVX) PassValue() (C.VkObjectTableDescriptor
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ObjectTableDescriptorSetEntryNVX) Deref() {
- if x.ref6fc0d42f == nil {
+func (x *PhysicalDeviceShaderCoreProperties2AMD) Deref() {
+ if x.ref7be3d4c4 == nil {
return
}
- x.Type = (ObjectEntryTypeNVX)(x.ref6fc0d42f._type)
- x.Flags = (ObjectEntryUsageFlagsNVX)(x.ref6fc0d42f.flags)
- x.PipelineLayout = *(*PipelineLayout)(unsafe.Pointer(&x.ref6fc0d42f.pipelineLayout))
- x.DescriptorSet = *(*DescriptorSet)(unsafe.Pointer(&x.ref6fc0d42f.descriptorSet))
+ x.SType = (StructureType)(x.ref7be3d4c4.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref7be3d4c4.pNext))
+ x.ShaderCoreFeatures = (ShaderCorePropertiesFlagsAMD)(x.ref7be3d4c4.shaderCoreFeatures)
+ x.ActiveComputeUnitCount = (uint32)(x.ref7be3d4c4.activeComputeUnitCount)
}
-// allocObjectTableVertexBufferEntryNVXMemory allocates memory for type C.VkObjectTableVertexBufferEntryNVX in C.
+// allocPhysicalDeviceCoherentMemoryFeaturesAMDMemory allocates memory for type C.VkPhysicalDeviceCoherentMemoryFeaturesAMD in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocObjectTableVertexBufferEntryNVXMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfObjectTableVertexBufferEntryNVXValue))
+func allocPhysicalDeviceCoherentMemoryFeaturesAMDMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceCoherentMemoryFeaturesAMDValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfObjectTableVertexBufferEntryNVXValue = unsafe.Sizeof([1]C.VkObjectTableVertexBufferEntryNVX{})
+const sizeOfPhysicalDeviceCoherentMemoryFeaturesAMDValue = unsafe.Sizeof([1]C.VkPhysicalDeviceCoherentMemoryFeaturesAMD{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ObjectTableVertexBufferEntryNVX) Ref() *C.VkObjectTableVertexBufferEntryNVX {
+func (x *PhysicalDeviceCoherentMemoryFeaturesAMD) Ref() *C.VkPhysicalDeviceCoherentMemoryFeaturesAMD {
if x == nil {
return nil
}
- return x.refe8a5908b
+ return x.ref34cb87b4
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ObjectTableVertexBufferEntryNVX) Free() {
- if x != nil && x.allocse8a5908b != nil {
- x.allocse8a5908b.(*cgoAllocMap).Free()
- x.refe8a5908b = nil
+func (x *PhysicalDeviceCoherentMemoryFeaturesAMD) Free() {
+ if x != nil && x.allocs34cb87b4 != nil {
+ x.allocs34cb87b4.(*cgoAllocMap).Free()
+ x.ref34cb87b4 = nil
}
}
-// NewObjectTableVertexBufferEntryNVXRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceCoherentMemoryFeaturesAMDRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewObjectTableVertexBufferEntryNVXRef(ref unsafe.Pointer) *ObjectTableVertexBufferEntryNVX {
+func NewPhysicalDeviceCoherentMemoryFeaturesAMDRef(ref unsafe.Pointer) *PhysicalDeviceCoherentMemoryFeaturesAMD {
if ref == nil {
return nil
}
- obj := new(ObjectTableVertexBufferEntryNVX)
- obj.refe8a5908b = (*C.VkObjectTableVertexBufferEntryNVX)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceCoherentMemoryFeaturesAMD)
+ obj.ref34cb87b4 = (*C.VkPhysicalDeviceCoherentMemoryFeaturesAMD)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ObjectTableVertexBufferEntryNVX) PassRef() (*C.VkObjectTableVertexBufferEntryNVX, *cgoAllocMap) {
+func (x *PhysicalDeviceCoherentMemoryFeaturesAMD) PassRef() (*C.VkPhysicalDeviceCoherentMemoryFeaturesAMD, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refe8a5908b != nil {
- return x.refe8a5908b, nil
+ } else if x.ref34cb87b4 != nil {
+ return x.ref34cb87b4, nil
}
- meme8a5908b := allocObjectTableVertexBufferEntryNVXMemory(1)
- refe8a5908b := (*C.VkObjectTableVertexBufferEntryNVX)(meme8a5908b)
- allocse8a5908b := new(cgoAllocMap)
- allocse8a5908b.Add(meme8a5908b)
+ mem34cb87b4 := allocPhysicalDeviceCoherentMemoryFeaturesAMDMemory(1)
+ ref34cb87b4 := (*C.VkPhysicalDeviceCoherentMemoryFeaturesAMD)(mem34cb87b4)
+ allocs34cb87b4 := new(cgoAllocMap)
+ allocs34cb87b4.Add(mem34cb87b4)
- var c_type_allocs *cgoAllocMap
- refe8a5908b._type, c_type_allocs = (C.VkObjectEntryTypeNVX)(x.Type), cgoAllocsUnknown
- allocse8a5908b.Borrow(c_type_allocs)
+ var csType_allocs *cgoAllocMap
+ ref34cb87b4.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs34cb87b4.Borrow(csType_allocs)
- var cflags_allocs *cgoAllocMap
- refe8a5908b.flags, cflags_allocs = (C.VkObjectEntryUsageFlagsNVX)(x.Flags), cgoAllocsUnknown
- allocse8a5908b.Borrow(cflags_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref34cb87b4.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs34cb87b4.Borrow(cpNext_allocs)
- var cbuffer_allocs *cgoAllocMap
- refe8a5908b.buffer, cbuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.Buffer)), cgoAllocsUnknown
- allocse8a5908b.Borrow(cbuffer_allocs)
+ var cdeviceCoherentMemory_allocs *cgoAllocMap
+ ref34cb87b4.deviceCoherentMemory, cdeviceCoherentMemory_allocs = (C.VkBool32)(x.DeviceCoherentMemory), cgoAllocsUnknown
+ allocs34cb87b4.Borrow(cdeviceCoherentMemory_allocs)
- x.refe8a5908b = refe8a5908b
- x.allocse8a5908b = allocse8a5908b
- return refe8a5908b, allocse8a5908b
+ x.ref34cb87b4 = ref34cb87b4
+ x.allocs34cb87b4 = allocs34cb87b4
+ return ref34cb87b4, allocs34cb87b4
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ObjectTableVertexBufferEntryNVX) PassValue() (C.VkObjectTableVertexBufferEntryNVX, *cgoAllocMap) {
- if x.refe8a5908b != nil {
- return *x.refe8a5908b, nil
+func (x PhysicalDeviceCoherentMemoryFeaturesAMD) PassValue() (C.VkPhysicalDeviceCoherentMemoryFeaturesAMD, *cgoAllocMap) {
+ if x.ref34cb87b4 != nil {
+ return *x.ref34cb87b4, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -29050,94 +55734,94 @@ func (x ObjectTableVertexBufferEntryNVX) PassValue() (C.VkObjectTableVertexBuffe
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ObjectTableVertexBufferEntryNVX) Deref() {
- if x.refe8a5908b == nil {
+func (x *PhysicalDeviceCoherentMemoryFeaturesAMD) Deref() {
+ if x.ref34cb87b4 == nil {
return
}
- x.Type = (ObjectEntryTypeNVX)(x.refe8a5908b._type)
- x.Flags = (ObjectEntryUsageFlagsNVX)(x.refe8a5908b.flags)
- x.Buffer = *(*Buffer)(unsafe.Pointer(&x.refe8a5908b.buffer))
+ x.SType = (StructureType)(x.ref34cb87b4.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref34cb87b4.pNext))
+ x.DeviceCoherentMemory = (Bool32)(x.ref34cb87b4.deviceCoherentMemory)
}
-// allocObjectTableIndexBufferEntryNVXMemory allocates memory for type C.VkObjectTableIndexBufferEntryNVX in C.
+// allocPhysicalDeviceShaderImageAtomicInt64FeaturesMemory allocates memory for type C.VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocObjectTableIndexBufferEntryNVXMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfObjectTableIndexBufferEntryNVXValue))
+func allocPhysicalDeviceShaderImageAtomicInt64FeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceShaderImageAtomicInt64FeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfObjectTableIndexBufferEntryNVXValue = unsafe.Sizeof([1]C.VkObjectTableIndexBufferEntryNVX{})
+const sizeOfPhysicalDeviceShaderImageAtomicInt64FeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ObjectTableIndexBufferEntryNVX) Ref() *C.VkObjectTableIndexBufferEntryNVX {
+func (x *PhysicalDeviceShaderImageAtomicInt64Features) Ref() *C.VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT {
if x == nil {
return nil
}
- return x.ref58a08650
+ return x.ref1b0fbd
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ObjectTableIndexBufferEntryNVX) Free() {
- if x != nil && x.allocs58a08650 != nil {
- x.allocs58a08650.(*cgoAllocMap).Free()
- x.ref58a08650 = nil
+func (x *PhysicalDeviceShaderImageAtomicInt64Features) Free() {
+ if x != nil && x.allocs1b0fbd != nil {
+ x.allocs1b0fbd.(*cgoAllocMap).Free()
+ x.ref1b0fbd = nil
}
}
-// NewObjectTableIndexBufferEntryNVXRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceShaderImageAtomicInt64FeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewObjectTableIndexBufferEntryNVXRef(ref unsafe.Pointer) *ObjectTableIndexBufferEntryNVX {
+func NewPhysicalDeviceShaderImageAtomicInt64FeaturesRef(ref unsafe.Pointer) *PhysicalDeviceShaderImageAtomicInt64Features {
if ref == nil {
return nil
}
- obj := new(ObjectTableIndexBufferEntryNVX)
- obj.ref58a08650 = (*C.VkObjectTableIndexBufferEntryNVX)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceShaderImageAtomicInt64Features)
+ obj.ref1b0fbd = (*C.VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ObjectTableIndexBufferEntryNVX) PassRef() (*C.VkObjectTableIndexBufferEntryNVX, *cgoAllocMap) {
+func (x *PhysicalDeviceShaderImageAtomicInt64Features) PassRef() (*C.VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref58a08650 != nil {
- return x.ref58a08650, nil
+ } else if x.ref1b0fbd != nil {
+ return x.ref1b0fbd, nil
}
- mem58a08650 := allocObjectTableIndexBufferEntryNVXMemory(1)
- ref58a08650 := (*C.VkObjectTableIndexBufferEntryNVX)(mem58a08650)
- allocs58a08650 := new(cgoAllocMap)
- allocs58a08650.Add(mem58a08650)
+ mem1b0fbd := allocPhysicalDeviceShaderImageAtomicInt64FeaturesMemory(1)
+ ref1b0fbd := (*C.VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT)(mem1b0fbd)
+ allocs1b0fbd := new(cgoAllocMap)
+ allocs1b0fbd.Add(mem1b0fbd)
- var c_type_allocs *cgoAllocMap
- ref58a08650._type, c_type_allocs = (C.VkObjectEntryTypeNVX)(x.Type), cgoAllocsUnknown
- allocs58a08650.Borrow(c_type_allocs)
+ var csType_allocs *cgoAllocMap
+ ref1b0fbd.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs1b0fbd.Borrow(csType_allocs)
- var cflags_allocs *cgoAllocMap
- ref58a08650.flags, cflags_allocs = (C.VkObjectEntryUsageFlagsNVX)(x.Flags), cgoAllocsUnknown
- allocs58a08650.Borrow(cflags_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref1b0fbd.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs1b0fbd.Borrow(cpNext_allocs)
- var cbuffer_allocs *cgoAllocMap
- ref58a08650.buffer, cbuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.Buffer)), cgoAllocsUnknown
- allocs58a08650.Borrow(cbuffer_allocs)
+ var cshaderImageInt64Atomics_allocs *cgoAllocMap
+ ref1b0fbd.shaderImageInt64Atomics, cshaderImageInt64Atomics_allocs = (C.VkBool32)(x.ShaderImageInt64Atomics), cgoAllocsUnknown
+ allocs1b0fbd.Borrow(cshaderImageInt64Atomics_allocs)
- var cindexType_allocs *cgoAllocMap
- ref58a08650.indexType, cindexType_allocs = (C.VkIndexType)(x.IndexType), cgoAllocsUnknown
- allocs58a08650.Borrow(cindexType_allocs)
+ var csparseImageInt64Atomics_allocs *cgoAllocMap
+ ref1b0fbd.sparseImageInt64Atomics, csparseImageInt64Atomics_allocs = (C.VkBool32)(x.SparseImageInt64Atomics), cgoAllocsUnknown
+ allocs1b0fbd.Borrow(csparseImageInt64Atomics_allocs)
- x.ref58a08650 = ref58a08650
- x.allocs58a08650 = allocs58a08650
- return ref58a08650, allocs58a08650
+ x.ref1b0fbd = ref1b0fbd
+ x.allocs1b0fbd = allocs1b0fbd
+ return ref1b0fbd, allocs1b0fbd
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ObjectTableIndexBufferEntryNVX) PassValue() (C.VkObjectTableIndexBufferEntryNVX, *cgoAllocMap) {
- if x.ref58a08650 != nil {
- return *x.ref58a08650, nil
+func (x PhysicalDeviceShaderImageAtomicInt64Features) PassValue() (C.VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT, *cgoAllocMap) {
+ if x.ref1b0fbd != nil {
+ return *x.ref1b0fbd, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -29145,95 +55829,95 @@ func (x ObjectTableIndexBufferEntryNVX) PassValue() (C.VkObjectTableIndexBufferE
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ObjectTableIndexBufferEntryNVX) Deref() {
- if x.ref58a08650 == nil {
+func (x *PhysicalDeviceShaderImageAtomicInt64Features) Deref() {
+ if x.ref1b0fbd == nil {
return
}
- x.Type = (ObjectEntryTypeNVX)(x.ref58a08650._type)
- x.Flags = (ObjectEntryUsageFlagsNVX)(x.ref58a08650.flags)
- x.Buffer = *(*Buffer)(unsafe.Pointer(&x.ref58a08650.buffer))
- x.IndexType = (IndexType)(x.ref58a08650.indexType)
+ x.SType = (StructureType)(x.ref1b0fbd.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref1b0fbd.pNext))
+ x.ShaderImageInt64Atomics = (Bool32)(x.ref1b0fbd.shaderImageInt64Atomics)
+ x.SparseImageInt64Atomics = (Bool32)(x.ref1b0fbd.sparseImageInt64Atomics)
}
-// allocObjectTablePushConstantEntryNVXMemory allocates memory for type C.VkObjectTablePushConstantEntryNVX in C.
+// allocPhysicalDeviceMemoryBudgetPropertiesMemory allocates memory for type C.VkPhysicalDeviceMemoryBudgetPropertiesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocObjectTablePushConstantEntryNVXMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfObjectTablePushConstantEntryNVXValue))
+func allocPhysicalDeviceMemoryBudgetPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceMemoryBudgetPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfObjectTablePushConstantEntryNVXValue = unsafe.Sizeof([1]C.VkObjectTablePushConstantEntryNVX{})
+const sizeOfPhysicalDeviceMemoryBudgetPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceMemoryBudgetPropertiesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ObjectTablePushConstantEntryNVX) Ref() *C.VkObjectTablePushConstantEntryNVX {
+func (x *PhysicalDeviceMemoryBudgetProperties) Ref() *C.VkPhysicalDeviceMemoryBudgetPropertiesEXT {
if x == nil {
return nil
}
- return x.ref8c8421e0
+ return x.refa7406c48
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ObjectTablePushConstantEntryNVX) Free() {
- if x != nil && x.allocs8c8421e0 != nil {
- x.allocs8c8421e0.(*cgoAllocMap).Free()
- x.ref8c8421e0 = nil
+func (x *PhysicalDeviceMemoryBudgetProperties) Free() {
+ if x != nil && x.allocsa7406c48 != nil {
+ x.allocsa7406c48.(*cgoAllocMap).Free()
+ x.refa7406c48 = nil
}
}
-// NewObjectTablePushConstantEntryNVXRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceMemoryBudgetPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewObjectTablePushConstantEntryNVXRef(ref unsafe.Pointer) *ObjectTablePushConstantEntryNVX {
+func NewPhysicalDeviceMemoryBudgetPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceMemoryBudgetProperties {
if ref == nil {
return nil
}
- obj := new(ObjectTablePushConstantEntryNVX)
- obj.ref8c8421e0 = (*C.VkObjectTablePushConstantEntryNVX)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceMemoryBudgetProperties)
+ obj.refa7406c48 = (*C.VkPhysicalDeviceMemoryBudgetPropertiesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ObjectTablePushConstantEntryNVX) PassRef() (*C.VkObjectTablePushConstantEntryNVX, *cgoAllocMap) {
+func (x *PhysicalDeviceMemoryBudgetProperties) PassRef() (*C.VkPhysicalDeviceMemoryBudgetPropertiesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref8c8421e0 != nil {
- return x.ref8c8421e0, nil
+ } else if x.refa7406c48 != nil {
+ return x.refa7406c48, nil
}
- mem8c8421e0 := allocObjectTablePushConstantEntryNVXMemory(1)
- ref8c8421e0 := (*C.VkObjectTablePushConstantEntryNVX)(mem8c8421e0)
- allocs8c8421e0 := new(cgoAllocMap)
- allocs8c8421e0.Add(mem8c8421e0)
+ mema7406c48 := allocPhysicalDeviceMemoryBudgetPropertiesMemory(1)
+ refa7406c48 := (*C.VkPhysicalDeviceMemoryBudgetPropertiesEXT)(mema7406c48)
+ allocsa7406c48 := new(cgoAllocMap)
+ allocsa7406c48.Add(mema7406c48)
- var c_type_allocs *cgoAllocMap
- ref8c8421e0._type, c_type_allocs = (C.VkObjectEntryTypeNVX)(x.Type), cgoAllocsUnknown
- allocs8c8421e0.Borrow(c_type_allocs)
+ var csType_allocs *cgoAllocMap
+ refa7406c48.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsa7406c48.Borrow(csType_allocs)
- var cflags_allocs *cgoAllocMap
- ref8c8421e0.flags, cflags_allocs = (C.VkObjectEntryUsageFlagsNVX)(x.Flags), cgoAllocsUnknown
- allocs8c8421e0.Borrow(cflags_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refa7406c48.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsa7406c48.Borrow(cpNext_allocs)
- var cpipelineLayout_allocs *cgoAllocMap
- ref8c8421e0.pipelineLayout, cpipelineLayout_allocs = *(*C.VkPipelineLayout)(unsafe.Pointer(&x.PipelineLayout)), cgoAllocsUnknown
- allocs8c8421e0.Borrow(cpipelineLayout_allocs)
+ var cheapBudget_allocs *cgoAllocMap
+ refa7406c48.heapBudget, cheapBudget_allocs = *(*[16]C.VkDeviceSize)(unsafe.Pointer(&x.HeapBudget)), cgoAllocsUnknown
+ allocsa7406c48.Borrow(cheapBudget_allocs)
- var cstageFlags_allocs *cgoAllocMap
- ref8c8421e0.stageFlags, cstageFlags_allocs = (C.VkShaderStageFlags)(x.StageFlags), cgoAllocsUnknown
- allocs8c8421e0.Borrow(cstageFlags_allocs)
+ var cheapUsage_allocs *cgoAllocMap
+ refa7406c48.heapUsage, cheapUsage_allocs = *(*[16]C.VkDeviceSize)(unsafe.Pointer(&x.HeapUsage)), cgoAllocsUnknown
+ allocsa7406c48.Borrow(cheapUsage_allocs)
- x.ref8c8421e0 = ref8c8421e0
- x.allocs8c8421e0 = allocs8c8421e0
- return ref8c8421e0, allocs8c8421e0
+ x.refa7406c48 = refa7406c48
+ x.allocsa7406c48 = allocsa7406c48
+ return refa7406c48, allocsa7406c48
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ObjectTablePushConstantEntryNVX) PassValue() (C.VkObjectTablePushConstantEntryNVX, *cgoAllocMap) {
- if x.ref8c8421e0 != nil {
- return *x.ref8c8421e0, nil
+func (x PhysicalDeviceMemoryBudgetProperties) PassValue() (C.VkPhysicalDeviceMemoryBudgetPropertiesEXT, *cgoAllocMap) {
+ if x.refa7406c48 != nil {
+ return *x.refa7406c48, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -29241,87 +55925,91 @@ func (x ObjectTablePushConstantEntryNVX) PassValue() (C.VkObjectTablePushConstan
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ObjectTablePushConstantEntryNVX) Deref() {
- if x.ref8c8421e0 == nil {
+func (x *PhysicalDeviceMemoryBudgetProperties) Deref() {
+ if x.refa7406c48 == nil {
return
}
- x.Type = (ObjectEntryTypeNVX)(x.ref8c8421e0._type)
- x.Flags = (ObjectEntryUsageFlagsNVX)(x.ref8c8421e0.flags)
- x.PipelineLayout = *(*PipelineLayout)(unsafe.Pointer(&x.ref8c8421e0.pipelineLayout))
- x.StageFlags = (ShaderStageFlags)(x.ref8c8421e0.stageFlags)
+ x.SType = (StructureType)(x.refa7406c48.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa7406c48.pNext))
+ x.HeapBudget = *(*[16]DeviceSize)(unsafe.Pointer(&x.refa7406c48.heapBudget))
+ x.HeapUsage = *(*[16]DeviceSize)(unsafe.Pointer(&x.refa7406c48.heapUsage))
}
-// allocViewportWScalingNVMemory allocates memory for type C.VkViewportWScalingNV in C.
+// allocPhysicalDeviceMemoryPriorityFeaturesMemory allocates memory for type C.VkPhysicalDeviceMemoryPriorityFeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocViewportWScalingNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfViewportWScalingNVValue))
+func allocPhysicalDeviceMemoryPriorityFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceMemoryPriorityFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfViewportWScalingNVValue = unsafe.Sizeof([1]C.VkViewportWScalingNV{})
+const sizeOfPhysicalDeviceMemoryPriorityFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceMemoryPriorityFeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ViewportWScalingNV) Ref() *C.VkViewportWScalingNV {
+func (x *PhysicalDeviceMemoryPriorityFeatures) Ref() *C.VkPhysicalDeviceMemoryPriorityFeaturesEXT {
if x == nil {
return nil
}
- return x.ref7ea4590f
+ return x.ref24f8641c
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ViewportWScalingNV) Free() {
- if x != nil && x.allocs7ea4590f != nil {
- x.allocs7ea4590f.(*cgoAllocMap).Free()
- x.ref7ea4590f = nil
+func (x *PhysicalDeviceMemoryPriorityFeatures) Free() {
+ if x != nil && x.allocs24f8641c != nil {
+ x.allocs24f8641c.(*cgoAllocMap).Free()
+ x.ref24f8641c = nil
}
}
-// NewViewportWScalingNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceMemoryPriorityFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewViewportWScalingNVRef(ref unsafe.Pointer) *ViewportWScalingNV {
+func NewPhysicalDeviceMemoryPriorityFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceMemoryPriorityFeatures {
if ref == nil {
return nil
}
- obj := new(ViewportWScalingNV)
- obj.ref7ea4590f = (*C.VkViewportWScalingNV)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceMemoryPriorityFeatures)
+ obj.ref24f8641c = (*C.VkPhysicalDeviceMemoryPriorityFeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ViewportWScalingNV) PassRef() (*C.VkViewportWScalingNV, *cgoAllocMap) {
+func (x *PhysicalDeviceMemoryPriorityFeatures) PassRef() (*C.VkPhysicalDeviceMemoryPriorityFeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref7ea4590f != nil {
- return x.ref7ea4590f, nil
+ } else if x.ref24f8641c != nil {
+ return x.ref24f8641c, nil
}
- mem7ea4590f := allocViewportWScalingNVMemory(1)
- ref7ea4590f := (*C.VkViewportWScalingNV)(mem7ea4590f)
- allocs7ea4590f := new(cgoAllocMap)
- allocs7ea4590f.Add(mem7ea4590f)
+ mem24f8641c := allocPhysicalDeviceMemoryPriorityFeaturesMemory(1)
+ ref24f8641c := (*C.VkPhysicalDeviceMemoryPriorityFeaturesEXT)(mem24f8641c)
+ allocs24f8641c := new(cgoAllocMap)
+ allocs24f8641c.Add(mem24f8641c)
- var cxcoeff_allocs *cgoAllocMap
- ref7ea4590f.xcoeff, cxcoeff_allocs = (C.float)(x.Xcoeff), cgoAllocsUnknown
- allocs7ea4590f.Borrow(cxcoeff_allocs)
+ var csType_allocs *cgoAllocMap
+ ref24f8641c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs24f8641c.Borrow(csType_allocs)
- var cycoeff_allocs *cgoAllocMap
- ref7ea4590f.ycoeff, cycoeff_allocs = (C.float)(x.Ycoeff), cgoAllocsUnknown
- allocs7ea4590f.Borrow(cycoeff_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref24f8641c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs24f8641c.Borrow(cpNext_allocs)
- x.ref7ea4590f = ref7ea4590f
- x.allocs7ea4590f = allocs7ea4590f
- return ref7ea4590f, allocs7ea4590f
+ var cmemoryPriority_allocs *cgoAllocMap
+ ref24f8641c.memoryPriority, cmemoryPriority_allocs = (C.VkBool32)(x.MemoryPriority), cgoAllocsUnknown
+ allocs24f8641c.Borrow(cmemoryPriority_allocs)
+
+ x.ref24f8641c = ref24f8641c
+ x.allocs24f8641c = allocs24f8641c
+ return ref24f8641c, allocs24f8641c
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ViewportWScalingNV) PassValue() (C.VkViewportWScalingNV, *cgoAllocMap) {
- if x.ref7ea4590f != nil {
- return *x.ref7ea4590f, nil
+func (x PhysicalDeviceMemoryPriorityFeatures) PassValue() (C.VkPhysicalDeviceMemoryPriorityFeaturesEXT, *cgoAllocMap) {
+ if x.ref24f8641c != nil {
+ return *x.ref24f8641c, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -29329,135 +56017,90 @@ func (x ViewportWScalingNV) PassValue() (C.VkViewportWScalingNV, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ViewportWScalingNV) Deref() {
- if x.ref7ea4590f == nil {
+func (x *PhysicalDeviceMemoryPriorityFeatures) Deref() {
+ if x.ref24f8641c == nil {
return
}
- x.Xcoeff = (float32)(x.ref7ea4590f.xcoeff)
- x.Ycoeff = (float32)(x.ref7ea4590f.ycoeff)
+ x.SType = (StructureType)(x.ref24f8641c.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref24f8641c.pNext))
+ x.MemoryPriority = (Bool32)(x.ref24f8641c.memoryPriority)
}
-// allocPipelineViewportWScalingStateCreateInfoNVMemory allocates memory for type C.VkPipelineViewportWScalingStateCreateInfoNV in C.
+// allocMemoryPriorityAllocateInfoMemory allocates memory for type C.VkMemoryPriorityAllocateInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPipelineViewportWScalingStateCreateInfoNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineViewportWScalingStateCreateInfoNVValue))
+func allocMemoryPriorityAllocateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMemoryPriorityAllocateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPipelineViewportWScalingStateCreateInfoNVValue = unsafe.Sizeof([1]C.VkPipelineViewportWScalingStateCreateInfoNV{})
-
-// unpackSViewportWScalingNV transforms a sliced Go data structure into plain C format.
-func unpackSViewportWScalingNV(x []ViewportWScalingNV) (unpacked *C.VkViewportWScalingNV, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkViewportWScalingNV) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocViewportWScalingNVMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkViewportWScalingNV)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkViewportWScalingNV)(h.Data)
- return
-}
-
-// packSViewportWScalingNV reads sliced Go data structure out from plain C format.
-func packSViewportWScalingNV(v []ViewportWScalingNV, ptr0 *C.VkViewportWScalingNV) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfViewportWScalingNVValue]C.VkViewportWScalingNV)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewViewportWScalingNVRef(unsafe.Pointer(&ptr1))
- }
-}
+const sizeOfMemoryPriorityAllocateInfoValue = unsafe.Sizeof([1]C.VkMemoryPriorityAllocateInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PipelineViewportWScalingStateCreateInfoNV) Ref() *C.VkPipelineViewportWScalingStateCreateInfoNV {
+func (x *MemoryPriorityAllocateInfo) Ref() *C.VkMemoryPriorityAllocateInfoEXT {
if x == nil {
return nil
}
- return x.ref3e532c0b
+ return x.refd3540846
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PipelineViewportWScalingStateCreateInfoNV) Free() {
- if x != nil && x.allocs3e532c0b != nil {
- x.allocs3e532c0b.(*cgoAllocMap).Free()
- x.ref3e532c0b = nil
+func (x *MemoryPriorityAllocateInfo) Free() {
+ if x != nil && x.allocsd3540846 != nil {
+ x.allocsd3540846.(*cgoAllocMap).Free()
+ x.refd3540846 = nil
}
}
-// NewPipelineViewportWScalingStateCreateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewMemoryPriorityAllocateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPipelineViewportWScalingStateCreateInfoNVRef(ref unsafe.Pointer) *PipelineViewportWScalingStateCreateInfoNV {
+func NewMemoryPriorityAllocateInfoRef(ref unsafe.Pointer) *MemoryPriorityAllocateInfo {
if ref == nil {
return nil
}
- obj := new(PipelineViewportWScalingStateCreateInfoNV)
- obj.ref3e532c0b = (*C.VkPipelineViewportWScalingStateCreateInfoNV)(unsafe.Pointer(ref))
+ obj := new(MemoryPriorityAllocateInfo)
+ obj.refd3540846 = (*C.VkMemoryPriorityAllocateInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PipelineViewportWScalingStateCreateInfoNV) PassRef() (*C.VkPipelineViewportWScalingStateCreateInfoNV, *cgoAllocMap) {
+func (x *MemoryPriorityAllocateInfo) PassRef() (*C.VkMemoryPriorityAllocateInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref3e532c0b != nil {
- return x.ref3e532c0b, nil
+ } else if x.refd3540846 != nil {
+ return x.refd3540846, nil
}
- mem3e532c0b := allocPipelineViewportWScalingStateCreateInfoNVMemory(1)
- ref3e532c0b := (*C.VkPipelineViewportWScalingStateCreateInfoNV)(mem3e532c0b)
- allocs3e532c0b := new(cgoAllocMap)
- allocs3e532c0b.Add(mem3e532c0b)
+ memd3540846 := allocMemoryPriorityAllocateInfoMemory(1)
+ refd3540846 := (*C.VkMemoryPriorityAllocateInfoEXT)(memd3540846)
+ allocsd3540846 := new(cgoAllocMap)
+ allocsd3540846.Add(memd3540846)
var csType_allocs *cgoAllocMap
- ref3e532c0b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs3e532c0b.Borrow(csType_allocs)
+ refd3540846.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd3540846.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref3e532c0b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs3e532c0b.Borrow(cpNext_allocs)
-
- var cviewportWScalingEnable_allocs *cgoAllocMap
- ref3e532c0b.viewportWScalingEnable, cviewportWScalingEnable_allocs = (C.VkBool32)(x.ViewportWScalingEnable), cgoAllocsUnknown
- allocs3e532c0b.Borrow(cviewportWScalingEnable_allocs)
-
- var cviewportCount_allocs *cgoAllocMap
- ref3e532c0b.viewportCount, cviewportCount_allocs = (C.uint32_t)(x.ViewportCount), cgoAllocsUnknown
- allocs3e532c0b.Borrow(cviewportCount_allocs)
+ refd3540846.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsd3540846.Borrow(cpNext_allocs)
- var cpViewportWScalings_allocs *cgoAllocMap
- ref3e532c0b.pViewportWScalings, cpViewportWScalings_allocs = unpackSViewportWScalingNV(x.PViewportWScalings)
- allocs3e532c0b.Borrow(cpViewportWScalings_allocs)
+ var cpriority_allocs *cgoAllocMap
+ refd3540846.priority, cpriority_allocs = (C.float)(x.Priority), cgoAllocsUnknown
+ allocsd3540846.Borrow(cpriority_allocs)
- x.ref3e532c0b = ref3e532c0b
- x.allocs3e532c0b = allocs3e532c0b
- return ref3e532c0b, allocs3e532c0b
+ x.refd3540846 = refd3540846
+ x.allocsd3540846 = allocsd3540846
+ return refd3540846, allocsd3540846
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PipelineViewportWScalingStateCreateInfoNV) PassValue() (C.VkPipelineViewportWScalingStateCreateInfoNV, *cgoAllocMap) {
- if x.ref3e532c0b != nil {
- return *x.ref3e532c0b, nil
+func (x MemoryPriorityAllocateInfo) PassValue() (C.VkMemoryPriorityAllocateInfoEXT, *cgoAllocMap) {
+ if x.refd3540846 != nil {
+ return *x.refd3540846, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -29465,92 +56108,90 @@ func (x PipelineViewportWScalingStateCreateInfoNV) PassValue() (C.VkPipelineView
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PipelineViewportWScalingStateCreateInfoNV) Deref() {
- if x.ref3e532c0b == nil {
+func (x *MemoryPriorityAllocateInfo) Deref() {
+ if x.refd3540846 == nil {
return
}
- x.SType = (StructureType)(x.ref3e532c0b.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref3e532c0b.pNext))
- x.ViewportWScalingEnable = (Bool32)(x.ref3e532c0b.viewportWScalingEnable)
- x.ViewportCount = (uint32)(x.ref3e532c0b.viewportCount)
- packSViewportWScalingNV(x.PViewportWScalings, x.ref3e532c0b.pViewportWScalings)
+ x.SType = (StructureType)(x.refd3540846.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd3540846.pNext))
+ x.Priority = (float32)(x.refd3540846.priority)
}
-// allocDisplayPowerInfoMemory allocates memory for type C.VkDisplayPowerInfoEXT in C.
+// allocPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNVMemory allocates memory for type C.VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDisplayPowerInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplayPowerInfoValue))
+func allocPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDisplayPowerInfoValue = unsafe.Sizeof([1]C.VkDisplayPowerInfoEXT{})
+const sizeOfPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DisplayPowerInfo) Ref() *C.VkDisplayPowerInfoEXT {
+func (x *PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV) Ref() *C.VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV {
if x == nil {
return nil
}
- return x.ref80fed52f
+ return x.refade17227
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DisplayPowerInfo) Free() {
- if x != nil && x.allocs80fed52f != nil {
- x.allocs80fed52f.(*cgoAllocMap).Free()
- x.ref80fed52f = nil
+func (x *PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV) Free() {
+ if x != nil && x.allocsade17227 != nil {
+ x.allocsade17227.(*cgoAllocMap).Free()
+ x.refade17227 = nil
}
}
-// NewDisplayPowerInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDisplayPowerInfoRef(ref unsafe.Pointer) *DisplayPowerInfo {
+func NewPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNVRef(ref unsafe.Pointer) *PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV {
if ref == nil {
return nil
}
- obj := new(DisplayPowerInfo)
- obj.ref80fed52f = (*C.VkDisplayPowerInfoEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV)
+ obj.refade17227 = (*C.VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DisplayPowerInfo) PassRef() (*C.VkDisplayPowerInfoEXT, *cgoAllocMap) {
+func (x *PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV) PassRef() (*C.VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref80fed52f != nil {
- return x.ref80fed52f, nil
+ } else if x.refade17227 != nil {
+ return x.refade17227, nil
}
- mem80fed52f := allocDisplayPowerInfoMemory(1)
- ref80fed52f := (*C.VkDisplayPowerInfoEXT)(mem80fed52f)
- allocs80fed52f := new(cgoAllocMap)
- allocs80fed52f.Add(mem80fed52f)
+ memade17227 := allocPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNVMemory(1)
+ refade17227 := (*C.VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV)(memade17227)
+ allocsade17227 := new(cgoAllocMap)
+ allocsade17227.Add(memade17227)
var csType_allocs *cgoAllocMap
- ref80fed52f.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs80fed52f.Borrow(csType_allocs)
+ refade17227.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsade17227.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref80fed52f.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs80fed52f.Borrow(cpNext_allocs)
+ refade17227.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsade17227.Borrow(cpNext_allocs)
- var cpowerState_allocs *cgoAllocMap
- ref80fed52f.powerState, cpowerState_allocs = (C.VkDisplayPowerStateEXT)(x.PowerState), cgoAllocsUnknown
- allocs80fed52f.Borrow(cpowerState_allocs)
+ var cdedicatedAllocationImageAliasing_allocs *cgoAllocMap
+ refade17227.dedicatedAllocationImageAliasing, cdedicatedAllocationImageAliasing_allocs = (C.VkBool32)(x.DedicatedAllocationImageAliasing), cgoAllocsUnknown
+ allocsade17227.Borrow(cdedicatedAllocationImageAliasing_allocs)
- x.ref80fed52f = ref80fed52f
- x.allocs80fed52f = allocs80fed52f
- return ref80fed52f, allocs80fed52f
+ x.refade17227 = refade17227
+ x.allocsade17227 = allocsade17227
+ return refade17227, allocsade17227
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DisplayPowerInfo) PassValue() (C.VkDisplayPowerInfoEXT, *cgoAllocMap) {
- if x.ref80fed52f != nil {
- return *x.ref80fed52f, nil
+func (x PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV) PassValue() (C.VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV, *cgoAllocMap) {
+ if x.refade17227 != nil {
+ return *x.refade17227, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -29558,90 +56199,86 @@ func (x DisplayPowerInfo) PassValue() (C.VkDisplayPowerInfoEXT, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DisplayPowerInfo) Deref() {
- if x.ref80fed52f == nil {
+func (x *PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV) Deref() {
+ if x.refade17227 == nil {
return
}
- x.SType = (StructureType)(x.ref80fed52f.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref80fed52f.pNext))
- x.PowerState = (DisplayPowerState)(x.ref80fed52f.powerState)
-}
-
-// allocDeviceEventInfoMemory allocates memory for type C.VkDeviceEventInfoEXT in C.
-// The caller is responsible for freeing the this memory via C.free.
-func allocDeviceEventInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceEventInfoValue))
- if err != nil {
- panic("memory alloc error: " + err.Error())
- }
- return mem
+ x.SType = (StructureType)(x.refade17227.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refade17227.pNext))
+ x.DedicatedAllocationImageAliasing = (Bool32)(x.refade17227.dedicatedAllocationImageAliasing)
}
-const sizeOfDeviceEventInfoValue = unsafe.Sizeof([1]C.VkDeviceEventInfoEXT{})
-
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DeviceEventInfo) Ref() *C.VkDeviceEventInfoEXT {
+func (x *PhysicalDeviceBufferAddressFeatures) Ref() *C.VkPhysicalDeviceBufferDeviceAddressFeaturesEXT {
if x == nil {
return nil
}
- return x.ref394b3fcb
+ return x.refe3bd03a5
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DeviceEventInfo) Free() {
- if x != nil && x.allocs394b3fcb != nil {
- x.allocs394b3fcb.(*cgoAllocMap).Free()
- x.ref394b3fcb = nil
+func (x *PhysicalDeviceBufferAddressFeatures) Free() {
+ if x != nil && x.allocse3bd03a5 != nil {
+ x.allocse3bd03a5.(*cgoAllocMap).Free()
+ x.refe3bd03a5 = nil
}
}
-// NewDeviceEventInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceBufferAddressFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDeviceEventInfoRef(ref unsafe.Pointer) *DeviceEventInfo {
+func NewPhysicalDeviceBufferAddressFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceBufferAddressFeatures {
if ref == nil {
return nil
}
- obj := new(DeviceEventInfo)
- obj.ref394b3fcb = (*C.VkDeviceEventInfoEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceBufferAddressFeatures)
+ obj.refe3bd03a5 = (*C.VkPhysicalDeviceBufferDeviceAddressFeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DeviceEventInfo) PassRef() (*C.VkDeviceEventInfoEXT, *cgoAllocMap) {
+func (x *PhysicalDeviceBufferAddressFeatures) PassRef() (*C.VkPhysicalDeviceBufferDeviceAddressFeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref394b3fcb != nil {
- return x.ref394b3fcb, nil
+ } else if x.refe3bd03a5 != nil {
+ return x.refe3bd03a5, nil
}
- mem394b3fcb := allocDeviceEventInfoMemory(1)
- ref394b3fcb := (*C.VkDeviceEventInfoEXT)(mem394b3fcb)
- allocs394b3fcb := new(cgoAllocMap)
- allocs394b3fcb.Add(mem394b3fcb)
+ meme3bd03a5 := allocPhysicalDeviceBufferDeviceAddressFeaturesMemory(1)
+ refe3bd03a5 := (*C.VkPhysicalDeviceBufferDeviceAddressFeaturesEXT)(meme3bd03a5)
+ allocse3bd03a5 := new(cgoAllocMap)
+ allocse3bd03a5.Add(meme3bd03a5)
var csType_allocs *cgoAllocMap
- ref394b3fcb.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs394b3fcb.Borrow(csType_allocs)
+ refe3bd03a5.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocse3bd03a5.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref394b3fcb.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs394b3fcb.Borrow(cpNext_allocs)
+ refe3bd03a5.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocse3bd03a5.Borrow(cpNext_allocs)
- var cdeviceEvent_allocs *cgoAllocMap
- ref394b3fcb.deviceEvent, cdeviceEvent_allocs = (C.VkDeviceEventTypeEXT)(x.DeviceEvent), cgoAllocsUnknown
- allocs394b3fcb.Borrow(cdeviceEvent_allocs)
+ var cbufferDeviceAddress_allocs *cgoAllocMap
+ refe3bd03a5.bufferDeviceAddress, cbufferDeviceAddress_allocs = (C.VkBool32)(x.BufferDeviceAddress), cgoAllocsUnknown
+ allocse3bd03a5.Borrow(cbufferDeviceAddress_allocs)
- x.ref394b3fcb = ref394b3fcb
- x.allocs394b3fcb = allocs394b3fcb
- return ref394b3fcb, allocs394b3fcb
+ var cbufferDeviceAddressCaptureReplay_allocs *cgoAllocMap
+ refe3bd03a5.bufferDeviceAddressCaptureReplay, cbufferDeviceAddressCaptureReplay_allocs = (C.VkBool32)(x.BufferDeviceAddressCaptureReplay), cgoAllocsUnknown
+ allocse3bd03a5.Borrow(cbufferDeviceAddressCaptureReplay_allocs)
+
+ var cbufferDeviceAddressMultiDevice_allocs *cgoAllocMap
+ refe3bd03a5.bufferDeviceAddressMultiDevice, cbufferDeviceAddressMultiDevice_allocs = (C.VkBool32)(x.BufferDeviceAddressMultiDevice), cgoAllocsUnknown
+ allocse3bd03a5.Borrow(cbufferDeviceAddressMultiDevice_allocs)
+
+ x.refe3bd03a5 = refe3bd03a5
+ x.allocse3bd03a5 = allocse3bd03a5
+ return refe3bd03a5, allocse3bd03a5
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DeviceEventInfo) PassValue() (C.VkDeviceEventInfoEXT, *cgoAllocMap) {
- if x.ref394b3fcb != nil {
- return *x.ref394b3fcb, nil
+func (x PhysicalDeviceBufferAddressFeatures) PassValue() (C.VkPhysicalDeviceBufferDeviceAddressFeaturesEXT, *cgoAllocMap) {
+ if x.refe3bd03a5 != nil {
+ return *x.refe3bd03a5, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -29649,90 +56286,92 @@ func (x DeviceEventInfo) PassValue() (C.VkDeviceEventInfoEXT, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DeviceEventInfo) Deref() {
- if x.ref394b3fcb == nil {
+func (x *PhysicalDeviceBufferAddressFeatures) Deref() {
+ if x.refe3bd03a5 == nil {
return
}
- x.SType = (StructureType)(x.ref394b3fcb.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref394b3fcb.pNext))
- x.DeviceEvent = (DeviceEventType)(x.ref394b3fcb.deviceEvent)
+ x.SType = (StructureType)(x.refe3bd03a5.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refe3bd03a5.pNext))
+ x.BufferDeviceAddress = (Bool32)(x.refe3bd03a5.bufferDeviceAddress)
+ x.BufferDeviceAddressCaptureReplay = (Bool32)(x.refe3bd03a5.bufferDeviceAddressCaptureReplay)
+ x.BufferDeviceAddressMultiDevice = (Bool32)(x.refe3bd03a5.bufferDeviceAddressMultiDevice)
}
-// allocDisplayEventInfoMemory allocates memory for type C.VkDisplayEventInfoEXT in C.
+// allocBufferDeviceAddressCreateInfoMemory allocates memory for type C.VkBufferDeviceAddressCreateInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDisplayEventInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDisplayEventInfoValue))
+func allocBufferDeviceAddressCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBufferDeviceAddressCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDisplayEventInfoValue = unsafe.Sizeof([1]C.VkDisplayEventInfoEXT{})
+const sizeOfBufferDeviceAddressCreateInfoValue = unsafe.Sizeof([1]C.VkBufferDeviceAddressCreateInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DisplayEventInfo) Ref() *C.VkDisplayEventInfoEXT {
+func (x *BufferDeviceAddressCreateInfo) Ref() *C.VkBufferDeviceAddressCreateInfoEXT {
if x == nil {
return nil
}
- return x.refa69f7302
+ return x.ref4c6937a9
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DisplayEventInfo) Free() {
- if x != nil && x.allocsa69f7302 != nil {
- x.allocsa69f7302.(*cgoAllocMap).Free()
- x.refa69f7302 = nil
+func (x *BufferDeviceAddressCreateInfo) Free() {
+ if x != nil && x.allocs4c6937a9 != nil {
+ x.allocs4c6937a9.(*cgoAllocMap).Free()
+ x.ref4c6937a9 = nil
}
}
-// NewDisplayEventInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewBufferDeviceAddressCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDisplayEventInfoRef(ref unsafe.Pointer) *DisplayEventInfo {
+func NewBufferDeviceAddressCreateInfoRef(ref unsafe.Pointer) *BufferDeviceAddressCreateInfo {
if ref == nil {
return nil
}
- obj := new(DisplayEventInfo)
- obj.refa69f7302 = (*C.VkDisplayEventInfoEXT)(unsafe.Pointer(ref))
+ obj := new(BufferDeviceAddressCreateInfo)
+ obj.ref4c6937a9 = (*C.VkBufferDeviceAddressCreateInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DisplayEventInfo) PassRef() (*C.VkDisplayEventInfoEXT, *cgoAllocMap) {
+func (x *BufferDeviceAddressCreateInfo) PassRef() (*C.VkBufferDeviceAddressCreateInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refa69f7302 != nil {
- return x.refa69f7302, nil
+ } else if x.ref4c6937a9 != nil {
+ return x.ref4c6937a9, nil
}
- mema69f7302 := allocDisplayEventInfoMemory(1)
- refa69f7302 := (*C.VkDisplayEventInfoEXT)(mema69f7302)
- allocsa69f7302 := new(cgoAllocMap)
- allocsa69f7302.Add(mema69f7302)
+ mem4c6937a9 := allocBufferDeviceAddressCreateInfoMemory(1)
+ ref4c6937a9 := (*C.VkBufferDeviceAddressCreateInfoEXT)(mem4c6937a9)
+ allocs4c6937a9 := new(cgoAllocMap)
+ allocs4c6937a9.Add(mem4c6937a9)
var csType_allocs *cgoAllocMap
- refa69f7302.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsa69f7302.Borrow(csType_allocs)
+ ref4c6937a9.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs4c6937a9.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refa69f7302.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsa69f7302.Borrow(cpNext_allocs)
+ ref4c6937a9.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs4c6937a9.Borrow(cpNext_allocs)
- var cdisplayEvent_allocs *cgoAllocMap
- refa69f7302.displayEvent, cdisplayEvent_allocs = (C.VkDisplayEventTypeEXT)(x.DisplayEvent), cgoAllocsUnknown
- allocsa69f7302.Borrow(cdisplayEvent_allocs)
+ var cdeviceAddress_allocs *cgoAllocMap
+ ref4c6937a9.deviceAddress, cdeviceAddress_allocs = (C.VkDeviceAddress)(x.DeviceAddress), cgoAllocsUnknown
+ allocs4c6937a9.Borrow(cdeviceAddress_allocs)
- x.refa69f7302 = refa69f7302
- x.allocsa69f7302 = allocsa69f7302
- return refa69f7302, allocsa69f7302
+ x.ref4c6937a9 = ref4c6937a9
+ x.allocs4c6937a9 = allocs4c6937a9
+ return ref4c6937a9, allocs4c6937a9
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DisplayEventInfo) PassValue() (C.VkDisplayEventInfoEXT, *cgoAllocMap) {
- if x.refa69f7302 != nil {
- return *x.refa69f7302, nil
+func (x BufferDeviceAddressCreateInfo) PassValue() (C.VkBufferDeviceAddressCreateInfoEXT, *cgoAllocMap) {
+ if x.ref4c6937a9 != nil {
+ return *x.ref4c6937a9, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -29740,90 +56379,102 @@ func (x DisplayEventInfo) PassValue() (C.VkDisplayEventInfoEXT, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DisplayEventInfo) Deref() {
- if x.refa69f7302 == nil {
+func (x *BufferDeviceAddressCreateInfo) Deref() {
+ if x.ref4c6937a9 == nil {
return
}
- x.SType = (StructureType)(x.refa69f7302.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa69f7302.pNext))
- x.DisplayEvent = (DisplayEventType)(x.refa69f7302.displayEvent)
+ x.SType = (StructureType)(x.ref4c6937a9.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref4c6937a9.pNext))
+ x.DeviceAddress = (DeviceAddress)(x.ref4c6937a9.deviceAddress)
}
-// allocSwapchainCounterCreateInfoMemory allocates memory for type C.VkSwapchainCounterCreateInfoEXT in C.
+// allocValidationFeaturesMemory allocates memory for type C.VkValidationFeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSwapchainCounterCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSwapchainCounterCreateInfoValue))
+func allocValidationFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfValidationFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSwapchainCounterCreateInfoValue = unsafe.Sizeof([1]C.VkSwapchainCounterCreateInfoEXT{})
+const sizeOfValidationFeaturesValue = unsafe.Sizeof([1]C.VkValidationFeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SwapchainCounterCreateInfo) Ref() *C.VkSwapchainCounterCreateInfoEXT {
+func (x *ValidationFeatures) Ref() *C.VkValidationFeaturesEXT {
if x == nil {
return nil
}
- return x.ref9f21eca6
+ return x.refcd8794ea
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SwapchainCounterCreateInfo) Free() {
- if x != nil && x.allocs9f21eca6 != nil {
- x.allocs9f21eca6.(*cgoAllocMap).Free()
- x.ref9f21eca6 = nil
+func (x *ValidationFeatures) Free() {
+ if x != nil && x.allocscd8794ea != nil {
+ x.allocscd8794ea.(*cgoAllocMap).Free()
+ x.refcd8794ea = nil
}
}
-// NewSwapchainCounterCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewValidationFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSwapchainCounterCreateInfoRef(ref unsafe.Pointer) *SwapchainCounterCreateInfo {
+func NewValidationFeaturesRef(ref unsafe.Pointer) *ValidationFeatures {
if ref == nil {
return nil
}
- obj := new(SwapchainCounterCreateInfo)
- obj.ref9f21eca6 = (*C.VkSwapchainCounterCreateInfoEXT)(unsafe.Pointer(ref))
+ obj := new(ValidationFeatures)
+ obj.refcd8794ea = (*C.VkValidationFeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SwapchainCounterCreateInfo) PassRef() (*C.VkSwapchainCounterCreateInfoEXT, *cgoAllocMap) {
+func (x *ValidationFeatures) PassRef() (*C.VkValidationFeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref9f21eca6 != nil {
- return x.ref9f21eca6, nil
+ } else if x.refcd8794ea != nil {
+ return x.refcd8794ea, nil
}
- mem9f21eca6 := allocSwapchainCounterCreateInfoMemory(1)
- ref9f21eca6 := (*C.VkSwapchainCounterCreateInfoEXT)(mem9f21eca6)
- allocs9f21eca6 := new(cgoAllocMap)
- allocs9f21eca6.Add(mem9f21eca6)
+ memcd8794ea := allocValidationFeaturesMemory(1)
+ refcd8794ea := (*C.VkValidationFeaturesEXT)(memcd8794ea)
+ allocscd8794ea := new(cgoAllocMap)
+ allocscd8794ea.Add(memcd8794ea)
var csType_allocs *cgoAllocMap
- ref9f21eca6.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs9f21eca6.Borrow(csType_allocs)
+ refcd8794ea.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocscd8794ea.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref9f21eca6.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs9f21eca6.Borrow(cpNext_allocs)
+ refcd8794ea.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocscd8794ea.Borrow(cpNext_allocs)
- var csurfaceCounters_allocs *cgoAllocMap
- ref9f21eca6.surfaceCounters, csurfaceCounters_allocs = (C.VkSurfaceCounterFlagsEXT)(x.SurfaceCounters), cgoAllocsUnknown
- allocs9f21eca6.Borrow(csurfaceCounters_allocs)
+ var cenabledValidationFeatureCount_allocs *cgoAllocMap
+ refcd8794ea.enabledValidationFeatureCount, cenabledValidationFeatureCount_allocs = (C.uint32_t)(x.EnabledValidationFeatureCount), cgoAllocsUnknown
+ allocscd8794ea.Borrow(cenabledValidationFeatureCount_allocs)
- x.ref9f21eca6 = ref9f21eca6
- x.allocs9f21eca6 = allocs9f21eca6
- return ref9f21eca6, allocs9f21eca6
+ var cpEnabledValidationFeatures_allocs *cgoAllocMap
+ refcd8794ea.pEnabledValidationFeatures, cpEnabledValidationFeatures_allocs = (*C.VkValidationFeatureEnableEXT)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PEnabledValidationFeatures)).Data)), cgoAllocsUnknown
+ allocscd8794ea.Borrow(cpEnabledValidationFeatures_allocs)
+
+ var cdisabledValidationFeatureCount_allocs *cgoAllocMap
+ refcd8794ea.disabledValidationFeatureCount, cdisabledValidationFeatureCount_allocs = (C.uint32_t)(x.DisabledValidationFeatureCount), cgoAllocsUnknown
+ allocscd8794ea.Borrow(cdisabledValidationFeatureCount_allocs)
+
+ var cpDisabledValidationFeatures_allocs *cgoAllocMap
+ refcd8794ea.pDisabledValidationFeatures, cpDisabledValidationFeatures_allocs = (*C.VkValidationFeatureDisableEXT)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PDisabledValidationFeatures)).Data)), cgoAllocsUnknown
+ allocscd8794ea.Borrow(cpDisabledValidationFeatures_allocs)
+
+ x.refcd8794ea = refcd8794ea
+ x.allocscd8794ea = allocscd8794ea
+ return refcd8794ea, allocscd8794ea
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SwapchainCounterCreateInfo) PassValue() (C.VkSwapchainCounterCreateInfoEXT, *cgoAllocMap) {
- if x.ref9f21eca6 != nil {
- return *x.ref9f21eca6, nil
+func (x ValidationFeatures) PassValue() (C.VkValidationFeaturesEXT, *cgoAllocMap) {
+ if x.refcd8794ea != nil {
+ return *x.refcd8794ea, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -29831,82 +56482,129 @@ func (x SwapchainCounterCreateInfo) PassValue() (C.VkSwapchainCounterCreateInfoE
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SwapchainCounterCreateInfo) Deref() {
- if x.ref9f21eca6 == nil {
+func (x *ValidationFeatures) Deref() {
+ if x.refcd8794ea == nil {
return
}
- x.SType = (StructureType)(x.ref9f21eca6.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref9f21eca6.pNext))
- x.SurfaceCounters = (SurfaceCounterFlags)(x.ref9f21eca6.surfaceCounters)
+ x.SType = (StructureType)(x.refcd8794ea.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refcd8794ea.pNext))
+ x.EnabledValidationFeatureCount = (uint32)(x.refcd8794ea.enabledValidationFeatureCount)
+ hxf1a1416 := (*sliceHeader)(unsafe.Pointer(&x.PEnabledValidationFeatures))
+ hxf1a1416.Data = unsafe.Pointer(x.refcd8794ea.pEnabledValidationFeatures)
+ hxf1a1416.Cap = 0x7fffffff
+ // hxf1a1416.Len = ?
+
+ x.DisabledValidationFeatureCount = (uint32)(x.refcd8794ea.disabledValidationFeatureCount)
+ hxf92be66 := (*sliceHeader)(unsafe.Pointer(&x.PDisabledValidationFeatures))
+ hxf92be66.Data = unsafe.Pointer(x.refcd8794ea.pDisabledValidationFeatures)
+ hxf92be66.Cap = 0x7fffffff
+ // hxf92be66.Len = ?
+
}
-// allocRefreshCycleDurationGOOGLEMemory allocates memory for type C.VkRefreshCycleDurationGOOGLE in C.
+// allocCooperativeMatrixPropertiesNVMemory allocates memory for type C.VkCooperativeMatrixPropertiesNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocRefreshCycleDurationGOOGLEMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfRefreshCycleDurationGOOGLEValue))
+func allocCooperativeMatrixPropertiesNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCooperativeMatrixPropertiesNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfRefreshCycleDurationGOOGLEValue = unsafe.Sizeof([1]C.VkRefreshCycleDurationGOOGLE{})
+const sizeOfCooperativeMatrixPropertiesNVValue = unsafe.Sizeof([1]C.VkCooperativeMatrixPropertiesNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *RefreshCycleDurationGOOGLE) Ref() *C.VkRefreshCycleDurationGOOGLE {
+func (x *CooperativeMatrixPropertiesNV) Ref() *C.VkCooperativeMatrixPropertiesNV {
if x == nil {
return nil
}
- return x.ref969cb55b
+ return x.ref4302be60
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *RefreshCycleDurationGOOGLE) Free() {
- if x != nil && x.allocs969cb55b != nil {
- x.allocs969cb55b.(*cgoAllocMap).Free()
- x.ref969cb55b = nil
+func (x *CooperativeMatrixPropertiesNV) Free() {
+ if x != nil && x.allocs4302be60 != nil {
+ x.allocs4302be60.(*cgoAllocMap).Free()
+ x.ref4302be60 = nil
}
}
-// NewRefreshCycleDurationGOOGLERef creates a new wrapper struct with underlying reference set to the original C object.
+// NewCooperativeMatrixPropertiesNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewRefreshCycleDurationGOOGLERef(ref unsafe.Pointer) *RefreshCycleDurationGOOGLE {
+func NewCooperativeMatrixPropertiesNVRef(ref unsafe.Pointer) *CooperativeMatrixPropertiesNV {
if ref == nil {
return nil
}
- obj := new(RefreshCycleDurationGOOGLE)
- obj.ref969cb55b = (*C.VkRefreshCycleDurationGOOGLE)(unsafe.Pointer(ref))
+ obj := new(CooperativeMatrixPropertiesNV)
+ obj.ref4302be60 = (*C.VkCooperativeMatrixPropertiesNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *RefreshCycleDurationGOOGLE) PassRef() (*C.VkRefreshCycleDurationGOOGLE, *cgoAllocMap) {
+func (x *CooperativeMatrixPropertiesNV) PassRef() (*C.VkCooperativeMatrixPropertiesNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref969cb55b != nil {
- return x.ref969cb55b, nil
+ } else if x.ref4302be60 != nil {
+ return x.ref4302be60, nil
}
- mem969cb55b := allocRefreshCycleDurationGOOGLEMemory(1)
- ref969cb55b := (*C.VkRefreshCycleDurationGOOGLE)(mem969cb55b)
- allocs969cb55b := new(cgoAllocMap)
- allocs969cb55b.Add(mem969cb55b)
+ mem4302be60 := allocCooperativeMatrixPropertiesNVMemory(1)
+ ref4302be60 := (*C.VkCooperativeMatrixPropertiesNV)(mem4302be60)
+ allocs4302be60 := new(cgoAllocMap)
+ allocs4302be60.Add(mem4302be60)
- var crefreshDuration_allocs *cgoAllocMap
- ref969cb55b.refreshDuration, crefreshDuration_allocs = (C.uint64_t)(x.RefreshDuration), cgoAllocsUnknown
- allocs969cb55b.Borrow(crefreshDuration_allocs)
+ var csType_allocs *cgoAllocMap
+ ref4302be60.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs4302be60.Borrow(csType_allocs)
- x.ref969cb55b = ref969cb55b
- x.allocs969cb55b = allocs969cb55b
- return ref969cb55b, allocs969cb55b
+ var cpNext_allocs *cgoAllocMap
+ ref4302be60.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs4302be60.Borrow(cpNext_allocs)
+
+ var cMSize_allocs *cgoAllocMap
+ ref4302be60.MSize, cMSize_allocs = (C.uint32_t)(x.MSize), cgoAllocsUnknown
+ allocs4302be60.Borrow(cMSize_allocs)
+
+ var cNSize_allocs *cgoAllocMap
+ ref4302be60.NSize, cNSize_allocs = (C.uint32_t)(x.NSize), cgoAllocsUnknown
+ allocs4302be60.Borrow(cNSize_allocs)
+
+ var cKSize_allocs *cgoAllocMap
+ ref4302be60.KSize, cKSize_allocs = (C.uint32_t)(x.KSize), cgoAllocsUnknown
+ allocs4302be60.Borrow(cKSize_allocs)
+
+ var cAType_allocs *cgoAllocMap
+ ref4302be60.AType, cAType_allocs = (C.VkComponentTypeNV)(x.AType), cgoAllocsUnknown
+ allocs4302be60.Borrow(cAType_allocs)
+
+ var cBType_allocs *cgoAllocMap
+ ref4302be60.BType, cBType_allocs = (C.VkComponentTypeNV)(x.BType), cgoAllocsUnknown
+ allocs4302be60.Borrow(cBType_allocs)
+
+ var cCType_allocs *cgoAllocMap
+ ref4302be60.CType, cCType_allocs = (C.VkComponentTypeNV)(x.CType), cgoAllocsUnknown
+ allocs4302be60.Borrow(cCType_allocs)
+
+ var cDType_allocs *cgoAllocMap
+ ref4302be60.DType, cDType_allocs = (C.VkComponentTypeNV)(x.DType), cgoAllocsUnknown
+ allocs4302be60.Borrow(cDType_allocs)
+
+ var cscope_allocs *cgoAllocMap
+ ref4302be60.scope, cscope_allocs = (C.VkScopeNV)(x.Scope), cgoAllocsUnknown
+ allocs4302be60.Borrow(cscope_allocs)
+
+ x.ref4302be60 = ref4302be60
+ x.allocs4302be60 = allocs4302be60
+ return ref4302be60, allocs4302be60
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x RefreshCycleDurationGOOGLE) PassValue() (C.VkRefreshCycleDurationGOOGLE, *cgoAllocMap) {
- if x.ref969cb55b != nil {
- return *x.ref969cb55b, nil
+func (x CooperativeMatrixPropertiesNV) PassValue() (C.VkCooperativeMatrixPropertiesNV, *cgoAllocMap) {
+ if x.ref4302be60 != nil {
+ return *x.ref4302be60, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -29914,96 +56612,101 @@ func (x RefreshCycleDurationGOOGLE) PassValue() (C.VkRefreshCycleDurationGOOGLE,
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *RefreshCycleDurationGOOGLE) Deref() {
- if x.ref969cb55b == nil {
+func (x *CooperativeMatrixPropertiesNV) Deref() {
+ if x.ref4302be60 == nil {
return
}
- x.RefreshDuration = (uint64)(x.ref969cb55b.refreshDuration)
+ x.SType = (StructureType)(x.ref4302be60.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref4302be60.pNext))
+ x.MSize = (uint32)(x.ref4302be60.MSize)
+ x.NSize = (uint32)(x.ref4302be60.NSize)
+ x.KSize = (uint32)(x.ref4302be60.KSize)
+ x.AType = (ComponentTypeNV)(x.ref4302be60.AType)
+ x.BType = (ComponentTypeNV)(x.ref4302be60.BType)
+ x.CType = (ComponentTypeNV)(x.ref4302be60.CType)
+ x.DType = (ComponentTypeNV)(x.ref4302be60.DType)
+ x.Scope = (ScopeNV)(x.ref4302be60.scope)
}
-// allocPastPresentationTimingGOOGLEMemory allocates memory for type C.VkPastPresentationTimingGOOGLE in C.
+// allocPhysicalDeviceCooperativeMatrixFeaturesNVMemory allocates memory for type C.VkPhysicalDeviceCooperativeMatrixFeaturesNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPastPresentationTimingGOOGLEMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPastPresentationTimingGOOGLEValue))
+func allocPhysicalDeviceCooperativeMatrixFeaturesNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceCooperativeMatrixFeaturesNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPastPresentationTimingGOOGLEValue = unsafe.Sizeof([1]C.VkPastPresentationTimingGOOGLE{})
+const sizeOfPhysicalDeviceCooperativeMatrixFeaturesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceCooperativeMatrixFeaturesNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PastPresentationTimingGOOGLE) Ref() *C.VkPastPresentationTimingGOOGLE {
+func (x *PhysicalDeviceCooperativeMatrixFeaturesNV) Ref() *C.VkPhysicalDeviceCooperativeMatrixFeaturesNV {
if x == nil {
return nil
}
- return x.refac8cf1d8
+ return x.refff45ea3f
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PastPresentationTimingGOOGLE) Free() {
- if x != nil && x.allocsac8cf1d8 != nil {
- x.allocsac8cf1d8.(*cgoAllocMap).Free()
- x.refac8cf1d8 = nil
+func (x *PhysicalDeviceCooperativeMatrixFeaturesNV) Free() {
+ if x != nil && x.allocsff45ea3f != nil {
+ x.allocsff45ea3f.(*cgoAllocMap).Free()
+ x.refff45ea3f = nil
}
}
-// NewPastPresentationTimingGOOGLERef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceCooperativeMatrixFeaturesNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPastPresentationTimingGOOGLERef(ref unsafe.Pointer) *PastPresentationTimingGOOGLE {
+func NewPhysicalDeviceCooperativeMatrixFeaturesNVRef(ref unsafe.Pointer) *PhysicalDeviceCooperativeMatrixFeaturesNV {
if ref == nil {
return nil
}
- obj := new(PastPresentationTimingGOOGLE)
- obj.refac8cf1d8 = (*C.VkPastPresentationTimingGOOGLE)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceCooperativeMatrixFeaturesNV)
+ obj.refff45ea3f = (*C.VkPhysicalDeviceCooperativeMatrixFeaturesNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PastPresentationTimingGOOGLE) PassRef() (*C.VkPastPresentationTimingGOOGLE, *cgoAllocMap) {
+func (x *PhysicalDeviceCooperativeMatrixFeaturesNV) PassRef() (*C.VkPhysicalDeviceCooperativeMatrixFeaturesNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refac8cf1d8 != nil {
- return x.refac8cf1d8, nil
+ } else if x.refff45ea3f != nil {
+ return x.refff45ea3f, nil
}
- memac8cf1d8 := allocPastPresentationTimingGOOGLEMemory(1)
- refac8cf1d8 := (*C.VkPastPresentationTimingGOOGLE)(memac8cf1d8)
- allocsac8cf1d8 := new(cgoAllocMap)
- allocsac8cf1d8.Add(memac8cf1d8)
-
- var cpresentID_allocs *cgoAllocMap
- refac8cf1d8.presentID, cpresentID_allocs = (C.uint32_t)(x.PresentID), cgoAllocsUnknown
- allocsac8cf1d8.Borrow(cpresentID_allocs)
+ memff45ea3f := allocPhysicalDeviceCooperativeMatrixFeaturesNVMemory(1)
+ refff45ea3f := (*C.VkPhysicalDeviceCooperativeMatrixFeaturesNV)(memff45ea3f)
+ allocsff45ea3f := new(cgoAllocMap)
+ allocsff45ea3f.Add(memff45ea3f)
- var cdesiredPresentTime_allocs *cgoAllocMap
- refac8cf1d8.desiredPresentTime, cdesiredPresentTime_allocs = (C.uint64_t)(x.DesiredPresentTime), cgoAllocsUnknown
- allocsac8cf1d8.Borrow(cdesiredPresentTime_allocs)
+ var csType_allocs *cgoAllocMap
+ refff45ea3f.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsff45ea3f.Borrow(csType_allocs)
- var cactualPresentTime_allocs *cgoAllocMap
- refac8cf1d8.actualPresentTime, cactualPresentTime_allocs = (C.uint64_t)(x.ActualPresentTime), cgoAllocsUnknown
- allocsac8cf1d8.Borrow(cactualPresentTime_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refff45ea3f.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsff45ea3f.Borrow(cpNext_allocs)
- var cearliestPresentTime_allocs *cgoAllocMap
- refac8cf1d8.earliestPresentTime, cearliestPresentTime_allocs = (C.uint64_t)(x.EarliestPresentTime), cgoAllocsUnknown
- allocsac8cf1d8.Borrow(cearliestPresentTime_allocs)
+ var ccooperativeMatrix_allocs *cgoAllocMap
+ refff45ea3f.cooperativeMatrix, ccooperativeMatrix_allocs = (C.VkBool32)(x.CooperativeMatrix), cgoAllocsUnknown
+ allocsff45ea3f.Borrow(ccooperativeMatrix_allocs)
- var cpresentMargin_allocs *cgoAllocMap
- refac8cf1d8.presentMargin, cpresentMargin_allocs = (C.uint64_t)(x.PresentMargin), cgoAllocsUnknown
- allocsac8cf1d8.Borrow(cpresentMargin_allocs)
+ var ccooperativeMatrixRobustBufferAccess_allocs *cgoAllocMap
+ refff45ea3f.cooperativeMatrixRobustBufferAccess, ccooperativeMatrixRobustBufferAccess_allocs = (C.VkBool32)(x.CooperativeMatrixRobustBufferAccess), cgoAllocsUnknown
+ allocsff45ea3f.Borrow(ccooperativeMatrixRobustBufferAccess_allocs)
- x.refac8cf1d8 = refac8cf1d8
- x.allocsac8cf1d8 = allocsac8cf1d8
- return refac8cf1d8, allocsac8cf1d8
+ x.refff45ea3f = refff45ea3f
+ x.allocsff45ea3f = allocsff45ea3f
+ return refff45ea3f, allocsff45ea3f
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PastPresentationTimingGOOGLE) PassValue() (C.VkPastPresentationTimingGOOGLE, *cgoAllocMap) {
- if x.refac8cf1d8 != nil {
- return *x.refac8cf1d8, nil
+func (x PhysicalDeviceCooperativeMatrixFeaturesNV) PassValue() (C.VkPhysicalDeviceCooperativeMatrixFeaturesNV, *cgoAllocMap) {
+ if x.refff45ea3f != nil {
+ return *x.refff45ea3f, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -30011,88 +56714,91 @@ func (x PastPresentationTimingGOOGLE) PassValue() (C.VkPastPresentationTimingGOO
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PastPresentationTimingGOOGLE) Deref() {
- if x.refac8cf1d8 == nil {
+func (x *PhysicalDeviceCooperativeMatrixFeaturesNV) Deref() {
+ if x.refff45ea3f == nil {
return
}
- x.PresentID = (uint32)(x.refac8cf1d8.presentID)
- x.DesiredPresentTime = (uint64)(x.refac8cf1d8.desiredPresentTime)
- x.ActualPresentTime = (uint64)(x.refac8cf1d8.actualPresentTime)
- x.EarliestPresentTime = (uint64)(x.refac8cf1d8.earliestPresentTime)
- x.PresentMargin = (uint64)(x.refac8cf1d8.presentMargin)
+ x.SType = (StructureType)(x.refff45ea3f.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refff45ea3f.pNext))
+ x.CooperativeMatrix = (Bool32)(x.refff45ea3f.cooperativeMatrix)
+ x.CooperativeMatrixRobustBufferAccess = (Bool32)(x.refff45ea3f.cooperativeMatrixRobustBufferAccess)
}
-// allocPresentTimeGOOGLEMemory allocates memory for type C.VkPresentTimeGOOGLE in C.
+// allocPhysicalDeviceCooperativeMatrixPropertiesNVMemory allocates memory for type C.VkPhysicalDeviceCooperativeMatrixPropertiesNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPresentTimeGOOGLEMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPresentTimeGOOGLEValue))
+func allocPhysicalDeviceCooperativeMatrixPropertiesNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceCooperativeMatrixPropertiesNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPresentTimeGOOGLEValue = unsafe.Sizeof([1]C.VkPresentTimeGOOGLE{})
+const sizeOfPhysicalDeviceCooperativeMatrixPropertiesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceCooperativeMatrixPropertiesNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PresentTimeGOOGLE) Ref() *C.VkPresentTimeGOOGLE {
+func (x *PhysicalDeviceCooperativeMatrixPropertiesNV) Ref() *C.VkPhysicalDeviceCooperativeMatrixPropertiesNV {
if x == nil {
return nil
}
- return x.ref9cd90ade
+ return x.ref45336143
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PresentTimeGOOGLE) Free() {
- if x != nil && x.allocs9cd90ade != nil {
- x.allocs9cd90ade.(*cgoAllocMap).Free()
- x.ref9cd90ade = nil
+func (x *PhysicalDeviceCooperativeMatrixPropertiesNV) Free() {
+ if x != nil && x.allocs45336143 != nil {
+ x.allocs45336143.(*cgoAllocMap).Free()
+ x.ref45336143 = nil
}
}
-// NewPresentTimeGOOGLERef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceCooperativeMatrixPropertiesNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPresentTimeGOOGLERef(ref unsafe.Pointer) *PresentTimeGOOGLE {
+func NewPhysicalDeviceCooperativeMatrixPropertiesNVRef(ref unsafe.Pointer) *PhysicalDeviceCooperativeMatrixPropertiesNV {
if ref == nil {
return nil
}
- obj := new(PresentTimeGOOGLE)
- obj.ref9cd90ade = (*C.VkPresentTimeGOOGLE)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceCooperativeMatrixPropertiesNV)
+ obj.ref45336143 = (*C.VkPhysicalDeviceCooperativeMatrixPropertiesNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PresentTimeGOOGLE) PassRef() (*C.VkPresentTimeGOOGLE, *cgoAllocMap) {
+func (x *PhysicalDeviceCooperativeMatrixPropertiesNV) PassRef() (*C.VkPhysicalDeviceCooperativeMatrixPropertiesNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref9cd90ade != nil {
- return x.ref9cd90ade, nil
+ } else if x.ref45336143 != nil {
+ return x.ref45336143, nil
}
- mem9cd90ade := allocPresentTimeGOOGLEMemory(1)
- ref9cd90ade := (*C.VkPresentTimeGOOGLE)(mem9cd90ade)
- allocs9cd90ade := new(cgoAllocMap)
- allocs9cd90ade.Add(mem9cd90ade)
+ mem45336143 := allocPhysicalDeviceCooperativeMatrixPropertiesNVMemory(1)
+ ref45336143 := (*C.VkPhysicalDeviceCooperativeMatrixPropertiesNV)(mem45336143)
+ allocs45336143 := new(cgoAllocMap)
+ allocs45336143.Add(mem45336143)
- var cpresentID_allocs *cgoAllocMap
- ref9cd90ade.presentID, cpresentID_allocs = (C.uint32_t)(x.PresentID), cgoAllocsUnknown
- allocs9cd90ade.Borrow(cpresentID_allocs)
+ var csType_allocs *cgoAllocMap
+ ref45336143.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs45336143.Borrow(csType_allocs)
- var cdesiredPresentTime_allocs *cgoAllocMap
- ref9cd90ade.desiredPresentTime, cdesiredPresentTime_allocs = (C.uint64_t)(x.DesiredPresentTime), cgoAllocsUnknown
- allocs9cd90ade.Borrow(cdesiredPresentTime_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref45336143.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs45336143.Borrow(cpNext_allocs)
- x.ref9cd90ade = ref9cd90ade
- x.allocs9cd90ade = allocs9cd90ade
- return ref9cd90ade, allocs9cd90ade
+ var ccooperativeMatrixSupportedStages_allocs *cgoAllocMap
+ ref45336143.cooperativeMatrixSupportedStages, ccooperativeMatrixSupportedStages_allocs = (C.VkShaderStageFlags)(x.CooperativeMatrixSupportedStages), cgoAllocsUnknown
+ allocs45336143.Borrow(ccooperativeMatrixSupportedStages_allocs)
+
+ x.ref45336143 = ref45336143
+ x.allocs45336143 = allocs45336143
+ return ref45336143, allocs45336143
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PresentTimeGOOGLE) PassValue() (C.VkPresentTimeGOOGLE, *cgoAllocMap) {
- if x.ref9cd90ade != nil {
- return *x.ref9cd90ade, nil
+func (x PhysicalDeviceCooperativeMatrixPropertiesNV) PassValue() (C.VkPhysicalDeviceCooperativeMatrixPropertiesNV, *cgoAllocMap) {
+ if x.ref45336143 != nil {
+ return *x.ref45336143, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -30100,131 +56806,90 @@ func (x PresentTimeGOOGLE) PassValue() (C.VkPresentTimeGOOGLE, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PresentTimeGOOGLE) Deref() {
- if x.ref9cd90ade == nil {
+func (x *PhysicalDeviceCooperativeMatrixPropertiesNV) Deref() {
+ if x.ref45336143 == nil {
return
}
- x.PresentID = (uint32)(x.ref9cd90ade.presentID)
- x.DesiredPresentTime = (uint64)(x.ref9cd90ade.desiredPresentTime)
+ x.SType = (StructureType)(x.ref45336143.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref45336143.pNext))
+ x.CooperativeMatrixSupportedStages = (ShaderStageFlags)(x.ref45336143.cooperativeMatrixSupportedStages)
}
-// allocPresentTimesInfoGOOGLEMemory allocates memory for type C.VkPresentTimesInfoGOOGLE in C.
+// allocPhysicalDeviceCoverageReductionModeFeaturesNVMemory allocates memory for type C.VkPhysicalDeviceCoverageReductionModeFeaturesNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPresentTimesInfoGOOGLEMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPresentTimesInfoGOOGLEValue))
+func allocPhysicalDeviceCoverageReductionModeFeaturesNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceCoverageReductionModeFeaturesNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPresentTimesInfoGOOGLEValue = unsafe.Sizeof([1]C.VkPresentTimesInfoGOOGLE{})
-
-// unpackSPresentTimeGOOGLE transforms a sliced Go data structure into plain C format.
-func unpackSPresentTimeGOOGLE(x []PresentTimeGOOGLE) (unpacked *C.VkPresentTimeGOOGLE, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkPresentTimeGOOGLE) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocPresentTimeGOOGLEMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkPresentTimeGOOGLE)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkPresentTimeGOOGLE)(h.Data)
- return
-}
-
-// packSPresentTimeGOOGLE reads sliced Go data structure out from plain C format.
-func packSPresentTimeGOOGLE(v []PresentTimeGOOGLE, ptr0 *C.VkPresentTimeGOOGLE) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfPresentTimeGOOGLEValue]C.VkPresentTimeGOOGLE)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewPresentTimeGOOGLERef(unsafe.Pointer(&ptr1))
- }
-}
+const sizeOfPhysicalDeviceCoverageReductionModeFeaturesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceCoverageReductionModeFeaturesNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PresentTimesInfoGOOGLE) Ref() *C.VkPresentTimesInfoGOOGLE {
+func (x *PhysicalDeviceCoverageReductionModeFeaturesNV) Ref() *C.VkPhysicalDeviceCoverageReductionModeFeaturesNV {
if x == nil {
return nil
}
- return x.ref70eb8ab3
+ return x.ref1066c79
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PresentTimesInfoGOOGLE) Free() {
- if x != nil && x.allocs70eb8ab3 != nil {
- x.allocs70eb8ab3.(*cgoAllocMap).Free()
- x.ref70eb8ab3 = nil
+func (x *PhysicalDeviceCoverageReductionModeFeaturesNV) Free() {
+ if x != nil && x.allocs1066c79 != nil {
+ x.allocs1066c79.(*cgoAllocMap).Free()
+ x.ref1066c79 = nil
}
}
-// NewPresentTimesInfoGOOGLERef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceCoverageReductionModeFeaturesNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPresentTimesInfoGOOGLERef(ref unsafe.Pointer) *PresentTimesInfoGOOGLE {
+func NewPhysicalDeviceCoverageReductionModeFeaturesNVRef(ref unsafe.Pointer) *PhysicalDeviceCoverageReductionModeFeaturesNV {
if ref == nil {
return nil
}
- obj := new(PresentTimesInfoGOOGLE)
- obj.ref70eb8ab3 = (*C.VkPresentTimesInfoGOOGLE)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceCoverageReductionModeFeaturesNV)
+ obj.ref1066c79 = (*C.VkPhysicalDeviceCoverageReductionModeFeaturesNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PresentTimesInfoGOOGLE) PassRef() (*C.VkPresentTimesInfoGOOGLE, *cgoAllocMap) {
+func (x *PhysicalDeviceCoverageReductionModeFeaturesNV) PassRef() (*C.VkPhysicalDeviceCoverageReductionModeFeaturesNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref70eb8ab3 != nil {
- return x.ref70eb8ab3, nil
+ } else if x.ref1066c79 != nil {
+ return x.ref1066c79, nil
}
- mem70eb8ab3 := allocPresentTimesInfoGOOGLEMemory(1)
- ref70eb8ab3 := (*C.VkPresentTimesInfoGOOGLE)(mem70eb8ab3)
- allocs70eb8ab3 := new(cgoAllocMap)
- allocs70eb8ab3.Add(mem70eb8ab3)
+ mem1066c79 := allocPhysicalDeviceCoverageReductionModeFeaturesNVMemory(1)
+ ref1066c79 := (*C.VkPhysicalDeviceCoverageReductionModeFeaturesNV)(mem1066c79)
+ allocs1066c79 := new(cgoAllocMap)
+ allocs1066c79.Add(mem1066c79)
var csType_allocs *cgoAllocMap
- ref70eb8ab3.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs70eb8ab3.Borrow(csType_allocs)
+ ref1066c79.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs1066c79.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref70eb8ab3.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs70eb8ab3.Borrow(cpNext_allocs)
-
- var cswapchainCount_allocs *cgoAllocMap
- ref70eb8ab3.swapchainCount, cswapchainCount_allocs = (C.uint32_t)(x.SwapchainCount), cgoAllocsUnknown
- allocs70eb8ab3.Borrow(cswapchainCount_allocs)
+ ref1066c79.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs1066c79.Borrow(cpNext_allocs)
- var cpTimes_allocs *cgoAllocMap
- ref70eb8ab3.pTimes, cpTimes_allocs = unpackSPresentTimeGOOGLE(x.PTimes)
- allocs70eb8ab3.Borrow(cpTimes_allocs)
+ var ccoverageReductionMode_allocs *cgoAllocMap
+ ref1066c79.coverageReductionMode, ccoverageReductionMode_allocs = (C.VkBool32)(x.CoverageReductionMode), cgoAllocsUnknown
+ allocs1066c79.Borrow(ccoverageReductionMode_allocs)
- x.ref70eb8ab3 = ref70eb8ab3
- x.allocs70eb8ab3 = allocs70eb8ab3
- return ref70eb8ab3, allocs70eb8ab3
+ x.ref1066c79 = ref1066c79
+ x.allocs1066c79 = allocs1066c79
+ return ref1066c79, allocs1066c79
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PresentTimesInfoGOOGLE) PassValue() (C.VkPresentTimesInfoGOOGLE, *cgoAllocMap) {
- if x.ref70eb8ab3 != nil {
- return *x.ref70eb8ab3, nil
+func (x PhysicalDeviceCoverageReductionModeFeaturesNV) PassValue() (C.VkPhysicalDeviceCoverageReductionModeFeaturesNV, *cgoAllocMap) {
+ if x.ref1066c79 != nil {
+ return *x.ref1066c79, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -30232,91 +56897,94 @@ func (x PresentTimesInfoGOOGLE) PassValue() (C.VkPresentTimesInfoGOOGLE, *cgoAll
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PresentTimesInfoGOOGLE) Deref() {
- if x.ref70eb8ab3 == nil {
+func (x *PhysicalDeviceCoverageReductionModeFeaturesNV) Deref() {
+ if x.ref1066c79 == nil {
return
}
- x.SType = (StructureType)(x.ref70eb8ab3.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref70eb8ab3.pNext))
- x.SwapchainCount = (uint32)(x.ref70eb8ab3.swapchainCount)
- packSPresentTimeGOOGLE(x.PTimes, x.ref70eb8ab3.pTimes)
+ x.SType = (StructureType)(x.ref1066c79.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref1066c79.pNext))
+ x.CoverageReductionMode = (Bool32)(x.ref1066c79.coverageReductionMode)
}
-// allocPhysicalDeviceMultiviewPerViewAttributesPropertiesNVXMemory allocates memory for type C.VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX in C.
+// allocPipelineCoverageReductionStateCreateInfoNVMemory allocates memory for type C.VkPipelineCoverageReductionStateCreateInfoNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceMultiviewPerViewAttributesPropertiesNVXMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceMultiviewPerViewAttributesPropertiesNVXValue))
+func allocPipelineCoverageReductionStateCreateInfoNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineCoverageReductionStateCreateInfoNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceMultiviewPerViewAttributesPropertiesNVXValue = unsafe.Sizeof([1]C.VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX{})
+const sizeOfPipelineCoverageReductionStateCreateInfoNVValue = unsafe.Sizeof([1]C.VkPipelineCoverageReductionStateCreateInfoNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX) Ref() *C.VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX {
+func (x *PipelineCoverageReductionStateCreateInfoNV) Ref() *C.VkPipelineCoverageReductionStateCreateInfoNV {
if x == nil {
return nil
}
- return x.refbaf399ad
+ return x.ref39db618c
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX) Free() {
- if x != nil && x.allocsbaf399ad != nil {
- x.allocsbaf399ad.(*cgoAllocMap).Free()
- x.refbaf399ad = nil
+func (x *PipelineCoverageReductionStateCreateInfoNV) Free() {
+ if x != nil && x.allocs39db618c != nil {
+ x.allocs39db618c.(*cgoAllocMap).Free()
+ x.ref39db618c = nil
}
}
-// NewPhysicalDeviceMultiviewPerViewAttributesPropertiesNVXRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineCoverageReductionStateCreateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceMultiviewPerViewAttributesPropertiesNVXRef(ref unsafe.Pointer) *PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX {
+func NewPipelineCoverageReductionStateCreateInfoNVRef(ref unsafe.Pointer) *PipelineCoverageReductionStateCreateInfoNV {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX)
- obj.refbaf399ad = (*C.VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX)(unsafe.Pointer(ref))
+ obj := new(PipelineCoverageReductionStateCreateInfoNV)
+ obj.ref39db618c = (*C.VkPipelineCoverageReductionStateCreateInfoNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX) PassRef() (*C.VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX, *cgoAllocMap) {
+func (x *PipelineCoverageReductionStateCreateInfoNV) PassRef() (*C.VkPipelineCoverageReductionStateCreateInfoNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refbaf399ad != nil {
- return x.refbaf399ad, nil
+ } else if x.ref39db618c != nil {
+ return x.ref39db618c, nil
}
- membaf399ad := allocPhysicalDeviceMultiviewPerViewAttributesPropertiesNVXMemory(1)
- refbaf399ad := (*C.VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX)(membaf399ad)
- allocsbaf399ad := new(cgoAllocMap)
- allocsbaf399ad.Add(membaf399ad)
+ mem39db618c := allocPipelineCoverageReductionStateCreateInfoNVMemory(1)
+ ref39db618c := (*C.VkPipelineCoverageReductionStateCreateInfoNV)(mem39db618c)
+ allocs39db618c := new(cgoAllocMap)
+ allocs39db618c.Add(mem39db618c)
var csType_allocs *cgoAllocMap
- refbaf399ad.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsbaf399ad.Borrow(csType_allocs)
+ ref39db618c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs39db618c.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refbaf399ad.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsbaf399ad.Borrow(cpNext_allocs)
+ ref39db618c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs39db618c.Borrow(cpNext_allocs)
- var cperViewPositionAllComponents_allocs *cgoAllocMap
- refbaf399ad.perViewPositionAllComponents, cperViewPositionAllComponents_allocs = (C.VkBool32)(x.PerViewPositionAllComponents), cgoAllocsUnknown
- allocsbaf399ad.Borrow(cperViewPositionAllComponents_allocs)
+ var cflags_allocs *cgoAllocMap
+ ref39db618c.flags, cflags_allocs = (C.VkPipelineCoverageReductionStateCreateFlagsNV)(x.Flags), cgoAllocsUnknown
+ allocs39db618c.Borrow(cflags_allocs)
- x.refbaf399ad = refbaf399ad
- x.allocsbaf399ad = allocsbaf399ad
- return refbaf399ad, allocsbaf399ad
+ var ccoverageReductionMode_allocs *cgoAllocMap
+ ref39db618c.coverageReductionMode, ccoverageReductionMode_allocs = (C.VkCoverageReductionModeNV)(x.CoverageReductionMode), cgoAllocsUnknown
+ allocs39db618c.Borrow(ccoverageReductionMode_allocs)
+
+ x.ref39db618c = ref39db618c
+ x.allocs39db618c = allocs39db618c
+ return ref39db618c, allocs39db618c
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX) PassValue() (C.VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX, *cgoAllocMap) {
- if x.refbaf399ad != nil {
- return *x.refbaf399ad, nil
+func (x PipelineCoverageReductionStateCreateInfoNV) PassValue() (C.VkPipelineCoverageReductionStateCreateInfoNV, *cgoAllocMap) {
+ if x.ref39db618c != nil {
+ return *x.ref39db618c, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -30324,94 +56992,103 @@ func (x PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX) PassValue() (C.Vk
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX) Deref() {
- if x.refbaf399ad == nil {
+func (x *PipelineCoverageReductionStateCreateInfoNV) Deref() {
+ if x.ref39db618c == nil {
return
}
- x.SType = (StructureType)(x.refbaf399ad.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refbaf399ad.pNext))
- x.PerViewPositionAllComponents = (Bool32)(x.refbaf399ad.perViewPositionAllComponents)
+ x.SType = (StructureType)(x.ref39db618c.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref39db618c.pNext))
+ x.Flags = (PipelineCoverageReductionStateCreateFlagsNV)(x.ref39db618c.flags)
+ x.CoverageReductionMode = (CoverageReductionModeNV)(x.ref39db618c.coverageReductionMode)
}
-// allocViewportSwizzleNVMemory allocates memory for type C.VkViewportSwizzleNV in C.
+// allocFramebufferMixedSamplesCombinationNVMemory allocates memory for type C.VkFramebufferMixedSamplesCombinationNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocViewportSwizzleNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfViewportSwizzleNVValue))
+func allocFramebufferMixedSamplesCombinationNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfFramebufferMixedSamplesCombinationNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfViewportSwizzleNVValue = unsafe.Sizeof([1]C.VkViewportSwizzleNV{})
+const sizeOfFramebufferMixedSamplesCombinationNVValue = unsafe.Sizeof([1]C.VkFramebufferMixedSamplesCombinationNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ViewportSwizzleNV) Ref() *C.VkViewportSwizzleNV {
+func (x *FramebufferMixedSamplesCombinationNV) Ref() *C.VkFramebufferMixedSamplesCombinationNV {
if x == nil {
return nil
}
- return x.ref74ff2887
+ return x.ref75affbab
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ViewportSwizzleNV) Free() {
- if x != nil && x.allocs74ff2887 != nil {
- x.allocs74ff2887.(*cgoAllocMap).Free()
- x.ref74ff2887 = nil
+func (x *FramebufferMixedSamplesCombinationNV) Free() {
+ if x != nil && x.allocs75affbab != nil {
+ x.allocs75affbab.(*cgoAllocMap).Free()
+ x.ref75affbab = nil
}
}
-// NewViewportSwizzleNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewFramebufferMixedSamplesCombinationNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewViewportSwizzleNVRef(ref unsafe.Pointer) *ViewportSwizzleNV {
+func NewFramebufferMixedSamplesCombinationNVRef(ref unsafe.Pointer) *FramebufferMixedSamplesCombinationNV {
if ref == nil {
return nil
}
- obj := new(ViewportSwizzleNV)
- obj.ref74ff2887 = (*C.VkViewportSwizzleNV)(unsafe.Pointer(ref))
+ obj := new(FramebufferMixedSamplesCombinationNV)
+ obj.ref75affbab = (*C.VkFramebufferMixedSamplesCombinationNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ViewportSwizzleNV) PassRef() (*C.VkViewportSwizzleNV, *cgoAllocMap) {
+func (x *FramebufferMixedSamplesCombinationNV) PassRef() (*C.VkFramebufferMixedSamplesCombinationNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref74ff2887 != nil {
- return x.ref74ff2887, nil
+ } else if x.ref75affbab != nil {
+ return x.ref75affbab, nil
}
- mem74ff2887 := allocViewportSwizzleNVMemory(1)
- ref74ff2887 := (*C.VkViewportSwizzleNV)(mem74ff2887)
- allocs74ff2887 := new(cgoAllocMap)
- allocs74ff2887.Add(mem74ff2887)
+ mem75affbab := allocFramebufferMixedSamplesCombinationNVMemory(1)
+ ref75affbab := (*C.VkFramebufferMixedSamplesCombinationNV)(mem75affbab)
+ allocs75affbab := new(cgoAllocMap)
+ allocs75affbab.Add(mem75affbab)
- var cx_allocs *cgoAllocMap
- ref74ff2887.x, cx_allocs = (C.VkViewportCoordinateSwizzleNV)(x.X), cgoAllocsUnknown
- allocs74ff2887.Borrow(cx_allocs)
+ var csType_allocs *cgoAllocMap
+ ref75affbab.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs75affbab.Borrow(csType_allocs)
- var cy_allocs *cgoAllocMap
- ref74ff2887.y, cy_allocs = (C.VkViewportCoordinateSwizzleNV)(x.Y), cgoAllocsUnknown
- allocs74ff2887.Borrow(cy_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref75affbab.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs75affbab.Borrow(cpNext_allocs)
- var cz_allocs *cgoAllocMap
- ref74ff2887.z, cz_allocs = (C.VkViewportCoordinateSwizzleNV)(x.Z), cgoAllocsUnknown
- allocs74ff2887.Borrow(cz_allocs)
+ var ccoverageReductionMode_allocs *cgoAllocMap
+ ref75affbab.coverageReductionMode, ccoverageReductionMode_allocs = (C.VkCoverageReductionModeNV)(x.CoverageReductionMode), cgoAllocsUnknown
+ allocs75affbab.Borrow(ccoverageReductionMode_allocs)
- var cw_allocs *cgoAllocMap
- ref74ff2887.w, cw_allocs = (C.VkViewportCoordinateSwizzleNV)(x.W), cgoAllocsUnknown
- allocs74ff2887.Borrow(cw_allocs)
+ var crasterizationSamples_allocs *cgoAllocMap
+ ref75affbab.rasterizationSamples, crasterizationSamples_allocs = (C.VkSampleCountFlagBits)(x.RasterizationSamples), cgoAllocsUnknown
+ allocs75affbab.Borrow(crasterizationSamples_allocs)
- x.ref74ff2887 = ref74ff2887
- x.allocs74ff2887 = allocs74ff2887
- return ref74ff2887, allocs74ff2887
+ var cdepthStencilSamples_allocs *cgoAllocMap
+ ref75affbab.depthStencilSamples, cdepthStencilSamples_allocs = (C.VkSampleCountFlags)(x.DepthStencilSamples), cgoAllocsUnknown
+ allocs75affbab.Borrow(cdepthStencilSamples_allocs)
+
+ var ccolorSamples_allocs *cgoAllocMap
+ ref75affbab.colorSamples, ccolorSamples_allocs = (C.VkSampleCountFlags)(x.ColorSamples), cgoAllocsUnknown
+ allocs75affbab.Borrow(ccolorSamples_allocs)
+
+ x.ref75affbab = ref75affbab
+ x.allocs75affbab = allocs75affbab
+ return ref75affbab, allocs75affbab
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ViewportSwizzleNV) PassValue() (C.VkViewportSwizzleNV, *cgoAllocMap) {
- if x.ref74ff2887 != nil {
- return *x.ref74ff2887, nil
+func (x FramebufferMixedSamplesCombinationNV) PassValue() (C.VkFramebufferMixedSamplesCombinationNV, *cgoAllocMap) {
+ if x.ref75affbab != nil {
+ return *x.ref75affbab, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -30419,137 +57096,101 @@ func (x ViewportSwizzleNV) PassValue() (C.VkViewportSwizzleNV, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ViewportSwizzleNV) Deref() {
- if x.ref74ff2887 == nil {
+func (x *FramebufferMixedSamplesCombinationNV) Deref() {
+ if x.ref75affbab == nil {
return
}
- x.X = (ViewportCoordinateSwizzleNV)(x.ref74ff2887.x)
- x.Y = (ViewportCoordinateSwizzleNV)(x.ref74ff2887.y)
- x.Z = (ViewportCoordinateSwizzleNV)(x.ref74ff2887.z)
- x.W = (ViewportCoordinateSwizzleNV)(x.ref74ff2887.w)
+ x.SType = (StructureType)(x.ref75affbab.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref75affbab.pNext))
+ x.CoverageReductionMode = (CoverageReductionModeNV)(x.ref75affbab.coverageReductionMode)
+ x.RasterizationSamples = (SampleCountFlagBits)(x.ref75affbab.rasterizationSamples)
+ x.DepthStencilSamples = (SampleCountFlags)(x.ref75affbab.depthStencilSamples)
+ x.ColorSamples = (SampleCountFlags)(x.ref75affbab.colorSamples)
}
-// allocPipelineViewportSwizzleStateCreateInfoNVMemory allocates memory for type C.VkPipelineViewportSwizzleStateCreateInfoNV in C.
+// allocPhysicalDeviceFragmentShaderInterlockFeaturesMemory allocates memory for type C.VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPipelineViewportSwizzleStateCreateInfoNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineViewportSwizzleStateCreateInfoNVValue))
+func allocPhysicalDeviceFragmentShaderInterlockFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceFragmentShaderInterlockFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPipelineViewportSwizzleStateCreateInfoNVValue = unsafe.Sizeof([1]C.VkPipelineViewportSwizzleStateCreateInfoNV{})
-
-// unpackSViewportSwizzleNV transforms a sliced Go data structure into plain C format.
-func unpackSViewportSwizzleNV(x []ViewportSwizzleNV) (unpacked *C.VkViewportSwizzleNV, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkViewportSwizzleNV) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocViewportSwizzleNVMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkViewportSwizzleNV)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkViewportSwizzleNV)(h.Data)
- return
-}
-
-// packSViewportSwizzleNV reads sliced Go data structure out from plain C format.
-func packSViewportSwizzleNV(v []ViewportSwizzleNV, ptr0 *C.VkViewportSwizzleNV) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfViewportSwizzleNVValue]C.VkViewportSwizzleNV)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewViewportSwizzleNVRef(unsafe.Pointer(&ptr1))
- }
-}
+const sizeOfPhysicalDeviceFragmentShaderInterlockFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PipelineViewportSwizzleStateCreateInfoNV) Ref() *C.VkPipelineViewportSwizzleStateCreateInfoNV {
+func (x *PhysicalDeviceFragmentShaderInterlockFeatures) Ref() *C.VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT {
if x == nil {
return nil
}
- return x.ref5e90f24
+ return x.ref1ed4955d
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PipelineViewportSwizzleStateCreateInfoNV) Free() {
- if x != nil && x.allocs5e90f24 != nil {
- x.allocs5e90f24.(*cgoAllocMap).Free()
- x.ref5e90f24 = nil
+func (x *PhysicalDeviceFragmentShaderInterlockFeatures) Free() {
+ if x != nil && x.allocs1ed4955d != nil {
+ x.allocs1ed4955d.(*cgoAllocMap).Free()
+ x.ref1ed4955d = nil
}
}
-// NewPipelineViewportSwizzleStateCreateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceFragmentShaderInterlockFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPipelineViewportSwizzleStateCreateInfoNVRef(ref unsafe.Pointer) *PipelineViewportSwizzleStateCreateInfoNV {
+func NewPhysicalDeviceFragmentShaderInterlockFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceFragmentShaderInterlockFeatures {
if ref == nil {
return nil
}
- obj := new(PipelineViewportSwizzleStateCreateInfoNV)
- obj.ref5e90f24 = (*C.VkPipelineViewportSwizzleStateCreateInfoNV)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceFragmentShaderInterlockFeatures)
+ obj.ref1ed4955d = (*C.VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PipelineViewportSwizzleStateCreateInfoNV) PassRef() (*C.VkPipelineViewportSwizzleStateCreateInfoNV, *cgoAllocMap) {
+func (x *PhysicalDeviceFragmentShaderInterlockFeatures) PassRef() (*C.VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref5e90f24 != nil {
- return x.ref5e90f24, nil
+ } else if x.ref1ed4955d != nil {
+ return x.ref1ed4955d, nil
}
- mem5e90f24 := allocPipelineViewportSwizzleStateCreateInfoNVMemory(1)
- ref5e90f24 := (*C.VkPipelineViewportSwizzleStateCreateInfoNV)(mem5e90f24)
- allocs5e90f24 := new(cgoAllocMap)
- allocs5e90f24.Add(mem5e90f24)
+ mem1ed4955d := allocPhysicalDeviceFragmentShaderInterlockFeaturesMemory(1)
+ ref1ed4955d := (*C.VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT)(mem1ed4955d)
+ allocs1ed4955d := new(cgoAllocMap)
+ allocs1ed4955d.Add(mem1ed4955d)
var csType_allocs *cgoAllocMap
- ref5e90f24.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs5e90f24.Borrow(csType_allocs)
+ ref1ed4955d.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs1ed4955d.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref5e90f24.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs5e90f24.Borrow(cpNext_allocs)
+ ref1ed4955d.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs1ed4955d.Borrow(cpNext_allocs)
- var cflags_allocs *cgoAllocMap
- ref5e90f24.flags, cflags_allocs = (C.VkPipelineViewportSwizzleStateCreateFlagsNV)(x.Flags), cgoAllocsUnknown
- allocs5e90f24.Borrow(cflags_allocs)
+ var cfragmentShaderSampleInterlock_allocs *cgoAllocMap
+ ref1ed4955d.fragmentShaderSampleInterlock, cfragmentShaderSampleInterlock_allocs = (C.VkBool32)(x.FragmentShaderSampleInterlock), cgoAllocsUnknown
+ allocs1ed4955d.Borrow(cfragmentShaderSampleInterlock_allocs)
- var cviewportCount_allocs *cgoAllocMap
- ref5e90f24.viewportCount, cviewportCount_allocs = (C.uint32_t)(x.ViewportCount), cgoAllocsUnknown
- allocs5e90f24.Borrow(cviewportCount_allocs)
+ var cfragmentShaderPixelInterlock_allocs *cgoAllocMap
+ ref1ed4955d.fragmentShaderPixelInterlock, cfragmentShaderPixelInterlock_allocs = (C.VkBool32)(x.FragmentShaderPixelInterlock), cgoAllocsUnknown
+ allocs1ed4955d.Borrow(cfragmentShaderPixelInterlock_allocs)
- var cpViewportSwizzles_allocs *cgoAllocMap
- ref5e90f24.pViewportSwizzles, cpViewportSwizzles_allocs = unpackSViewportSwizzleNV(x.PViewportSwizzles)
- allocs5e90f24.Borrow(cpViewportSwizzles_allocs)
+ var cfragmentShaderShadingRateInterlock_allocs *cgoAllocMap
+ ref1ed4955d.fragmentShaderShadingRateInterlock, cfragmentShaderShadingRateInterlock_allocs = (C.VkBool32)(x.FragmentShaderShadingRateInterlock), cgoAllocsUnknown
+ allocs1ed4955d.Borrow(cfragmentShaderShadingRateInterlock_allocs)
- x.ref5e90f24 = ref5e90f24
- x.allocs5e90f24 = allocs5e90f24
- return ref5e90f24, allocs5e90f24
+ x.ref1ed4955d = ref1ed4955d
+ x.allocs1ed4955d = allocs1ed4955d
+ return ref1ed4955d, allocs1ed4955d
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PipelineViewportSwizzleStateCreateInfoNV) PassValue() (C.VkPipelineViewportSwizzleStateCreateInfoNV, *cgoAllocMap) {
- if x.ref5e90f24 != nil {
- return *x.ref5e90f24, nil
+func (x PhysicalDeviceFragmentShaderInterlockFeatures) PassValue() (C.VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT, *cgoAllocMap) {
+ if x.ref1ed4955d != nil {
+ return *x.ref1ed4955d, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -30557,92 +57198,92 @@ func (x PipelineViewportSwizzleStateCreateInfoNV) PassValue() (C.VkPipelineViewp
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PipelineViewportSwizzleStateCreateInfoNV) Deref() {
- if x.ref5e90f24 == nil {
+func (x *PhysicalDeviceFragmentShaderInterlockFeatures) Deref() {
+ if x.ref1ed4955d == nil {
return
}
- x.SType = (StructureType)(x.ref5e90f24.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5e90f24.pNext))
- x.Flags = (PipelineViewportSwizzleStateCreateFlagsNV)(x.ref5e90f24.flags)
- x.ViewportCount = (uint32)(x.ref5e90f24.viewportCount)
- packSViewportSwizzleNV(x.PViewportSwizzles, x.ref5e90f24.pViewportSwizzles)
+ x.SType = (StructureType)(x.ref1ed4955d.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref1ed4955d.pNext))
+ x.FragmentShaderSampleInterlock = (Bool32)(x.ref1ed4955d.fragmentShaderSampleInterlock)
+ x.FragmentShaderPixelInterlock = (Bool32)(x.ref1ed4955d.fragmentShaderPixelInterlock)
+ x.FragmentShaderShadingRateInterlock = (Bool32)(x.ref1ed4955d.fragmentShaderShadingRateInterlock)
}
-// allocPhysicalDeviceDiscardRectanglePropertiesMemory allocates memory for type C.VkPhysicalDeviceDiscardRectanglePropertiesEXT in C.
+// allocPhysicalDeviceYcbcrImageArraysFeaturesMemory allocates memory for type C.VkPhysicalDeviceYcbcrImageArraysFeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceDiscardRectanglePropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceDiscardRectanglePropertiesValue))
+func allocPhysicalDeviceYcbcrImageArraysFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceYcbcrImageArraysFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceDiscardRectanglePropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceDiscardRectanglePropertiesEXT{})
+const sizeOfPhysicalDeviceYcbcrImageArraysFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceYcbcrImageArraysFeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceDiscardRectangleProperties) Ref() *C.VkPhysicalDeviceDiscardRectanglePropertiesEXT {
+func (x *PhysicalDeviceYcbcrImageArraysFeatures) Ref() *C.VkPhysicalDeviceYcbcrImageArraysFeaturesEXT {
if x == nil {
return nil
}
- return x.reffe8591da
+ return x.ref3198007
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceDiscardRectangleProperties) Free() {
- if x != nil && x.allocsfe8591da != nil {
- x.allocsfe8591da.(*cgoAllocMap).Free()
- x.reffe8591da = nil
+func (x *PhysicalDeviceYcbcrImageArraysFeatures) Free() {
+ if x != nil && x.allocs3198007 != nil {
+ x.allocs3198007.(*cgoAllocMap).Free()
+ x.ref3198007 = nil
}
}
-// NewPhysicalDeviceDiscardRectanglePropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceYcbcrImageArraysFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceDiscardRectanglePropertiesRef(ref unsafe.Pointer) *PhysicalDeviceDiscardRectangleProperties {
+func NewPhysicalDeviceYcbcrImageArraysFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceYcbcrImageArraysFeatures {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceDiscardRectangleProperties)
- obj.reffe8591da = (*C.VkPhysicalDeviceDiscardRectanglePropertiesEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceYcbcrImageArraysFeatures)
+ obj.ref3198007 = (*C.VkPhysicalDeviceYcbcrImageArraysFeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceDiscardRectangleProperties) PassRef() (*C.VkPhysicalDeviceDiscardRectanglePropertiesEXT, *cgoAllocMap) {
+func (x *PhysicalDeviceYcbcrImageArraysFeatures) PassRef() (*C.VkPhysicalDeviceYcbcrImageArraysFeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.reffe8591da != nil {
- return x.reffe8591da, nil
+ } else if x.ref3198007 != nil {
+ return x.ref3198007, nil
}
- memfe8591da := allocPhysicalDeviceDiscardRectanglePropertiesMemory(1)
- reffe8591da := (*C.VkPhysicalDeviceDiscardRectanglePropertiesEXT)(memfe8591da)
- allocsfe8591da := new(cgoAllocMap)
- allocsfe8591da.Add(memfe8591da)
+ mem3198007 := allocPhysicalDeviceYcbcrImageArraysFeaturesMemory(1)
+ ref3198007 := (*C.VkPhysicalDeviceYcbcrImageArraysFeaturesEXT)(mem3198007)
+ allocs3198007 := new(cgoAllocMap)
+ allocs3198007.Add(mem3198007)
var csType_allocs *cgoAllocMap
- reffe8591da.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsfe8591da.Borrow(csType_allocs)
+ ref3198007.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs3198007.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- reffe8591da.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsfe8591da.Borrow(cpNext_allocs)
+ ref3198007.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs3198007.Borrow(cpNext_allocs)
- var cmaxDiscardRectangles_allocs *cgoAllocMap
- reffe8591da.maxDiscardRectangles, cmaxDiscardRectangles_allocs = (C.uint32_t)(x.MaxDiscardRectangles), cgoAllocsUnknown
- allocsfe8591da.Borrow(cmaxDiscardRectangles_allocs)
+ var cycbcrImageArrays_allocs *cgoAllocMap
+ ref3198007.ycbcrImageArrays, cycbcrImageArrays_allocs = (C.VkBool32)(x.YcbcrImageArrays), cgoAllocsUnknown
+ allocs3198007.Borrow(cycbcrImageArrays_allocs)
- x.reffe8591da = reffe8591da
- x.allocsfe8591da = allocsfe8591da
- return reffe8591da, allocsfe8591da
+ x.ref3198007 = ref3198007
+ x.allocs3198007 = allocs3198007
+ return ref3198007, allocs3198007
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceDiscardRectangleProperties) PassValue() (C.VkPhysicalDeviceDiscardRectanglePropertiesEXT, *cgoAllocMap) {
- if x.reffe8591da != nil {
- return *x.reffe8591da, nil
+func (x PhysicalDeviceYcbcrImageArraysFeatures) PassValue() (C.VkPhysicalDeviceYcbcrImageArraysFeaturesEXT, *cgoAllocMap) {
+ if x.ref3198007 != nil {
+ return *x.ref3198007, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -30650,102 +57291,94 @@ func (x PhysicalDeviceDiscardRectangleProperties) PassValue() (C.VkPhysicalDevic
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceDiscardRectangleProperties) Deref() {
- if x.reffe8591da == nil {
+func (x *PhysicalDeviceYcbcrImageArraysFeatures) Deref() {
+ if x.ref3198007 == nil {
return
}
- x.SType = (StructureType)(x.reffe8591da.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reffe8591da.pNext))
- x.MaxDiscardRectangles = (uint32)(x.reffe8591da.maxDiscardRectangles)
+ x.SType = (StructureType)(x.ref3198007.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref3198007.pNext))
+ x.YcbcrImageArrays = (Bool32)(x.ref3198007.ycbcrImageArrays)
}
-// allocPipelineDiscardRectangleStateCreateInfoMemory allocates memory for type C.VkPipelineDiscardRectangleStateCreateInfoEXT in C.
+// allocPhysicalDeviceProvokingVertexFeaturesMemory allocates memory for type C.VkPhysicalDeviceProvokingVertexFeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPipelineDiscardRectangleStateCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineDiscardRectangleStateCreateInfoValue))
+func allocPhysicalDeviceProvokingVertexFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceProvokingVertexFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPipelineDiscardRectangleStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineDiscardRectangleStateCreateInfoEXT{})
+const sizeOfPhysicalDeviceProvokingVertexFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceProvokingVertexFeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PipelineDiscardRectangleStateCreateInfo) Ref() *C.VkPipelineDiscardRectangleStateCreateInfoEXT {
+func (x *PhysicalDeviceProvokingVertexFeatures) Ref() *C.VkPhysicalDeviceProvokingVertexFeaturesEXT {
if x == nil {
return nil
}
- return x.refcdbb125e
+ return x.ref3e34d575
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PipelineDiscardRectangleStateCreateInfo) Free() {
- if x != nil && x.allocscdbb125e != nil {
- x.allocscdbb125e.(*cgoAllocMap).Free()
- x.refcdbb125e = nil
+func (x *PhysicalDeviceProvokingVertexFeatures) Free() {
+ if x != nil && x.allocs3e34d575 != nil {
+ x.allocs3e34d575.(*cgoAllocMap).Free()
+ x.ref3e34d575 = nil
}
}
-// NewPipelineDiscardRectangleStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceProvokingVertexFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPipelineDiscardRectangleStateCreateInfoRef(ref unsafe.Pointer) *PipelineDiscardRectangleStateCreateInfo {
+func NewPhysicalDeviceProvokingVertexFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceProvokingVertexFeatures {
if ref == nil {
return nil
}
- obj := new(PipelineDiscardRectangleStateCreateInfo)
- obj.refcdbb125e = (*C.VkPipelineDiscardRectangleStateCreateInfoEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceProvokingVertexFeatures)
+ obj.ref3e34d575 = (*C.VkPhysicalDeviceProvokingVertexFeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PipelineDiscardRectangleStateCreateInfo) PassRef() (*C.VkPipelineDiscardRectangleStateCreateInfoEXT, *cgoAllocMap) {
+func (x *PhysicalDeviceProvokingVertexFeatures) PassRef() (*C.VkPhysicalDeviceProvokingVertexFeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refcdbb125e != nil {
- return x.refcdbb125e, nil
+ } else if x.ref3e34d575 != nil {
+ return x.ref3e34d575, nil
}
- memcdbb125e := allocPipelineDiscardRectangleStateCreateInfoMemory(1)
- refcdbb125e := (*C.VkPipelineDiscardRectangleStateCreateInfoEXT)(memcdbb125e)
- allocscdbb125e := new(cgoAllocMap)
- allocscdbb125e.Add(memcdbb125e)
+ mem3e34d575 := allocPhysicalDeviceProvokingVertexFeaturesMemory(1)
+ ref3e34d575 := (*C.VkPhysicalDeviceProvokingVertexFeaturesEXT)(mem3e34d575)
+ allocs3e34d575 := new(cgoAllocMap)
+ allocs3e34d575.Add(mem3e34d575)
var csType_allocs *cgoAllocMap
- refcdbb125e.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocscdbb125e.Borrow(csType_allocs)
+ ref3e34d575.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs3e34d575.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refcdbb125e.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocscdbb125e.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- refcdbb125e.flags, cflags_allocs = (C.VkPipelineDiscardRectangleStateCreateFlagsEXT)(x.Flags), cgoAllocsUnknown
- allocscdbb125e.Borrow(cflags_allocs)
-
- var cdiscardRectangleMode_allocs *cgoAllocMap
- refcdbb125e.discardRectangleMode, cdiscardRectangleMode_allocs = (C.VkDiscardRectangleModeEXT)(x.DiscardRectangleMode), cgoAllocsUnknown
- allocscdbb125e.Borrow(cdiscardRectangleMode_allocs)
+ ref3e34d575.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs3e34d575.Borrow(cpNext_allocs)
- var cdiscardRectangleCount_allocs *cgoAllocMap
- refcdbb125e.discardRectangleCount, cdiscardRectangleCount_allocs = (C.uint32_t)(x.DiscardRectangleCount), cgoAllocsUnknown
- allocscdbb125e.Borrow(cdiscardRectangleCount_allocs)
+ var cprovokingVertexLast_allocs *cgoAllocMap
+ ref3e34d575.provokingVertexLast, cprovokingVertexLast_allocs = (C.VkBool32)(x.ProvokingVertexLast), cgoAllocsUnknown
+ allocs3e34d575.Borrow(cprovokingVertexLast_allocs)
- var cpDiscardRectangles_allocs *cgoAllocMap
- refcdbb125e.pDiscardRectangles, cpDiscardRectangles_allocs = unpackSRect2D(x.PDiscardRectangles)
- allocscdbb125e.Borrow(cpDiscardRectangles_allocs)
+ var ctransformFeedbackPreservesProvokingVertex_allocs *cgoAllocMap
+ ref3e34d575.transformFeedbackPreservesProvokingVertex, ctransformFeedbackPreservesProvokingVertex_allocs = (C.VkBool32)(x.TransformFeedbackPreservesProvokingVertex), cgoAllocsUnknown
+ allocs3e34d575.Borrow(ctransformFeedbackPreservesProvokingVertex_allocs)
- x.refcdbb125e = refcdbb125e
- x.allocscdbb125e = allocscdbb125e
- return refcdbb125e, allocscdbb125e
+ x.ref3e34d575 = ref3e34d575
+ x.allocs3e34d575 = allocs3e34d575
+ return ref3e34d575, allocs3e34d575
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PipelineDiscardRectangleStateCreateInfo) PassValue() (C.VkPipelineDiscardRectangleStateCreateInfoEXT, *cgoAllocMap) {
- if x.refcdbb125e != nil {
- return *x.refcdbb125e, nil
+func (x PhysicalDeviceProvokingVertexFeatures) PassValue() (C.VkPhysicalDeviceProvokingVertexFeaturesEXT, *cgoAllocMap) {
+ if x.ref3e34d575 != nil {
+ return *x.ref3e34d575, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -30753,125 +57386,95 @@ func (x PipelineDiscardRectangleStateCreateInfo) PassValue() (C.VkPipelineDiscar
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PipelineDiscardRectangleStateCreateInfo) Deref() {
- if x.refcdbb125e == nil {
+func (x *PhysicalDeviceProvokingVertexFeatures) Deref() {
+ if x.ref3e34d575 == nil {
return
}
- x.SType = (StructureType)(x.refcdbb125e.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refcdbb125e.pNext))
- x.Flags = (PipelineDiscardRectangleStateCreateFlags)(x.refcdbb125e.flags)
- x.DiscardRectangleMode = (DiscardRectangleMode)(x.refcdbb125e.discardRectangleMode)
- x.DiscardRectangleCount = (uint32)(x.refcdbb125e.discardRectangleCount)
- packSRect2D(x.PDiscardRectangles, x.refcdbb125e.pDiscardRectangles)
+ x.SType = (StructureType)(x.ref3e34d575.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref3e34d575.pNext))
+ x.ProvokingVertexLast = (Bool32)(x.ref3e34d575.provokingVertexLast)
+ x.TransformFeedbackPreservesProvokingVertex = (Bool32)(x.ref3e34d575.transformFeedbackPreservesProvokingVertex)
}
-// allocPhysicalDeviceConservativeRasterizationPropertiesMemory allocates memory for type C.VkPhysicalDeviceConservativeRasterizationPropertiesEXT in C.
+// allocPhysicalDeviceProvokingVertexPropertiesMemory allocates memory for type C.VkPhysicalDeviceProvokingVertexPropertiesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceConservativeRasterizationPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceConservativeRasterizationPropertiesValue))
+func allocPhysicalDeviceProvokingVertexPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceProvokingVertexPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceConservativeRasterizationPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceConservativeRasterizationPropertiesEXT{})
+const sizeOfPhysicalDeviceProvokingVertexPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceProvokingVertexPropertiesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceConservativeRasterizationProperties) Ref() *C.VkPhysicalDeviceConservativeRasterizationPropertiesEXT {
+func (x *PhysicalDeviceProvokingVertexProperties) Ref() *C.VkPhysicalDeviceProvokingVertexPropertiesEXT {
if x == nil {
return nil
}
- return x.ref878f819c
+ return x.refa8810910
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceConservativeRasterizationProperties) Free() {
- if x != nil && x.allocs878f819c != nil {
- x.allocs878f819c.(*cgoAllocMap).Free()
- x.ref878f819c = nil
+func (x *PhysicalDeviceProvokingVertexProperties) Free() {
+ if x != nil && x.allocsa8810910 != nil {
+ x.allocsa8810910.(*cgoAllocMap).Free()
+ x.refa8810910 = nil
}
}
-// NewPhysicalDeviceConservativeRasterizationPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceProvokingVertexPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceConservativeRasterizationPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceConservativeRasterizationProperties {
+func NewPhysicalDeviceProvokingVertexPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceProvokingVertexProperties {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceConservativeRasterizationProperties)
- obj.ref878f819c = (*C.VkPhysicalDeviceConservativeRasterizationPropertiesEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceProvokingVertexProperties)
+ obj.refa8810910 = (*C.VkPhysicalDeviceProvokingVertexPropertiesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceConservativeRasterizationProperties) PassRef() (*C.VkPhysicalDeviceConservativeRasterizationPropertiesEXT, *cgoAllocMap) {
+func (x *PhysicalDeviceProvokingVertexProperties) PassRef() (*C.VkPhysicalDeviceProvokingVertexPropertiesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref878f819c != nil {
- return x.ref878f819c, nil
+ } else if x.refa8810910 != nil {
+ return x.refa8810910, nil
}
- mem878f819c := allocPhysicalDeviceConservativeRasterizationPropertiesMemory(1)
- ref878f819c := (*C.VkPhysicalDeviceConservativeRasterizationPropertiesEXT)(mem878f819c)
- allocs878f819c := new(cgoAllocMap)
- allocs878f819c.Add(mem878f819c)
+ mema8810910 := allocPhysicalDeviceProvokingVertexPropertiesMemory(1)
+ refa8810910 := (*C.VkPhysicalDeviceProvokingVertexPropertiesEXT)(mema8810910)
+ allocsa8810910 := new(cgoAllocMap)
+ allocsa8810910.Add(mema8810910)
var csType_allocs *cgoAllocMap
- ref878f819c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs878f819c.Borrow(csType_allocs)
+ refa8810910.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsa8810910.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref878f819c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs878f819c.Borrow(cpNext_allocs)
-
- var cprimitiveOverestimationSize_allocs *cgoAllocMap
- ref878f819c.primitiveOverestimationSize, cprimitiveOverestimationSize_allocs = (C.float)(x.PrimitiveOverestimationSize), cgoAllocsUnknown
- allocs878f819c.Borrow(cprimitiveOverestimationSize_allocs)
-
- var cmaxExtraPrimitiveOverestimationSize_allocs *cgoAllocMap
- ref878f819c.maxExtraPrimitiveOverestimationSize, cmaxExtraPrimitiveOverestimationSize_allocs = (C.float)(x.MaxExtraPrimitiveOverestimationSize), cgoAllocsUnknown
- allocs878f819c.Borrow(cmaxExtraPrimitiveOverestimationSize_allocs)
-
- var cextraPrimitiveOverestimationSizeGranularity_allocs *cgoAllocMap
- ref878f819c.extraPrimitiveOverestimationSizeGranularity, cextraPrimitiveOverestimationSizeGranularity_allocs = (C.float)(x.ExtraPrimitiveOverestimationSizeGranularity), cgoAllocsUnknown
- allocs878f819c.Borrow(cextraPrimitiveOverestimationSizeGranularity_allocs)
-
- var cprimitiveUnderestimation_allocs *cgoAllocMap
- ref878f819c.primitiveUnderestimation, cprimitiveUnderestimation_allocs = (C.VkBool32)(x.PrimitiveUnderestimation), cgoAllocsUnknown
- allocs878f819c.Borrow(cprimitiveUnderestimation_allocs)
-
- var cconservativePointAndLineRasterization_allocs *cgoAllocMap
- ref878f819c.conservativePointAndLineRasterization, cconservativePointAndLineRasterization_allocs = (C.VkBool32)(x.ConservativePointAndLineRasterization), cgoAllocsUnknown
- allocs878f819c.Borrow(cconservativePointAndLineRasterization_allocs)
-
- var cdegenerateTrianglesRasterized_allocs *cgoAllocMap
- ref878f819c.degenerateTrianglesRasterized, cdegenerateTrianglesRasterized_allocs = (C.VkBool32)(x.DegenerateTrianglesRasterized), cgoAllocsUnknown
- allocs878f819c.Borrow(cdegenerateTrianglesRasterized_allocs)
-
- var cdegenerateLinesRasterized_allocs *cgoAllocMap
- ref878f819c.degenerateLinesRasterized, cdegenerateLinesRasterized_allocs = (C.VkBool32)(x.DegenerateLinesRasterized), cgoAllocsUnknown
- allocs878f819c.Borrow(cdegenerateLinesRasterized_allocs)
+ refa8810910.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsa8810910.Borrow(cpNext_allocs)
- var cfullyCoveredFragmentShaderInputVariable_allocs *cgoAllocMap
- ref878f819c.fullyCoveredFragmentShaderInputVariable, cfullyCoveredFragmentShaderInputVariable_allocs = (C.VkBool32)(x.FullyCoveredFragmentShaderInputVariable), cgoAllocsUnknown
- allocs878f819c.Borrow(cfullyCoveredFragmentShaderInputVariable_allocs)
+ var cprovokingVertexModePerPipeline_allocs *cgoAllocMap
+ refa8810910.provokingVertexModePerPipeline, cprovokingVertexModePerPipeline_allocs = (C.VkBool32)(x.ProvokingVertexModePerPipeline), cgoAllocsUnknown
+ allocsa8810910.Borrow(cprovokingVertexModePerPipeline_allocs)
- var cconservativeRasterizationPostDepthCoverage_allocs *cgoAllocMap
- ref878f819c.conservativeRasterizationPostDepthCoverage, cconservativeRasterizationPostDepthCoverage_allocs = (C.VkBool32)(x.ConservativeRasterizationPostDepthCoverage), cgoAllocsUnknown
- allocs878f819c.Borrow(cconservativeRasterizationPostDepthCoverage_allocs)
+ var ctransformFeedbackPreservesTriangleFanProvokingVertex_allocs *cgoAllocMap
+ refa8810910.transformFeedbackPreservesTriangleFanProvokingVertex, ctransformFeedbackPreservesTriangleFanProvokingVertex_allocs = (C.VkBool32)(x.TransformFeedbackPreservesTriangleFanProvokingVertex), cgoAllocsUnknown
+ allocsa8810910.Borrow(ctransformFeedbackPreservesTriangleFanProvokingVertex_allocs)
- x.ref878f819c = ref878f819c
- x.allocs878f819c = allocs878f819c
- return ref878f819c, allocs878f819c
+ x.refa8810910 = refa8810910
+ x.allocsa8810910 = allocsa8810910
+ return refa8810910, allocsa8810910
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceConservativeRasterizationProperties) PassValue() (C.VkPhysicalDeviceConservativeRasterizationPropertiesEXT, *cgoAllocMap) {
- if x.ref878f819c != nil {
- return *x.ref878f819c, nil
+func (x PhysicalDeviceProvokingVertexProperties) PassValue() (C.VkPhysicalDeviceProvokingVertexPropertiesEXT, *cgoAllocMap) {
+ if x.refa8810910 != nil {
+ return *x.refa8810910, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -30879,106 +57482,91 @@ func (x PhysicalDeviceConservativeRasterizationProperties) PassValue() (C.VkPhys
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceConservativeRasterizationProperties) Deref() {
- if x.ref878f819c == nil {
+func (x *PhysicalDeviceProvokingVertexProperties) Deref() {
+ if x.refa8810910 == nil {
return
}
- x.SType = (StructureType)(x.ref878f819c.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref878f819c.pNext))
- x.PrimitiveOverestimationSize = (float32)(x.ref878f819c.primitiveOverestimationSize)
- x.MaxExtraPrimitiveOverestimationSize = (float32)(x.ref878f819c.maxExtraPrimitiveOverestimationSize)
- x.ExtraPrimitiveOverestimationSizeGranularity = (float32)(x.ref878f819c.extraPrimitiveOverestimationSizeGranularity)
- x.PrimitiveUnderestimation = (Bool32)(x.ref878f819c.primitiveUnderestimation)
- x.ConservativePointAndLineRasterization = (Bool32)(x.ref878f819c.conservativePointAndLineRasterization)
- x.DegenerateTrianglesRasterized = (Bool32)(x.ref878f819c.degenerateTrianglesRasterized)
- x.DegenerateLinesRasterized = (Bool32)(x.ref878f819c.degenerateLinesRasterized)
- x.FullyCoveredFragmentShaderInputVariable = (Bool32)(x.ref878f819c.fullyCoveredFragmentShaderInputVariable)
- x.ConservativeRasterizationPostDepthCoverage = (Bool32)(x.ref878f819c.conservativeRasterizationPostDepthCoverage)
+ x.SType = (StructureType)(x.refa8810910.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa8810910.pNext))
+ x.ProvokingVertexModePerPipeline = (Bool32)(x.refa8810910.provokingVertexModePerPipeline)
+ x.TransformFeedbackPreservesTriangleFanProvokingVertex = (Bool32)(x.refa8810910.transformFeedbackPreservesTriangleFanProvokingVertex)
}
-// allocPipelineRasterizationConservativeStateCreateInfoMemory allocates memory for type C.VkPipelineRasterizationConservativeStateCreateInfoEXT in C.
+// allocPipelineRasterizationProvokingVertexStateCreateInfoMemory allocates memory for type C.VkPipelineRasterizationProvokingVertexStateCreateInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPipelineRasterizationConservativeStateCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineRasterizationConservativeStateCreateInfoValue))
+func allocPipelineRasterizationProvokingVertexStateCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineRasterizationProvokingVertexStateCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPipelineRasterizationConservativeStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineRasterizationConservativeStateCreateInfoEXT{})
+const sizeOfPipelineRasterizationProvokingVertexStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineRasterizationProvokingVertexStateCreateInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PipelineRasterizationConservativeStateCreateInfo) Ref() *C.VkPipelineRasterizationConservativeStateCreateInfoEXT {
+func (x *PipelineRasterizationProvokingVertexStateCreateInfo) Ref() *C.VkPipelineRasterizationProvokingVertexStateCreateInfoEXT {
if x == nil {
return nil
}
- return x.refe3cd0046
+ return x.ref367b4d68
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PipelineRasterizationConservativeStateCreateInfo) Free() {
- if x != nil && x.allocse3cd0046 != nil {
- x.allocse3cd0046.(*cgoAllocMap).Free()
- x.refe3cd0046 = nil
+func (x *PipelineRasterizationProvokingVertexStateCreateInfo) Free() {
+ if x != nil && x.allocs367b4d68 != nil {
+ x.allocs367b4d68.(*cgoAllocMap).Free()
+ x.ref367b4d68 = nil
}
}
-// NewPipelineRasterizationConservativeStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineRasterizationProvokingVertexStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPipelineRasterizationConservativeStateCreateInfoRef(ref unsafe.Pointer) *PipelineRasterizationConservativeStateCreateInfo {
+func NewPipelineRasterizationProvokingVertexStateCreateInfoRef(ref unsafe.Pointer) *PipelineRasterizationProvokingVertexStateCreateInfo {
if ref == nil {
return nil
}
- obj := new(PipelineRasterizationConservativeStateCreateInfo)
- obj.refe3cd0046 = (*C.VkPipelineRasterizationConservativeStateCreateInfoEXT)(unsafe.Pointer(ref))
+ obj := new(PipelineRasterizationProvokingVertexStateCreateInfo)
+ obj.ref367b4d68 = (*C.VkPipelineRasterizationProvokingVertexStateCreateInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PipelineRasterizationConservativeStateCreateInfo) PassRef() (*C.VkPipelineRasterizationConservativeStateCreateInfoEXT, *cgoAllocMap) {
+func (x *PipelineRasterizationProvokingVertexStateCreateInfo) PassRef() (*C.VkPipelineRasterizationProvokingVertexStateCreateInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refe3cd0046 != nil {
- return x.refe3cd0046, nil
+ } else if x.ref367b4d68 != nil {
+ return x.ref367b4d68, nil
}
- meme3cd0046 := allocPipelineRasterizationConservativeStateCreateInfoMemory(1)
- refe3cd0046 := (*C.VkPipelineRasterizationConservativeStateCreateInfoEXT)(meme3cd0046)
- allocse3cd0046 := new(cgoAllocMap)
- allocse3cd0046.Add(meme3cd0046)
+ mem367b4d68 := allocPipelineRasterizationProvokingVertexStateCreateInfoMemory(1)
+ ref367b4d68 := (*C.VkPipelineRasterizationProvokingVertexStateCreateInfoEXT)(mem367b4d68)
+ allocs367b4d68 := new(cgoAllocMap)
+ allocs367b4d68.Add(mem367b4d68)
var csType_allocs *cgoAllocMap
- refe3cd0046.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocse3cd0046.Borrow(csType_allocs)
+ ref367b4d68.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs367b4d68.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refe3cd0046.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocse3cd0046.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- refe3cd0046.flags, cflags_allocs = (C.VkPipelineRasterizationConservativeStateCreateFlagsEXT)(x.Flags), cgoAllocsUnknown
- allocse3cd0046.Borrow(cflags_allocs)
-
- var cconservativeRasterizationMode_allocs *cgoAllocMap
- refe3cd0046.conservativeRasterizationMode, cconservativeRasterizationMode_allocs = (C.VkConservativeRasterizationModeEXT)(x.ConservativeRasterizationMode), cgoAllocsUnknown
- allocse3cd0046.Borrow(cconservativeRasterizationMode_allocs)
+ ref367b4d68.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs367b4d68.Borrow(cpNext_allocs)
- var cextraPrimitiveOverestimationSize_allocs *cgoAllocMap
- refe3cd0046.extraPrimitiveOverestimationSize, cextraPrimitiveOverestimationSize_allocs = (C.float)(x.ExtraPrimitiveOverestimationSize), cgoAllocsUnknown
- allocse3cd0046.Borrow(cextraPrimitiveOverestimationSize_allocs)
+ var cprovokingVertexMode_allocs *cgoAllocMap
+ ref367b4d68.provokingVertexMode, cprovokingVertexMode_allocs = (C.VkProvokingVertexModeEXT)(x.ProvokingVertexMode), cgoAllocsUnknown
+ allocs367b4d68.Borrow(cprovokingVertexMode_allocs)
- x.refe3cd0046 = refe3cd0046
- x.allocse3cd0046 = allocse3cd0046
- return refe3cd0046, allocse3cd0046
+ x.ref367b4d68 = ref367b4d68
+ x.allocs367b4d68 = allocs367b4d68
+ return ref367b4d68, allocs367b4d68
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PipelineRasterizationConservativeStateCreateInfo) PassValue() (C.VkPipelineRasterizationConservativeStateCreateInfoEXT, *cgoAllocMap) {
- if x.refe3cd0046 != nil {
- return *x.refe3cd0046, nil
+func (x PipelineRasterizationProvokingVertexStateCreateInfo) PassValue() (C.VkPipelineRasterizationProvokingVertexStateCreateInfoEXT, *cgoAllocMap) {
+ if x.ref367b4d68 != nil {
+ return *x.ref367b4d68, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -30986,88 +57574,90 @@ func (x PipelineRasterizationConservativeStateCreateInfo) PassValue() (C.VkPipel
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PipelineRasterizationConservativeStateCreateInfo) Deref() {
- if x.refe3cd0046 == nil {
+func (x *PipelineRasterizationProvokingVertexStateCreateInfo) Deref() {
+ if x.ref367b4d68 == nil {
return
}
- x.SType = (StructureType)(x.refe3cd0046.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refe3cd0046.pNext))
- x.Flags = (PipelineRasterizationConservativeStateCreateFlags)(x.refe3cd0046.flags)
- x.ConservativeRasterizationMode = (ConservativeRasterizationMode)(x.refe3cd0046.conservativeRasterizationMode)
- x.ExtraPrimitiveOverestimationSize = (float32)(x.refe3cd0046.extraPrimitiveOverestimationSize)
+ x.SType = (StructureType)(x.ref367b4d68.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref367b4d68.pNext))
+ x.ProvokingVertexMode = (ProvokingVertexMode)(x.ref367b4d68.provokingVertexMode)
}
-// allocXYColorMemory allocates memory for type C.VkXYColorEXT in C.
+// allocHeadlessSurfaceCreateInfoMemory allocates memory for type C.VkHeadlessSurfaceCreateInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocXYColorMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfXYColorValue))
+func allocHeadlessSurfaceCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfHeadlessSurfaceCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfXYColorValue = unsafe.Sizeof([1]C.VkXYColorEXT{})
+const sizeOfHeadlessSurfaceCreateInfoValue = unsafe.Sizeof([1]C.VkHeadlessSurfaceCreateInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *XYColor) Ref() *C.VkXYColorEXT {
+func (x *HeadlessSurfaceCreateInfo) Ref() *C.VkHeadlessSurfaceCreateInfoEXT {
if x == nil {
return nil
}
- return x.refb8efaa5c
+ return x.refed88b258
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *XYColor) Free() {
- if x != nil && x.allocsb8efaa5c != nil {
- x.allocsb8efaa5c.(*cgoAllocMap).Free()
- x.refb8efaa5c = nil
+func (x *HeadlessSurfaceCreateInfo) Free() {
+ if x != nil && x.allocsed88b258 != nil {
+ x.allocsed88b258.(*cgoAllocMap).Free()
+ x.refed88b258 = nil
}
}
-// NewXYColorRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewHeadlessSurfaceCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewXYColorRef(ref unsafe.Pointer) *XYColor {
+func NewHeadlessSurfaceCreateInfoRef(ref unsafe.Pointer) *HeadlessSurfaceCreateInfo {
if ref == nil {
return nil
}
- obj := new(XYColor)
- obj.refb8efaa5c = (*C.VkXYColorEXT)(unsafe.Pointer(ref))
+ obj := new(HeadlessSurfaceCreateInfo)
+ obj.refed88b258 = (*C.VkHeadlessSurfaceCreateInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *XYColor) PassRef() (*C.VkXYColorEXT, *cgoAllocMap) {
+func (x *HeadlessSurfaceCreateInfo) PassRef() (*C.VkHeadlessSurfaceCreateInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refb8efaa5c != nil {
- return x.refb8efaa5c, nil
+ } else if x.refed88b258 != nil {
+ return x.refed88b258, nil
}
- memb8efaa5c := allocXYColorMemory(1)
- refb8efaa5c := (*C.VkXYColorEXT)(memb8efaa5c)
- allocsb8efaa5c := new(cgoAllocMap)
- allocsb8efaa5c.Add(memb8efaa5c)
+ memed88b258 := allocHeadlessSurfaceCreateInfoMemory(1)
+ refed88b258 := (*C.VkHeadlessSurfaceCreateInfoEXT)(memed88b258)
+ allocsed88b258 := new(cgoAllocMap)
+ allocsed88b258.Add(memed88b258)
- var cx_allocs *cgoAllocMap
- refb8efaa5c.x, cx_allocs = (C.float)(x.X), cgoAllocsUnknown
- allocsb8efaa5c.Borrow(cx_allocs)
+ var csType_allocs *cgoAllocMap
+ refed88b258.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsed88b258.Borrow(csType_allocs)
- var cy_allocs *cgoAllocMap
- refb8efaa5c.y, cy_allocs = (C.float)(x.Y), cgoAllocsUnknown
- allocsb8efaa5c.Borrow(cy_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refed88b258.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsed88b258.Borrow(cpNext_allocs)
- x.refb8efaa5c = refb8efaa5c
- x.allocsb8efaa5c = allocsb8efaa5c
- return refb8efaa5c, allocsb8efaa5c
+ var cflags_allocs *cgoAllocMap
+ refed88b258.flags, cflags_allocs = (C.VkHeadlessSurfaceCreateFlagsEXT)(x.Flags), cgoAllocsUnknown
+ allocsed88b258.Borrow(cflags_allocs)
+
+ x.refed88b258 = refed88b258
+ x.allocsed88b258 = allocsed88b258
+ return refed88b258, allocsed88b258
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x XYColor) PassValue() (C.VkXYColorEXT, *cgoAllocMap) {
- if x.refb8efaa5c != nil {
- return *x.refb8efaa5c, nil
+func (x HeadlessSurfaceCreateInfo) PassValue() (C.VkHeadlessSurfaceCreateInfoEXT, *cgoAllocMap) {
+ if x.refed88b258 != nil {
+ return *x.refed88b258, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -31075,117 +57665,110 @@ func (x XYColor) PassValue() (C.VkXYColorEXT, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *XYColor) Deref() {
- if x.refb8efaa5c == nil {
+func (x *HeadlessSurfaceCreateInfo) Deref() {
+ if x.refed88b258 == nil {
return
}
- x.X = (float32)(x.refb8efaa5c.x)
- x.Y = (float32)(x.refb8efaa5c.y)
+ x.SType = (StructureType)(x.refed88b258.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refed88b258.pNext))
+ x.Flags = (HeadlessSurfaceCreateFlags)(x.refed88b258.flags)
}
-// allocHdrMetadataMemory allocates memory for type C.VkHdrMetadataEXT in C.
+// allocPhysicalDeviceLineRasterizationFeaturesMemory allocates memory for type C.VkPhysicalDeviceLineRasterizationFeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocHdrMetadataMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfHdrMetadataValue))
+func allocPhysicalDeviceLineRasterizationFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceLineRasterizationFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfHdrMetadataValue = unsafe.Sizeof([1]C.VkHdrMetadataEXT{})
+const sizeOfPhysicalDeviceLineRasterizationFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceLineRasterizationFeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *HdrMetadata) Ref() *C.VkHdrMetadataEXT {
+func (x *PhysicalDeviceLineRasterizationFeatures) Ref() *C.VkPhysicalDeviceLineRasterizationFeaturesEXT {
if x == nil {
return nil
}
- return x.ref5fd28976
+ return x.refdb9049a7
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *HdrMetadata) Free() {
- if x != nil && x.allocs5fd28976 != nil {
- x.allocs5fd28976.(*cgoAllocMap).Free()
- x.ref5fd28976 = nil
+func (x *PhysicalDeviceLineRasterizationFeatures) Free() {
+ if x != nil && x.allocsdb9049a7 != nil {
+ x.allocsdb9049a7.(*cgoAllocMap).Free()
+ x.refdb9049a7 = nil
}
}
-// NewHdrMetadataRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceLineRasterizationFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewHdrMetadataRef(ref unsafe.Pointer) *HdrMetadata {
+func NewPhysicalDeviceLineRasterizationFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceLineRasterizationFeatures {
if ref == nil {
return nil
}
- obj := new(HdrMetadata)
- obj.ref5fd28976 = (*C.VkHdrMetadataEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceLineRasterizationFeatures)
+ obj.refdb9049a7 = (*C.VkPhysicalDeviceLineRasterizationFeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *HdrMetadata) PassRef() (*C.VkHdrMetadataEXT, *cgoAllocMap) {
+func (x *PhysicalDeviceLineRasterizationFeatures) PassRef() (*C.VkPhysicalDeviceLineRasterizationFeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref5fd28976 != nil {
- return x.ref5fd28976, nil
+ } else if x.refdb9049a7 != nil {
+ return x.refdb9049a7, nil
}
- mem5fd28976 := allocHdrMetadataMemory(1)
- ref5fd28976 := (*C.VkHdrMetadataEXT)(mem5fd28976)
- allocs5fd28976 := new(cgoAllocMap)
- allocs5fd28976.Add(mem5fd28976)
+ memdb9049a7 := allocPhysicalDeviceLineRasterizationFeaturesMemory(1)
+ refdb9049a7 := (*C.VkPhysicalDeviceLineRasterizationFeaturesEXT)(memdb9049a7)
+ allocsdb9049a7 := new(cgoAllocMap)
+ allocsdb9049a7.Add(memdb9049a7)
var csType_allocs *cgoAllocMap
- ref5fd28976.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs5fd28976.Borrow(csType_allocs)
+ refdb9049a7.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsdb9049a7.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref5fd28976.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs5fd28976.Borrow(cpNext_allocs)
-
- var cdisplayPrimaryRed_allocs *cgoAllocMap
- ref5fd28976.displayPrimaryRed, cdisplayPrimaryRed_allocs = x.DisplayPrimaryRed.PassValue()
- allocs5fd28976.Borrow(cdisplayPrimaryRed_allocs)
-
- var cdisplayPrimaryGreen_allocs *cgoAllocMap
- ref5fd28976.displayPrimaryGreen, cdisplayPrimaryGreen_allocs = x.DisplayPrimaryGreen.PassValue()
- allocs5fd28976.Borrow(cdisplayPrimaryGreen_allocs)
+ refdb9049a7.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsdb9049a7.Borrow(cpNext_allocs)
- var cdisplayPrimaryBlue_allocs *cgoAllocMap
- ref5fd28976.displayPrimaryBlue, cdisplayPrimaryBlue_allocs = x.DisplayPrimaryBlue.PassValue()
- allocs5fd28976.Borrow(cdisplayPrimaryBlue_allocs)
+ var crectangularLines_allocs *cgoAllocMap
+ refdb9049a7.rectangularLines, crectangularLines_allocs = (C.VkBool32)(x.RectangularLines), cgoAllocsUnknown
+ allocsdb9049a7.Borrow(crectangularLines_allocs)
- var cwhitePoint_allocs *cgoAllocMap
- ref5fd28976.whitePoint, cwhitePoint_allocs = x.WhitePoint.PassValue()
- allocs5fd28976.Borrow(cwhitePoint_allocs)
+ var cbresenhamLines_allocs *cgoAllocMap
+ refdb9049a7.bresenhamLines, cbresenhamLines_allocs = (C.VkBool32)(x.BresenhamLines), cgoAllocsUnknown
+ allocsdb9049a7.Borrow(cbresenhamLines_allocs)
- var cmaxLuminance_allocs *cgoAllocMap
- ref5fd28976.maxLuminance, cmaxLuminance_allocs = (C.float)(x.MaxLuminance), cgoAllocsUnknown
- allocs5fd28976.Borrow(cmaxLuminance_allocs)
+ var csmoothLines_allocs *cgoAllocMap
+ refdb9049a7.smoothLines, csmoothLines_allocs = (C.VkBool32)(x.SmoothLines), cgoAllocsUnknown
+ allocsdb9049a7.Borrow(csmoothLines_allocs)
- var cminLuminance_allocs *cgoAllocMap
- ref5fd28976.minLuminance, cminLuminance_allocs = (C.float)(x.MinLuminance), cgoAllocsUnknown
- allocs5fd28976.Borrow(cminLuminance_allocs)
+ var cstippledRectangularLines_allocs *cgoAllocMap
+ refdb9049a7.stippledRectangularLines, cstippledRectangularLines_allocs = (C.VkBool32)(x.StippledRectangularLines), cgoAllocsUnknown
+ allocsdb9049a7.Borrow(cstippledRectangularLines_allocs)
- var cmaxContentLightLevel_allocs *cgoAllocMap
- ref5fd28976.maxContentLightLevel, cmaxContentLightLevel_allocs = (C.float)(x.MaxContentLightLevel), cgoAllocsUnknown
- allocs5fd28976.Borrow(cmaxContentLightLevel_allocs)
+ var cstippledBresenhamLines_allocs *cgoAllocMap
+ refdb9049a7.stippledBresenhamLines, cstippledBresenhamLines_allocs = (C.VkBool32)(x.StippledBresenhamLines), cgoAllocsUnknown
+ allocsdb9049a7.Borrow(cstippledBresenhamLines_allocs)
- var cmaxFrameAverageLightLevel_allocs *cgoAllocMap
- ref5fd28976.maxFrameAverageLightLevel, cmaxFrameAverageLightLevel_allocs = (C.float)(x.MaxFrameAverageLightLevel), cgoAllocsUnknown
- allocs5fd28976.Borrow(cmaxFrameAverageLightLevel_allocs)
+ var cstippledSmoothLines_allocs *cgoAllocMap
+ refdb9049a7.stippledSmoothLines, cstippledSmoothLines_allocs = (C.VkBool32)(x.StippledSmoothLines), cgoAllocsUnknown
+ allocsdb9049a7.Borrow(cstippledSmoothLines_allocs)
- x.ref5fd28976 = ref5fd28976
- x.allocs5fd28976 = allocs5fd28976
- return ref5fd28976, allocs5fd28976
+ x.refdb9049a7 = refdb9049a7
+ x.allocsdb9049a7 = allocsdb9049a7
+ return refdb9049a7, allocsdb9049a7
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x HdrMetadata) PassValue() (C.VkHdrMetadataEXT, *cgoAllocMap) {
- if x.ref5fd28976 != nil {
- return *x.ref5fd28976, nil
+func (x PhysicalDeviceLineRasterizationFeatures) PassValue() (C.VkPhysicalDeviceLineRasterizationFeaturesEXT, *cgoAllocMap) {
+ if x.refdb9049a7 != nil {
+ return *x.refdb9049a7, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -31193,105 +57776,95 @@ func (x HdrMetadata) PassValue() (C.VkHdrMetadataEXT, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *HdrMetadata) Deref() {
- if x.ref5fd28976 == nil {
+func (x *PhysicalDeviceLineRasterizationFeatures) Deref() {
+ if x.refdb9049a7 == nil {
return
}
- x.SType = (StructureType)(x.ref5fd28976.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5fd28976.pNext))
- x.DisplayPrimaryRed = *NewXYColorRef(unsafe.Pointer(&x.ref5fd28976.displayPrimaryRed))
- x.DisplayPrimaryGreen = *NewXYColorRef(unsafe.Pointer(&x.ref5fd28976.displayPrimaryGreen))
- x.DisplayPrimaryBlue = *NewXYColorRef(unsafe.Pointer(&x.ref5fd28976.displayPrimaryBlue))
- x.WhitePoint = *NewXYColorRef(unsafe.Pointer(&x.ref5fd28976.whitePoint))
- x.MaxLuminance = (float32)(x.ref5fd28976.maxLuminance)
- x.MinLuminance = (float32)(x.ref5fd28976.minLuminance)
- x.MaxContentLightLevel = (float32)(x.ref5fd28976.maxContentLightLevel)
- x.MaxFrameAverageLightLevel = (float32)(x.ref5fd28976.maxFrameAverageLightLevel)
+ x.SType = (StructureType)(x.refdb9049a7.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refdb9049a7.pNext))
+ x.RectangularLines = (Bool32)(x.refdb9049a7.rectangularLines)
+ x.BresenhamLines = (Bool32)(x.refdb9049a7.bresenhamLines)
+ x.SmoothLines = (Bool32)(x.refdb9049a7.smoothLines)
+ x.StippledRectangularLines = (Bool32)(x.refdb9049a7.stippledRectangularLines)
+ x.StippledBresenhamLines = (Bool32)(x.refdb9049a7.stippledBresenhamLines)
+ x.StippledSmoothLines = (Bool32)(x.refdb9049a7.stippledSmoothLines)
}
-// allocDebugUtilsObjectNameInfoMemory allocates memory for type C.VkDebugUtilsObjectNameInfoEXT in C.
+// allocPhysicalDeviceLineRasterizationPropertiesMemory allocates memory for type C.VkPhysicalDeviceLineRasterizationPropertiesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDebugUtilsObjectNameInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDebugUtilsObjectNameInfoValue))
+func allocPhysicalDeviceLineRasterizationPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceLineRasterizationPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDebugUtilsObjectNameInfoValue = unsafe.Sizeof([1]C.VkDebugUtilsObjectNameInfoEXT{})
+const sizeOfPhysicalDeviceLineRasterizationPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceLineRasterizationPropertiesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DebugUtilsObjectNameInfo) Ref() *C.VkDebugUtilsObjectNameInfoEXT {
+func (x *PhysicalDeviceLineRasterizationProperties) Ref() *C.VkPhysicalDeviceLineRasterizationPropertiesEXT {
if x == nil {
return nil
}
- return x.ref5e73c2db
+ return x.refe2369446
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DebugUtilsObjectNameInfo) Free() {
- if x != nil && x.allocs5e73c2db != nil {
- x.allocs5e73c2db.(*cgoAllocMap).Free()
- x.ref5e73c2db = nil
+func (x *PhysicalDeviceLineRasterizationProperties) Free() {
+ if x != nil && x.allocse2369446 != nil {
+ x.allocse2369446.(*cgoAllocMap).Free()
+ x.refe2369446 = nil
}
}
-// NewDebugUtilsObjectNameInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceLineRasterizationPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDebugUtilsObjectNameInfoRef(ref unsafe.Pointer) *DebugUtilsObjectNameInfo {
+func NewPhysicalDeviceLineRasterizationPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceLineRasterizationProperties {
if ref == nil {
return nil
}
- obj := new(DebugUtilsObjectNameInfo)
- obj.ref5e73c2db = (*C.VkDebugUtilsObjectNameInfoEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceLineRasterizationProperties)
+ obj.refe2369446 = (*C.VkPhysicalDeviceLineRasterizationPropertiesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DebugUtilsObjectNameInfo) PassRef() (*C.VkDebugUtilsObjectNameInfoEXT, *cgoAllocMap) {
+func (x *PhysicalDeviceLineRasterizationProperties) PassRef() (*C.VkPhysicalDeviceLineRasterizationPropertiesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref5e73c2db != nil {
- return x.ref5e73c2db, nil
+ } else if x.refe2369446 != nil {
+ return x.refe2369446, nil
}
- mem5e73c2db := allocDebugUtilsObjectNameInfoMemory(1)
- ref5e73c2db := (*C.VkDebugUtilsObjectNameInfoEXT)(mem5e73c2db)
- allocs5e73c2db := new(cgoAllocMap)
- allocs5e73c2db.Add(mem5e73c2db)
+ meme2369446 := allocPhysicalDeviceLineRasterizationPropertiesMemory(1)
+ refe2369446 := (*C.VkPhysicalDeviceLineRasterizationPropertiesEXT)(meme2369446)
+ allocse2369446 := new(cgoAllocMap)
+ allocse2369446.Add(meme2369446)
var csType_allocs *cgoAllocMap
- ref5e73c2db.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs5e73c2db.Borrow(csType_allocs)
+ refe2369446.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocse2369446.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref5e73c2db.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs5e73c2db.Borrow(cpNext_allocs)
-
- var cobjectType_allocs *cgoAllocMap
- ref5e73c2db.objectType, cobjectType_allocs = (C.VkObjectType)(x.ObjectType), cgoAllocsUnknown
- allocs5e73c2db.Borrow(cobjectType_allocs)
-
- var cobjectHandle_allocs *cgoAllocMap
- ref5e73c2db.objectHandle, cobjectHandle_allocs = (C.uint64_t)(x.ObjectHandle), cgoAllocsUnknown
- allocs5e73c2db.Borrow(cobjectHandle_allocs)
+ refe2369446.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocse2369446.Borrow(cpNext_allocs)
- var cpObjectName_allocs *cgoAllocMap
- ref5e73c2db.pObjectName, cpObjectName_allocs = unpackPCharString(x.PObjectName)
- allocs5e73c2db.Borrow(cpObjectName_allocs)
+ var clineSubPixelPrecisionBits_allocs *cgoAllocMap
+ refe2369446.lineSubPixelPrecisionBits, clineSubPixelPrecisionBits_allocs = (C.uint32_t)(x.LineSubPixelPrecisionBits), cgoAllocsUnknown
+ allocse2369446.Borrow(clineSubPixelPrecisionBits_allocs)
- x.ref5e73c2db = ref5e73c2db
- x.allocs5e73c2db = allocs5e73c2db
- return ref5e73c2db, allocs5e73c2db
+ x.refe2369446 = refe2369446
+ x.allocse2369446 = allocse2369446
+ return refe2369446, allocse2369446
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DebugUtilsObjectNameInfo) PassValue() (C.VkDebugUtilsObjectNameInfoEXT, *cgoAllocMap) {
- if x.ref5e73c2db != nil {
- return *x.ref5e73c2db, nil
+func (x PhysicalDeviceLineRasterizationProperties) PassValue() (C.VkPhysicalDeviceLineRasterizationPropertiesEXT, *cgoAllocMap) {
+ if x.refe2369446 != nil {
+ return *x.refe2369446, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -31299,108 +57872,102 @@ func (x DebugUtilsObjectNameInfo) PassValue() (C.VkDebugUtilsObjectNameInfoEXT,
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DebugUtilsObjectNameInfo) Deref() {
- if x.ref5e73c2db == nil {
+func (x *PhysicalDeviceLineRasterizationProperties) Deref() {
+ if x.refe2369446 == nil {
return
}
- x.SType = (StructureType)(x.ref5e73c2db.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5e73c2db.pNext))
- x.ObjectType = (ObjectType)(x.ref5e73c2db.objectType)
- x.ObjectHandle = (uint64)(x.ref5e73c2db.objectHandle)
- x.PObjectName = packPCharString(x.ref5e73c2db.pObjectName)
+ x.SType = (StructureType)(x.refe2369446.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refe2369446.pNext))
+ x.LineSubPixelPrecisionBits = (uint32)(x.refe2369446.lineSubPixelPrecisionBits)
}
-// allocDebugUtilsObjectTagInfoMemory allocates memory for type C.VkDebugUtilsObjectTagInfoEXT in C.
+// allocPipelineRasterizationLineStateCreateInfoMemory allocates memory for type C.VkPipelineRasterizationLineStateCreateInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDebugUtilsObjectTagInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDebugUtilsObjectTagInfoValue))
+func allocPipelineRasterizationLineStateCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineRasterizationLineStateCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDebugUtilsObjectTagInfoValue = unsafe.Sizeof([1]C.VkDebugUtilsObjectTagInfoEXT{})
+const sizeOfPipelineRasterizationLineStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineRasterizationLineStateCreateInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DebugUtilsObjectTagInfo) Ref() *C.VkDebugUtilsObjectTagInfoEXT {
+func (x *PipelineRasterizationLineStateCreateInfo) Ref() *C.VkPipelineRasterizationLineStateCreateInfoEXT {
if x == nil {
return nil
}
- return x.ref9fd129cf
+ return x.ref649f4226
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DebugUtilsObjectTagInfo) Free() {
- if x != nil && x.allocs9fd129cf != nil {
- x.allocs9fd129cf.(*cgoAllocMap).Free()
- x.ref9fd129cf = nil
+func (x *PipelineRasterizationLineStateCreateInfo) Free() {
+ if x != nil && x.allocs649f4226 != nil {
+ x.allocs649f4226.(*cgoAllocMap).Free()
+ x.ref649f4226 = nil
}
}
-// NewDebugUtilsObjectTagInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineRasterizationLineStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDebugUtilsObjectTagInfoRef(ref unsafe.Pointer) *DebugUtilsObjectTagInfo {
+func NewPipelineRasterizationLineStateCreateInfoRef(ref unsafe.Pointer) *PipelineRasterizationLineStateCreateInfo {
if ref == nil {
return nil
}
- obj := new(DebugUtilsObjectTagInfo)
- obj.ref9fd129cf = (*C.VkDebugUtilsObjectTagInfoEXT)(unsafe.Pointer(ref))
+ obj := new(PipelineRasterizationLineStateCreateInfo)
+ obj.ref649f4226 = (*C.VkPipelineRasterizationLineStateCreateInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DebugUtilsObjectTagInfo) PassRef() (*C.VkDebugUtilsObjectTagInfoEXT, *cgoAllocMap) {
+func (x *PipelineRasterizationLineStateCreateInfo) PassRef() (*C.VkPipelineRasterizationLineStateCreateInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref9fd129cf != nil {
- return x.ref9fd129cf, nil
+ } else if x.ref649f4226 != nil {
+ return x.ref649f4226, nil
}
- mem9fd129cf := allocDebugUtilsObjectTagInfoMemory(1)
- ref9fd129cf := (*C.VkDebugUtilsObjectTagInfoEXT)(mem9fd129cf)
- allocs9fd129cf := new(cgoAllocMap)
- allocs9fd129cf.Add(mem9fd129cf)
+ mem649f4226 := allocPipelineRasterizationLineStateCreateInfoMemory(1)
+ ref649f4226 := (*C.VkPipelineRasterizationLineStateCreateInfoEXT)(mem649f4226)
+ allocs649f4226 := new(cgoAllocMap)
+ allocs649f4226.Add(mem649f4226)
var csType_allocs *cgoAllocMap
- ref9fd129cf.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs9fd129cf.Borrow(csType_allocs)
+ ref649f4226.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs649f4226.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref9fd129cf.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs9fd129cf.Borrow(cpNext_allocs)
+ ref649f4226.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs649f4226.Borrow(cpNext_allocs)
- var cobjectType_allocs *cgoAllocMap
- ref9fd129cf.objectType, cobjectType_allocs = (C.VkObjectType)(x.ObjectType), cgoAllocsUnknown
- allocs9fd129cf.Borrow(cobjectType_allocs)
-
- var cobjectHandle_allocs *cgoAllocMap
- ref9fd129cf.objectHandle, cobjectHandle_allocs = (C.uint64_t)(x.ObjectHandle), cgoAllocsUnknown
- allocs9fd129cf.Borrow(cobjectHandle_allocs)
+ var clineRasterizationMode_allocs *cgoAllocMap
+ ref649f4226.lineRasterizationMode, clineRasterizationMode_allocs = (C.VkLineRasterizationModeEXT)(x.LineRasterizationMode), cgoAllocsUnknown
+ allocs649f4226.Borrow(clineRasterizationMode_allocs)
- var ctagName_allocs *cgoAllocMap
- ref9fd129cf.tagName, ctagName_allocs = (C.uint64_t)(x.TagName), cgoAllocsUnknown
- allocs9fd129cf.Borrow(ctagName_allocs)
+ var cstippledLineEnable_allocs *cgoAllocMap
+ ref649f4226.stippledLineEnable, cstippledLineEnable_allocs = (C.VkBool32)(x.StippledLineEnable), cgoAllocsUnknown
+ allocs649f4226.Borrow(cstippledLineEnable_allocs)
- var ctagSize_allocs *cgoAllocMap
- ref9fd129cf.tagSize, ctagSize_allocs = (C.size_t)(x.TagSize), cgoAllocsUnknown
- allocs9fd129cf.Borrow(ctagSize_allocs)
+ var clineStippleFactor_allocs *cgoAllocMap
+ ref649f4226.lineStippleFactor, clineStippleFactor_allocs = (C.uint32_t)(x.LineStippleFactor), cgoAllocsUnknown
+ allocs649f4226.Borrow(clineStippleFactor_allocs)
- var cpTag_allocs *cgoAllocMap
- ref9fd129cf.pTag, cpTag_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PTag)), cgoAllocsUnknown
- allocs9fd129cf.Borrow(cpTag_allocs)
+ var clineStipplePattern_allocs *cgoAllocMap
+ ref649f4226.lineStipplePattern, clineStipplePattern_allocs = (C.uint16_t)(x.LineStipplePattern), cgoAllocsUnknown
+ allocs649f4226.Borrow(clineStipplePattern_allocs)
- x.ref9fd129cf = ref9fd129cf
- x.allocs9fd129cf = allocs9fd129cf
- return ref9fd129cf, allocs9fd129cf
+ x.ref649f4226 = ref649f4226
+ x.allocs649f4226 = allocs649f4226
+ return ref649f4226, allocs649f4226
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DebugUtilsObjectTagInfo) PassValue() (C.VkDebugUtilsObjectTagInfoEXT, *cgoAllocMap) {
- if x.ref9fd129cf != nil {
- return *x.ref9fd129cf, nil
+func (x PipelineRasterizationLineStateCreateInfo) PassValue() (C.VkPipelineRasterizationLineStateCreateInfoEXT, *cgoAllocMap) {
+ if x.ref649f4226 != nil {
+ return *x.ref649f4226, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -31408,98 +57975,137 @@ func (x DebugUtilsObjectTagInfo) PassValue() (C.VkDebugUtilsObjectTagInfoEXT, *c
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DebugUtilsObjectTagInfo) Deref() {
- if x.ref9fd129cf == nil {
+func (x *PipelineRasterizationLineStateCreateInfo) Deref() {
+ if x.ref649f4226 == nil {
return
}
- x.SType = (StructureType)(x.ref9fd129cf.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref9fd129cf.pNext))
- x.ObjectType = (ObjectType)(x.ref9fd129cf.objectType)
- x.ObjectHandle = (uint64)(x.ref9fd129cf.objectHandle)
- x.TagName = (uint64)(x.ref9fd129cf.tagName)
- x.TagSize = (uint)(x.ref9fd129cf.tagSize)
- x.PTag = (unsafe.Pointer)(unsafe.Pointer(x.ref9fd129cf.pTag))
+ x.SType = (StructureType)(x.ref649f4226.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref649f4226.pNext))
+ x.LineRasterizationMode = (LineRasterizationMode)(x.ref649f4226.lineRasterizationMode)
+ x.StippledLineEnable = (Bool32)(x.ref649f4226.stippledLineEnable)
+ x.LineStippleFactor = (uint32)(x.ref649f4226.lineStippleFactor)
+ x.LineStipplePattern = (uint16)(x.ref649f4226.lineStipplePattern)
}
-// allocDebugUtilsLabelMemory allocates memory for type C.VkDebugUtilsLabelEXT in C.
+// allocPhysicalDeviceShaderAtomicFloatFeaturesMemory allocates memory for type C.VkPhysicalDeviceShaderAtomicFloatFeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDebugUtilsLabelMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDebugUtilsLabelValue))
+func allocPhysicalDeviceShaderAtomicFloatFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceShaderAtomicFloatFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDebugUtilsLabelValue = unsafe.Sizeof([1]C.VkDebugUtilsLabelEXT{})
+const sizeOfPhysicalDeviceShaderAtomicFloatFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceShaderAtomicFloatFeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DebugUtilsLabel) Ref() *C.VkDebugUtilsLabelEXT {
+func (x *PhysicalDeviceShaderAtomicFloatFeatures) Ref() *C.VkPhysicalDeviceShaderAtomicFloatFeaturesEXT {
if x == nil {
return nil
}
- return x.ref8faaf7b1
+ return x.refb387c45b
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DebugUtilsLabel) Free() {
- if x != nil && x.allocs8faaf7b1 != nil {
- x.allocs8faaf7b1.(*cgoAllocMap).Free()
- x.ref8faaf7b1 = nil
+func (x *PhysicalDeviceShaderAtomicFloatFeatures) Free() {
+ if x != nil && x.allocsb387c45b != nil {
+ x.allocsb387c45b.(*cgoAllocMap).Free()
+ x.refb387c45b = nil
}
}
-// NewDebugUtilsLabelRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceShaderAtomicFloatFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDebugUtilsLabelRef(ref unsafe.Pointer) *DebugUtilsLabel {
+func NewPhysicalDeviceShaderAtomicFloatFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceShaderAtomicFloatFeatures {
if ref == nil {
return nil
}
- obj := new(DebugUtilsLabel)
- obj.ref8faaf7b1 = (*C.VkDebugUtilsLabelEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceShaderAtomicFloatFeatures)
+ obj.refb387c45b = (*C.VkPhysicalDeviceShaderAtomicFloatFeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DebugUtilsLabel) PassRef() (*C.VkDebugUtilsLabelEXT, *cgoAllocMap) {
+func (x *PhysicalDeviceShaderAtomicFloatFeatures) PassRef() (*C.VkPhysicalDeviceShaderAtomicFloatFeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref8faaf7b1 != nil {
- return x.ref8faaf7b1, nil
+ } else if x.refb387c45b != nil {
+ return x.refb387c45b, nil
}
- mem8faaf7b1 := allocDebugUtilsLabelMemory(1)
- ref8faaf7b1 := (*C.VkDebugUtilsLabelEXT)(mem8faaf7b1)
- allocs8faaf7b1 := new(cgoAllocMap)
- allocs8faaf7b1.Add(mem8faaf7b1)
+ memb387c45b := allocPhysicalDeviceShaderAtomicFloatFeaturesMemory(1)
+ refb387c45b := (*C.VkPhysicalDeviceShaderAtomicFloatFeaturesEXT)(memb387c45b)
+ allocsb387c45b := new(cgoAllocMap)
+ allocsb387c45b.Add(memb387c45b)
var csType_allocs *cgoAllocMap
- ref8faaf7b1.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs8faaf7b1.Borrow(csType_allocs)
+ refb387c45b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsb387c45b.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref8faaf7b1.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs8faaf7b1.Borrow(cpNext_allocs)
+ refb387c45b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsb387c45b.Borrow(cpNext_allocs)
- var cpLabelName_allocs *cgoAllocMap
- ref8faaf7b1.pLabelName, cpLabelName_allocs = unpackPCharString(x.PLabelName)
- allocs8faaf7b1.Borrow(cpLabelName_allocs)
+ var cshaderBufferFloat32Atomics_allocs *cgoAllocMap
+ refb387c45b.shaderBufferFloat32Atomics, cshaderBufferFloat32Atomics_allocs = (C.VkBool32)(x.ShaderBufferFloat32Atomics), cgoAllocsUnknown
+ allocsb387c45b.Borrow(cshaderBufferFloat32Atomics_allocs)
- var ccolor_allocs *cgoAllocMap
- ref8faaf7b1.color, ccolor_allocs = *(*[4]C.float)(unsafe.Pointer(&x.Color)), cgoAllocsUnknown
- allocs8faaf7b1.Borrow(ccolor_allocs)
+ var cshaderBufferFloat32AtomicAdd_allocs *cgoAllocMap
+ refb387c45b.shaderBufferFloat32AtomicAdd, cshaderBufferFloat32AtomicAdd_allocs = (C.VkBool32)(x.ShaderBufferFloat32AtomicAdd), cgoAllocsUnknown
+ allocsb387c45b.Borrow(cshaderBufferFloat32AtomicAdd_allocs)
- x.ref8faaf7b1 = ref8faaf7b1
- x.allocs8faaf7b1 = allocs8faaf7b1
- return ref8faaf7b1, allocs8faaf7b1
+ var cshaderBufferFloat64Atomics_allocs *cgoAllocMap
+ refb387c45b.shaderBufferFloat64Atomics, cshaderBufferFloat64Atomics_allocs = (C.VkBool32)(x.ShaderBufferFloat64Atomics), cgoAllocsUnknown
+ allocsb387c45b.Borrow(cshaderBufferFloat64Atomics_allocs)
+
+ var cshaderBufferFloat64AtomicAdd_allocs *cgoAllocMap
+ refb387c45b.shaderBufferFloat64AtomicAdd, cshaderBufferFloat64AtomicAdd_allocs = (C.VkBool32)(x.ShaderBufferFloat64AtomicAdd), cgoAllocsUnknown
+ allocsb387c45b.Borrow(cshaderBufferFloat64AtomicAdd_allocs)
+
+ var cshaderSharedFloat32Atomics_allocs *cgoAllocMap
+ refb387c45b.shaderSharedFloat32Atomics, cshaderSharedFloat32Atomics_allocs = (C.VkBool32)(x.ShaderSharedFloat32Atomics), cgoAllocsUnknown
+ allocsb387c45b.Borrow(cshaderSharedFloat32Atomics_allocs)
+
+ var cshaderSharedFloat32AtomicAdd_allocs *cgoAllocMap
+ refb387c45b.shaderSharedFloat32AtomicAdd, cshaderSharedFloat32AtomicAdd_allocs = (C.VkBool32)(x.ShaderSharedFloat32AtomicAdd), cgoAllocsUnknown
+ allocsb387c45b.Borrow(cshaderSharedFloat32AtomicAdd_allocs)
+
+ var cshaderSharedFloat64Atomics_allocs *cgoAllocMap
+ refb387c45b.shaderSharedFloat64Atomics, cshaderSharedFloat64Atomics_allocs = (C.VkBool32)(x.ShaderSharedFloat64Atomics), cgoAllocsUnknown
+ allocsb387c45b.Borrow(cshaderSharedFloat64Atomics_allocs)
+
+ var cshaderSharedFloat64AtomicAdd_allocs *cgoAllocMap
+ refb387c45b.shaderSharedFloat64AtomicAdd, cshaderSharedFloat64AtomicAdd_allocs = (C.VkBool32)(x.ShaderSharedFloat64AtomicAdd), cgoAllocsUnknown
+ allocsb387c45b.Borrow(cshaderSharedFloat64AtomicAdd_allocs)
+
+ var cshaderImageFloat32Atomics_allocs *cgoAllocMap
+ refb387c45b.shaderImageFloat32Atomics, cshaderImageFloat32Atomics_allocs = (C.VkBool32)(x.ShaderImageFloat32Atomics), cgoAllocsUnknown
+ allocsb387c45b.Borrow(cshaderImageFloat32Atomics_allocs)
+
+ var cshaderImageFloat32AtomicAdd_allocs *cgoAllocMap
+ refb387c45b.shaderImageFloat32AtomicAdd, cshaderImageFloat32AtomicAdd_allocs = (C.VkBool32)(x.ShaderImageFloat32AtomicAdd), cgoAllocsUnknown
+ allocsb387c45b.Borrow(cshaderImageFloat32AtomicAdd_allocs)
+
+ var csparseImageFloat32Atomics_allocs *cgoAllocMap
+ refb387c45b.sparseImageFloat32Atomics, csparseImageFloat32Atomics_allocs = (C.VkBool32)(x.SparseImageFloat32Atomics), cgoAllocsUnknown
+ allocsb387c45b.Borrow(csparseImageFloat32Atomics_allocs)
+
+ var csparseImageFloat32AtomicAdd_allocs *cgoAllocMap
+ refb387c45b.sparseImageFloat32AtomicAdd, csparseImageFloat32AtomicAdd_allocs = (C.VkBool32)(x.SparseImageFloat32AtomicAdd), cgoAllocsUnknown
+ allocsb387c45b.Borrow(csparseImageFloat32AtomicAdd_allocs)
+
+ x.refb387c45b = refb387c45b
+ x.allocsb387c45b = allocsb387c45b
+ return refb387c45b, allocsb387c45b
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DebugUtilsLabel) PassValue() (C.VkDebugUtilsLabelEXT, *cgoAllocMap) {
- if x.ref8faaf7b1 != nil {
- return *x.ref8faaf7b1, nil
+func (x PhysicalDeviceShaderAtomicFloatFeatures) PassValue() (C.VkPhysicalDeviceShaderAtomicFloatFeaturesEXT, *cgoAllocMap) {
+ if x.refb387c45b != nil {
+ return *x.refb387c45b, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -31507,91 +58113,101 @@ func (x DebugUtilsLabel) PassValue() (C.VkDebugUtilsLabelEXT, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DebugUtilsLabel) Deref() {
- if x.ref8faaf7b1 == nil {
+func (x *PhysicalDeviceShaderAtomicFloatFeatures) Deref() {
+ if x.refb387c45b == nil {
return
}
- x.SType = (StructureType)(x.ref8faaf7b1.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref8faaf7b1.pNext))
- x.PLabelName = packPCharString(x.ref8faaf7b1.pLabelName)
- x.Color = *(*[4]float32)(unsafe.Pointer(&x.ref8faaf7b1.color))
-}
-
-// allocSamplerReductionModeCreateInfoMemory allocates memory for type C.VkSamplerReductionModeCreateInfoEXT in C.
+ x.SType = (StructureType)(x.refb387c45b.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb387c45b.pNext))
+ x.ShaderBufferFloat32Atomics = (Bool32)(x.refb387c45b.shaderBufferFloat32Atomics)
+ x.ShaderBufferFloat32AtomicAdd = (Bool32)(x.refb387c45b.shaderBufferFloat32AtomicAdd)
+ x.ShaderBufferFloat64Atomics = (Bool32)(x.refb387c45b.shaderBufferFloat64Atomics)
+ x.ShaderBufferFloat64AtomicAdd = (Bool32)(x.refb387c45b.shaderBufferFloat64AtomicAdd)
+ x.ShaderSharedFloat32Atomics = (Bool32)(x.refb387c45b.shaderSharedFloat32Atomics)
+ x.ShaderSharedFloat32AtomicAdd = (Bool32)(x.refb387c45b.shaderSharedFloat32AtomicAdd)
+ x.ShaderSharedFloat64Atomics = (Bool32)(x.refb387c45b.shaderSharedFloat64Atomics)
+ x.ShaderSharedFloat64AtomicAdd = (Bool32)(x.refb387c45b.shaderSharedFloat64AtomicAdd)
+ x.ShaderImageFloat32Atomics = (Bool32)(x.refb387c45b.shaderImageFloat32Atomics)
+ x.ShaderImageFloat32AtomicAdd = (Bool32)(x.refb387c45b.shaderImageFloat32AtomicAdd)
+ x.SparseImageFloat32Atomics = (Bool32)(x.refb387c45b.sparseImageFloat32Atomics)
+ x.SparseImageFloat32AtomicAdd = (Bool32)(x.refb387c45b.sparseImageFloat32AtomicAdd)
+}
+
+// allocPhysicalDeviceIndexTypeUint8FeaturesMemory allocates memory for type C.VkPhysicalDeviceIndexTypeUint8FeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSamplerReductionModeCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSamplerReductionModeCreateInfoValue))
+func allocPhysicalDeviceIndexTypeUint8FeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceIndexTypeUint8FeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSamplerReductionModeCreateInfoValue = unsafe.Sizeof([1]C.VkSamplerReductionModeCreateInfoEXT{})
+const sizeOfPhysicalDeviceIndexTypeUint8FeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceIndexTypeUint8FeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SamplerReductionModeCreateInfo) Ref() *C.VkSamplerReductionModeCreateInfoEXT {
+func (x *PhysicalDeviceIndexTypeUint8Features) Ref() *C.VkPhysicalDeviceIndexTypeUint8FeaturesEXT {
if x == nil {
return nil
}
- return x.reff1cfd4e3
+ return x.refd29dc94
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SamplerReductionModeCreateInfo) Free() {
- if x != nil && x.allocsf1cfd4e3 != nil {
- x.allocsf1cfd4e3.(*cgoAllocMap).Free()
- x.reff1cfd4e3 = nil
+func (x *PhysicalDeviceIndexTypeUint8Features) Free() {
+ if x != nil && x.allocsd29dc94 != nil {
+ x.allocsd29dc94.(*cgoAllocMap).Free()
+ x.refd29dc94 = nil
}
}
-// NewSamplerReductionModeCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceIndexTypeUint8FeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSamplerReductionModeCreateInfoRef(ref unsafe.Pointer) *SamplerReductionModeCreateInfo {
+func NewPhysicalDeviceIndexTypeUint8FeaturesRef(ref unsafe.Pointer) *PhysicalDeviceIndexTypeUint8Features {
if ref == nil {
return nil
}
- obj := new(SamplerReductionModeCreateInfo)
- obj.reff1cfd4e3 = (*C.VkSamplerReductionModeCreateInfoEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceIndexTypeUint8Features)
+ obj.refd29dc94 = (*C.VkPhysicalDeviceIndexTypeUint8FeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SamplerReductionModeCreateInfo) PassRef() (*C.VkSamplerReductionModeCreateInfoEXT, *cgoAllocMap) {
+func (x *PhysicalDeviceIndexTypeUint8Features) PassRef() (*C.VkPhysicalDeviceIndexTypeUint8FeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.reff1cfd4e3 != nil {
- return x.reff1cfd4e3, nil
+ } else if x.refd29dc94 != nil {
+ return x.refd29dc94, nil
}
- memf1cfd4e3 := allocSamplerReductionModeCreateInfoMemory(1)
- reff1cfd4e3 := (*C.VkSamplerReductionModeCreateInfoEXT)(memf1cfd4e3)
- allocsf1cfd4e3 := new(cgoAllocMap)
- allocsf1cfd4e3.Add(memf1cfd4e3)
+ memd29dc94 := allocPhysicalDeviceIndexTypeUint8FeaturesMemory(1)
+ refd29dc94 := (*C.VkPhysicalDeviceIndexTypeUint8FeaturesEXT)(memd29dc94)
+ allocsd29dc94 := new(cgoAllocMap)
+ allocsd29dc94.Add(memd29dc94)
var csType_allocs *cgoAllocMap
- reff1cfd4e3.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsf1cfd4e3.Borrow(csType_allocs)
+ refd29dc94.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd29dc94.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- reff1cfd4e3.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsf1cfd4e3.Borrow(cpNext_allocs)
+ refd29dc94.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsd29dc94.Borrow(cpNext_allocs)
- var creductionMode_allocs *cgoAllocMap
- reff1cfd4e3.reductionMode, creductionMode_allocs = (C.VkSamplerReductionModeEXT)(x.ReductionMode), cgoAllocsUnknown
- allocsf1cfd4e3.Borrow(creductionMode_allocs)
+ var cindexTypeUint8_allocs *cgoAllocMap
+ refd29dc94.indexTypeUint8, cindexTypeUint8_allocs = (C.VkBool32)(x.IndexTypeUint8), cgoAllocsUnknown
+ allocsd29dc94.Borrow(cindexTypeUint8_allocs)
- x.reff1cfd4e3 = reff1cfd4e3
- x.allocsf1cfd4e3 = allocsf1cfd4e3
- return reff1cfd4e3, allocsf1cfd4e3
+ x.refd29dc94 = refd29dc94
+ x.allocsd29dc94 = allocsd29dc94
+ return refd29dc94, allocsd29dc94
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SamplerReductionModeCreateInfo) PassValue() (C.VkSamplerReductionModeCreateInfoEXT, *cgoAllocMap) {
- if x.reff1cfd4e3 != nil {
- return *x.reff1cfd4e3, nil
+func (x PhysicalDeviceIndexTypeUint8Features) PassValue() (C.VkPhysicalDeviceIndexTypeUint8FeaturesEXT, *cgoAllocMap) {
+ if x.refd29dc94 != nil {
+ return *x.refd29dc94, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -31599,94 +58215,90 @@ func (x SamplerReductionModeCreateInfo) PassValue() (C.VkSamplerReductionModeCre
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SamplerReductionModeCreateInfo) Deref() {
- if x.reff1cfd4e3 == nil {
+func (x *PhysicalDeviceIndexTypeUint8Features) Deref() {
+ if x.refd29dc94 == nil {
return
}
- x.SType = (StructureType)(x.reff1cfd4e3.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff1cfd4e3.pNext))
- x.ReductionMode = (SamplerReductionMode)(x.reff1cfd4e3.reductionMode)
+ x.SType = (StructureType)(x.refd29dc94.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd29dc94.pNext))
+ x.IndexTypeUint8 = (Bool32)(x.refd29dc94.indexTypeUint8)
}
-// allocPhysicalDeviceSamplerFilterMinmaxPropertiesMemory allocates memory for type C.VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT in C.
+// allocPhysicalDeviceExtendedDynamicStateFeaturesMemory allocates memory for type C.VkPhysicalDeviceExtendedDynamicStateFeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceSamplerFilterMinmaxPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceSamplerFilterMinmaxPropertiesValue))
+func allocPhysicalDeviceExtendedDynamicStateFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceExtendedDynamicStateFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceSamplerFilterMinmaxPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT{})
+const sizeOfPhysicalDeviceExtendedDynamicStateFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceExtendedDynamicStateFeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceSamplerFilterMinmaxProperties) Ref() *C.VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT {
+func (x *PhysicalDeviceExtendedDynamicStateFeatures) Ref() *C.VkPhysicalDeviceExtendedDynamicStateFeaturesEXT {
if x == nil {
return nil
}
- return x.refcc32d100
+ return x.reff7bd87ab
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceSamplerFilterMinmaxProperties) Free() {
- if x != nil && x.allocscc32d100 != nil {
- x.allocscc32d100.(*cgoAllocMap).Free()
- x.refcc32d100 = nil
+func (x *PhysicalDeviceExtendedDynamicStateFeatures) Free() {
+ if x != nil && x.allocsf7bd87ab != nil {
+ x.allocsf7bd87ab.(*cgoAllocMap).Free()
+ x.reff7bd87ab = nil
}
}
-// NewPhysicalDeviceSamplerFilterMinmaxPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceExtendedDynamicStateFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceSamplerFilterMinmaxPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceSamplerFilterMinmaxProperties {
+func NewPhysicalDeviceExtendedDynamicStateFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceExtendedDynamicStateFeatures {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceSamplerFilterMinmaxProperties)
- obj.refcc32d100 = (*C.VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceExtendedDynamicStateFeatures)
+ obj.reff7bd87ab = (*C.VkPhysicalDeviceExtendedDynamicStateFeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceSamplerFilterMinmaxProperties) PassRef() (*C.VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT, *cgoAllocMap) {
+func (x *PhysicalDeviceExtendedDynamicStateFeatures) PassRef() (*C.VkPhysicalDeviceExtendedDynamicStateFeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refcc32d100 != nil {
- return x.refcc32d100, nil
+ } else if x.reff7bd87ab != nil {
+ return x.reff7bd87ab, nil
}
- memcc32d100 := allocPhysicalDeviceSamplerFilterMinmaxPropertiesMemory(1)
- refcc32d100 := (*C.VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT)(memcc32d100)
- allocscc32d100 := new(cgoAllocMap)
- allocscc32d100.Add(memcc32d100)
+ memf7bd87ab := allocPhysicalDeviceExtendedDynamicStateFeaturesMemory(1)
+ reff7bd87ab := (*C.VkPhysicalDeviceExtendedDynamicStateFeaturesEXT)(memf7bd87ab)
+ allocsf7bd87ab := new(cgoAllocMap)
+ allocsf7bd87ab.Add(memf7bd87ab)
var csType_allocs *cgoAllocMap
- refcc32d100.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocscc32d100.Borrow(csType_allocs)
+ reff7bd87ab.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsf7bd87ab.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refcc32d100.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocscc32d100.Borrow(cpNext_allocs)
-
- var cfilterMinmaxSingleComponentFormats_allocs *cgoAllocMap
- refcc32d100.filterMinmaxSingleComponentFormats, cfilterMinmaxSingleComponentFormats_allocs = (C.VkBool32)(x.FilterMinmaxSingleComponentFormats), cgoAllocsUnknown
- allocscc32d100.Borrow(cfilterMinmaxSingleComponentFormats_allocs)
+ reff7bd87ab.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsf7bd87ab.Borrow(cpNext_allocs)
- var cfilterMinmaxImageComponentMapping_allocs *cgoAllocMap
- refcc32d100.filterMinmaxImageComponentMapping, cfilterMinmaxImageComponentMapping_allocs = (C.VkBool32)(x.FilterMinmaxImageComponentMapping), cgoAllocsUnknown
- allocscc32d100.Borrow(cfilterMinmaxImageComponentMapping_allocs)
+ var cextendedDynamicState_allocs *cgoAllocMap
+ reff7bd87ab.extendedDynamicState, cextendedDynamicState_allocs = (C.VkBool32)(x.ExtendedDynamicState), cgoAllocsUnknown
+ allocsf7bd87ab.Borrow(cextendedDynamicState_allocs)
- x.refcc32d100 = refcc32d100
- x.allocscc32d100 = allocscc32d100
- return refcc32d100, allocscc32d100
+ x.reff7bd87ab = reff7bd87ab
+ x.allocsf7bd87ab = allocsf7bd87ab
+ return reff7bd87ab, allocsf7bd87ab
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceSamplerFilterMinmaxProperties) PassValue() (C.VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT, *cgoAllocMap) {
- if x.refcc32d100 != nil {
- return *x.refcc32d100, nil
+func (x PhysicalDeviceExtendedDynamicStateFeatures) PassValue() (C.VkPhysicalDeviceExtendedDynamicStateFeaturesEXT, *cgoAllocMap) {
+ if x.reff7bd87ab != nil {
+ return *x.reff7bd87ab, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -31694,95 +58306,134 @@ func (x PhysicalDeviceSamplerFilterMinmaxProperties) PassValue() (C.VkPhysicalDe
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceSamplerFilterMinmaxProperties) Deref() {
- if x.refcc32d100 == nil {
+func (x *PhysicalDeviceExtendedDynamicStateFeatures) Deref() {
+ if x.reff7bd87ab == nil {
return
}
- x.SType = (StructureType)(x.refcc32d100.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refcc32d100.pNext))
- x.FilterMinmaxSingleComponentFormats = (Bool32)(x.refcc32d100.filterMinmaxSingleComponentFormats)
- x.FilterMinmaxImageComponentMapping = (Bool32)(x.refcc32d100.filterMinmaxImageComponentMapping)
+ x.SType = (StructureType)(x.reff7bd87ab.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff7bd87ab.pNext))
+ x.ExtendedDynamicState = (Bool32)(x.reff7bd87ab.extendedDynamicState)
}
-// allocPhysicalDeviceInlineUniformBlockFeaturesMemory allocates memory for type C.VkPhysicalDeviceInlineUniformBlockFeaturesEXT in C.
+// allocPhysicalDeviceShaderAtomicFloat2FeaturesMemory allocates memory for type C.VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceInlineUniformBlockFeaturesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceInlineUniformBlockFeaturesValue))
+func allocPhysicalDeviceShaderAtomicFloat2FeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceShaderAtomicFloat2FeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceInlineUniformBlockFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceInlineUniformBlockFeaturesEXT{})
+const sizeOfPhysicalDeviceShaderAtomicFloat2FeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceInlineUniformBlockFeatures) Ref() *C.VkPhysicalDeviceInlineUniformBlockFeaturesEXT {
+func (x *PhysicalDeviceShaderAtomicFloat2Features) Ref() *C.VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT {
if x == nil {
return nil
}
- return x.ref5054bc6c
+ return x.reff53782
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceInlineUniformBlockFeatures) Free() {
- if x != nil && x.allocs5054bc6c != nil {
- x.allocs5054bc6c.(*cgoAllocMap).Free()
- x.ref5054bc6c = nil
+func (x *PhysicalDeviceShaderAtomicFloat2Features) Free() {
+ if x != nil && x.allocsf53782 != nil {
+ x.allocsf53782.(*cgoAllocMap).Free()
+ x.reff53782 = nil
}
}
-// NewPhysicalDeviceInlineUniformBlockFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceShaderAtomicFloat2FeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceInlineUniformBlockFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceInlineUniformBlockFeatures {
+func NewPhysicalDeviceShaderAtomicFloat2FeaturesRef(ref unsafe.Pointer) *PhysicalDeviceShaderAtomicFloat2Features {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceInlineUniformBlockFeatures)
- obj.ref5054bc6c = (*C.VkPhysicalDeviceInlineUniformBlockFeaturesEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceShaderAtomicFloat2Features)
+ obj.reff53782 = (*C.VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceInlineUniformBlockFeatures) PassRef() (*C.VkPhysicalDeviceInlineUniformBlockFeaturesEXT, *cgoAllocMap) {
+func (x *PhysicalDeviceShaderAtomicFloat2Features) PassRef() (*C.VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref5054bc6c != nil {
- return x.ref5054bc6c, nil
+ } else if x.reff53782 != nil {
+ return x.reff53782, nil
}
- mem5054bc6c := allocPhysicalDeviceInlineUniformBlockFeaturesMemory(1)
- ref5054bc6c := (*C.VkPhysicalDeviceInlineUniformBlockFeaturesEXT)(mem5054bc6c)
- allocs5054bc6c := new(cgoAllocMap)
- allocs5054bc6c.Add(mem5054bc6c)
+ memf53782 := allocPhysicalDeviceShaderAtomicFloat2FeaturesMemory(1)
+ reff53782 := (*C.VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT)(memf53782)
+ allocsf53782 := new(cgoAllocMap)
+ allocsf53782.Add(memf53782)
+
+ var csType_allocs *cgoAllocMap
+ reff53782.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsf53782.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ reff53782.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsf53782.Borrow(cpNext_allocs)
+
+ var cshaderBufferFloat16Atomics_allocs *cgoAllocMap
+ reff53782.shaderBufferFloat16Atomics, cshaderBufferFloat16Atomics_allocs = (C.VkBool32)(x.ShaderBufferFloat16Atomics), cgoAllocsUnknown
+ allocsf53782.Borrow(cshaderBufferFloat16Atomics_allocs)
+
+ var cshaderBufferFloat16AtomicAdd_allocs *cgoAllocMap
+ reff53782.shaderBufferFloat16AtomicAdd, cshaderBufferFloat16AtomicAdd_allocs = (C.VkBool32)(x.ShaderBufferFloat16AtomicAdd), cgoAllocsUnknown
+ allocsf53782.Borrow(cshaderBufferFloat16AtomicAdd_allocs)
+
+ var cshaderBufferFloat16AtomicMinMax_allocs *cgoAllocMap
+ reff53782.shaderBufferFloat16AtomicMinMax, cshaderBufferFloat16AtomicMinMax_allocs = (C.VkBool32)(x.ShaderBufferFloat16AtomicMinMax), cgoAllocsUnknown
+ allocsf53782.Borrow(cshaderBufferFloat16AtomicMinMax_allocs)
+
+ var cshaderBufferFloat32AtomicMinMax_allocs *cgoAllocMap
+ reff53782.shaderBufferFloat32AtomicMinMax, cshaderBufferFloat32AtomicMinMax_allocs = (C.VkBool32)(x.ShaderBufferFloat32AtomicMinMax), cgoAllocsUnknown
+ allocsf53782.Borrow(cshaderBufferFloat32AtomicMinMax_allocs)
+
+ var cshaderBufferFloat64AtomicMinMax_allocs *cgoAllocMap
+ reff53782.shaderBufferFloat64AtomicMinMax, cshaderBufferFloat64AtomicMinMax_allocs = (C.VkBool32)(x.ShaderBufferFloat64AtomicMinMax), cgoAllocsUnknown
+ allocsf53782.Borrow(cshaderBufferFloat64AtomicMinMax_allocs)
+
+ var cshaderSharedFloat16Atomics_allocs *cgoAllocMap
+ reff53782.shaderSharedFloat16Atomics, cshaderSharedFloat16Atomics_allocs = (C.VkBool32)(x.ShaderSharedFloat16Atomics), cgoAllocsUnknown
+ allocsf53782.Borrow(cshaderSharedFloat16Atomics_allocs)
+
+ var cshaderSharedFloat16AtomicAdd_allocs *cgoAllocMap
+ reff53782.shaderSharedFloat16AtomicAdd, cshaderSharedFloat16AtomicAdd_allocs = (C.VkBool32)(x.ShaderSharedFloat16AtomicAdd), cgoAllocsUnknown
+ allocsf53782.Borrow(cshaderSharedFloat16AtomicAdd_allocs)
- var csType_allocs *cgoAllocMap
- ref5054bc6c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs5054bc6c.Borrow(csType_allocs)
+ var cshaderSharedFloat16AtomicMinMax_allocs *cgoAllocMap
+ reff53782.shaderSharedFloat16AtomicMinMax, cshaderSharedFloat16AtomicMinMax_allocs = (C.VkBool32)(x.ShaderSharedFloat16AtomicMinMax), cgoAllocsUnknown
+ allocsf53782.Borrow(cshaderSharedFloat16AtomicMinMax_allocs)
- var cpNext_allocs *cgoAllocMap
- ref5054bc6c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs5054bc6c.Borrow(cpNext_allocs)
+ var cshaderSharedFloat32AtomicMinMax_allocs *cgoAllocMap
+ reff53782.shaderSharedFloat32AtomicMinMax, cshaderSharedFloat32AtomicMinMax_allocs = (C.VkBool32)(x.ShaderSharedFloat32AtomicMinMax), cgoAllocsUnknown
+ allocsf53782.Borrow(cshaderSharedFloat32AtomicMinMax_allocs)
- var cinlineUniformBlock_allocs *cgoAllocMap
- ref5054bc6c.inlineUniformBlock, cinlineUniformBlock_allocs = (C.VkBool32)(x.InlineUniformBlock), cgoAllocsUnknown
- allocs5054bc6c.Borrow(cinlineUniformBlock_allocs)
+ var cshaderSharedFloat64AtomicMinMax_allocs *cgoAllocMap
+ reff53782.shaderSharedFloat64AtomicMinMax, cshaderSharedFloat64AtomicMinMax_allocs = (C.VkBool32)(x.ShaderSharedFloat64AtomicMinMax), cgoAllocsUnknown
+ allocsf53782.Borrow(cshaderSharedFloat64AtomicMinMax_allocs)
- var cdescriptorBindingInlineUniformBlockUpdateAfterBind_allocs *cgoAllocMap
- ref5054bc6c.descriptorBindingInlineUniformBlockUpdateAfterBind, cdescriptorBindingInlineUniformBlockUpdateAfterBind_allocs = (C.VkBool32)(x.DescriptorBindingInlineUniformBlockUpdateAfterBind), cgoAllocsUnknown
- allocs5054bc6c.Borrow(cdescriptorBindingInlineUniformBlockUpdateAfterBind_allocs)
+ var cshaderImageFloat32AtomicMinMax_allocs *cgoAllocMap
+ reff53782.shaderImageFloat32AtomicMinMax, cshaderImageFloat32AtomicMinMax_allocs = (C.VkBool32)(x.ShaderImageFloat32AtomicMinMax), cgoAllocsUnknown
+ allocsf53782.Borrow(cshaderImageFloat32AtomicMinMax_allocs)
- x.ref5054bc6c = ref5054bc6c
- x.allocs5054bc6c = allocs5054bc6c
- return ref5054bc6c, allocs5054bc6c
+ var csparseImageFloat32AtomicMinMax_allocs *cgoAllocMap
+ reff53782.sparseImageFloat32AtomicMinMax, csparseImageFloat32AtomicMinMax_allocs = (C.VkBool32)(x.SparseImageFloat32AtomicMinMax), cgoAllocsUnknown
+ allocsf53782.Borrow(csparseImageFloat32AtomicMinMax_allocs)
+
+ x.reff53782 = reff53782
+ x.allocsf53782 = allocsf53782
+ return reff53782, allocsf53782
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceInlineUniformBlockFeatures) PassValue() (C.VkPhysicalDeviceInlineUniformBlockFeaturesEXT, *cgoAllocMap) {
- if x.ref5054bc6c != nil {
- return *x.ref5054bc6c, nil
+func (x PhysicalDeviceShaderAtomicFloat2Features) PassValue() (C.VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT, *cgoAllocMap) {
+ if x.reff53782 != nil {
+ return *x.reff53782, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -31790,107 +58441,101 @@ func (x PhysicalDeviceInlineUniformBlockFeatures) PassValue() (C.VkPhysicalDevic
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceInlineUniformBlockFeatures) Deref() {
- if x.ref5054bc6c == nil {
+func (x *PhysicalDeviceShaderAtomicFloat2Features) Deref() {
+ if x.reff53782 == nil {
return
}
- x.SType = (StructureType)(x.ref5054bc6c.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5054bc6c.pNext))
- x.InlineUniformBlock = (Bool32)(x.ref5054bc6c.inlineUniformBlock)
- x.DescriptorBindingInlineUniformBlockUpdateAfterBind = (Bool32)(x.ref5054bc6c.descriptorBindingInlineUniformBlockUpdateAfterBind)
-}
-
-// allocPhysicalDeviceInlineUniformBlockPropertiesMemory allocates memory for type C.VkPhysicalDeviceInlineUniformBlockPropertiesEXT in C.
+ x.SType = (StructureType)(x.reff53782.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff53782.pNext))
+ x.ShaderBufferFloat16Atomics = (Bool32)(x.reff53782.shaderBufferFloat16Atomics)
+ x.ShaderBufferFloat16AtomicAdd = (Bool32)(x.reff53782.shaderBufferFloat16AtomicAdd)
+ x.ShaderBufferFloat16AtomicMinMax = (Bool32)(x.reff53782.shaderBufferFloat16AtomicMinMax)
+ x.ShaderBufferFloat32AtomicMinMax = (Bool32)(x.reff53782.shaderBufferFloat32AtomicMinMax)
+ x.ShaderBufferFloat64AtomicMinMax = (Bool32)(x.reff53782.shaderBufferFloat64AtomicMinMax)
+ x.ShaderSharedFloat16Atomics = (Bool32)(x.reff53782.shaderSharedFloat16Atomics)
+ x.ShaderSharedFloat16AtomicAdd = (Bool32)(x.reff53782.shaderSharedFloat16AtomicAdd)
+ x.ShaderSharedFloat16AtomicMinMax = (Bool32)(x.reff53782.shaderSharedFloat16AtomicMinMax)
+ x.ShaderSharedFloat32AtomicMinMax = (Bool32)(x.reff53782.shaderSharedFloat32AtomicMinMax)
+ x.ShaderSharedFloat64AtomicMinMax = (Bool32)(x.reff53782.shaderSharedFloat64AtomicMinMax)
+ x.ShaderImageFloat32AtomicMinMax = (Bool32)(x.reff53782.shaderImageFloat32AtomicMinMax)
+ x.SparseImageFloat32AtomicMinMax = (Bool32)(x.reff53782.sparseImageFloat32AtomicMinMax)
+}
+
+// allocSurfacePresentModeMemory allocates memory for type C.VkSurfacePresentModeEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceInlineUniformBlockPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceInlineUniformBlockPropertiesValue))
+func allocSurfacePresentModeMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSurfacePresentModeValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceInlineUniformBlockPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceInlineUniformBlockPropertiesEXT{})
+const sizeOfSurfacePresentModeValue = unsafe.Sizeof([1]C.VkSurfacePresentModeEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceInlineUniformBlockProperties) Ref() *C.VkPhysicalDeviceInlineUniformBlockPropertiesEXT {
+func (x *SurfacePresentMode) Ref() *C.VkSurfacePresentModeEXT {
if x == nil {
return nil
}
- return x.ref7ef1794
+ return x.ref7c337d5d
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceInlineUniformBlockProperties) Free() {
- if x != nil && x.allocs7ef1794 != nil {
- x.allocs7ef1794.(*cgoAllocMap).Free()
- x.ref7ef1794 = nil
+func (x *SurfacePresentMode) Free() {
+ if x != nil && x.allocs7c337d5d != nil {
+ x.allocs7c337d5d.(*cgoAllocMap).Free()
+ x.ref7c337d5d = nil
}
}
-// NewPhysicalDeviceInlineUniformBlockPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewSurfacePresentModeRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceInlineUniformBlockPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceInlineUniformBlockProperties {
+func NewSurfacePresentModeRef(ref unsafe.Pointer) *SurfacePresentMode {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceInlineUniformBlockProperties)
- obj.ref7ef1794 = (*C.VkPhysicalDeviceInlineUniformBlockPropertiesEXT)(unsafe.Pointer(ref))
+ obj := new(SurfacePresentMode)
+ obj.ref7c337d5d = (*C.VkSurfacePresentModeEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceInlineUniformBlockProperties) PassRef() (*C.VkPhysicalDeviceInlineUniformBlockPropertiesEXT, *cgoAllocMap) {
+func (x *SurfacePresentMode) PassRef() (*C.VkSurfacePresentModeEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref7ef1794 != nil {
- return x.ref7ef1794, nil
+ } else if x.ref7c337d5d != nil {
+ return x.ref7c337d5d, nil
}
- mem7ef1794 := allocPhysicalDeviceInlineUniformBlockPropertiesMemory(1)
- ref7ef1794 := (*C.VkPhysicalDeviceInlineUniformBlockPropertiesEXT)(mem7ef1794)
- allocs7ef1794 := new(cgoAllocMap)
- allocs7ef1794.Add(mem7ef1794)
+ mem7c337d5d := allocSurfacePresentModeMemory(1)
+ ref7c337d5d := (*C.VkSurfacePresentModeEXT)(mem7c337d5d)
+ allocs7c337d5d := new(cgoAllocMap)
+ allocs7c337d5d.Add(mem7c337d5d)
var csType_allocs *cgoAllocMap
- ref7ef1794.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs7ef1794.Borrow(csType_allocs)
+ ref7c337d5d.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs7c337d5d.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref7ef1794.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs7ef1794.Borrow(cpNext_allocs)
-
- var cmaxInlineUniformBlockSize_allocs *cgoAllocMap
- ref7ef1794.maxInlineUniformBlockSize, cmaxInlineUniformBlockSize_allocs = (C.uint32_t)(x.MaxInlineUniformBlockSize), cgoAllocsUnknown
- allocs7ef1794.Borrow(cmaxInlineUniformBlockSize_allocs)
+ ref7c337d5d.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs7c337d5d.Borrow(cpNext_allocs)
- var cmaxPerStageDescriptorInlineUniformBlocks_allocs *cgoAllocMap
- ref7ef1794.maxPerStageDescriptorInlineUniformBlocks, cmaxPerStageDescriptorInlineUniformBlocks_allocs = (C.uint32_t)(x.MaxPerStageDescriptorInlineUniformBlocks), cgoAllocsUnknown
- allocs7ef1794.Borrow(cmaxPerStageDescriptorInlineUniformBlocks_allocs)
-
- var cmaxPerStageDescriptorUpdateAfterBindInlineUniformBlocks_allocs *cgoAllocMap
- ref7ef1794.maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks, cmaxPerStageDescriptorUpdateAfterBindInlineUniformBlocks_allocs = (C.uint32_t)(x.MaxPerStageDescriptorUpdateAfterBindInlineUniformBlocks), cgoAllocsUnknown
- allocs7ef1794.Borrow(cmaxPerStageDescriptorUpdateAfterBindInlineUniformBlocks_allocs)
-
- var cmaxDescriptorSetInlineUniformBlocks_allocs *cgoAllocMap
- ref7ef1794.maxDescriptorSetInlineUniformBlocks, cmaxDescriptorSetInlineUniformBlocks_allocs = (C.uint32_t)(x.MaxDescriptorSetInlineUniformBlocks), cgoAllocsUnknown
- allocs7ef1794.Borrow(cmaxDescriptorSetInlineUniformBlocks_allocs)
-
- var cmaxDescriptorSetUpdateAfterBindInlineUniformBlocks_allocs *cgoAllocMap
- ref7ef1794.maxDescriptorSetUpdateAfterBindInlineUniformBlocks, cmaxDescriptorSetUpdateAfterBindInlineUniformBlocks_allocs = (C.uint32_t)(x.MaxDescriptorSetUpdateAfterBindInlineUniformBlocks), cgoAllocsUnknown
- allocs7ef1794.Borrow(cmaxDescriptorSetUpdateAfterBindInlineUniformBlocks_allocs)
+ var cpresentMode_allocs *cgoAllocMap
+ ref7c337d5d.presentMode, cpresentMode_allocs = (C.VkPresentModeKHR)(x.PresentMode), cgoAllocsUnknown
+ allocs7c337d5d.Borrow(cpresentMode_allocs)
- x.ref7ef1794 = ref7ef1794
- x.allocs7ef1794 = allocs7ef1794
- return ref7ef1794, allocs7ef1794
+ x.ref7c337d5d = ref7c337d5d
+ x.allocs7c337d5d = allocs7c337d5d
+ return ref7c337d5d, allocs7c337d5d
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceInlineUniformBlockProperties) PassValue() (C.VkPhysicalDeviceInlineUniformBlockPropertiesEXT, *cgoAllocMap) {
- if x.ref7ef1794 != nil {
- return *x.ref7ef1794, nil
+func (x SurfacePresentMode) PassValue() (C.VkSurfacePresentModeEXT, *cgoAllocMap) {
+ if x.ref7c337d5d != nil {
+ return *x.ref7c337d5d, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -31898,98 +58543,106 @@ func (x PhysicalDeviceInlineUniformBlockProperties) PassValue() (C.VkPhysicalDev
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceInlineUniformBlockProperties) Deref() {
- if x.ref7ef1794 == nil {
+func (x *SurfacePresentMode) Deref() {
+ if x.ref7c337d5d == nil {
return
}
- x.SType = (StructureType)(x.ref7ef1794.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref7ef1794.pNext))
- x.MaxInlineUniformBlockSize = (uint32)(x.ref7ef1794.maxInlineUniformBlockSize)
- x.MaxPerStageDescriptorInlineUniformBlocks = (uint32)(x.ref7ef1794.maxPerStageDescriptorInlineUniformBlocks)
- x.MaxPerStageDescriptorUpdateAfterBindInlineUniformBlocks = (uint32)(x.ref7ef1794.maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks)
- x.MaxDescriptorSetInlineUniformBlocks = (uint32)(x.ref7ef1794.maxDescriptorSetInlineUniformBlocks)
- x.MaxDescriptorSetUpdateAfterBindInlineUniformBlocks = (uint32)(x.ref7ef1794.maxDescriptorSetUpdateAfterBindInlineUniformBlocks)
+ x.SType = (StructureType)(x.ref7c337d5d.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref7c337d5d.pNext))
+ x.PresentMode = (PresentMode)(x.ref7c337d5d.presentMode)
}
-// allocWriteDescriptorSetInlineUniformBlockMemory allocates memory for type C.VkWriteDescriptorSetInlineUniformBlockEXT in C.
+// allocSurfacePresentScalingCapabilitiesMemory allocates memory for type C.VkSurfacePresentScalingCapabilitiesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocWriteDescriptorSetInlineUniformBlockMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfWriteDescriptorSetInlineUniformBlockValue))
+func allocSurfacePresentScalingCapabilitiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSurfacePresentScalingCapabilitiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfWriteDescriptorSetInlineUniformBlockValue = unsafe.Sizeof([1]C.VkWriteDescriptorSetInlineUniformBlockEXT{})
+const sizeOfSurfacePresentScalingCapabilitiesValue = unsafe.Sizeof([1]C.VkSurfacePresentScalingCapabilitiesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *WriteDescriptorSetInlineUniformBlock) Ref() *C.VkWriteDescriptorSetInlineUniformBlockEXT {
+func (x *SurfacePresentScalingCapabilities) Ref() *C.VkSurfacePresentScalingCapabilitiesEXT {
if x == nil {
return nil
}
- return x.ref18d00656
+ return x.ref2053fb9d
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *WriteDescriptorSetInlineUniformBlock) Free() {
- if x != nil && x.allocs18d00656 != nil {
- x.allocs18d00656.(*cgoAllocMap).Free()
- x.ref18d00656 = nil
+func (x *SurfacePresentScalingCapabilities) Free() {
+ if x != nil && x.allocs2053fb9d != nil {
+ x.allocs2053fb9d.(*cgoAllocMap).Free()
+ x.ref2053fb9d = nil
}
}
-// NewWriteDescriptorSetInlineUniformBlockRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewSurfacePresentScalingCapabilitiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewWriteDescriptorSetInlineUniformBlockRef(ref unsafe.Pointer) *WriteDescriptorSetInlineUniformBlock {
+func NewSurfacePresentScalingCapabilitiesRef(ref unsafe.Pointer) *SurfacePresentScalingCapabilities {
if ref == nil {
return nil
}
- obj := new(WriteDescriptorSetInlineUniformBlock)
- obj.ref18d00656 = (*C.VkWriteDescriptorSetInlineUniformBlockEXT)(unsafe.Pointer(ref))
+ obj := new(SurfacePresentScalingCapabilities)
+ obj.ref2053fb9d = (*C.VkSurfacePresentScalingCapabilitiesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *WriteDescriptorSetInlineUniformBlock) PassRef() (*C.VkWriteDescriptorSetInlineUniformBlockEXT, *cgoAllocMap) {
+func (x *SurfacePresentScalingCapabilities) PassRef() (*C.VkSurfacePresentScalingCapabilitiesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref18d00656 != nil {
- return x.ref18d00656, nil
+ } else if x.ref2053fb9d != nil {
+ return x.ref2053fb9d, nil
}
- mem18d00656 := allocWriteDescriptorSetInlineUniformBlockMemory(1)
- ref18d00656 := (*C.VkWriteDescriptorSetInlineUniformBlockEXT)(mem18d00656)
- allocs18d00656 := new(cgoAllocMap)
- allocs18d00656.Add(mem18d00656)
+ mem2053fb9d := allocSurfacePresentScalingCapabilitiesMemory(1)
+ ref2053fb9d := (*C.VkSurfacePresentScalingCapabilitiesEXT)(mem2053fb9d)
+ allocs2053fb9d := new(cgoAllocMap)
+ allocs2053fb9d.Add(mem2053fb9d)
var csType_allocs *cgoAllocMap
- ref18d00656.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs18d00656.Borrow(csType_allocs)
+ ref2053fb9d.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs2053fb9d.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref18d00656.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs18d00656.Borrow(cpNext_allocs)
+ ref2053fb9d.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs2053fb9d.Borrow(cpNext_allocs)
- var cdataSize_allocs *cgoAllocMap
- ref18d00656.dataSize, cdataSize_allocs = (C.uint32_t)(x.DataSize), cgoAllocsUnknown
- allocs18d00656.Borrow(cdataSize_allocs)
+ var csupportedPresentScaling_allocs *cgoAllocMap
+ ref2053fb9d.supportedPresentScaling, csupportedPresentScaling_allocs = (C.VkPresentScalingFlagsEXT)(x.SupportedPresentScaling), cgoAllocsUnknown
+ allocs2053fb9d.Borrow(csupportedPresentScaling_allocs)
- var cpData_allocs *cgoAllocMap
- ref18d00656.pData, cpData_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PData)), cgoAllocsUnknown
- allocs18d00656.Borrow(cpData_allocs)
+ var csupportedPresentGravityX_allocs *cgoAllocMap
+ ref2053fb9d.supportedPresentGravityX, csupportedPresentGravityX_allocs = (C.VkPresentGravityFlagsEXT)(x.SupportedPresentGravityX), cgoAllocsUnknown
+ allocs2053fb9d.Borrow(csupportedPresentGravityX_allocs)
+
+ var csupportedPresentGravityY_allocs *cgoAllocMap
+ ref2053fb9d.supportedPresentGravityY, csupportedPresentGravityY_allocs = (C.VkPresentGravityFlagsEXT)(x.SupportedPresentGravityY), cgoAllocsUnknown
+ allocs2053fb9d.Borrow(csupportedPresentGravityY_allocs)
+
+ var cminScaledImageExtent_allocs *cgoAllocMap
+ ref2053fb9d.minScaledImageExtent, cminScaledImageExtent_allocs = x.MinScaledImageExtent.PassValue()
+ allocs2053fb9d.Borrow(cminScaledImageExtent_allocs)
+
+ var cmaxScaledImageExtent_allocs *cgoAllocMap
+ ref2053fb9d.maxScaledImageExtent, cmaxScaledImageExtent_allocs = x.MaxScaledImageExtent.PassValue()
+ allocs2053fb9d.Borrow(cmaxScaledImageExtent_allocs)
- x.ref18d00656 = ref18d00656
- x.allocs18d00656 = allocs18d00656
- return ref18d00656, allocs18d00656
+ x.ref2053fb9d = ref2053fb9d
+ x.allocs2053fb9d = allocs2053fb9d
+ return ref2053fb9d, allocs2053fb9d
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x WriteDescriptorSetInlineUniformBlock) PassValue() (C.VkWriteDescriptorSetInlineUniformBlockEXT, *cgoAllocMap) {
- if x.ref18d00656 != nil {
- return *x.ref18d00656, nil
+func (x SurfacePresentScalingCapabilities) PassValue() (C.VkSurfacePresentScalingCapabilitiesEXT, *cgoAllocMap) {
+ if x.ref2053fb9d != nil {
+ return *x.ref2053fb9d, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -31997,91 +58650,98 @@ func (x WriteDescriptorSetInlineUniformBlock) PassValue() (C.VkWriteDescriptorSe
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *WriteDescriptorSetInlineUniformBlock) Deref() {
- if x.ref18d00656 == nil {
+func (x *SurfacePresentScalingCapabilities) Deref() {
+ if x.ref2053fb9d == nil {
return
}
- x.SType = (StructureType)(x.ref18d00656.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref18d00656.pNext))
- x.DataSize = (uint32)(x.ref18d00656.dataSize)
- x.PData = (unsafe.Pointer)(unsafe.Pointer(x.ref18d00656.pData))
+ x.SType = (StructureType)(x.ref2053fb9d.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref2053fb9d.pNext))
+ x.SupportedPresentScaling = (PresentScalingFlags)(x.ref2053fb9d.supportedPresentScaling)
+ x.SupportedPresentGravityX = (PresentGravityFlags)(x.ref2053fb9d.supportedPresentGravityX)
+ x.SupportedPresentGravityY = (PresentGravityFlags)(x.ref2053fb9d.supportedPresentGravityY)
+ x.MinScaledImageExtent = *NewExtent2DRef(unsafe.Pointer(&x.ref2053fb9d.minScaledImageExtent))
+ x.MaxScaledImageExtent = *NewExtent2DRef(unsafe.Pointer(&x.ref2053fb9d.maxScaledImageExtent))
}
-// allocDescriptorPoolInlineUniformBlockCreateInfoMemory allocates memory for type C.VkDescriptorPoolInlineUniformBlockCreateInfoEXT in C.
+// allocSurfacePresentModeCompatibilityMemory allocates memory for type C.VkSurfacePresentModeCompatibilityEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDescriptorPoolInlineUniformBlockCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorPoolInlineUniformBlockCreateInfoValue))
+func allocSurfacePresentModeCompatibilityMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSurfacePresentModeCompatibilityValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDescriptorPoolInlineUniformBlockCreateInfoValue = unsafe.Sizeof([1]C.VkDescriptorPoolInlineUniformBlockCreateInfoEXT{})
+const sizeOfSurfacePresentModeCompatibilityValue = unsafe.Sizeof([1]C.VkSurfacePresentModeCompatibilityEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DescriptorPoolInlineUniformBlockCreateInfo) Ref() *C.VkDescriptorPoolInlineUniformBlockCreateInfoEXT {
+func (x *SurfacePresentModeCompatibility) Ref() *C.VkSurfacePresentModeCompatibilityEXT {
if x == nil {
return nil
}
- return x.refbc7edaa3
+ return x.ref61fb395d
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DescriptorPoolInlineUniformBlockCreateInfo) Free() {
- if x != nil && x.allocsbc7edaa3 != nil {
- x.allocsbc7edaa3.(*cgoAllocMap).Free()
- x.refbc7edaa3 = nil
+func (x *SurfacePresentModeCompatibility) Free() {
+ if x != nil && x.allocs61fb395d != nil {
+ x.allocs61fb395d.(*cgoAllocMap).Free()
+ x.ref61fb395d = nil
}
}
-// NewDescriptorPoolInlineUniformBlockCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewSurfacePresentModeCompatibilityRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDescriptorPoolInlineUniformBlockCreateInfoRef(ref unsafe.Pointer) *DescriptorPoolInlineUniformBlockCreateInfo {
+func NewSurfacePresentModeCompatibilityRef(ref unsafe.Pointer) *SurfacePresentModeCompatibility {
if ref == nil {
return nil
}
- obj := new(DescriptorPoolInlineUniformBlockCreateInfo)
- obj.refbc7edaa3 = (*C.VkDescriptorPoolInlineUniformBlockCreateInfoEXT)(unsafe.Pointer(ref))
+ obj := new(SurfacePresentModeCompatibility)
+ obj.ref61fb395d = (*C.VkSurfacePresentModeCompatibilityEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DescriptorPoolInlineUniformBlockCreateInfo) PassRef() (*C.VkDescriptorPoolInlineUniformBlockCreateInfoEXT, *cgoAllocMap) {
+func (x *SurfacePresentModeCompatibility) PassRef() (*C.VkSurfacePresentModeCompatibilityEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refbc7edaa3 != nil {
- return x.refbc7edaa3, nil
+ } else if x.ref61fb395d != nil {
+ return x.ref61fb395d, nil
}
- membc7edaa3 := allocDescriptorPoolInlineUniformBlockCreateInfoMemory(1)
- refbc7edaa3 := (*C.VkDescriptorPoolInlineUniformBlockCreateInfoEXT)(membc7edaa3)
- allocsbc7edaa3 := new(cgoAllocMap)
- allocsbc7edaa3.Add(membc7edaa3)
+ mem61fb395d := allocSurfacePresentModeCompatibilityMemory(1)
+ ref61fb395d := (*C.VkSurfacePresentModeCompatibilityEXT)(mem61fb395d)
+ allocs61fb395d := new(cgoAllocMap)
+ allocs61fb395d.Add(mem61fb395d)
var csType_allocs *cgoAllocMap
- refbc7edaa3.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsbc7edaa3.Borrow(csType_allocs)
+ ref61fb395d.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs61fb395d.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refbc7edaa3.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsbc7edaa3.Borrow(cpNext_allocs)
+ ref61fb395d.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs61fb395d.Borrow(cpNext_allocs)
- var cmaxInlineUniformBlockBindings_allocs *cgoAllocMap
- refbc7edaa3.maxInlineUniformBlockBindings, cmaxInlineUniformBlockBindings_allocs = (C.uint32_t)(x.MaxInlineUniformBlockBindings), cgoAllocsUnknown
- allocsbc7edaa3.Borrow(cmaxInlineUniformBlockBindings_allocs)
+ var cpresentModeCount_allocs *cgoAllocMap
+ ref61fb395d.presentModeCount, cpresentModeCount_allocs = (C.uint32_t)(x.PresentModeCount), cgoAllocsUnknown
+ allocs61fb395d.Borrow(cpresentModeCount_allocs)
- x.refbc7edaa3 = refbc7edaa3
- x.allocsbc7edaa3 = allocsbc7edaa3
- return refbc7edaa3, allocsbc7edaa3
+ var cpPresentModes_allocs *cgoAllocMap
+ ref61fb395d.pPresentModes, cpPresentModes_allocs = (*C.VkPresentModeKHR)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PPresentModes)).Data)), cgoAllocsUnknown
+ allocs61fb395d.Borrow(cpPresentModes_allocs)
+
+ x.ref61fb395d = ref61fb395d
+ x.allocs61fb395d = allocs61fb395d
+ return ref61fb395d, allocs61fb395d
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DescriptorPoolInlineUniformBlockCreateInfo) PassValue() (C.VkDescriptorPoolInlineUniformBlockCreateInfoEXT, *cgoAllocMap) {
- if x.refbc7edaa3 != nil {
- return *x.refbc7edaa3, nil
+func (x SurfacePresentModeCompatibility) PassValue() (C.VkSurfacePresentModeCompatibilityEXT, *cgoAllocMap) {
+ if x.ref61fb395d != nil {
+ return *x.ref61fb395d, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -32089,86 +58749,95 @@ func (x DescriptorPoolInlineUniformBlockCreateInfo) PassValue() (C.VkDescriptorP
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DescriptorPoolInlineUniformBlockCreateInfo) Deref() {
- if x.refbc7edaa3 == nil {
+func (x *SurfacePresentModeCompatibility) Deref() {
+ if x.ref61fb395d == nil {
return
}
- x.SType = (StructureType)(x.refbc7edaa3.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refbc7edaa3.pNext))
- x.MaxInlineUniformBlockBindings = (uint32)(x.refbc7edaa3.maxInlineUniformBlockBindings)
+ x.SType = (StructureType)(x.ref61fb395d.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref61fb395d.pNext))
+ x.PresentModeCount = (uint32)(x.ref61fb395d.presentModeCount)
+ hxf4b5187 := (*sliceHeader)(unsafe.Pointer(&x.PPresentModes))
+ hxf4b5187.Data = unsafe.Pointer(x.ref61fb395d.pPresentModes)
+ hxf4b5187.Cap = 0x7fffffff
+ // hxf4b5187.Len = ?
+
}
-// allocSampleLocationMemory allocates memory for type C.VkSampleLocationEXT in C.
+// allocPhysicalDeviceSwapchainMaintenance1FeaturesMemory allocates memory for type C.VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSampleLocationMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSampleLocationValue))
+func allocPhysicalDeviceSwapchainMaintenance1FeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceSwapchainMaintenance1FeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSampleLocationValue = unsafe.Sizeof([1]C.VkSampleLocationEXT{})
+const sizeOfPhysicalDeviceSwapchainMaintenance1FeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SampleLocation) Ref() *C.VkSampleLocationEXT {
+func (x *PhysicalDeviceSwapchainMaintenance1Features) Ref() *C.VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT {
if x == nil {
return nil
}
- return x.refe7a2e761
+ return x.ref553fbea0
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SampleLocation) Free() {
- if x != nil && x.allocse7a2e761 != nil {
- x.allocse7a2e761.(*cgoAllocMap).Free()
- x.refe7a2e761 = nil
+func (x *PhysicalDeviceSwapchainMaintenance1Features) Free() {
+ if x != nil && x.allocs553fbea0 != nil {
+ x.allocs553fbea0.(*cgoAllocMap).Free()
+ x.ref553fbea0 = nil
}
}
-// NewSampleLocationRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceSwapchainMaintenance1FeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSampleLocationRef(ref unsafe.Pointer) *SampleLocation {
+func NewPhysicalDeviceSwapchainMaintenance1FeaturesRef(ref unsafe.Pointer) *PhysicalDeviceSwapchainMaintenance1Features {
if ref == nil {
return nil
}
- obj := new(SampleLocation)
- obj.refe7a2e761 = (*C.VkSampleLocationEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceSwapchainMaintenance1Features)
+ obj.ref553fbea0 = (*C.VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SampleLocation) PassRef() (*C.VkSampleLocationEXT, *cgoAllocMap) {
+func (x *PhysicalDeviceSwapchainMaintenance1Features) PassRef() (*C.VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refe7a2e761 != nil {
- return x.refe7a2e761, nil
+ } else if x.ref553fbea0 != nil {
+ return x.ref553fbea0, nil
}
- meme7a2e761 := allocSampleLocationMemory(1)
- refe7a2e761 := (*C.VkSampleLocationEXT)(meme7a2e761)
- allocse7a2e761 := new(cgoAllocMap)
- allocse7a2e761.Add(meme7a2e761)
+ mem553fbea0 := allocPhysicalDeviceSwapchainMaintenance1FeaturesMemory(1)
+ ref553fbea0 := (*C.VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT)(mem553fbea0)
+ allocs553fbea0 := new(cgoAllocMap)
+ allocs553fbea0.Add(mem553fbea0)
- var cx_allocs *cgoAllocMap
- refe7a2e761.x, cx_allocs = (C.float)(x.X), cgoAllocsUnknown
- allocse7a2e761.Borrow(cx_allocs)
+ var csType_allocs *cgoAllocMap
+ ref553fbea0.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs553fbea0.Borrow(csType_allocs)
- var cy_allocs *cgoAllocMap
- refe7a2e761.y, cy_allocs = (C.float)(x.Y), cgoAllocsUnknown
- allocse7a2e761.Borrow(cy_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref553fbea0.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs553fbea0.Borrow(cpNext_allocs)
- x.refe7a2e761 = refe7a2e761
- x.allocse7a2e761 = allocse7a2e761
- return refe7a2e761, allocse7a2e761
+ var cswapchainMaintenance1_allocs *cgoAllocMap
+ ref553fbea0.swapchainMaintenance1, cswapchainMaintenance1_allocs = (C.VkBool32)(x.SwapchainMaintenance1), cgoAllocsUnknown
+ allocs553fbea0.Borrow(cswapchainMaintenance1_allocs)
+
+ x.ref553fbea0 = ref553fbea0
+ x.allocs553fbea0 = allocs553fbea0
+ return ref553fbea0, allocs553fbea0
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SampleLocation) PassValue() (C.VkSampleLocationEXT, *cgoAllocMap) {
- if x.refe7a2e761 != nil {
- return *x.refe7a2e761, nil
+func (x PhysicalDeviceSwapchainMaintenance1Features) PassValue() (C.VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT, *cgoAllocMap) {
+ if x.ref553fbea0 != nil {
+ return *x.ref553fbea0, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -32176,139 +58845,94 @@ func (x SampleLocation) PassValue() (C.VkSampleLocationEXT, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SampleLocation) Deref() {
- if x.refe7a2e761 == nil {
+func (x *PhysicalDeviceSwapchainMaintenance1Features) Deref() {
+ if x.ref553fbea0 == nil {
return
}
- x.X = (float32)(x.refe7a2e761.x)
- x.Y = (float32)(x.refe7a2e761.y)
+ x.SType = (StructureType)(x.ref553fbea0.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref553fbea0.pNext))
+ x.SwapchainMaintenance1 = (Bool32)(x.ref553fbea0.swapchainMaintenance1)
}
-// allocSampleLocationsInfoMemory allocates memory for type C.VkSampleLocationsInfoEXT in C.
+// allocSwapchainPresentFenceInfoMemory allocates memory for type C.VkSwapchainPresentFenceInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSampleLocationsInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSampleLocationsInfoValue))
+func allocSwapchainPresentFenceInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSwapchainPresentFenceInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSampleLocationsInfoValue = unsafe.Sizeof([1]C.VkSampleLocationsInfoEXT{})
-
-// unpackSSampleLocation transforms a sliced Go data structure into plain C format.
-func unpackSSampleLocation(x []SampleLocation) (unpacked *C.VkSampleLocationEXT, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkSampleLocationEXT) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocSampleLocationMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkSampleLocationEXT)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkSampleLocationEXT)(h.Data)
- return
-}
-
-// packSSampleLocation reads sliced Go data structure out from plain C format.
-func packSSampleLocation(v []SampleLocation, ptr0 *C.VkSampleLocationEXT) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfSampleLocationValue]C.VkSampleLocationEXT)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewSampleLocationRef(unsafe.Pointer(&ptr1))
- }
-}
+const sizeOfSwapchainPresentFenceInfoValue = unsafe.Sizeof([1]C.VkSwapchainPresentFenceInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SampleLocationsInfo) Ref() *C.VkSampleLocationsInfoEXT {
+func (x *SwapchainPresentFenceInfo) Ref() *C.VkSwapchainPresentFenceInfoEXT {
if x == nil {
return nil
}
- return x.refd8f3bd2d
+ return x.reff3a3ddf9
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SampleLocationsInfo) Free() {
- if x != nil && x.allocsd8f3bd2d != nil {
- x.allocsd8f3bd2d.(*cgoAllocMap).Free()
- x.refd8f3bd2d = nil
+func (x *SwapchainPresentFenceInfo) Free() {
+ if x != nil && x.allocsf3a3ddf9 != nil {
+ x.allocsf3a3ddf9.(*cgoAllocMap).Free()
+ x.reff3a3ddf9 = nil
}
}
-// NewSampleLocationsInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewSwapchainPresentFenceInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSampleLocationsInfoRef(ref unsafe.Pointer) *SampleLocationsInfo {
+func NewSwapchainPresentFenceInfoRef(ref unsafe.Pointer) *SwapchainPresentFenceInfo {
if ref == nil {
return nil
}
- obj := new(SampleLocationsInfo)
- obj.refd8f3bd2d = (*C.VkSampleLocationsInfoEXT)(unsafe.Pointer(ref))
+ obj := new(SwapchainPresentFenceInfo)
+ obj.reff3a3ddf9 = (*C.VkSwapchainPresentFenceInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SampleLocationsInfo) PassRef() (*C.VkSampleLocationsInfoEXT, *cgoAllocMap) {
+func (x *SwapchainPresentFenceInfo) PassRef() (*C.VkSwapchainPresentFenceInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refd8f3bd2d != nil {
- return x.refd8f3bd2d, nil
+ } else if x.reff3a3ddf9 != nil {
+ return x.reff3a3ddf9, nil
}
- memd8f3bd2d := allocSampleLocationsInfoMemory(1)
- refd8f3bd2d := (*C.VkSampleLocationsInfoEXT)(memd8f3bd2d)
- allocsd8f3bd2d := new(cgoAllocMap)
- allocsd8f3bd2d.Add(memd8f3bd2d)
+ memf3a3ddf9 := allocSwapchainPresentFenceInfoMemory(1)
+ reff3a3ddf9 := (*C.VkSwapchainPresentFenceInfoEXT)(memf3a3ddf9)
+ allocsf3a3ddf9 := new(cgoAllocMap)
+ allocsf3a3ddf9.Add(memf3a3ddf9)
var csType_allocs *cgoAllocMap
- refd8f3bd2d.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsd8f3bd2d.Borrow(csType_allocs)
+ reff3a3ddf9.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsf3a3ddf9.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refd8f3bd2d.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsd8f3bd2d.Borrow(cpNext_allocs)
-
- var csampleLocationsPerPixel_allocs *cgoAllocMap
- refd8f3bd2d.sampleLocationsPerPixel, csampleLocationsPerPixel_allocs = (C.VkSampleCountFlagBits)(x.SampleLocationsPerPixel), cgoAllocsUnknown
- allocsd8f3bd2d.Borrow(csampleLocationsPerPixel_allocs)
-
- var csampleLocationGridSize_allocs *cgoAllocMap
- refd8f3bd2d.sampleLocationGridSize, csampleLocationGridSize_allocs = x.SampleLocationGridSize.PassValue()
- allocsd8f3bd2d.Borrow(csampleLocationGridSize_allocs)
+ reff3a3ddf9.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsf3a3ddf9.Borrow(cpNext_allocs)
- var csampleLocationsCount_allocs *cgoAllocMap
- refd8f3bd2d.sampleLocationsCount, csampleLocationsCount_allocs = (C.uint32_t)(x.SampleLocationsCount), cgoAllocsUnknown
- allocsd8f3bd2d.Borrow(csampleLocationsCount_allocs)
+ var cswapchainCount_allocs *cgoAllocMap
+ reff3a3ddf9.swapchainCount, cswapchainCount_allocs = (C.uint32_t)(x.SwapchainCount), cgoAllocsUnknown
+ allocsf3a3ddf9.Borrow(cswapchainCount_allocs)
- var cpSampleLocations_allocs *cgoAllocMap
- refd8f3bd2d.pSampleLocations, cpSampleLocations_allocs = unpackSSampleLocation(x.PSampleLocations)
- allocsd8f3bd2d.Borrow(cpSampleLocations_allocs)
+ var cpFences_allocs *cgoAllocMap
+ reff3a3ddf9.pFences, cpFences_allocs = (*C.VkFence)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PFences)).Data)), cgoAllocsUnknown
+ allocsf3a3ddf9.Borrow(cpFences_allocs)
- x.refd8f3bd2d = refd8f3bd2d
- x.allocsd8f3bd2d = allocsd8f3bd2d
- return refd8f3bd2d, allocsd8f3bd2d
+ x.reff3a3ddf9 = reff3a3ddf9
+ x.allocsf3a3ddf9 = allocsf3a3ddf9
+ return reff3a3ddf9, allocsf3a3ddf9
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SampleLocationsInfo) PassValue() (C.VkSampleLocationsInfoEXT, *cgoAllocMap) {
- if x.refd8f3bd2d != nil {
- return *x.refd8f3bd2d, nil
+func (x SwapchainPresentFenceInfo) PassValue() (C.VkSwapchainPresentFenceInfoEXT, *cgoAllocMap) {
+ if x.reff3a3ddf9 != nil {
+ return *x.reff3a3ddf9, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -32316,89 +58940,99 @@ func (x SampleLocationsInfo) PassValue() (C.VkSampleLocationsInfoEXT, *cgoAllocM
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SampleLocationsInfo) Deref() {
- if x.refd8f3bd2d == nil {
+func (x *SwapchainPresentFenceInfo) Deref() {
+ if x.reff3a3ddf9 == nil {
return
}
- x.SType = (StructureType)(x.refd8f3bd2d.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd8f3bd2d.pNext))
- x.SampleLocationsPerPixel = (SampleCountFlagBits)(x.refd8f3bd2d.sampleLocationsPerPixel)
- x.SampleLocationGridSize = *NewExtent2DRef(unsafe.Pointer(&x.refd8f3bd2d.sampleLocationGridSize))
- x.SampleLocationsCount = (uint32)(x.refd8f3bd2d.sampleLocationsCount)
- packSSampleLocation(x.PSampleLocations, x.refd8f3bd2d.pSampleLocations)
+ x.SType = (StructureType)(x.reff3a3ddf9.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff3a3ddf9.pNext))
+ x.SwapchainCount = (uint32)(x.reff3a3ddf9.swapchainCount)
+ hxf177f79 := (*sliceHeader)(unsafe.Pointer(&x.PFences))
+ hxf177f79.Data = unsafe.Pointer(x.reff3a3ddf9.pFences)
+ hxf177f79.Cap = 0x7fffffff
+ // hxf177f79.Len = ?
+
}
-// allocAttachmentSampleLocationsMemory allocates memory for type C.VkAttachmentSampleLocationsEXT in C.
+// allocSwapchainPresentModesCreateInfoMemory allocates memory for type C.VkSwapchainPresentModesCreateInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocAttachmentSampleLocationsMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfAttachmentSampleLocationsValue))
+func allocSwapchainPresentModesCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSwapchainPresentModesCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfAttachmentSampleLocationsValue = unsafe.Sizeof([1]C.VkAttachmentSampleLocationsEXT{})
+const sizeOfSwapchainPresentModesCreateInfoValue = unsafe.Sizeof([1]C.VkSwapchainPresentModesCreateInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *AttachmentSampleLocations) Ref() *C.VkAttachmentSampleLocationsEXT {
+func (x *SwapchainPresentModesCreateInfo) Ref() *C.VkSwapchainPresentModesCreateInfoEXT {
if x == nil {
return nil
}
- return x.ref6a3dd41e
+ return x.ref27b56519
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *AttachmentSampleLocations) Free() {
- if x != nil && x.allocs6a3dd41e != nil {
- x.allocs6a3dd41e.(*cgoAllocMap).Free()
- x.ref6a3dd41e = nil
+func (x *SwapchainPresentModesCreateInfo) Free() {
+ if x != nil && x.allocs27b56519 != nil {
+ x.allocs27b56519.(*cgoAllocMap).Free()
+ x.ref27b56519 = nil
}
}
-// NewAttachmentSampleLocationsRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewSwapchainPresentModesCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewAttachmentSampleLocationsRef(ref unsafe.Pointer) *AttachmentSampleLocations {
+func NewSwapchainPresentModesCreateInfoRef(ref unsafe.Pointer) *SwapchainPresentModesCreateInfo {
if ref == nil {
return nil
}
- obj := new(AttachmentSampleLocations)
- obj.ref6a3dd41e = (*C.VkAttachmentSampleLocationsEXT)(unsafe.Pointer(ref))
+ obj := new(SwapchainPresentModesCreateInfo)
+ obj.ref27b56519 = (*C.VkSwapchainPresentModesCreateInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *AttachmentSampleLocations) PassRef() (*C.VkAttachmentSampleLocationsEXT, *cgoAllocMap) {
+func (x *SwapchainPresentModesCreateInfo) PassRef() (*C.VkSwapchainPresentModesCreateInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref6a3dd41e != nil {
- return x.ref6a3dd41e, nil
+ } else if x.ref27b56519 != nil {
+ return x.ref27b56519, nil
}
- mem6a3dd41e := allocAttachmentSampleLocationsMemory(1)
- ref6a3dd41e := (*C.VkAttachmentSampleLocationsEXT)(mem6a3dd41e)
- allocs6a3dd41e := new(cgoAllocMap)
- allocs6a3dd41e.Add(mem6a3dd41e)
+ mem27b56519 := allocSwapchainPresentModesCreateInfoMemory(1)
+ ref27b56519 := (*C.VkSwapchainPresentModesCreateInfoEXT)(mem27b56519)
+ allocs27b56519 := new(cgoAllocMap)
+ allocs27b56519.Add(mem27b56519)
- var cattachmentIndex_allocs *cgoAllocMap
- ref6a3dd41e.attachmentIndex, cattachmentIndex_allocs = (C.uint32_t)(x.AttachmentIndex), cgoAllocsUnknown
- allocs6a3dd41e.Borrow(cattachmentIndex_allocs)
+ var csType_allocs *cgoAllocMap
+ ref27b56519.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs27b56519.Borrow(csType_allocs)
- var csampleLocationsInfo_allocs *cgoAllocMap
- ref6a3dd41e.sampleLocationsInfo, csampleLocationsInfo_allocs = x.SampleLocationsInfo.PassValue()
- allocs6a3dd41e.Borrow(csampleLocationsInfo_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref27b56519.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs27b56519.Borrow(cpNext_allocs)
- x.ref6a3dd41e = ref6a3dd41e
- x.allocs6a3dd41e = allocs6a3dd41e
- return ref6a3dd41e, allocs6a3dd41e
+ var cpresentModeCount_allocs *cgoAllocMap
+ ref27b56519.presentModeCount, cpresentModeCount_allocs = (C.uint32_t)(x.PresentModeCount), cgoAllocsUnknown
+ allocs27b56519.Borrow(cpresentModeCount_allocs)
+
+ var cpPresentModes_allocs *cgoAllocMap
+ ref27b56519.pPresentModes, cpPresentModes_allocs = (*C.VkPresentModeKHR)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PPresentModes)).Data)), cgoAllocsUnknown
+ allocs27b56519.Borrow(cpPresentModes_allocs)
+
+ x.ref27b56519 = ref27b56519
+ x.allocs27b56519 = allocs27b56519
+ return ref27b56519, allocs27b56519
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x AttachmentSampleLocations) PassValue() (C.VkAttachmentSampleLocationsEXT, *cgoAllocMap) {
- if x.ref6a3dd41e != nil {
- return *x.ref6a3dd41e, nil
+func (x SwapchainPresentModesCreateInfo) PassValue() (C.VkSwapchainPresentModesCreateInfoEXT, *cgoAllocMap) {
+ if x.ref27b56519 != nil {
+ return *x.ref27b56519, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -32406,85 +59040,99 @@ func (x AttachmentSampleLocations) PassValue() (C.VkAttachmentSampleLocationsEXT
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *AttachmentSampleLocations) Deref() {
- if x.ref6a3dd41e == nil {
+func (x *SwapchainPresentModesCreateInfo) Deref() {
+ if x.ref27b56519 == nil {
return
}
- x.AttachmentIndex = (uint32)(x.ref6a3dd41e.attachmentIndex)
- x.SampleLocationsInfo = *NewSampleLocationsInfoRef(unsafe.Pointer(&x.ref6a3dd41e.sampleLocationsInfo))
+ x.SType = (StructureType)(x.ref27b56519.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref27b56519.pNext))
+ x.PresentModeCount = (uint32)(x.ref27b56519.presentModeCount)
+ hxfaa359c := (*sliceHeader)(unsafe.Pointer(&x.PPresentModes))
+ hxfaa359c.Data = unsafe.Pointer(x.ref27b56519.pPresentModes)
+ hxfaa359c.Cap = 0x7fffffff
+ // hxfaa359c.Len = ?
+
}
-// allocSubpassSampleLocationsMemory allocates memory for type C.VkSubpassSampleLocationsEXT in C.
+// allocSwapchainPresentModeInfoMemory allocates memory for type C.VkSwapchainPresentModeInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocSubpassSampleLocationsMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSubpassSampleLocationsValue))
+func allocSwapchainPresentModeInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSwapchainPresentModeInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfSubpassSampleLocationsValue = unsafe.Sizeof([1]C.VkSubpassSampleLocationsEXT{})
+const sizeOfSwapchainPresentModeInfoValue = unsafe.Sizeof([1]C.VkSwapchainPresentModeInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *SubpassSampleLocations) Ref() *C.VkSubpassSampleLocationsEXT {
+func (x *SwapchainPresentModeInfo) Ref() *C.VkSwapchainPresentModeInfoEXT {
if x == nil {
return nil
}
- return x.ref1f612812
+ return x.refee48d4d8
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *SubpassSampleLocations) Free() {
- if x != nil && x.allocs1f612812 != nil {
- x.allocs1f612812.(*cgoAllocMap).Free()
- x.ref1f612812 = nil
+func (x *SwapchainPresentModeInfo) Free() {
+ if x != nil && x.allocsee48d4d8 != nil {
+ x.allocsee48d4d8.(*cgoAllocMap).Free()
+ x.refee48d4d8 = nil
}
}
-// NewSubpassSampleLocationsRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewSwapchainPresentModeInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewSubpassSampleLocationsRef(ref unsafe.Pointer) *SubpassSampleLocations {
+func NewSwapchainPresentModeInfoRef(ref unsafe.Pointer) *SwapchainPresentModeInfo {
if ref == nil {
return nil
}
- obj := new(SubpassSampleLocations)
- obj.ref1f612812 = (*C.VkSubpassSampleLocationsEXT)(unsafe.Pointer(ref))
+ obj := new(SwapchainPresentModeInfo)
+ obj.refee48d4d8 = (*C.VkSwapchainPresentModeInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *SubpassSampleLocations) PassRef() (*C.VkSubpassSampleLocationsEXT, *cgoAllocMap) {
+func (x *SwapchainPresentModeInfo) PassRef() (*C.VkSwapchainPresentModeInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref1f612812 != nil {
- return x.ref1f612812, nil
+ } else if x.refee48d4d8 != nil {
+ return x.refee48d4d8, nil
}
- mem1f612812 := allocSubpassSampleLocationsMemory(1)
- ref1f612812 := (*C.VkSubpassSampleLocationsEXT)(mem1f612812)
- allocs1f612812 := new(cgoAllocMap)
- allocs1f612812.Add(mem1f612812)
+ memee48d4d8 := allocSwapchainPresentModeInfoMemory(1)
+ refee48d4d8 := (*C.VkSwapchainPresentModeInfoEXT)(memee48d4d8)
+ allocsee48d4d8 := new(cgoAllocMap)
+ allocsee48d4d8.Add(memee48d4d8)
- var csubpassIndex_allocs *cgoAllocMap
- ref1f612812.subpassIndex, csubpassIndex_allocs = (C.uint32_t)(x.SubpassIndex), cgoAllocsUnknown
- allocs1f612812.Borrow(csubpassIndex_allocs)
+ var csType_allocs *cgoAllocMap
+ refee48d4d8.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsee48d4d8.Borrow(csType_allocs)
- var csampleLocationsInfo_allocs *cgoAllocMap
- ref1f612812.sampleLocationsInfo, csampleLocationsInfo_allocs = x.SampleLocationsInfo.PassValue()
- allocs1f612812.Borrow(csampleLocationsInfo_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refee48d4d8.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsee48d4d8.Borrow(cpNext_allocs)
- x.ref1f612812 = ref1f612812
- x.allocs1f612812 = allocs1f612812
- return ref1f612812, allocs1f612812
+ var cswapchainCount_allocs *cgoAllocMap
+ refee48d4d8.swapchainCount, cswapchainCount_allocs = (C.uint32_t)(x.SwapchainCount), cgoAllocsUnknown
+ allocsee48d4d8.Borrow(cswapchainCount_allocs)
+
+ var cpPresentModes_allocs *cgoAllocMap
+ refee48d4d8.pPresentModes, cpPresentModes_allocs = (*C.VkPresentModeKHR)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PPresentModes)).Data)), cgoAllocsUnknown
+ allocsee48d4d8.Borrow(cpPresentModes_allocs)
+
+ x.refee48d4d8 = refee48d4d8
+ x.allocsee48d4d8 = allocsee48d4d8
+ return refee48d4d8, allocsee48d4d8
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x SubpassSampleLocations) PassValue() (C.VkSubpassSampleLocationsEXT, *cgoAllocMap) {
- if x.ref1f612812 != nil {
- return *x.ref1f612812, nil
+func (x SwapchainPresentModeInfo) PassValue() (C.VkSwapchainPresentModeInfoEXT, *cgoAllocMap) {
+ if x.refee48d4d8 != nil {
+ return *x.refee48d4d8, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -32492,177 +59140,103 @@ func (x SubpassSampleLocations) PassValue() (C.VkSubpassSampleLocationsEXT, *cgo
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *SubpassSampleLocations) Deref() {
- if x.ref1f612812 == nil {
+func (x *SwapchainPresentModeInfo) Deref() {
+ if x.refee48d4d8 == nil {
return
}
- x.SubpassIndex = (uint32)(x.ref1f612812.subpassIndex)
- x.SampleLocationsInfo = *NewSampleLocationsInfoRef(unsafe.Pointer(&x.ref1f612812.sampleLocationsInfo))
+ x.SType = (StructureType)(x.refee48d4d8.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refee48d4d8.pNext))
+ x.SwapchainCount = (uint32)(x.refee48d4d8.swapchainCount)
+ hxfa897de := (*sliceHeader)(unsafe.Pointer(&x.PPresentModes))
+ hxfa897de.Data = unsafe.Pointer(x.refee48d4d8.pPresentModes)
+ hxfa897de.Cap = 0x7fffffff
+ // hxfa897de.Len = ?
+
}
-// allocRenderPassSampleLocationsBeginInfoMemory allocates memory for type C.VkRenderPassSampleLocationsBeginInfoEXT in C.
+// allocSwapchainPresentScalingCreateInfoMemory allocates memory for type C.VkSwapchainPresentScalingCreateInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocRenderPassSampleLocationsBeginInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfRenderPassSampleLocationsBeginInfoValue))
+func allocSwapchainPresentScalingCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSwapchainPresentScalingCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfRenderPassSampleLocationsBeginInfoValue = unsafe.Sizeof([1]C.VkRenderPassSampleLocationsBeginInfoEXT{})
-
-// unpackSAttachmentSampleLocations transforms a sliced Go data structure into plain C format.
-func unpackSAttachmentSampleLocations(x []AttachmentSampleLocations) (unpacked *C.VkAttachmentSampleLocationsEXT, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkAttachmentSampleLocationsEXT) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocAttachmentSampleLocationsMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkAttachmentSampleLocationsEXT)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkAttachmentSampleLocationsEXT)(h.Data)
- return
-}
-
-// unpackSSubpassSampleLocations transforms a sliced Go data structure into plain C format.
-func unpackSSubpassSampleLocations(x []SubpassSampleLocations) (unpacked *C.VkSubpassSampleLocationsEXT, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkSubpassSampleLocationsEXT) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocSubpassSampleLocationsMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkSubpassSampleLocationsEXT)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkSubpassSampleLocationsEXT)(h.Data)
- return
-}
-
-// packSAttachmentSampleLocations reads sliced Go data structure out from plain C format.
-func packSAttachmentSampleLocations(v []AttachmentSampleLocations, ptr0 *C.VkAttachmentSampleLocationsEXT) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfAttachmentSampleLocationsValue]C.VkAttachmentSampleLocationsEXT)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewAttachmentSampleLocationsRef(unsafe.Pointer(&ptr1))
- }
-}
-
-// packSSubpassSampleLocations reads sliced Go data structure out from plain C format.
-func packSSubpassSampleLocations(v []SubpassSampleLocations, ptr0 *C.VkSubpassSampleLocationsEXT) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfSubpassSampleLocationsValue]C.VkSubpassSampleLocationsEXT)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewSubpassSampleLocationsRef(unsafe.Pointer(&ptr1))
- }
-}
+const sizeOfSwapchainPresentScalingCreateInfoValue = unsafe.Sizeof([1]C.VkSwapchainPresentScalingCreateInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *RenderPassSampleLocationsBeginInfo) Ref() *C.VkRenderPassSampleLocationsBeginInfoEXT {
+func (x *SwapchainPresentScalingCreateInfo) Ref() *C.VkSwapchainPresentScalingCreateInfoEXT {
if x == nil {
return nil
}
- return x.refb61b51d4
+ return x.ref69da29d7
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *RenderPassSampleLocationsBeginInfo) Free() {
- if x != nil && x.allocsb61b51d4 != nil {
- x.allocsb61b51d4.(*cgoAllocMap).Free()
- x.refb61b51d4 = nil
+func (x *SwapchainPresentScalingCreateInfo) Free() {
+ if x != nil && x.allocs69da29d7 != nil {
+ x.allocs69da29d7.(*cgoAllocMap).Free()
+ x.ref69da29d7 = nil
}
}
-// NewRenderPassSampleLocationsBeginInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewSwapchainPresentScalingCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewRenderPassSampleLocationsBeginInfoRef(ref unsafe.Pointer) *RenderPassSampleLocationsBeginInfo {
+func NewSwapchainPresentScalingCreateInfoRef(ref unsafe.Pointer) *SwapchainPresentScalingCreateInfo {
if ref == nil {
return nil
}
- obj := new(RenderPassSampleLocationsBeginInfo)
- obj.refb61b51d4 = (*C.VkRenderPassSampleLocationsBeginInfoEXT)(unsafe.Pointer(ref))
+ obj := new(SwapchainPresentScalingCreateInfo)
+ obj.ref69da29d7 = (*C.VkSwapchainPresentScalingCreateInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *RenderPassSampleLocationsBeginInfo) PassRef() (*C.VkRenderPassSampleLocationsBeginInfoEXT, *cgoAllocMap) {
+func (x *SwapchainPresentScalingCreateInfo) PassRef() (*C.VkSwapchainPresentScalingCreateInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refb61b51d4 != nil {
- return x.refb61b51d4, nil
+ } else if x.ref69da29d7 != nil {
+ return x.ref69da29d7, nil
}
- memb61b51d4 := allocRenderPassSampleLocationsBeginInfoMemory(1)
- refb61b51d4 := (*C.VkRenderPassSampleLocationsBeginInfoEXT)(memb61b51d4)
- allocsb61b51d4 := new(cgoAllocMap)
- allocsb61b51d4.Add(memb61b51d4)
+ mem69da29d7 := allocSwapchainPresentScalingCreateInfoMemory(1)
+ ref69da29d7 := (*C.VkSwapchainPresentScalingCreateInfoEXT)(mem69da29d7)
+ allocs69da29d7 := new(cgoAllocMap)
+ allocs69da29d7.Add(mem69da29d7)
var csType_allocs *cgoAllocMap
- refb61b51d4.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsb61b51d4.Borrow(csType_allocs)
+ ref69da29d7.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs69da29d7.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refb61b51d4.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsb61b51d4.Borrow(cpNext_allocs)
-
- var cattachmentInitialSampleLocationsCount_allocs *cgoAllocMap
- refb61b51d4.attachmentInitialSampleLocationsCount, cattachmentInitialSampleLocationsCount_allocs = (C.uint32_t)(x.AttachmentInitialSampleLocationsCount), cgoAllocsUnknown
- allocsb61b51d4.Borrow(cattachmentInitialSampleLocationsCount_allocs)
+ ref69da29d7.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs69da29d7.Borrow(cpNext_allocs)
- var cpAttachmentInitialSampleLocations_allocs *cgoAllocMap
- refb61b51d4.pAttachmentInitialSampleLocations, cpAttachmentInitialSampleLocations_allocs = unpackSAttachmentSampleLocations(x.PAttachmentInitialSampleLocations)
- allocsb61b51d4.Borrow(cpAttachmentInitialSampleLocations_allocs)
+ var cscalingBehavior_allocs *cgoAllocMap
+ ref69da29d7.scalingBehavior, cscalingBehavior_allocs = (C.VkPresentScalingFlagsEXT)(x.ScalingBehavior), cgoAllocsUnknown
+ allocs69da29d7.Borrow(cscalingBehavior_allocs)
- var cpostSubpassSampleLocationsCount_allocs *cgoAllocMap
- refb61b51d4.postSubpassSampleLocationsCount, cpostSubpassSampleLocationsCount_allocs = (C.uint32_t)(x.PostSubpassSampleLocationsCount), cgoAllocsUnknown
- allocsb61b51d4.Borrow(cpostSubpassSampleLocationsCount_allocs)
+ var cpresentGravityX_allocs *cgoAllocMap
+ ref69da29d7.presentGravityX, cpresentGravityX_allocs = (C.VkPresentGravityFlagsEXT)(x.PresentGravityX), cgoAllocsUnknown
+ allocs69da29d7.Borrow(cpresentGravityX_allocs)
- var cpPostSubpassSampleLocations_allocs *cgoAllocMap
- refb61b51d4.pPostSubpassSampleLocations, cpPostSubpassSampleLocations_allocs = unpackSSubpassSampleLocations(x.PPostSubpassSampleLocations)
- allocsb61b51d4.Borrow(cpPostSubpassSampleLocations_allocs)
+ var cpresentGravityY_allocs *cgoAllocMap
+ ref69da29d7.presentGravityY, cpresentGravityY_allocs = (C.VkPresentGravityFlagsEXT)(x.PresentGravityY), cgoAllocsUnknown
+ allocs69da29d7.Borrow(cpresentGravityY_allocs)
- x.refb61b51d4 = refb61b51d4
- x.allocsb61b51d4 = allocsb61b51d4
- return refb61b51d4, allocsb61b51d4
+ x.ref69da29d7 = ref69da29d7
+ x.allocs69da29d7 = allocs69da29d7
+ return ref69da29d7, allocs69da29d7
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x RenderPassSampleLocationsBeginInfo) PassValue() (C.VkRenderPassSampleLocationsBeginInfoEXT, *cgoAllocMap) {
- if x.refb61b51d4 != nil {
- return *x.refb61b51d4, nil
+func (x SwapchainPresentScalingCreateInfo) PassValue() (C.VkSwapchainPresentScalingCreateInfoEXT, *cgoAllocMap) {
+ if x.ref69da29d7 != nil {
+ return *x.ref69da29d7, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -32670,97 +59244,100 @@ func (x RenderPassSampleLocationsBeginInfo) PassValue() (C.VkRenderPassSampleLoc
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *RenderPassSampleLocationsBeginInfo) Deref() {
- if x.refb61b51d4 == nil {
+func (x *SwapchainPresentScalingCreateInfo) Deref() {
+ if x.ref69da29d7 == nil {
return
}
- x.SType = (StructureType)(x.refb61b51d4.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb61b51d4.pNext))
- x.AttachmentInitialSampleLocationsCount = (uint32)(x.refb61b51d4.attachmentInitialSampleLocationsCount)
- packSAttachmentSampleLocations(x.PAttachmentInitialSampleLocations, x.refb61b51d4.pAttachmentInitialSampleLocations)
- x.PostSubpassSampleLocationsCount = (uint32)(x.refb61b51d4.postSubpassSampleLocationsCount)
- packSSubpassSampleLocations(x.PPostSubpassSampleLocations, x.refb61b51d4.pPostSubpassSampleLocations)
+ x.SType = (StructureType)(x.ref69da29d7.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref69da29d7.pNext))
+ x.ScalingBehavior = (PresentScalingFlags)(x.ref69da29d7.scalingBehavior)
+ x.PresentGravityX = (PresentGravityFlags)(x.ref69da29d7.presentGravityX)
+ x.PresentGravityY = (PresentGravityFlags)(x.ref69da29d7.presentGravityY)
}
-// allocPipelineSampleLocationsStateCreateInfoMemory allocates memory for type C.VkPipelineSampleLocationsStateCreateInfoEXT in C.
+// allocReleaseSwapchainImagesInfoMemory allocates memory for type C.VkReleaseSwapchainImagesInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPipelineSampleLocationsStateCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineSampleLocationsStateCreateInfoValue))
+func allocReleaseSwapchainImagesInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfReleaseSwapchainImagesInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPipelineSampleLocationsStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineSampleLocationsStateCreateInfoEXT{})
+const sizeOfReleaseSwapchainImagesInfoValue = unsafe.Sizeof([1]C.VkReleaseSwapchainImagesInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PipelineSampleLocationsStateCreateInfo) Ref() *C.VkPipelineSampleLocationsStateCreateInfoEXT {
+func (x *ReleaseSwapchainImagesInfo) Ref() *C.VkReleaseSwapchainImagesInfoEXT {
if x == nil {
return nil
}
- return x.ref93a2968f
+ return x.ref6c053bf
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PipelineSampleLocationsStateCreateInfo) Free() {
- if x != nil && x.allocs93a2968f != nil {
- x.allocs93a2968f.(*cgoAllocMap).Free()
- x.ref93a2968f = nil
+func (x *ReleaseSwapchainImagesInfo) Free() {
+ if x != nil && x.allocs6c053bf != nil {
+ x.allocs6c053bf.(*cgoAllocMap).Free()
+ x.ref6c053bf = nil
}
}
-// NewPipelineSampleLocationsStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewReleaseSwapchainImagesInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPipelineSampleLocationsStateCreateInfoRef(ref unsafe.Pointer) *PipelineSampleLocationsStateCreateInfo {
+func NewReleaseSwapchainImagesInfoRef(ref unsafe.Pointer) *ReleaseSwapchainImagesInfo {
if ref == nil {
return nil
}
- obj := new(PipelineSampleLocationsStateCreateInfo)
- obj.ref93a2968f = (*C.VkPipelineSampleLocationsStateCreateInfoEXT)(unsafe.Pointer(ref))
+ obj := new(ReleaseSwapchainImagesInfo)
+ obj.ref6c053bf = (*C.VkReleaseSwapchainImagesInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PipelineSampleLocationsStateCreateInfo) PassRef() (*C.VkPipelineSampleLocationsStateCreateInfoEXT, *cgoAllocMap) {
+func (x *ReleaseSwapchainImagesInfo) PassRef() (*C.VkReleaseSwapchainImagesInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref93a2968f != nil {
- return x.ref93a2968f, nil
+ } else if x.ref6c053bf != nil {
+ return x.ref6c053bf, nil
}
- mem93a2968f := allocPipelineSampleLocationsStateCreateInfoMemory(1)
- ref93a2968f := (*C.VkPipelineSampleLocationsStateCreateInfoEXT)(mem93a2968f)
- allocs93a2968f := new(cgoAllocMap)
- allocs93a2968f.Add(mem93a2968f)
+ mem6c053bf := allocReleaseSwapchainImagesInfoMemory(1)
+ ref6c053bf := (*C.VkReleaseSwapchainImagesInfoEXT)(mem6c053bf)
+ allocs6c053bf := new(cgoAllocMap)
+ allocs6c053bf.Add(mem6c053bf)
var csType_allocs *cgoAllocMap
- ref93a2968f.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs93a2968f.Borrow(csType_allocs)
+ ref6c053bf.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs6c053bf.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref93a2968f.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs93a2968f.Borrow(cpNext_allocs)
+ ref6c053bf.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs6c053bf.Borrow(cpNext_allocs)
- var csampleLocationsEnable_allocs *cgoAllocMap
- ref93a2968f.sampleLocationsEnable, csampleLocationsEnable_allocs = (C.VkBool32)(x.SampleLocationsEnable), cgoAllocsUnknown
- allocs93a2968f.Borrow(csampleLocationsEnable_allocs)
+ var cswapchain_allocs *cgoAllocMap
+ ref6c053bf.swapchain, cswapchain_allocs = *(*C.VkSwapchainKHR)(unsafe.Pointer(&x.Swapchain)), cgoAllocsUnknown
+ allocs6c053bf.Borrow(cswapchain_allocs)
- var csampleLocationsInfo_allocs *cgoAllocMap
- ref93a2968f.sampleLocationsInfo, csampleLocationsInfo_allocs = x.SampleLocationsInfo.PassValue()
- allocs93a2968f.Borrow(csampleLocationsInfo_allocs)
+ var cimageIndexCount_allocs *cgoAllocMap
+ ref6c053bf.imageIndexCount, cimageIndexCount_allocs = (C.uint32_t)(x.ImageIndexCount), cgoAllocsUnknown
+ allocs6c053bf.Borrow(cimageIndexCount_allocs)
- x.ref93a2968f = ref93a2968f
- x.allocs93a2968f = allocs93a2968f
- return ref93a2968f, allocs93a2968f
+ var cpImageIndices_allocs *cgoAllocMap
+ ref6c053bf.pImageIndices, cpImageIndices_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PImageIndices)).Data)), cgoAllocsUnknown
+ allocs6c053bf.Borrow(cpImageIndices_allocs)
+
+ x.ref6c053bf = ref6c053bf
+ x.allocs6c053bf = allocs6c053bf
+ return ref6c053bf, allocs6c053bf
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PipelineSampleLocationsStateCreateInfo) PassValue() (C.VkPipelineSampleLocationsStateCreateInfoEXT, *cgoAllocMap) {
- if x.ref93a2968f != nil {
- return *x.ref93a2968f, nil
+func (x ReleaseSwapchainImagesInfo) PassValue() (C.VkReleaseSwapchainImagesInfoEXT, *cgoAllocMap) {
+ if x.ref6c053bf != nil {
+ return *x.ref6c053bf, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -32768,107 +59345,128 @@ func (x PipelineSampleLocationsStateCreateInfo) PassValue() (C.VkPipelineSampleL
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PipelineSampleLocationsStateCreateInfo) Deref() {
- if x.ref93a2968f == nil {
+func (x *ReleaseSwapchainImagesInfo) Deref() {
+ if x.ref6c053bf == nil {
return
}
- x.SType = (StructureType)(x.ref93a2968f.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref93a2968f.pNext))
- x.SampleLocationsEnable = (Bool32)(x.ref93a2968f.sampleLocationsEnable)
- x.SampleLocationsInfo = *NewSampleLocationsInfoRef(unsafe.Pointer(&x.ref93a2968f.sampleLocationsInfo))
+ x.SType = (StructureType)(x.ref6c053bf.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref6c053bf.pNext))
+ x.Swapchain = *(*Swapchain)(unsafe.Pointer(&x.ref6c053bf.swapchain))
+ x.ImageIndexCount = (uint32)(x.ref6c053bf.imageIndexCount)
+ hxfe33f90 := (*sliceHeader)(unsafe.Pointer(&x.PImageIndices))
+ hxfe33f90.Data = unsafe.Pointer(x.ref6c053bf.pImageIndices)
+ hxfe33f90.Cap = 0x7fffffff
+ // hxfe33f90.Len = ?
+
}
-// allocPhysicalDeviceSampleLocationsPropertiesMemory allocates memory for type C.VkPhysicalDeviceSampleLocationsPropertiesEXT in C.
+// allocPhysicalDeviceDeviceGeneratedCommandsPropertiesNVMemory allocates memory for type C.VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceSampleLocationsPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceSampleLocationsPropertiesValue))
+func allocPhysicalDeviceDeviceGeneratedCommandsPropertiesNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceDeviceGeneratedCommandsPropertiesNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceSampleLocationsPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceSampleLocationsPropertiesEXT{})
+const sizeOfPhysicalDeviceDeviceGeneratedCommandsPropertiesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceSampleLocationsProperties) Ref() *C.VkPhysicalDeviceSampleLocationsPropertiesEXT {
+func (x *PhysicalDeviceDeviceGeneratedCommandsPropertiesNV) Ref() *C.VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV {
if x == nil {
return nil
}
- return x.refaf801323
+ return x.ref569def06
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceSampleLocationsProperties) Free() {
- if x != nil && x.allocsaf801323 != nil {
- x.allocsaf801323.(*cgoAllocMap).Free()
- x.refaf801323 = nil
+func (x *PhysicalDeviceDeviceGeneratedCommandsPropertiesNV) Free() {
+ if x != nil && x.allocs569def06 != nil {
+ x.allocs569def06.(*cgoAllocMap).Free()
+ x.ref569def06 = nil
}
}
-// NewPhysicalDeviceSampleLocationsPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceDeviceGeneratedCommandsPropertiesNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceSampleLocationsPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceSampleLocationsProperties {
+func NewPhysicalDeviceDeviceGeneratedCommandsPropertiesNVRef(ref unsafe.Pointer) *PhysicalDeviceDeviceGeneratedCommandsPropertiesNV {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceSampleLocationsProperties)
- obj.refaf801323 = (*C.VkPhysicalDeviceSampleLocationsPropertiesEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceDeviceGeneratedCommandsPropertiesNV)
+ obj.ref569def06 = (*C.VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceSampleLocationsProperties) PassRef() (*C.VkPhysicalDeviceSampleLocationsPropertiesEXT, *cgoAllocMap) {
+func (x *PhysicalDeviceDeviceGeneratedCommandsPropertiesNV) PassRef() (*C.VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refaf801323 != nil {
- return x.refaf801323, nil
+ } else if x.ref569def06 != nil {
+ return x.ref569def06, nil
}
- memaf801323 := allocPhysicalDeviceSampleLocationsPropertiesMemory(1)
- refaf801323 := (*C.VkPhysicalDeviceSampleLocationsPropertiesEXT)(memaf801323)
- allocsaf801323 := new(cgoAllocMap)
- allocsaf801323.Add(memaf801323)
+ mem569def06 := allocPhysicalDeviceDeviceGeneratedCommandsPropertiesNVMemory(1)
+ ref569def06 := (*C.VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV)(mem569def06)
+ allocs569def06 := new(cgoAllocMap)
+ allocs569def06.Add(mem569def06)
var csType_allocs *cgoAllocMap
- refaf801323.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsaf801323.Borrow(csType_allocs)
+ ref569def06.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs569def06.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refaf801323.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsaf801323.Borrow(cpNext_allocs)
+ ref569def06.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs569def06.Borrow(cpNext_allocs)
- var csampleLocationSampleCounts_allocs *cgoAllocMap
- refaf801323.sampleLocationSampleCounts, csampleLocationSampleCounts_allocs = (C.VkSampleCountFlags)(x.SampleLocationSampleCounts), cgoAllocsUnknown
- allocsaf801323.Borrow(csampleLocationSampleCounts_allocs)
+ var cmaxGraphicsShaderGroupCount_allocs *cgoAllocMap
+ ref569def06.maxGraphicsShaderGroupCount, cmaxGraphicsShaderGroupCount_allocs = (C.uint32_t)(x.MaxGraphicsShaderGroupCount), cgoAllocsUnknown
+ allocs569def06.Borrow(cmaxGraphicsShaderGroupCount_allocs)
- var cmaxSampleLocationGridSize_allocs *cgoAllocMap
- refaf801323.maxSampleLocationGridSize, cmaxSampleLocationGridSize_allocs = x.MaxSampleLocationGridSize.PassValue()
- allocsaf801323.Borrow(cmaxSampleLocationGridSize_allocs)
+ var cmaxIndirectSequenceCount_allocs *cgoAllocMap
+ ref569def06.maxIndirectSequenceCount, cmaxIndirectSequenceCount_allocs = (C.uint32_t)(x.MaxIndirectSequenceCount), cgoAllocsUnknown
+ allocs569def06.Borrow(cmaxIndirectSequenceCount_allocs)
- var csampleLocationCoordinateRange_allocs *cgoAllocMap
- refaf801323.sampleLocationCoordinateRange, csampleLocationCoordinateRange_allocs = *(*[2]C.float)(unsafe.Pointer(&x.SampleLocationCoordinateRange)), cgoAllocsUnknown
- allocsaf801323.Borrow(csampleLocationCoordinateRange_allocs)
+ var cmaxIndirectCommandsTokenCount_allocs *cgoAllocMap
+ ref569def06.maxIndirectCommandsTokenCount, cmaxIndirectCommandsTokenCount_allocs = (C.uint32_t)(x.MaxIndirectCommandsTokenCount), cgoAllocsUnknown
+ allocs569def06.Borrow(cmaxIndirectCommandsTokenCount_allocs)
- var csampleLocationSubPixelBits_allocs *cgoAllocMap
- refaf801323.sampleLocationSubPixelBits, csampleLocationSubPixelBits_allocs = (C.uint32_t)(x.SampleLocationSubPixelBits), cgoAllocsUnknown
- allocsaf801323.Borrow(csampleLocationSubPixelBits_allocs)
+ var cmaxIndirectCommandsStreamCount_allocs *cgoAllocMap
+ ref569def06.maxIndirectCommandsStreamCount, cmaxIndirectCommandsStreamCount_allocs = (C.uint32_t)(x.MaxIndirectCommandsStreamCount), cgoAllocsUnknown
+ allocs569def06.Borrow(cmaxIndirectCommandsStreamCount_allocs)
- var cvariableSampleLocations_allocs *cgoAllocMap
- refaf801323.variableSampleLocations, cvariableSampleLocations_allocs = (C.VkBool32)(x.VariableSampleLocations), cgoAllocsUnknown
- allocsaf801323.Borrow(cvariableSampleLocations_allocs)
+ var cmaxIndirectCommandsTokenOffset_allocs *cgoAllocMap
+ ref569def06.maxIndirectCommandsTokenOffset, cmaxIndirectCommandsTokenOffset_allocs = (C.uint32_t)(x.MaxIndirectCommandsTokenOffset), cgoAllocsUnknown
+ allocs569def06.Borrow(cmaxIndirectCommandsTokenOffset_allocs)
- x.refaf801323 = refaf801323
- x.allocsaf801323 = allocsaf801323
- return refaf801323, allocsaf801323
+ var cmaxIndirectCommandsStreamStride_allocs *cgoAllocMap
+ ref569def06.maxIndirectCommandsStreamStride, cmaxIndirectCommandsStreamStride_allocs = (C.uint32_t)(x.MaxIndirectCommandsStreamStride), cgoAllocsUnknown
+ allocs569def06.Borrow(cmaxIndirectCommandsStreamStride_allocs)
+
+ var cminSequencesCountBufferOffsetAlignment_allocs *cgoAllocMap
+ ref569def06.minSequencesCountBufferOffsetAlignment, cminSequencesCountBufferOffsetAlignment_allocs = (C.uint32_t)(x.MinSequencesCountBufferOffsetAlignment), cgoAllocsUnknown
+ allocs569def06.Borrow(cminSequencesCountBufferOffsetAlignment_allocs)
+
+ var cminSequencesIndexBufferOffsetAlignment_allocs *cgoAllocMap
+ ref569def06.minSequencesIndexBufferOffsetAlignment, cminSequencesIndexBufferOffsetAlignment_allocs = (C.uint32_t)(x.MinSequencesIndexBufferOffsetAlignment), cgoAllocsUnknown
+ allocs569def06.Borrow(cminSequencesIndexBufferOffsetAlignment_allocs)
+
+ var cminIndirectCommandsBufferOffsetAlignment_allocs *cgoAllocMap
+ ref569def06.minIndirectCommandsBufferOffsetAlignment, cminIndirectCommandsBufferOffsetAlignment_allocs = (C.uint32_t)(x.MinIndirectCommandsBufferOffsetAlignment), cgoAllocsUnknown
+ allocs569def06.Borrow(cminIndirectCommandsBufferOffsetAlignment_allocs)
+
+ x.ref569def06 = ref569def06
+ x.allocs569def06 = allocs569def06
+ return ref569def06, allocs569def06
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceSampleLocationsProperties) PassValue() (C.VkPhysicalDeviceSampleLocationsPropertiesEXT, *cgoAllocMap) {
- if x.refaf801323 != nil {
- return *x.refaf801323, nil
+func (x PhysicalDeviceDeviceGeneratedCommandsPropertiesNV) PassValue() (C.VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV, *cgoAllocMap) {
+ if x.ref569def06 != nil {
+ return *x.ref569def06, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -32876,94 +59474,98 @@ func (x PhysicalDeviceSampleLocationsProperties) PassValue() (C.VkPhysicalDevice
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceSampleLocationsProperties) Deref() {
- if x.refaf801323 == nil {
+func (x *PhysicalDeviceDeviceGeneratedCommandsPropertiesNV) Deref() {
+ if x.ref569def06 == nil {
return
}
- x.SType = (StructureType)(x.refaf801323.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refaf801323.pNext))
- x.SampleLocationSampleCounts = (SampleCountFlags)(x.refaf801323.sampleLocationSampleCounts)
- x.MaxSampleLocationGridSize = *NewExtent2DRef(unsafe.Pointer(&x.refaf801323.maxSampleLocationGridSize))
- x.SampleLocationCoordinateRange = *(*[2]float32)(unsafe.Pointer(&x.refaf801323.sampleLocationCoordinateRange))
- x.SampleLocationSubPixelBits = (uint32)(x.refaf801323.sampleLocationSubPixelBits)
- x.VariableSampleLocations = (Bool32)(x.refaf801323.variableSampleLocations)
+ x.SType = (StructureType)(x.ref569def06.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref569def06.pNext))
+ x.MaxGraphicsShaderGroupCount = (uint32)(x.ref569def06.maxGraphicsShaderGroupCount)
+ x.MaxIndirectSequenceCount = (uint32)(x.ref569def06.maxIndirectSequenceCount)
+ x.MaxIndirectCommandsTokenCount = (uint32)(x.ref569def06.maxIndirectCommandsTokenCount)
+ x.MaxIndirectCommandsStreamCount = (uint32)(x.ref569def06.maxIndirectCommandsStreamCount)
+ x.MaxIndirectCommandsTokenOffset = (uint32)(x.ref569def06.maxIndirectCommandsTokenOffset)
+ x.MaxIndirectCommandsStreamStride = (uint32)(x.ref569def06.maxIndirectCommandsStreamStride)
+ x.MinSequencesCountBufferOffsetAlignment = (uint32)(x.ref569def06.minSequencesCountBufferOffsetAlignment)
+ x.MinSequencesIndexBufferOffsetAlignment = (uint32)(x.ref569def06.minSequencesIndexBufferOffsetAlignment)
+ x.MinIndirectCommandsBufferOffsetAlignment = (uint32)(x.ref569def06.minIndirectCommandsBufferOffsetAlignment)
}
-// allocMultisamplePropertiesMemory allocates memory for type C.VkMultisamplePropertiesEXT in C.
+// allocPhysicalDeviceDeviceGeneratedCommandsFeaturesNVMemory allocates memory for type C.VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocMultisamplePropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMultisamplePropertiesValue))
+func allocPhysicalDeviceDeviceGeneratedCommandsFeaturesNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceDeviceGeneratedCommandsFeaturesNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfMultisamplePropertiesValue = unsafe.Sizeof([1]C.VkMultisamplePropertiesEXT{})
+const sizeOfPhysicalDeviceDeviceGeneratedCommandsFeaturesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *MultisampleProperties) Ref() *C.VkMultisamplePropertiesEXT {
+func (x *PhysicalDeviceDeviceGeneratedCommandsFeaturesNV) Ref() *C.VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV {
if x == nil {
return nil
}
- return x.ref3e47f337
+ return x.ref3ea95583
}
-
-// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
-// Does nothing if struct is nil or has no allocation map.
-func (x *MultisampleProperties) Free() {
- if x != nil && x.allocs3e47f337 != nil {
- x.allocs3e47f337.(*cgoAllocMap).Free()
- x.ref3e47f337 = nil
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceDeviceGeneratedCommandsFeaturesNV) Free() {
+ if x != nil && x.allocs3ea95583 != nil {
+ x.allocs3ea95583.(*cgoAllocMap).Free()
+ x.ref3ea95583 = nil
}
}
-// NewMultisamplePropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceDeviceGeneratedCommandsFeaturesNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewMultisamplePropertiesRef(ref unsafe.Pointer) *MultisampleProperties {
+func NewPhysicalDeviceDeviceGeneratedCommandsFeaturesNVRef(ref unsafe.Pointer) *PhysicalDeviceDeviceGeneratedCommandsFeaturesNV {
if ref == nil {
return nil
}
- obj := new(MultisampleProperties)
- obj.ref3e47f337 = (*C.VkMultisamplePropertiesEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceDeviceGeneratedCommandsFeaturesNV)
+ obj.ref3ea95583 = (*C.VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *MultisampleProperties) PassRef() (*C.VkMultisamplePropertiesEXT, *cgoAllocMap) {
+func (x *PhysicalDeviceDeviceGeneratedCommandsFeaturesNV) PassRef() (*C.VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref3e47f337 != nil {
- return x.ref3e47f337, nil
+ } else if x.ref3ea95583 != nil {
+ return x.ref3ea95583, nil
}
- mem3e47f337 := allocMultisamplePropertiesMemory(1)
- ref3e47f337 := (*C.VkMultisamplePropertiesEXT)(mem3e47f337)
- allocs3e47f337 := new(cgoAllocMap)
- allocs3e47f337.Add(mem3e47f337)
+ mem3ea95583 := allocPhysicalDeviceDeviceGeneratedCommandsFeaturesNVMemory(1)
+ ref3ea95583 := (*C.VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV)(mem3ea95583)
+ allocs3ea95583 := new(cgoAllocMap)
+ allocs3ea95583.Add(mem3ea95583)
var csType_allocs *cgoAllocMap
- ref3e47f337.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs3e47f337.Borrow(csType_allocs)
+ ref3ea95583.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs3ea95583.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref3e47f337.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs3e47f337.Borrow(cpNext_allocs)
+ ref3ea95583.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs3ea95583.Borrow(cpNext_allocs)
- var cmaxSampleLocationGridSize_allocs *cgoAllocMap
- ref3e47f337.maxSampleLocationGridSize, cmaxSampleLocationGridSize_allocs = x.MaxSampleLocationGridSize.PassValue()
- allocs3e47f337.Borrow(cmaxSampleLocationGridSize_allocs)
+ var cdeviceGeneratedCommands_allocs *cgoAllocMap
+ ref3ea95583.deviceGeneratedCommands, cdeviceGeneratedCommands_allocs = (C.VkBool32)(x.DeviceGeneratedCommands), cgoAllocsUnknown
+ allocs3ea95583.Borrow(cdeviceGeneratedCommands_allocs)
- x.ref3e47f337 = ref3e47f337
- x.allocs3e47f337 = allocs3e47f337
- return ref3e47f337, allocs3e47f337
+ x.ref3ea95583 = ref3ea95583
+ x.allocs3ea95583 = allocs3ea95583
+ return ref3ea95583, allocs3ea95583
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x MultisampleProperties) PassValue() (C.VkMultisamplePropertiesEXT, *cgoAllocMap) {
- if x.ref3e47f337 != nil {
- return *x.ref3e47f337, nil
+func (x PhysicalDeviceDeviceGeneratedCommandsFeaturesNV) PassValue() (C.VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV, *cgoAllocMap) {
+ if x.ref3ea95583 != nil {
+ return *x.ref3ea95583, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -32971,90 +59573,178 @@ func (x MultisampleProperties) PassValue() (C.VkMultisamplePropertiesEXT, *cgoAl
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *MultisampleProperties) Deref() {
- if x.ref3e47f337 == nil {
+func (x *PhysicalDeviceDeviceGeneratedCommandsFeaturesNV) Deref() {
+ if x.ref3ea95583 == nil {
return
}
- x.SType = (StructureType)(x.ref3e47f337.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref3e47f337.pNext))
- x.MaxSampleLocationGridSize = *NewExtent2DRef(unsafe.Pointer(&x.ref3e47f337.maxSampleLocationGridSize))
+ x.SType = (StructureType)(x.ref3ea95583.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref3ea95583.pNext))
+ x.DeviceGeneratedCommands = (Bool32)(x.ref3ea95583.deviceGeneratedCommands)
}
-// allocPhysicalDeviceBlendOperationAdvancedFeaturesMemory allocates memory for type C.VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT in C.
+// allocGraphicsShaderGroupCreateInfoNVMemory allocates memory for type C.VkGraphicsShaderGroupCreateInfoNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceBlendOperationAdvancedFeaturesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceBlendOperationAdvancedFeaturesValue))
+func allocGraphicsShaderGroupCreateInfoNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfGraphicsShaderGroupCreateInfoNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceBlendOperationAdvancedFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT{})
+const sizeOfGraphicsShaderGroupCreateInfoNVValue = unsafe.Sizeof([1]C.VkGraphicsShaderGroupCreateInfoNV{})
+
+// unpackSPipelineVertexInputStateCreateInfo transforms a sliced Go data structure into plain C format.
+func unpackSPipelineVertexInputStateCreateInfo(x []PipelineVertexInputStateCreateInfo) (unpacked *C.VkPipelineVertexInputStateCreateInfo, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkPipelineVertexInputStateCreateInfo) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocPipelineVertexInputStateCreateInfoMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkPipelineVertexInputStateCreateInfo)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkPipelineVertexInputStateCreateInfo)(h.Data)
+ return
+}
+
+// unpackSPipelineTessellationStateCreateInfo transforms a sliced Go data structure into plain C format.
+func unpackSPipelineTessellationStateCreateInfo(x []PipelineTessellationStateCreateInfo) (unpacked *C.VkPipelineTessellationStateCreateInfo, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkPipelineTessellationStateCreateInfo) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocPipelineTessellationStateCreateInfoMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkPipelineTessellationStateCreateInfo)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkPipelineTessellationStateCreateInfo)(h.Data)
+ return
+}
+
+// packSPipelineVertexInputStateCreateInfo reads sliced Go data structure out from plain C format.
+func packSPipelineVertexInputStateCreateInfo(v []PipelineVertexInputStateCreateInfo, ptr0 *C.VkPipelineVertexInputStateCreateInfo) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfPipelineVertexInputStateCreateInfoValue]C.VkPipelineVertexInputStateCreateInfo)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewPipelineVertexInputStateCreateInfoRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+// packSPipelineTessellationStateCreateInfo reads sliced Go data structure out from plain C format.
+func packSPipelineTessellationStateCreateInfo(v []PipelineTessellationStateCreateInfo, ptr0 *C.VkPipelineTessellationStateCreateInfo) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfPipelineTessellationStateCreateInfoValue]C.VkPipelineTessellationStateCreateInfo)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewPipelineTessellationStateCreateInfoRef(unsafe.Pointer(&ptr1))
+ }
+}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceBlendOperationAdvancedFeatures) Ref() *C.VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT {
+func (x *GraphicsShaderGroupCreateInfoNV) Ref() *C.VkGraphicsShaderGroupCreateInfoNV {
if x == nil {
return nil
}
- return x.ref8514bc93
+ return x.refa9d954e5
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceBlendOperationAdvancedFeatures) Free() {
- if x != nil && x.allocs8514bc93 != nil {
- x.allocs8514bc93.(*cgoAllocMap).Free()
- x.ref8514bc93 = nil
+func (x *GraphicsShaderGroupCreateInfoNV) Free() {
+ if x != nil && x.allocsa9d954e5 != nil {
+ x.allocsa9d954e5.(*cgoAllocMap).Free()
+ x.refa9d954e5 = nil
}
}
-// NewPhysicalDeviceBlendOperationAdvancedFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewGraphicsShaderGroupCreateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceBlendOperationAdvancedFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceBlendOperationAdvancedFeatures {
+func NewGraphicsShaderGroupCreateInfoNVRef(ref unsafe.Pointer) *GraphicsShaderGroupCreateInfoNV {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceBlendOperationAdvancedFeatures)
- obj.ref8514bc93 = (*C.VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT)(unsafe.Pointer(ref))
+ obj := new(GraphicsShaderGroupCreateInfoNV)
+ obj.refa9d954e5 = (*C.VkGraphicsShaderGroupCreateInfoNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceBlendOperationAdvancedFeatures) PassRef() (*C.VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT, *cgoAllocMap) {
+func (x *GraphicsShaderGroupCreateInfoNV) PassRef() (*C.VkGraphicsShaderGroupCreateInfoNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref8514bc93 != nil {
- return x.ref8514bc93, nil
+ } else if x.refa9d954e5 != nil {
+ return x.refa9d954e5, nil
}
- mem8514bc93 := allocPhysicalDeviceBlendOperationAdvancedFeaturesMemory(1)
- ref8514bc93 := (*C.VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT)(mem8514bc93)
- allocs8514bc93 := new(cgoAllocMap)
- allocs8514bc93.Add(mem8514bc93)
+ mema9d954e5 := allocGraphicsShaderGroupCreateInfoNVMemory(1)
+ refa9d954e5 := (*C.VkGraphicsShaderGroupCreateInfoNV)(mema9d954e5)
+ allocsa9d954e5 := new(cgoAllocMap)
+ allocsa9d954e5.Add(mema9d954e5)
var csType_allocs *cgoAllocMap
- ref8514bc93.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs8514bc93.Borrow(csType_allocs)
+ refa9d954e5.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsa9d954e5.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref8514bc93.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs8514bc93.Borrow(cpNext_allocs)
+ refa9d954e5.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsa9d954e5.Borrow(cpNext_allocs)
- var cadvancedBlendCoherentOperations_allocs *cgoAllocMap
- ref8514bc93.advancedBlendCoherentOperations, cadvancedBlendCoherentOperations_allocs = (C.VkBool32)(x.AdvancedBlendCoherentOperations), cgoAllocsUnknown
- allocs8514bc93.Borrow(cadvancedBlendCoherentOperations_allocs)
+ var cstageCount_allocs *cgoAllocMap
+ refa9d954e5.stageCount, cstageCount_allocs = (C.uint32_t)(x.StageCount), cgoAllocsUnknown
+ allocsa9d954e5.Borrow(cstageCount_allocs)
- x.ref8514bc93 = ref8514bc93
- x.allocs8514bc93 = allocs8514bc93
- return ref8514bc93, allocs8514bc93
+ var cpStages_allocs *cgoAllocMap
+ refa9d954e5.pStages, cpStages_allocs = unpackSPipelineShaderStageCreateInfo(x.PStages)
+ allocsa9d954e5.Borrow(cpStages_allocs)
+
+ var cpVertexInputState_allocs *cgoAllocMap
+ refa9d954e5.pVertexInputState, cpVertexInputState_allocs = unpackSPipelineVertexInputStateCreateInfo(x.PVertexInputState)
+ allocsa9d954e5.Borrow(cpVertexInputState_allocs)
+
+ var cpTessellationState_allocs *cgoAllocMap
+ refa9d954e5.pTessellationState, cpTessellationState_allocs = unpackSPipelineTessellationStateCreateInfo(x.PTessellationState)
+ allocsa9d954e5.Borrow(cpTessellationState_allocs)
+
+ x.refa9d954e5 = refa9d954e5
+ x.allocsa9d954e5 = allocsa9d954e5
+ return refa9d954e5, allocsa9d954e5
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceBlendOperationAdvancedFeatures) PassValue() (C.VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT, *cgoAllocMap) {
- if x.ref8514bc93 != nil {
- return *x.ref8514bc93, nil
+func (x GraphicsShaderGroupCreateInfoNV) PassValue() (C.VkGraphicsShaderGroupCreateInfoNV, *cgoAllocMap) {
+ if x.refa9d954e5 != nil {
+ return *x.refa9d954e5, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -33062,110 +59752,143 @@ func (x PhysicalDeviceBlendOperationAdvancedFeatures) PassValue() (C.VkPhysicalD
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceBlendOperationAdvancedFeatures) Deref() {
- if x.ref8514bc93 == nil {
+func (x *GraphicsShaderGroupCreateInfoNV) Deref() {
+ if x.refa9d954e5 == nil {
return
}
- x.SType = (StructureType)(x.ref8514bc93.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref8514bc93.pNext))
- x.AdvancedBlendCoherentOperations = (Bool32)(x.ref8514bc93.advancedBlendCoherentOperations)
+ x.SType = (StructureType)(x.refa9d954e5.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa9d954e5.pNext))
+ x.StageCount = (uint32)(x.refa9d954e5.stageCount)
+ packSPipelineShaderStageCreateInfo(x.PStages, x.refa9d954e5.pStages)
+ packSPipelineVertexInputStateCreateInfo(x.PVertexInputState, x.refa9d954e5.pVertexInputState)
+ packSPipelineTessellationStateCreateInfo(x.PTessellationState, x.refa9d954e5.pTessellationState)
}
-// allocPhysicalDeviceBlendOperationAdvancedPropertiesMemory allocates memory for type C.VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT in C.
+// allocGraphicsPipelineShaderGroupsCreateInfoNVMemory allocates memory for type C.VkGraphicsPipelineShaderGroupsCreateInfoNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceBlendOperationAdvancedPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceBlendOperationAdvancedPropertiesValue))
+func allocGraphicsPipelineShaderGroupsCreateInfoNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfGraphicsPipelineShaderGroupsCreateInfoNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceBlendOperationAdvancedPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT{})
+const sizeOfGraphicsPipelineShaderGroupsCreateInfoNVValue = unsafe.Sizeof([1]C.VkGraphicsPipelineShaderGroupsCreateInfoNV{})
+
+// unpackSGraphicsShaderGroupCreateInfoNV transforms a sliced Go data structure into plain C format.
+func unpackSGraphicsShaderGroupCreateInfoNV(x []GraphicsShaderGroupCreateInfoNV) (unpacked *C.VkGraphicsShaderGroupCreateInfoNV, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkGraphicsShaderGroupCreateInfoNV) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocGraphicsShaderGroupCreateInfoNVMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkGraphicsShaderGroupCreateInfoNV)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkGraphicsShaderGroupCreateInfoNV)(h.Data)
+ return
+}
+
+// packSGraphicsShaderGroupCreateInfoNV reads sliced Go data structure out from plain C format.
+func packSGraphicsShaderGroupCreateInfoNV(v []GraphicsShaderGroupCreateInfoNV, ptr0 *C.VkGraphicsShaderGroupCreateInfoNV) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfGraphicsShaderGroupCreateInfoNVValue]C.VkGraphicsShaderGroupCreateInfoNV)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewGraphicsShaderGroupCreateInfoNVRef(unsafe.Pointer(&ptr1))
+ }
+}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceBlendOperationAdvancedProperties) Ref() *C.VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT {
+func (x *GraphicsPipelineShaderGroupsCreateInfoNV) Ref() *C.VkGraphicsPipelineShaderGroupsCreateInfoNV {
if x == nil {
return nil
}
- return x.ref94cb3fa6
+ return x.refabf1b7d9
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceBlendOperationAdvancedProperties) Free() {
- if x != nil && x.allocs94cb3fa6 != nil {
- x.allocs94cb3fa6.(*cgoAllocMap).Free()
- x.ref94cb3fa6 = nil
+func (x *GraphicsPipelineShaderGroupsCreateInfoNV) Free() {
+ if x != nil && x.allocsabf1b7d9 != nil {
+ x.allocsabf1b7d9.(*cgoAllocMap).Free()
+ x.refabf1b7d9 = nil
}
}
-// NewPhysicalDeviceBlendOperationAdvancedPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewGraphicsPipelineShaderGroupsCreateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceBlendOperationAdvancedPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceBlendOperationAdvancedProperties {
+func NewGraphicsPipelineShaderGroupsCreateInfoNVRef(ref unsafe.Pointer) *GraphicsPipelineShaderGroupsCreateInfoNV {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceBlendOperationAdvancedProperties)
- obj.ref94cb3fa6 = (*C.VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT)(unsafe.Pointer(ref))
+ obj := new(GraphicsPipelineShaderGroupsCreateInfoNV)
+ obj.refabf1b7d9 = (*C.VkGraphicsPipelineShaderGroupsCreateInfoNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceBlendOperationAdvancedProperties) PassRef() (*C.VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT, *cgoAllocMap) {
+func (x *GraphicsPipelineShaderGroupsCreateInfoNV) PassRef() (*C.VkGraphicsPipelineShaderGroupsCreateInfoNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref94cb3fa6 != nil {
- return x.ref94cb3fa6, nil
+ } else if x.refabf1b7d9 != nil {
+ return x.refabf1b7d9, nil
}
- mem94cb3fa6 := allocPhysicalDeviceBlendOperationAdvancedPropertiesMemory(1)
- ref94cb3fa6 := (*C.VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT)(mem94cb3fa6)
- allocs94cb3fa6 := new(cgoAllocMap)
- allocs94cb3fa6.Add(mem94cb3fa6)
+ memabf1b7d9 := allocGraphicsPipelineShaderGroupsCreateInfoNVMemory(1)
+ refabf1b7d9 := (*C.VkGraphicsPipelineShaderGroupsCreateInfoNV)(memabf1b7d9)
+ allocsabf1b7d9 := new(cgoAllocMap)
+ allocsabf1b7d9.Add(memabf1b7d9)
var csType_allocs *cgoAllocMap
- ref94cb3fa6.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs94cb3fa6.Borrow(csType_allocs)
+ refabf1b7d9.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsabf1b7d9.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref94cb3fa6.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs94cb3fa6.Borrow(cpNext_allocs)
-
- var cadvancedBlendMaxColorAttachments_allocs *cgoAllocMap
- ref94cb3fa6.advancedBlendMaxColorAttachments, cadvancedBlendMaxColorAttachments_allocs = (C.uint32_t)(x.AdvancedBlendMaxColorAttachments), cgoAllocsUnknown
- allocs94cb3fa6.Borrow(cadvancedBlendMaxColorAttachments_allocs)
-
- var cadvancedBlendIndependentBlend_allocs *cgoAllocMap
- ref94cb3fa6.advancedBlendIndependentBlend, cadvancedBlendIndependentBlend_allocs = (C.VkBool32)(x.AdvancedBlendIndependentBlend), cgoAllocsUnknown
- allocs94cb3fa6.Borrow(cadvancedBlendIndependentBlend_allocs)
+ refabf1b7d9.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsabf1b7d9.Borrow(cpNext_allocs)
- var cadvancedBlendNonPremultipliedSrcColor_allocs *cgoAllocMap
- ref94cb3fa6.advancedBlendNonPremultipliedSrcColor, cadvancedBlendNonPremultipliedSrcColor_allocs = (C.VkBool32)(x.AdvancedBlendNonPremultipliedSrcColor), cgoAllocsUnknown
- allocs94cb3fa6.Borrow(cadvancedBlendNonPremultipliedSrcColor_allocs)
+ var cgroupCount_allocs *cgoAllocMap
+ refabf1b7d9.groupCount, cgroupCount_allocs = (C.uint32_t)(x.GroupCount), cgoAllocsUnknown
+ allocsabf1b7d9.Borrow(cgroupCount_allocs)
- var cadvancedBlendNonPremultipliedDstColor_allocs *cgoAllocMap
- ref94cb3fa6.advancedBlendNonPremultipliedDstColor, cadvancedBlendNonPremultipliedDstColor_allocs = (C.VkBool32)(x.AdvancedBlendNonPremultipliedDstColor), cgoAllocsUnknown
- allocs94cb3fa6.Borrow(cadvancedBlendNonPremultipliedDstColor_allocs)
+ var cpGroups_allocs *cgoAllocMap
+ refabf1b7d9.pGroups, cpGroups_allocs = unpackSGraphicsShaderGroupCreateInfoNV(x.PGroups)
+ allocsabf1b7d9.Borrow(cpGroups_allocs)
- var cadvancedBlendCorrelatedOverlap_allocs *cgoAllocMap
- ref94cb3fa6.advancedBlendCorrelatedOverlap, cadvancedBlendCorrelatedOverlap_allocs = (C.VkBool32)(x.AdvancedBlendCorrelatedOverlap), cgoAllocsUnknown
- allocs94cb3fa6.Borrow(cadvancedBlendCorrelatedOverlap_allocs)
+ var cpipelineCount_allocs *cgoAllocMap
+ refabf1b7d9.pipelineCount, cpipelineCount_allocs = (C.uint32_t)(x.PipelineCount), cgoAllocsUnknown
+ allocsabf1b7d9.Borrow(cpipelineCount_allocs)
- var cadvancedBlendAllOperations_allocs *cgoAllocMap
- ref94cb3fa6.advancedBlendAllOperations, cadvancedBlendAllOperations_allocs = (C.VkBool32)(x.AdvancedBlendAllOperations), cgoAllocsUnknown
- allocs94cb3fa6.Borrow(cadvancedBlendAllOperations_allocs)
+ var cpPipelines_allocs *cgoAllocMap
+ refabf1b7d9.pPipelines, cpPipelines_allocs = (*C.VkPipeline)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PPipelines)).Data)), cgoAllocsUnknown
+ allocsabf1b7d9.Borrow(cpPipelines_allocs)
- x.ref94cb3fa6 = ref94cb3fa6
- x.allocs94cb3fa6 = allocs94cb3fa6
- return ref94cb3fa6, allocs94cb3fa6
+ x.refabf1b7d9 = refabf1b7d9
+ x.allocsabf1b7d9 = allocsabf1b7d9
+ return refabf1b7d9, allocsabf1b7d9
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceBlendOperationAdvancedProperties) PassValue() (C.VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT, *cgoAllocMap) {
- if x.ref94cb3fa6 != nil {
- return *x.ref94cb3fa6, nil
+func (x GraphicsPipelineShaderGroupsCreateInfoNV) PassValue() (C.VkGraphicsPipelineShaderGroupsCreateInfoNV, *cgoAllocMap) {
+ if x.refabf1b7d9 != nil {
+ return *x.refabf1b7d9, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -33173,103 +59896,89 @@ func (x PhysicalDeviceBlendOperationAdvancedProperties) PassValue() (C.VkPhysica
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceBlendOperationAdvancedProperties) Deref() {
- if x.ref94cb3fa6 == nil {
+func (x *GraphicsPipelineShaderGroupsCreateInfoNV) Deref() {
+ if x.refabf1b7d9 == nil {
return
}
- x.SType = (StructureType)(x.ref94cb3fa6.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref94cb3fa6.pNext))
- x.AdvancedBlendMaxColorAttachments = (uint32)(x.ref94cb3fa6.advancedBlendMaxColorAttachments)
- x.AdvancedBlendIndependentBlend = (Bool32)(x.ref94cb3fa6.advancedBlendIndependentBlend)
- x.AdvancedBlendNonPremultipliedSrcColor = (Bool32)(x.ref94cb3fa6.advancedBlendNonPremultipliedSrcColor)
- x.AdvancedBlendNonPremultipliedDstColor = (Bool32)(x.ref94cb3fa6.advancedBlendNonPremultipliedDstColor)
- x.AdvancedBlendCorrelatedOverlap = (Bool32)(x.ref94cb3fa6.advancedBlendCorrelatedOverlap)
- x.AdvancedBlendAllOperations = (Bool32)(x.ref94cb3fa6.advancedBlendAllOperations)
+ x.SType = (StructureType)(x.refabf1b7d9.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refabf1b7d9.pNext))
+ x.GroupCount = (uint32)(x.refabf1b7d9.groupCount)
+ packSGraphicsShaderGroupCreateInfoNV(x.PGroups, x.refabf1b7d9.pGroups)
+ x.PipelineCount = (uint32)(x.refabf1b7d9.pipelineCount)
+ hxf08bba9 := (*sliceHeader)(unsafe.Pointer(&x.PPipelines))
+ hxf08bba9.Data = unsafe.Pointer(x.refabf1b7d9.pPipelines)
+ hxf08bba9.Cap = 0x7fffffff
+ // hxf08bba9.Len = ?
+
}
-// allocPipelineColorBlendAdvancedStateCreateInfoMemory allocates memory for type C.VkPipelineColorBlendAdvancedStateCreateInfoEXT in C.
+// allocBindShaderGroupIndirectCommandNVMemory allocates memory for type C.VkBindShaderGroupIndirectCommandNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPipelineColorBlendAdvancedStateCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineColorBlendAdvancedStateCreateInfoValue))
+func allocBindShaderGroupIndirectCommandNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBindShaderGroupIndirectCommandNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPipelineColorBlendAdvancedStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineColorBlendAdvancedStateCreateInfoEXT{})
+const sizeOfBindShaderGroupIndirectCommandNVValue = unsafe.Sizeof([1]C.VkBindShaderGroupIndirectCommandNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PipelineColorBlendAdvancedStateCreateInfo) Ref() *C.VkPipelineColorBlendAdvancedStateCreateInfoEXT {
+func (x *BindShaderGroupIndirectCommandNV) Ref() *C.VkBindShaderGroupIndirectCommandNV {
if x == nil {
return nil
}
- return x.refcd374989
+ return x.ref4b098fa3
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PipelineColorBlendAdvancedStateCreateInfo) Free() {
- if x != nil && x.allocscd374989 != nil {
- x.allocscd374989.(*cgoAllocMap).Free()
- x.refcd374989 = nil
+func (x *BindShaderGroupIndirectCommandNV) Free() {
+ if x != nil && x.allocs4b098fa3 != nil {
+ x.allocs4b098fa3.(*cgoAllocMap).Free()
+ x.ref4b098fa3 = nil
}
}
-// NewPipelineColorBlendAdvancedStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewBindShaderGroupIndirectCommandNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPipelineColorBlendAdvancedStateCreateInfoRef(ref unsafe.Pointer) *PipelineColorBlendAdvancedStateCreateInfo {
+func NewBindShaderGroupIndirectCommandNVRef(ref unsafe.Pointer) *BindShaderGroupIndirectCommandNV {
if ref == nil {
return nil
}
- obj := new(PipelineColorBlendAdvancedStateCreateInfo)
- obj.refcd374989 = (*C.VkPipelineColorBlendAdvancedStateCreateInfoEXT)(unsafe.Pointer(ref))
+ obj := new(BindShaderGroupIndirectCommandNV)
+ obj.ref4b098fa3 = (*C.VkBindShaderGroupIndirectCommandNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PipelineColorBlendAdvancedStateCreateInfo) PassRef() (*C.VkPipelineColorBlendAdvancedStateCreateInfoEXT, *cgoAllocMap) {
+func (x *BindShaderGroupIndirectCommandNV) PassRef() (*C.VkBindShaderGroupIndirectCommandNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refcd374989 != nil {
- return x.refcd374989, nil
+ } else if x.ref4b098fa3 != nil {
+ return x.ref4b098fa3, nil
}
- memcd374989 := allocPipelineColorBlendAdvancedStateCreateInfoMemory(1)
- refcd374989 := (*C.VkPipelineColorBlendAdvancedStateCreateInfoEXT)(memcd374989)
- allocscd374989 := new(cgoAllocMap)
- allocscd374989.Add(memcd374989)
-
- var csType_allocs *cgoAllocMap
- refcd374989.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocscd374989.Borrow(csType_allocs)
-
- var cpNext_allocs *cgoAllocMap
- refcd374989.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocscd374989.Borrow(cpNext_allocs)
-
- var csrcPremultiplied_allocs *cgoAllocMap
- refcd374989.srcPremultiplied, csrcPremultiplied_allocs = (C.VkBool32)(x.SrcPremultiplied), cgoAllocsUnknown
- allocscd374989.Borrow(csrcPremultiplied_allocs)
-
- var cdstPremultiplied_allocs *cgoAllocMap
- refcd374989.dstPremultiplied, cdstPremultiplied_allocs = (C.VkBool32)(x.DstPremultiplied), cgoAllocsUnknown
- allocscd374989.Borrow(cdstPremultiplied_allocs)
+ mem4b098fa3 := allocBindShaderGroupIndirectCommandNVMemory(1)
+ ref4b098fa3 := (*C.VkBindShaderGroupIndirectCommandNV)(mem4b098fa3)
+ allocs4b098fa3 := new(cgoAllocMap)
+ allocs4b098fa3.Add(mem4b098fa3)
- var cblendOverlap_allocs *cgoAllocMap
- refcd374989.blendOverlap, cblendOverlap_allocs = (C.VkBlendOverlapEXT)(x.BlendOverlap), cgoAllocsUnknown
- allocscd374989.Borrow(cblendOverlap_allocs)
+ var cgroupIndex_allocs *cgoAllocMap
+ ref4b098fa3.groupIndex, cgroupIndex_allocs = (C.uint32_t)(x.GroupIndex), cgoAllocsUnknown
+ allocs4b098fa3.Borrow(cgroupIndex_allocs)
- x.refcd374989 = refcd374989
- x.allocscd374989 = allocscd374989
- return refcd374989, allocscd374989
+ x.ref4b098fa3 = ref4b098fa3
+ x.allocs4b098fa3 = allocs4b098fa3
+ return ref4b098fa3, allocs4b098fa3
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PipelineColorBlendAdvancedStateCreateInfo) PassValue() (C.VkPipelineColorBlendAdvancedStateCreateInfoEXT, *cgoAllocMap) {
- if x.refcd374989 != nil {
- return *x.refcd374989, nil
+func (x BindShaderGroupIndirectCommandNV) PassValue() (C.VkBindShaderGroupIndirectCommandNV, *cgoAllocMap) {
+ if x.ref4b098fa3 != nil {
+ return *x.ref4b098fa3, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -33277,100 +59986,88 @@ func (x PipelineColorBlendAdvancedStateCreateInfo) PassValue() (C.VkPipelineColo
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PipelineColorBlendAdvancedStateCreateInfo) Deref() {
- if x.refcd374989 == nil {
+func (x *BindShaderGroupIndirectCommandNV) Deref() {
+ if x.ref4b098fa3 == nil {
return
}
- x.SType = (StructureType)(x.refcd374989.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refcd374989.pNext))
- x.SrcPremultiplied = (Bool32)(x.refcd374989.srcPremultiplied)
- x.DstPremultiplied = (Bool32)(x.refcd374989.dstPremultiplied)
- x.BlendOverlap = (BlendOverlap)(x.refcd374989.blendOverlap)
+ x.GroupIndex = (uint32)(x.ref4b098fa3.groupIndex)
}
-// allocPipelineCoverageToColorStateCreateInfoNVMemory allocates memory for type C.VkPipelineCoverageToColorStateCreateInfoNV in C.
+// allocBindIndexBufferIndirectCommandNVMemory allocates memory for type C.VkBindIndexBufferIndirectCommandNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPipelineCoverageToColorStateCreateInfoNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineCoverageToColorStateCreateInfoNVValue))
+func allocBindIndexBufferIndirectCommandNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBindIndexBufferIndirectCommandNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPipelineCoverageToColorStateCreateInfoNVValue = unsafe.Sizeof([1]C.VkPipelineCoverageToColorStateCreateInfoNV{})
+const sizeOfBindIndexBufferIndirectCommandNVValue = unsafe.Sizeof([1]C.VkBindIndexBufferIndirectCommandNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PipelineCoverageToColorStateCreateInfoNV) Ref() *C.VkPipelineCoverageToColorStateCreateInfoNV {
+func (x *BindIndexBufferIndirectCommandNV) Ref() *C.VkBindIndexBufferIndirectCommandNV {
if x == nil {
return nil
}
- return x.refcc6b7b68
+ return x.ref74143926
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PipelineCoverageToColorStateCreateInfoNV) Free() {
- if x != nil && x.allocscc6b7b68 != nil {
- x.allocscc6b7b68.(*cgoAllocMap).Free()
- x.refcc6b7b68 = nil
+func (x *BindIndexBufferIndirectCommandNV) Free() {
+ if x != nil && x.allocs74143926 != nil {
+ x.allocs74143926.(*cgoAllocMap).Free()
+ x.ref74143926 = nil
}
}
-// NewPipelineCoverageToColorStateCreateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewBindIndexBufferIndirectCommandNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPipelineCoverageToColorStateCreateInfoNVRef(ref unsafe.Pointer) *PipelineCoverageToColorStateCreateInfoNV {
+func NewBindIndexBufferIndirectCommandNVRef(ref unsafe.Pointer) *BindIndexBufferIndirectCommandNV {
if ref == nil {
return nil
}
- obj := new(PipelineCoverageToColorStateCreateInfoNV)
- obj.refcc6b7b68 = (*C.VkPipelineCoverageToColorStateCreateInfoNV)(unsafe.Pointer(ref))
+ obj := new(BindIndexBufferIndirectCommandNV)
+ obj.ref74143926 = (*C.VkBindIndexBufferIndirectCommandNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PipelineCoverageToColorStateCreateInfoNV) PassRef() (*C.VkPipelineCoverageToColorStateCreateInfoNV, *cgoAllocMap) {
+func (x *BindIndexBufferIndirectCommandNV) PassRef() (*C.VkBindIndexBufferIndirectCommandNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refcc6b7b68 != nil {
- return x.refcc6b7b68, nil
+ } else if x.ref74143926 != nil {
+ return x.ref74143926, nil
}
- memcc6b7b68 := allocPipelineCoverageToColorStateCreateInfoNVMemory(1)
- refcc6b7b68 := (*C.VkPipelineCoverageToColorStateCreateInfoNV)(memcc6b7b68)
- allocscc6b7b68 := new(cgoAllocMap)
- allocscc6b7b68.Add(memcc6b7b68)
-
- var csType_allocs *cgoAllocMap
- refcc6b7b68.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocscc6b7b68.Borrow(csType_allocs)
-
- var cpNext_allocs *cgoAllocMap
- refcc6b7b68.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocscc6b7b68.Borrow(cpNext_allocs)
+ mem74143926 := allocBindIndexBufferIndirectCommandNVMemory(1)
+ ref74143926 := (*C.VkBindIndexBufferIndirectCommandNV)(mem74143926)
+ allocs74143926 := new(cgoAllocMap)
+ allocs74143926.Add(mem74143926)
- var cflags_allocs *cgoAllocMap
- refcc6b7b68.flags, cflags_allocs = (C.VkPipelineCoverageToColorStateCreateFlagsNV)(x.Flags), cgoAllocsUnknown
- allocscc6b7b68.Borrow(cflags_allocs)
+ var cbufferAddress_allocs *cgoAllocMap
+ ref74143926.bufferAddress, cbufferAddress_allocs = (C.VkDeviceAddress)(x.BufferAddress), cgoAllocsUnknown
+ allocs74143926.Borrow(cbufferAddress_allocs)
- var ccoverageToColorEnable_allocs *cgoAllocMap
- refcc6b7b68.coverageToColorEnable, ccoverageToColorEnable_allocs = (C.VkBool32)(x.CoverageToColorEnable), cgoAllocsUnknown
- allocscc6b7b68.Borrow(ccoverageToColorEnable_allocs)
+ var csize_allocs *cgoAllocMap
+ ref74143926.size, csize_allocs = (C.uint32_t)(x.Size), cgoAllocsUnknown
+ allocs74143926.Borrow(csize_allocs)
- var ccoverageToColorLocation_allocs *cgoAllocMap
- refcc6b7b68.coverageToColorLocation, ccoverageToColorLocation_allocs = (C.uint32_t)(x.CoverageToColorLocation), cgoAllocsUnknown
- allocscc6b7b68.Borrow(ccoverageToColorLocation_allocs)
+ var cindexType_allocs *cgoAllocMap
+ ref74143926.indexType, cindexType_allocs = (C.VkIndexType)(x.IndexType), cgoAllocsUnknown
+ allocs74143926.Borrow(cindexType_allocs)
- x.refcc6b7b68 = refcc6b7b68
- x.allocscc6b7b68 = allocscc6b7b68
- return refcc6b7b68, allocscc6b7b68
+ x.ref74143926 = ref74143926
+ x.allocs74143926 = allocs74143926
+ return ref74143926, allocs74143926
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PipelineCoverageToColorStateCreateInfoNV) PassValue() (C.VkPipelineCoverageToColorStateCreateInfoNV, *cgoAllocMap) {
- if x.refcc6b7b68 != nil {
- return *x.refcc6b7b68, nil
+func (x BindIndexBufferIndirectCommandNV) PassValue() (C.VkBindIndexBufferIndirectCommandNV, *cgoAllocMap) {
+ if x.ref74143926 != nil {
+ return *x.ref74143926, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -33378,108 +60075,90 @@ func (x PipelineCoverageToColorStateCreateInfoNV) PassValue() (C.VkPipelineCover
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PipelineCoverageToColorStateCreateInfoNV) Deref() {
- if x.refcc6b7b68 == nil {
+func (x *BindIndexBufferIndirectCommandNV) Deref() {
+ if x.ref74143926 == nil {
return
}
- x.SType = (StructureType)(x.refcc6b7b68.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refcc6b7b68.pNext))
- x.Flags = (PipelineCoverageToColorStateCreateFlagsNV)(x.refcc6b7b68.flags)
- x.CoverageToColorEnable = (Bool32)(x.refcc6b7b68.coverageToColorEnable)
- x.CoverageToColorLocation = (uint32)(x.refcc6b7b68.coverageToColorLocation)
+ x.BufferAddress = (DeviceAddress)(x.ref74143926.bufferAddress)
+ x.Size = (uint32)(x.ref74143926.size)
+ x.IndexType = (IndexType)(x.ref74143926.indexType)
}
-// allocPipelineCoverageModulationStateCreateInfoNVMemory allocates memory for type C.VkPipelineCoverageModulationStateCreateInfoNV in C.
+// allocBindVertexBufferIndirectCommandNVMemory allocates memory for type C.VkBindVertexBufferIndirectCommandNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPipelineCoverageModulationStateCreateInfoNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineCoverageModulationStateCreateInfoNVValue))
+func allocBindVertexBufferIndirectCommandNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBindVertexBufferIndirectCommandNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPipelineCoverageModulationStateCreateInfoNVValue = unsafe.Sizeof([1]C.VkPipelineCoverageModulationStateCreateInfoNV{})
+const sizeOfBindVertexBufferIndirectCommandNVValue = unsafe.Sizeof([1]C.VkBindVertexBufferIndirectCommandNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PipelineCoverageModulationStateCreateInfoNV) Ref() *C.VkPipelineCoverageModulationStateCreateInfoNV {
+func (x *BindVertexBufferIndirectCommandNV) Ref() *C.VkBindVertexBufferIndirectCommandNV {
if x == nil {
return nil
}
- return x.refa081b0ea
+ return x.refca56f95c
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PipelineCoverageModulationStateCreateInfoNV) Free() {
- if x != nil && x.allocsa081b0ea != nil {
- x.allocsa081b0ea.(*cgoAllocMap).Free()
- x.refa081b0ea = nil
+func (x *BindVertexBufferIndirectCommandNV) Free() {
+ if x != nil && x.allocsca56f95c != nil {
+ x.allocsca56f95c.(*cgoAllocMap).Free()
+ x.refca56f95c = nil
}
}
-// NewPipelineCoverageModulationStateCreateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewBindVertexBufferIndirectCommandNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPipelineCoverageModulationStateCreateInfoNVRef(ref unsafe.Pointer) *PipelineCoverageModulationStateCreateInfoNV {
+func NewBindVertexBufferIndirectCommandNVRef(ref unsafe.Pointer) *BindVertexBufferIndirectCommandNV {
if ref == nil {
return nil
}
- obj := new(PipelineCoverageModulationStateCreateInfoNV)
- obj.refa081b0ea = (*C.VkPipelineCoverageModulationStateCreateInfoNV)(unsafe.Pointer(ref))
+ obj := new(BindVertexBufferIndirectCommandNV)
+ obj.refca56f95c = (*C.VkBindVertexBufferIndirectCommandNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PipelineCoverageModulationStateCreateInfoNV) PassRef() (*C.VkPipelineCoverageModulationStateCreateInfoNV, *cgoAllocMap) {
+func (x *BindVertexBufferIndirectCommandNV) PassRef() (*C.VkBindVertexBufferIndirectCommandNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refa081b0ea != nil {
- return x.refa081b0ea, nil
+ } else if x.refca56f95c != nil {
+ return x.refca56f95c, nil
}
- mema081b0ea := allocPipelineCoverageModulationStateCreateInfoNVMemory(1)
- refa081b0ea := (*C.VkPipelineCoverageModulationStateCreateInfoNV)(mema081b0ea)
- allocsa081b0ea := new(cgoAllocMap)
- allocsa081b0ea.Add(mema081b0ea)
-
- var csType_allocs *cgoAllocMap
- refa081b0ea.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsa081b0ea.Borrow(csType_allocs)
-
- var cpNext_allocs *cgoAllocMap
- refa081b0ea.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsa081b0ea.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- refa081b0ea.flags, cflags_allocs = (C.VkPipelineCoverageModulationStateCreateFlagsNV)(x.Flags), cgoAllocsUnknown
- allocsa081b0ea.Borrow(cflags_allocs)
-
- var ccoverageModulationMode_allocs *cgoAllocMap
- refa081b0ea.coverageModulationMode, ccoverageModulationMode_allocs = (C.VkCoverageModulationModeNV)(x.CoverageModulationMode), cgoAllocsUnknown
- allocsa081b0ea.Borrow(ccoverageModulationMode_allocs)
+ memca56f95c := allocBindVertexBufferIndirectCommandNVMemory(1)
+ refca56f95c := (*C.VkBindVertexBufferIndirectCommandNV)(memca56f95c)
+ allocsca56f95c := new(cgoAllocMap)
+ allocsca56f95c.Add(memca56f95c)
- var ccoverageModulationTableEnable_allocs *cgoAllocMap
- refa081b0ea.coverageModulationTableEnable, ccoverageModulationTableEnable_allocs = (C.VkBool32)(x.CoverageModulationTableEnable), cgoAllocsUnknown
- allocsa081b0ea.Borrow(ccoverageModulationTableEnable_allocs)
+ var cbufferAddress_allocs *cgoAllocMap
+ refca56f95c.bufferAddress, cbufferAddress_allocs = (C.VkDeviceAddress)(x.BufferAddress), cgoAllocsUnknown
+ allocsca56f95c.Borrow(cbufferAddress_allocs)
- var ccoverageModulationTableCount_allocs *cgoAllocMap
- refa081b0ea.coverageModulationTableCount, ccoverageModulationTableCount_allocs = (C.uint32_t)(x.CoverageModulationTableCount), cgoAllocsUnknown
- allocsa081b0ea.Borrow(ccoverageModulationTableCount_allocs)
+ var csize_allocs *cgoAllocMap
+ refca56f95c.size, csize_allocs = (C.uint32_t)(x.Size), cgoAllocsUnknown
+ allocsca56f95c.Borrow(csize_allocs)
- var cpCoverageModulationTable_allocs *cgoAllocMap
- refa081b0ea.pCoverageModulationTable, cpCoverageModulationTable_allocs = (*C.float)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PCoverageModulationTable)).Data)), cgoAllocsUnknown
- allocsa081b0ea.Borrow(cpCoverageModulationTable_allocs)
+ var cstride_allocs *cgoAllocMap
+ refca56f95c.stride, cstride_allocs = (C.uint32_t)(x.Stride), cgoAllocsUnknown
+ allocsca56f95c.Borrow(cstride_allocs)
- x.refa081b0ea = refa081b0ea
- x.allocsa081b0ea = allocsa081b0ea
- return refa081b0ea, allocsa081b0ea
+ x.refca56f95c = refca56f95c
+ x.allocsca56f95c = allocsca56f95c
+ return refca56f95c, allocsca56f95c
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PipelineCoverageModulationStateCreateInfoNV) PassValue() (C.VkPipelineCoverageModulationStateCreateInfoNV, *cgoAllocMap) {
- if x.refa081b0ea != nil {
- return *x.refa081b0ea, nil
+func (x BindVertexBufferIndirectCommandNV) PassValue() (C.VkBindVertexBufferIndirectCommandNV, *cgoAllocMap) {
+ if x.refca56f95c != nil {
+ return *x.refca56f95c, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -33487,98 +60166,82 @@ func (x PipelineCoverageModulationStateCreateInfoNV) PassValue() (C.VkPipelineCo
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PipelineCoverageModulationStateCreateInfoNV) Deref() {
- if x.refa081b0ea == nil {
+func (x *BindVertexBufferIndirectCommandNV) Deref() {
+ if x.refca56f95c == nil {
return
}
- x.SType = (StructureType)(x.refa081b0ea.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa081b0ea.pNext))
- x.Flags = (PipelineCoverageModulationStateCreateFlagsNV)(x.refa081b0ea.flags)
- x.CoverageModulationMode = (CoverageModulationModeNV)(x.refa081b0ea.coverageModulationMode)
- x.CoverageModulationTableEnable = (Bool32)(x.refa081b0ea.coverageModulationTableEnable)
- x.CoverageModulationTableCount = (uint32)(x.refa081b0ea.coverageModulationTableCount)
- hxf8e0dd2 := (*sliceHeader)(unsafe.Pointer(&x.PCoverageModulationTable))
- hxf8e0dd2.Data = unsafe.Pointer(x.refa081b0ea.pCoverageModulationTable)
- hxf8e0dd2.Cap = 0x7fffffff
- // hxf8e0dd2.Len = ?
-
+ x.BufferAddress = (DeviceAddress)(x.refca56f95c.bufferAddress)
+ x.Size = (uint32)(x.refca56f95c.size)
+ x.Stride = (uint32)(x.refca56f95c.stride)
}
-// allocDrmFormatModifierPropertiesMemory allocates memory for type C.VkDrmFormatModifierPropertiesEXT in C.
+// allocSetStateFlagsIndirectCommandNVMemory allocates memory for type C.VkSetStateFlagsIndirectCommandNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDrmFormatModifierPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDrmFormatModifierPropertiesValue))
+func allocSetStateFlagsIndirectCommandNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSetStateFlagsIndirectCommandNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDrmFormatModifierPropertiesValue = unsafe.Sizeof([1]C.VkDrmFormatModifierPropertiesEXT{})
+const sizeOfSetStateFlagsIndirectCommandNVValue = unsafe.Sizeof([1]C.VkSetStateFlagsIndirectCommandNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DrmFormatModifierProperties) Ref() *C.VkDrmFormatModifierPropertiesEXT {
+func (x *SetStateFlagsIndirectCommandNV) Ref() *C.VkSetStateFlagsIndirectCommandNV {
if x == nil {
return nil
}
- return x.ref7dcb7f85
+ return x.ref89ae676d
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DrmFormatModifierProperties) Free() {
- if x != nil && x.allocs7dcb7f85 != nil {
- x.allocs7dcb7f85.(*cgoAllocMap).Free()
- x.ref7dcb7f85 = nil
+func (x *SetStateFlagsIndirectCommandNV) Free() {
+ if x != nil && x.allocs89ae676d != nil {
+ x.allocs89ae676d.(*cgoAllocMap).Free()
+ x.ref89ae676d = nil
}
}
-// NewDrmFormatModifierPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewSetStateFlagsIndirectCommandNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDrmFormatModifierPropertiesRef(ref unsafe.Pointer) *DrmFormatModifierProperties {
+func NewSetStateFlagsIndirectCommandNVRef(ref unsafe.Pointer) *SetStateFlagsIndirectCommandNV {
if ref == nil {
return nil
}
- obj := new(DrmFormatModifierProperties)
- obj.ref7dcb7f85 = (*C.VkDrmFormatModifierPropertiesEXT)(unsafe.Pointer(ref))
+ obj := new(SetStateFlagsIndirectCommandNV)
+ obj.ref89ae676d = (*C.VkSetStateFlagsIndirectCommandNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DrmFormatModifierProperties) PassRef() (*C.VkDrmFormatModifierPropertiesEXT, *cgoAllocMap) {
+func (x *SetStateFlagsIndirectCommandNV) PassRef() (*C.VkSetStateFlagsIndirectCommandNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref7dcb7f85 != nil {
- return x.ref7dcb7f85, nil
+ } else if x.ref89ae676d != nil {
+ return x.ref89ae676d, nil
}
- mem7dcb7f85 := allocDrmFormatModifierPropertiesMemory(1)
- ref7dcb7f85 := (*C.VkDrmFormatModifierPropertiesEXT)(mem7dcb7f85)
- allocs7dcb7f85 := new(cgoAllocMap)
- allocs7dcb7f85.Add(mem7dcb7f85)
+ mem89ae676d := allocSetStateFlagsIndirectCommandNVMemory(1)
+ ref89ae676d := (*C.VkSetStateFlagsIndirectCommandNV)(mem89ae676d)
+ allocs89ae676d := new(cgoAllocMap)
+ allocs89ae676d.Add(mem89ae676d)
- var cdrmFormatModifier_allocs *cgoAllocMap
- ref7dcb7f85.drmFormatModifier, cdrmFormatModifier_allocs = (C.uint64_t)(x.DrmFormatModifier), cgoAllocsUnknown
- allocs7dcb7f85.Borrow(cdrmFormatModifier_allocs)
-
- var cdrmFormatModifierPlaneCount_allocs *cgoAllocMap
- ref7dcb7f85.drmFormatModifierPlaneCount, cdrmFormatModifierPlaneCount_allocs = (C.uint32_t)(x.DrmFormatModifierPlaneCount), cgoAllocsUnknown
- allocs7dcb7f85.Borrow(cdrmFormatModifierPlaneCount_allocs)
-
- var cdrmFormatModifierTilingFeatures_allocs *cgoAllocMap
- ref7dcb7f85.drmFormatModifierTilingFeatures, cdrmFormatModifierTilingFeatures_allocs = (C.VkFormatFeatureFlags)(x.DrmFormatModifierTilingFeatures), cgoAllocsUnknown
- allocs7dcb7f85.Borrow(cdrmFormatModifierTilingFeatures_allocs)
+ var cdata_allocs *cgoAllocMap
+ ref89ae676d.data, cdata_allocs = (C.uint32_t)(x.Data), cgoAllocsUnknown
+ allocs89ae676d.Borrow(cdata_allocs)
- x.ref7dcb7f85 = ref7dcb7f85
- x.allocs7dcb7f85 = allocs7dcb7f85
- return ref7dcb7f85, allocs7dcb7f85
+ x.ref89ae676d = ref89ae676d
+ x.allocs89ae676d = allocs89ae676d
+ return ref89ae676d, allocs89ae676d
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DrmFormatModifierProperties) PassValue() (C.VkDrmFormatModifierPropertiesEXT, *cgoAllocMap) {
- if x.ref7dcb7f85 != nil {
- return *x.ref7dcb7f85, nil
+func (x SetStateFlagsIndirectCommandNV) PassValue() (C.VkSetStateFlagsIndirectCommandNV, *cgoAllocMap) {
+ if x.ref89ae676d != nil {
+ return *x.ref89ae676d, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -33586,132 +60249,84 @@ func (x DrmFormatModifierProperties) PassValue() (C.VkDrmFormatModifierPropertie
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DrmFormatModifierProperties) Deref() {
- if x.ref7dcb7f85 == nil {
+func (x *SetStateFlagsIndirectCommandNV) Deref() {
+ if x.ref89ae676d == nil {
return
}
- x.DrmFormatModifier = (uint64)(x.ref7dcb7f85.drmFormatModifier)
- x.DrmFormatModifierPlaneCount = (uint32)(x.ref7dcb7f85.drmFormatModifierPlaneCount)
- x.DrmFormatModifierTilingFeatures = (FormatFeatureFlags)(x.ref7dcb7f85.drmFormatModifierTilingFeatures)
+ x.Data = (uint32)(x.ref89ae676d.data)
}
-// allocDrmFormatModifierPropertiesListMemory allocates memory for type C.VkDrmFormatModifierPropertiesListEXT in C.
+// allocIndirectCommandsStreamNVMemory allocates memory for type C.VkIndirectCommandsStreamNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDrmFormatModifierPropertiesListMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDrmFormatModifierPropertiesListValue))
+func allocIndirectCommandsStreamNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfIndirectCommandsStreamNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDrmFormatModifierPropertiesListValue = unsafe.Sizeof([1]C.VkDrmFormatModifierPropertiesListEXT{})
-
-// unpackSDrmFormatModifierProperties transforms a sliced Go data structure into plain C format.
-func unpackSDrmFormatModifierProperties(x []DrmFormatModifierProperties) (unpacked *C.VkDrmFormatModifierPropertiesEXT, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkDrmFormatModifierPropertiesEXT) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocDrmFormatModifierPropertiesMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkDrmFormatModifierPropertiesEXT)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkDrmFormatModifierPropertiesEXT)(h.Data)
- return
-}
-
-// packSDrmFormatModifierProperties reads sliced Go data structure out from plain C format.
-func packSDrmFormatModifierProperties(v []DrmFormatModifierProperties, ptr0 *C.VkDrmFormatModifierPropertiesEXT) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfDrmFormatModifierPropertiesValue]C.VkDrmFormatModifierPropertiesEXT)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewDrmFormatModifierPropertiesRef(unsafe.Pointer(&ptr1))
- }
-}
+const sizeOfIndirectCommandsStreamNVValue = unsafe.Sizeof([1]C.VkIndirectCommandsStreamNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DrmFormatModifierPropertiesList) Ref() *C.VkDrmFormatModifierPropertiesListEXT {
+func (x *IndirectCommandsStreamNV) Ref() *C.VkIndirectCommandsStreamNV {
if x == nil {
return nil
}
- return x.ref7e3ede2
+ return x.refc623636a
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DrmFormatModifierPropertiesList) Free() {
- if x != nil && x.allocs7e3ede2 != nil {
- x.allocs7e3ede2.(*cgoAllocMap).Free()
- x.ref7e3ede2 = nil
+func (x *IndirectCommandsStreamNV) Free() {
+ if x != nil && x.allocsc623636a != nil {
+ x.allocsc623636a.(*cgoAllocMap).Free()
+ x.refc623636a = nil
}
}
-// NewDrmFormatModifierPropertiesListRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewIndirectCommandsStreamNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDrmFormatModifierPropertiesListRef(ref unsafe.Pointer) *DrmFormatModifierPropertiesList {
+func NewIndirectCommandsStreamNVRef(ref unsafe.Pointer) *IndirectCommandsStreamNV {
if ref == nil {
return nil
}
- obj := new(DrmFormatModifierPropertiesList)
- obj.ref7e3ede2 = (*C.VkDrmFormatModifierPropertiesListEXT)(unsafe.Pointer(ref))
+ obj := new(IndirectCommandsStreamNV)
+ obj.refc623636a = (*C.VkIndirectCommandsStreamNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DrmFormatModifierPropertiesList) PassRef() (*C.VkDrmFormatModifierPropertiesListEXT, *cgoAllocMap) {
+func (x *IndirectCommandsStreamNV) PassRef() (*C.VkIndirectCommandsStreamNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref7e3ede2 != nil {
- return x.ref7e3ede2, nil
+ } else if x.refc623636a != nil {
+ return x.refc623636a, nil
}
- mem7e3ede2 := allocDrmFormatModifierPropertiesListMemory(1)
- ref7e3ede2 := (*C.VkDrmFormatModifierPropertiesListEXT)(mem7e3ede2)
- allocs7e3ede2 := new(cgoAllocMap)
- allocs7e3ede2.Add(mem7e3ede2)
-
- var csType_allocs *cgoAllocMap
- ref7e3ede2.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs7e3ede2.Borrow(csType_allocs)
-
- var cpNext_allocs *cgoAllocMap
- ref7e3ede2.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs7e3ede2.Borrow(cpNext_allocs)
-
- var cdrmFormatModifierCount_allocs *cgoAllocMap
- ref7e3ede2.drmFormatModifierCount, cdrmFormatModifierCount_allocs = (C.uint32_t)(x.DrmFormatModifierCount), cgoAllocsUnknown
- allocs7e3ede2.Borrow(cdrmFormatModifierCount_allocs)
+ memc623636a := allocIndirectCommandsStreamNVMemory(1)
+ refc623636a := (*C.VkIndirectCommandsStreamNV)(memc623636a)
+ allocsc623636a := new(cgoAllocMap)
+ allocsc623636a.Add(memc623636a)
- var cpDrmFormatModifierProperties_allocs *cgoAllocMap
- ref7e3ede2.pDrmFormatModifierProperties, cpDrmFormatModifierProperties_allocs = unpackSDrmFormatModifierProperties(x.PDrmFormatModifierProperties)
- allocs7e3ede2.Borrow(cpDrmFormatModifierProperties_allocs)
+ var cbuffer_allocs *cgoAllocMap
+ refc623636a.buffer, cbuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.Buffer)), cgoAllocsUnknown
+ allocsc623636a.Borrow(cbuffer_allocs)
- x.ref7e3ede2 = ref7e3ede2
- x.allocs7e3ede2 = allocs7e3ede2
- return ref7e3ede2, allocs7e3ede2
+ var coffset_allocs *cgoAllocMap
+ refc623636a.offset, coffset_allocs = (C.VkDeviceSize)(x.Offset), cgoAllocsUnknown
+ allocsc623636a.Borrow(coffset_allocs)
+
+ x.refc623636a = refc623636a
+ x.allocsc623636a = allocsc623636a
+ return refc623636a, allocsc623636a
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DrmFormatModifierPropertiesList) PassValue() (C.VkDrmFormatModifierPropertiesListEXT, *cgoAllocMap) {
- if x.ref7e3ede2 != nil {
- return *x.ref7e3ede2, nil
+func (x IndirectCommandsStreamNV) PassValue() (C.VkIndirectCommandsStreamNV, *cgoAllocMap) {
+ if x.refc623636a != nil {
+ return *x.refc623636a, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -33719,103 +60334,137 @@ func (x DrmFormatModifierPropertiesList) PassValue() (C.VkDrmFormatModifierPrope
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DrmFormatModifierPropertiesList) Deref() {
- if x.ref7e3ede2 == nil {
+func (x *IndirectCommandsStreamNV) Deref() {
+ if x.refc623636a == nil {
return
}
- x.SType = (StructureType)(x.ref7e3ede2.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref7e3ede2.pNext))
- x.DrmFormatModifierCount = (uint32)(x.ref7e3ede2.drmFormatModifierCount)
- packSDrmFormatModifierProperties(x.PDrmFormatModifierProperties, x.ref7e3ede2.pDrmFormatModifierProperties)
+ x.Buffer = *(*Buffer)(unsafe.Pointer(&x.refc623636a.buffer))
+ x.Offset = (DeviceSize)(x.refc623636a.offset)
}
-// allocPhysicalDeviceImageDrmFormatModifierInfoMemory allocates memory for type C.VkPhysicalDeviceImageDrmFormatModifierInfoEXT in C.
+// allocIndirectCommandsLayoutTokenNVMemory allocates memory for type C.VkIndirectCommandsLayoutTokenNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceImageDrmFormatModifierInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceImageDrmFormatModifierInfoValue))
+func allocIndirectCommandsLayoutTokenNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfIndirectCommandsLayoutTokenNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceImageDrmFormatModifierInfoValue = unsafe.Sizeof([1]C.VkPhysicalDeviceImageDrmFormatModifierInfoEXT{})
+const sizeOfIndirectCommandsLayoutTokenNVValue = unsafe.Sizeof([1]C.VkIndirectCommandsLayoutTokenNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceImageDrmFormatModifierInfo) Ref() *C.VkPhysicalDeviceImageDrmFormatModifierInfoEXT {
+func (x *IndirectCommandsLayoutTokenNV) Ref() *C.VkIndirectCommandsLayoutTokenNV {
if x == nil {
return nil
}
- return x.refd7abef44
+ return x.ref96f52b76
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceImageDrmFormatModifierInfo) Free() {
- if x != nil && x.allocsd7abef44 != nil {
- x.allocsd7abef44.(*cgoAllocMap).Free()
- x.refd7abef44 = nil
+func (x *IndirectCommandsLayoutTokenNV) Free() {
+ if x != nil && x.allocs96f52b76 != nil {
+ x.allocs96f52b76.(*cgoAllocMap).Free()
+ x.ref96f52b76 = nil
}
}
-// NewPhysicalDeviceImageDrmFormatModifierInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewIndirectCommandsLayoutTokenNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceImageDrmFormatModifierInfoRef(ref unsafe.Pointer) *PhysicalDeviceImageDrmFormatModifierInfo {
+func NewIndirectCommandsLayoutTokenNVRef(ref unsafe.Pointer) *IndirectCommandsLayoutTokenNV {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceImageDrmFormatModifierInfo)
- obj.refd7abef44 = (*C.VkPhysicalDeviceImageDrmFormatModifierInfoEXT)(unsafe.Pointer(ref))
+ obj := new(IndirectCommandsLayoutTokenNV)
+ obj.ref96f52b76 = (*C.VkIndirectCommandsLayoutTokenNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceImageDrmFormatModifierInfo) PassRef() (*C.VkPhysicalDeviceImageDrmFormatModifierInfoEXT, *cgoAllocMap) {
+func (x *IndirectCommandsLayoutTokenNV) PassRef() (*C.VkIndirectCommandsLayoutTokenNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refd7abef44 != nil {
- return x.refd7abef44, nil
+ } else if x.ref96f52b76 != nil {
+ return x.ref96f52b76, nil
}
- memd7abef44 := allocPhysicalDeviceImageDrmFormatModifierInfoMemory(1)
- refd7abef44 := (*C.VkPhysicalDeviceImageDrmFormatModifierInfoEXT)(memd7abef44)
- allocsd7abef44 := new(cgoAllocMap)
- allocsd7abef44.Add(memd7abef44)
+ mem96f52b76 := allocIndirectCommandsLayoutTokenNVMemory(1)
+ ref96f52b76 := (*C.VkIndirectCommandsLayoutTokenNV)(mem96f52b76)
+ allocs96f52b76 := new(cgoAllocMap)
+ allocs96f52b76.Add(mem96f52b76)
var csType_allocs *cgoAllocMap
- refd7abef44.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsd7abef44.Borrow(csType_allocs)
+ ref96f52b76.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs96f52b76.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refd7abef44.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsd7abef44.Borrow(cpNext_allocs)
+ ref96f52b76.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs96f52b76.Borrow(cpNext_allocs)
- var cdrmFormatModifier_allocs *cgoAllocMap
- refd7abef44.drmFormatModifier, cdrmFormatModifier_allocs = (C.uint64_t)(x.DrmFormatModifier), cgoAllocsUnknown
- allocsd7abef44.Borrow(cdrmFormatModifier_allocs)
+ var ctokenType_allocs *cgoAllocMap
+ ref96f52b76.tokenType, ctokenType_allocs = (C.VkIndirectCommandsTokenTypeNV)(x.TokenType), cgoAllocsUnknown
+ allocs96f52b76.Borrow(ctokenType_allocs)
- var csharingMode_allocs *cgoAllocMap
- refd7abef44.sharingMode, csharingMode_allocs = (C.VkSharingMode)(x.SharingMode), cgoAllocsUnknown
- allocsd7abef44.Borrow(csharingMode_allocs)
+ var cstream_allocs *cgoAllocMap
+ ref96f52b76.stream, cstream_allocs = (C.uint32_t)(x.Stream), cgoAllocsUnknown
+ allocs96f52b76.Borrow(cstream_allocs)
- var cqueueFamilyIndexCount_allocs *cgoAllocMap
- refd7abef44.queueFamilyIndexCount, cqueueFamilyIndexCount_allocs = (C.uint32_t)(x.QueueFamilyIndexCount), cgoAllocsUnknown
- allocsd7abef44.Borrow(cqueueFamilyIndexCount_allocs)
+ var coffset_allocs *cgoAllocMap
+ ref96f52b76.offset, coffset_allocs = (C.uint32_t)(x.Offset), cgoAllocsUnknown
+ allocs96f52b76.Borrow(coffset_allocs)
- var cpQueueFamilyIndices_allocs *cgoAllocMap
- refd7abef44.pQueueFamilyIndices, cpQueueFamilyIndices_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PQueueFamilyIndices)).Data)), cgoAllocsUnknown
- allocsd7abef44.Borrow(cpQueueFamilyIndices_allocs)
+ var cvertexBindingUnit_allocs *cgoAllocMap
+ ref96f52b76.vertexBindingUnit, cvertexBindingUnit_allocs = (C.uint32_t)(x.VertexBindingUnit), cgoAllocsUnknown
+ allocs96f52b76.Borrow(cvertexBindingUnit_allocs)
- x.refd7abef44 = refd7abef44
- x.allocsd7abef44 = allocsd7abef44
- return refd7abef44, allocsd7abef44
+ var cvertexDynamicStride_allocs *cgoAllocMap
+ ref96f52b76.vertexDynamicStride, cvertexDynamicStride_allocs = (C.VkBool32)(x.VertexDynamicStride), cgoAllocsUnknown
+ allocs96f52b76.Borrow(cvertexDynamicStride_allocs)
+
+ var cpushconstantPipelineLayout_allocs *cgoAllocMap
+ ref96f52b76.pushconstantPipelineLayout, cpushconstantPipelineLayout_allocs = *(*C.VkPipelineLayout)(unsafe.Pointer(&x.PushconstantPipelineLayout)), cgoAllocsUnknown
+ allocs96f52b76.Borrow(cpushconstantPipelineLayout_allocs)
+
+ var cpushconstantShaderStageFlags_allocs *cgoAllocMap
+ ref96f52b76.pushconstantShaderStageFlags, cpushconstantShaderStageFlags_allocs = (C.VkShaderStageFlags)(x.PushconstantShaderStageFlags), cgoAllocsUnknown
+ allocs96f52b76.Borrow(cpushconstantShaderStageFlags_allocs)
+
+ var cpushconstantOffset_allocs *cgoAllocMap
+ ref96f52b76.pushconstantOffset, cpushconstantOffset_allocs = (C.uint32_t)(x.PushconstantOffset), cgoAllocsUnknown
+ allocs96f52b76.Borrow(cpushconstantOffset_allocs)
+
+ var cpushconstantSize_allocs *cgoAllocMap
+ ref96f52b76.pushconstantSize, cpushconstantSize_allocs = (C.uint32_t)(x.PushconstantSize), cgoAllocsUnknown
+ allocs96f52b76.Borrow(cpushconstantSize_allocs)
+
+ var cindirectStateFlags_allocs *cgoAllocMap
+ ref96f52b76.indirectStateFlags, cindirectStateFlags_allocs = (C.VkIndirectStateFlagsNV)(x.IndirectStateFlags), cgoAllocsUnknown
+ allocs96f52b76.Borrow(cindirectStateFlags_allocs)
+
+ var cindexTypeCount_allocs *cgoAllocMap
+ ref96f52b76.indexTypeCount, cindexTypeCount_allocs = (C.uint32_t)(x.IndexTypeCount), cgoAllocsUnknown
+ allocs96f52b76.Borrow(cindexTypeCount_allocs)
+
+ var cpIndexTypes_allocs *cgoAllocMap
+ ref96f52b76.pIndexTypes, cpIndexTypes_allocs = (*C.VkIndexType)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PIndexTypes)).Data)), cgoAllocsUnknown
+ allocs96f52b76.Borrow(cpIndexTypes_allocs)
+
+ var cpIndexTypeValues_allocs *cgoAllocMap
+ ref96f52b76.pIndexTypeValues, cpIndexTypeValues_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PIndexTypeValues)).Data)), cgoAllocsUnknown
+ allocs96f52b76.Borrow(cpIndexTypeValues_allocs)
+
+ x.ref96f52b76 = ref96f52b76
+ x.allocs96f52b76 = allocs96f52b76
+ return ref96f52b76, allocs96f52b76
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceImageDrmFormatModifierInfo) PassValue() (C.VkPhysicalDeviceImageDrmFormatModifierInfoEXT, *cgoAllocMap) {
- if x.refd7abef44 != nil {
- return *x.refd7abef44, nil
+func (x IndirectCommandsLayoutTokenNV) PassValue() (C.VkIndirectCommandsLayoutTokenNV, *cgoAllocMap) {
+ if x.ref96f52b76 != nil {
+ return *x.ref96f52b76, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -33823,101 +60472,168 @@ func (x PhysicalDeviceImageDrmFormatModifierInfo) PassValue() (C.VkPhysicalDevic
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceImageDrmFormatModifierInfo) Deref() {
- if x.refd7abef44 == nil {
+func (x *IndirectCommandsLayoutTokenNV) Deref() {
+ if x.ref96f52b76 == nil {
return
}
- x.SType = (StructureType)(x.refd7abef44.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd7abef44.pNext))
- x.DrmFormatModifier = (uint64)(x.refd7abef44.drmFormatModifier)
- x.SharingMode = (SharingMode)(x.refd7abef44.sharingMode)
- x.QueueFamilyIndexCount = (uint32)(x.refd7abef44.queueFamilyIndexCount)
- hxf44d909 := (*sliceHeader)(unsafe.Pointer(&x.PQueueFamilyIndices))
- hxf44d909.Data = unsafe.Pointer(x.refd7abef44.pQueueFamilyIndices)
- hxf44d909.Cap = 0x7fffffff
- // hxf44d909.Len = ?
-
-}
-
-// allocImageDrmFormatModifierListCreateInfoMemory allocates memory for type C.VkImageDrmFormatModifierListCreateInfoEXT in C.
+ x.SType = (StructureType)(x.ref96f52b76.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref96f52b76.pNext))
+ x.TokenType = (IndirectCommandsTokenTypeNV)(x.ref96f52b76.tokenType)
+ x.Stream = (uint32)(x.ref96f52b76.stream)
+ x.Offset = (uint32)(x.ref96f52b76.offset)
+ x.VertexBindingUnit = (uint32)(x.ref96f52b76.vertexBindingUnit)
+ x.VertexDynamicStride = (Bool32)(x.ref96f52b76.vertexDynamicStride)
+ x.PushconstantPipelineLayout = *(*PipelineLayout)(unsafe.Pointer(&x.ref96f52b76.pushconstantPipelineLayout))
+ x.PushconstantShaderStageFlags = (ShaderStageFlags)(x.ref96f52b76.pushconstantShaderStageFlags)
+ x.PushconstantOffset = (uint32)(x.ref96f52b76.pushconstantOffset)
+ x.PushconstantSize = (uint32)(x.ref96f52b76.pushconstantSize)
+ x.IndirectStateFlags = (IndirectStateFlagsNV)(x.ref96f52b76.indirectStateFlags)
+ x.IndexTypeCount = (uint32)(x.ref96f52b76.indexTypeCount)
+ hxfd3aa9c := (*sliceHeader)(unsafe.Pointer(&x.PIndexTypes))
+ hxfd3aa9c.Data = unsafe.Pointer(x.ref96f52b76.pIndexTypes)
+ hxfd3aa9c.Cap = 0x7fffffff
+ // hxfd3aa9c.Len = ?
+
+ hxfb2f596 := (*sliceHeader)(unsafe.Pointer(&x.PIndexTypeValues))
+ hxfb2f596.Data = unsafe.Pointer(x.ref96f52b76.pIndexTypeValues)
+ hxfb2f596.Cap = 0x7fffffff
+ // hxfb2f596.Len = ?
+
+}
+
+// allocIndirectCommandsLayoutCreateInfoNVMemory allocates memory for type C.VkIndirectCommandsLayoutCreateInfoNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocImageDrmFormatModifierListCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageDrmFormatModifierListCreateInfoValue))
+func allocIndirectCommandsLayoutCreateInfoNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfIndirectCommandsLayoutCreateInfoNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfImageDrmFormatModifierListCreateInfoValue = unsafe.Sizeof([1]C.VkImageDrmFormatModifierListCreateInfoEXT{})
+const sizeOfIndirectCommandsLayoutCreateInfoNVValue = unsafe.Sizeof([1]C.VkIndirectCommandsLayoutCreateInfoNV{})
+
+// unpackSIndirectCommandsLayoutTokenNV transforms a sliced Go data structure into plain C format.
+func unpackSIndirectCommandsLayoutTokenNV(x []IndirectCommandsLayoutTokenNV) (unpacked *C.VkIndirectCommandsLayoutTokenNV, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ allocs = new(cgoAllocMap)
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkIndirectCommandsLayoutTokenNV) {
+ go allocs.Free()
+ })
+
+ len0 := len(x)
+ mem0 := allocIndirectCommandsLayoutTokenNVMemory(len0)
+ allocs.Add(mem0)
+ h0 := &sliceHeader{
+ Data: mem0,
+ Cap: len0,
+ Len: len0,
+ }
+ v0 := *(*[]C.VkIndirectCommandsLayoutTokenNV)(unsafe.Pointer(h0))
+ for i0 := range x {
+ allocs0 := new(cgoAllocMap)
+ v0[i0], allocs0 = x[i0].PassValue()
+ allocs.Borrow(allocs0)
+ }
+ h := (*sliceHeader)(unsafe.Pointer(&v0))
+ unpacked = (*C.VkIndirectCommandsLayoutTokenNV)(h.Data)
+ return
+}
+
+// packSIndirectCommandsLayoutTokenNV reads sliced Go data structure out from plain C format.
+func packSIndirectCommandsLayoutTokenNV(v []IndirectCommandsLayoutTokenNV, ptr0 *C.VkIndirectCommandsLayoutTokenNV) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfIndirectCommandsLayoutTokenNVValue]C.VkIndirectCommandsLayoutTokenNV)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewIndirectCommandsLayoutTokenNVRef(unsafe.Pointer(&ptr1))
+ }
+}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ImageDrmFormatModifierListCreateInfo) Ref() *C.VkImageDrmFormatModifierListCreateInfoEXT {
+func (x *IndirectCommandsLayoutCreateInfoNV) Ref() *C.VkIndirectCommandsLayoutCreateInfoNV {
if x == nil {
return nil
}
- return x.ref544538ab
+ return x.ref48273185
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ImageDrmFormatModifierListCreateInfo) Free() {
- if x != nil && x.allocs544538ab != nil {
- x.allocs544538ab.(*cgoAllocMap).Free()
- x.ref544538ab = nil
+func (x *IndirectCommandsLayoutCreateInfoNV) Free() {
+ if x != nil && x.allocs48273185 != nil {
+ x.allocs48273185.(*cgoAllocMap).Free()
+ x.ref48273185 = nil
}
}
-// NewImageDrmFormatModifierListCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewIndirectCommandsLayoutCreateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewImageDrmFormatModifierListCreateInfoRef(ref unsafe.Pointer) *ImageDrmFormatModifierListCreateInfo {
+func NewIndirectCommandsLayoutCreateInfoNVRef(ref unsafe.Pointer) *IndirectCommandsLayoutCreateInfoNV {
if ref == nil {
return nil
}
- obj := new(ImageDrmFormatModifierListCreateInfo)
- obj.ref544538ab = (*C.VkImageDrmFormatModifierListCreateInfoEXT)(unsafe.Pointer(ref))
+ obj := new(IndirectCommandsLayoutCreateInfoNV)
+ obj.ref48273185 = (*C.VkIndirectCommandsLayoutCreateInfoNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ImageDrmFormatModifierListCreateInfo) PassRef() (*C.VkImageDrmFormatModifierListCreateInfoEXT, *cgoAllocMap) {
+func (x *IndirectCommandsLayoutCreateInfoNV) PassRef() (*C.VkIndirectCommandsLayoutCreateInfoNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref544538ab != nil {
- return x.ref544538ab, nil
+ } else if x.ref48273185 != nil {
+ return x.ref48273185, nil
}
- mem544538ab := allocImageDrmFormatModifierListCreateInfoMemory(1)
- ref544538ab := (*C.VkImageDrmFormatModifierListCreateInfoEXT)(mem544538ab)
- allocs544538ab := new(cgoAllocMap)
- allocs544538ab.Add(mem544538ab)
+ mem48273185 := allocIndirectCommandsLayoutCreateInfoNVMemory(1)
+ ref48273185 := (*C.VkIndirectCommandsLayoutCreateInfoNV)(mem48273185)
+ allocs48273185 := new(cgoAllocMap)
+ allocs48273185.Add(mem48273185)
var csType_allocs *cgoAllocMap
- ref544538ab.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs544538ab.Borrow(csType_allocs)
+ ref48273185.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs48273185.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref544538ab.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs544538ab.Borrow(cpNext_allocs)
+ ref48273185.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs48273185.Borrow(cpNext_allocs)
- var cdrmFormatModifierCount_allocs *cgoAllocMap
- ref544538ab.drmFormatModifierCount, cdrmFormatModifierCount_allocs = (C.uint32_t)(x.DrmFormatModifierCount), cgoAllocsUnknown
- allocs544538ab.Borrow(cdrmFormatModifierCount_allocs)
+ var cflags_allocs *cgoAllocMap
+ ref48273185.flags, cflags_allocs = (C.VkIndirectCommandsLayoutUsageFlagsNV)(x.Flags), cgoAllocsUnknown
+ allocs48273185.Borrow(cflags_allocs)
- var cpDrmFormatModifiers_allocs *cgoAllocMap
- ref544538ab.pDrmFormatModifiers, cpDrmFormatModifiers_allocs = (*C.uint64_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PDrmFormatModifiers)).Data)), cgoAllocsUnknown
- allocs544538ab.Borrow(cpDrmFormatModifiers_allocs)
+ var cpipelineBindPoint_allocs *cgoAllocMap
+ ref48273185.pipelineBindPoint, cpipelineBindPoint_allocs = (C.VkPipelineBindPoint)(x.PipelineBindPoint), cgoAllocsUnknown
+ allocs48273185.Borrow(cpipelineBindPoint_allocs)
- x.ref544538ab = ref544538ab
- x.allocs544538ab = allocs544538ab
- return ref544538ab, allocs544538ab
+ var ctokenCount_allocs *cgoAllocMap
+ ref48273185.tokenCount, ctokenCount_allocs = (C.uint32_t)(x.TokenCount), cgoAllocsUnknown
+ allocs48273185.Borrow(ctokenCount_allocs)
+
+ var cpTokens_allocs *cgoAllocMap
+ ref48273185.pTokens, cpTokens_allocs = unpackSIndirectCommandsLayoutTokenNV(x.PTokens)
+ allocs48273185.Borrow(cpTokens_allocs)
+
+ var cstreamCount_allocs *cgoAllocMap
+ ref48273185.streamCount, cstreamCount_allocs = (C.uint32_t)(x.StreamCount), cgoAllocsUnknown
+ allocs48273185.Borrow(cstreamCount_allocs)
+
+ var cpStreamStrides_allocs *cgoAllocMap
+ ref48273185.pStreamStrides, cpStreamStrides_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PStreamStrides)).Data)), cgoAllocsUnknown
+ allocs48273185.Borrow(cpStreamStrides_allocs)
+
+ x.ref48273185 = ref48273185
+ x.allocs48273185 = allocs48273185
+ return ref48273185, allocs48273185
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ImageDrmFormatModifierListCreateInfo) PassValue() (C.VkImageDrmFormatModifierListCreateInfoEXT, *cgoAllocMap) {
- if x.ref544538ab != nil {
- return *x.ref544538ab, nil
+func (x IndirectCommandsLayoutCreateInfoNV) PassValue() (C.VkIndirectCommandsLayoutCreateInfoNV, *cgoAllocMap) {
+ if x.ref48273185 != nil {
+ return *x.ref48273185, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -33925,141 +60641,185 @@ func (x ImageDrmFormatModifierListCreateInfo) PassValue() (C.VkImageDrmFormatMod
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ImageDrmFormatModifierListCreateInfo) Deref() {
- if x.ref544538ab == nil {
+func (x *IndirectCommandsLayoutCreateInfoNV) Deref() {
+ if x.ref48273185 == nil {
return
}
- x.SType = (StructureType)(x.ref544538ab.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref544538ab.pNext))
- x.DrmFormatModifierCount = (uint32)(x.ref544538ab.drmFormatModifierCount)
- hxfa835e7 := (*sliceHeader)(unsafe.Pointer(&x.PDrmFormatModifiers))
- hxfa835e7.Data = unsafe.Pointer(x.ref544538ab.pDrmFormatModifiers)
- hxfa835e7.Cap = 0x7fffffff
- // hxfa835e7.Len = ?
+ x.SType = (StructureType)(x.ref48273185.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref48273185.pNext))
+ x.Flags = (IndirectCommandsLayoutUsageFlagsNV)(x.ref48273185.flags)
+ x.PipelineBindPoint = (PipelineBindPoint)(x.ref48273185.pipelineBindPoint)
+ x.TokenCount = (uint32)(x.ref48273185.tokenCount)
+ packSIndirectCommandsLayoutTokenNV(x.PTokens, x.ref48273185.pTokens)
+ x.StreamCount = (uint32)(x.ref48273185.streamCount)
+ hxf11683e := (*sliceHeader)(unsafe.Pointer(&x.PStreamStrides))
+ hxf11683e.Data = unsafe.Pointer(x.ref48273185.pStreamStrides)
+ hxf11683e.Cap = 0x7fffffff
+ // hxf11683e.Len = ?
}
-// allocImageDrmFormatModifierExplicitCreateInfoMemory allocates memory for type C.VkImageDrmFormatModifierExplicitCreateInfoEXT in C.
+// allocGeneratedCommandsInfoNVMemory allocates memory for type C.VkGeneratedCommandsInfoNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocImageDrmFormatModifierExplicitCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageDrmFormatModifierExplicitCreateInfoValue))
+func allocGeneratedCommandsInfoNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfGeneratedCommandsInfoNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfImageDrmFormatModifierExplicitCreateInfoValue = unsafe.Sizeof([1]C.VkImageDrmFormatModifierExplicitCreateInfoEXT{})
+const sizeOfGeneratedCommandsInfoNVValue = unsafe.Sizeof([1]C.VkGeneratedCommandsInfoNV{})
-// unpackSSubresourceLayout transforms a sliced Go data structure into plain C format.
-func unpackSSubresourceLayout(x []SubresourceLayout) (unpacked *C.VkSubresourceLayout, allocs *cgoAllocMap) {
+// unpackSIndirectCommandsStreamNV transforms a sliced Go data structure into plain C format.
+func unpackSIndirectCommandsStreamNV(x []IndirectCommandsStreamNV) (unpacked *C.VkIndirectCommandsStreamNV, allocs *cgoAllocMap) {
if x == nil {
return nil, nil
}
allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkSubresourceLayout) {
+ defer runtime.SetFinalizer(&unpacked, func(**C.VkIndirectCommandsStreamNV) {
go allocs.Free()
})
len0 := len(x)
- mem0 := allocSubresourceLayoutMemory(len0)
+ mem0 := allocIndirectCommandsStreamNVMemory(len0)
allocs.Add(mem0)
h0 := &sliceHeader{
Data: mem0,
Cap: len0,
Len: len0,
}
- v0 := *(*[]C.VkSubresourceLayout)(unsafe.Pointer(h0))
+ v0 := *(*[]C.VkIndirectCommandsStreamNV)(unsafe.Pointer(h0))
for i0 := range x {
allocs0 := new(cgoAllocMap)
v0[i0], allocs0 = x[i0].PassValue()
allocs.Borrow(allocs0)
}
h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkSubresourceLayout)(h.Data)
+ unpacked = (*C.VkIndirectCommandsStreamNV)(h.Data)
return
}
-// packSSubresourceLayout reads sliced Go data structure out from plain C format.
-func packSSubresourceLayout(v []SubresourceLayout, ptr0 *C.VkSubresourceLayout) {
+// packSIndirectCommandsStreamNV reads sliced Go data structure out from plain C format.
+func packSIndirectCommandsStreamNV(v []IndirectCommandsStreamNV, ptr0 *C.VkIndirectCommandsStreamNV) {
const m = 0x7fffffff
for i0 := range v {
- ptr1 := (*(*[m / sizeOfSubresourceLayoutValue]C.VkSubresourceLayout)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewSubresourceLayoutRef(unsafe.Pointer(&ptr1))
+ ptr1 := (*(*[m / sizeOfIndirectCommandsStreamNVValue]C.VkIndirectCommandsStreamNV)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewIndirectCommandsStreamNVRef(unsafe.Pointer(&ptr1))
}
}
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ImageDrmFormatModifierExplicitCreateInfo) Ref() *C.VkImageDrmFormatModifierExplicitCreateInfoEXT {
+func (x *GeneratedCommandsInfoNV) Ref() *C.VkGeneratedCommandsInfoNV {
if x == nil {
return nil
}
- return x.ref8fb45ca9
+ return x.refc05396ea
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ImageDrmFormatModifierExplicitCreateInfo) Free() {
- if x != nil && x.allocs8fb45ca9 != nil {
- x.allocs8fb45ca9.(*cgoAllocMap).Free()
- x.ref8fb45ca9 = nil
+func (x *GeneratedCommandsInfoNV) Free() {
+ if x != nil && x.allocsc05396ea != nil {
+ x.allocsc05396ea.(*cgoAllocMap).Free()
+ x.refc05396ea = nil
}
}
-// NewImageDrmFormatModifierExplicitCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewGeneratedCommandsInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewImageDrmFormatModifierExplicitCreateInfoRef(ref unsafe.Pointer) *ImageDrmFormatModifierExplicitCreateInfo {
+func NewGeneratedCommandsInfoNVRef(ref unsafe.Pointer) *GeneratedCommandsInfoNV {
if ref == nil {
return nil
}
- obj := new(ImageDrmFormatModifierExplicitCreateInfo)
- obj.ref8fb45ca9 = (*C.VkImageDrmFormatModifierExplicitCreateInfoEXT)(unsafe.Pointer(ref))
+ obj := new(GeneratedCommandsInfoNV)
+ obj.refc05396ea = (*C.VkGeneratedCommandsInfoNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ImageDrmFormatModifierExplicitCreateInfo) PassRef() (*C.VkImageDrmFormatModifierExplicitCreateInfoEXT, *cgoAllocMap) {
+func (x *GeneratedCommandsInfoNV) PassRef() (*C.VkGeneratedCommandsInfoNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref8fb45ca9 != nil {
- return x.ref8fb45ca9, nil
+ } else if x.refc05396ea != nil {
+ return x.refc05396ea, nil
}
- mem8fb45ca9 := allocImageDrmFormatModifierExplicitCreateInfoMemory(1)
- ref8fb45ca9 := (*C.VkImageDrmFormatModifierExplicitCreateInfoEXT)(mem8fb45ca9)
- allocs8fb45ca9 := new(cgoAllocMap)
- allocs8fb45ca9.Add(mem8fb45ca9)
+ memc05396ea := allocGeneratedCommandsInfoNVMemory(1)
+ refc05396ea := (*C.VkGeneratedCommandsInfoNV)(memc05396ea)
+ allocsc05396ea := new(cgoAllocMap)
+ allocsc05396ea.Add(memc05396ea)
var csType_allocs *cgoAllocMap
- ref8fb45ca9.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs8fb45ca9.Borrow(csType_allocs)
+ refc05396ea.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsc05396ea.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref8fb45ca9.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs8fb45ca9.Borrow(cpNext_allocs)
+ refc05396ea.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsc05396ea.Borrow(cpNext_allocs)
- var cdrmFormatModifier_allocs *cgoAllocMap
- ref8fb45ca9.drmFormatModifier, cdrmFormatModifier_allocs = (C.uint64_t)(x.DrmFormatModifier), cgoAllocsUnknown
- allocs8fb45ca9.Borrow(cdrmFormatModifier_allocs)
+ var cpipelineBindPoint_allocs *cgoAllocMap
+ refc05396ea.pipelineBindPoint, cpipelineBindPoint_allocs = (C.VkPipelineBindPoint)(x.PipelineBindPoint), cgoAllocsUnknown
+ allocsc05396ea.Borrow(cpipelineBindPoint_allocs)
- var cdrmFormatModifierPlaneCount_allocs *cgoAllocMap
- ref8fb45ca9.drmFormatModifierPlaneCount, cdrmFormatModifierPlaneCount_allocs = (C.uint32_t)(x.DrmFormatModifierPlaneCount), cgoAllocsUnknown
- allocs8fb45ca9.Borrow(cdrmFormatModifierPlaneCount_allocs)
+ var cpipeline_allocs *cgoAllocMap
+ refc05396ea.pipeline, cpipeline_allocs = *(*C.VkPipeline)(unsafe.Pointer(&x.Pipeline)), cgoAllocsUnknown
+ allocsc05396ea.Borrow(cpipeline_allocs)
- var cpPlaneLayouts_allocs *cgoAllocMap
- ref8fb45ca9.pPlaneLayouts, cpPlaneLayouts_allocs = unpackSSubresourceLayout(x.PPlaneLayouts)
- allocs8fb45ca9.Borrow(cpPlaneLayouts_allocs)
+ var cindirectCommandsLayout_allocs *cgoAllocMap
+ refc05396ea.indirectCommandsLayout, cindirectCommandsLayout_allocs = *(*C.VkIndirectCommandsLayoutNV)(unsafe.Pointer(&x.IndirectCommandsLayout)), cgoAllocsUnknown
+ allocsc05396ea.Borrow(cindirectCommandsLayout_allocs)
- x.ref8fb45ca9 = ref8fb45ca9
- x.allocs8fb45ca9 = allocs8fb45ca9
- return ref8fb45ca9, allocs8fb45ca9
+ var cstreamCount_allocs *cgoAllocMap
+ refc05396ea.streamCount, cstreamCount_allocs = (C.uint32_t)(x.StreamCount), cgoAllocsUnknown
+ allocsc05396ea.Borrow(cstreamCount_allocs)
+
+ var cpStreams_allocs *cgoAllocMap
+ refc05396ea.pStreams, cpStreams_allocs = unpackSIndirectCommandsStreamNV(x.PStreams)
+ allocsc05396ea.Borrow(cpStreams_allocs)
+
+ var csequencesCount_allocs *cgoAllocMap
+ refc05396ea.sequencesCount, csequencesCount_allocs = (C.uint32_t)(x.SequencesCount), cgoAllocsUnknown
+ allocsc05396ea.Borrow(csequencesCount_allocs)
+
+ var cpreprocessBuffer_allocs *cgoAllocMap
+ refc05396ea.preprocessBuffer, cpreprocessBuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.PreprocessBuffer)), cgoAllocsUnknown
+ allocsc05396ea.Borrow(cpreprocessBuffer_allocs)
+
+ var cpreprocessOffset_allocs *cgoAllocMap
+ refc05396ea.preprocessOffset, cpreprocessOffset_allocs = (C.VkDeviceSize)(x.PreprocessOffset), cgoAllocsUnknown
+ allocsc05396ea.Borrow(cpreprocessOffset_allocs)
+
+ var cpreprocessSize_allocs *cgoAllocMap
+ refc05396ea.preprocessSize, cpreprocessSize_allocs = (C.VkDeviceSize)(x.PreprocessSize), cgoAllocsUnknown
+ allocsc05396ea.Borrow(cpreprocessSize_allocs)
+
+ var csequencesCountBuffer_allocs *cgoAllocMap
+ refc05396ea.sequencesCountBuffer, csequencesCountBuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.SequencesCountBuffer)), cgoAllocsUnknown
+ allocsc05396ea.Borrow(csequencesCountBuffer_allocs)
+
+ var csequencesCountOffset_allocs *cgoAllocMap
+ refc05396ea.sequencesCountOffset, csequencesCountOffset_allocs = (C.VkDeviceSize)(x.SequencesCountOffset), cgoAllocsUnknown
+ allocsc05396ea.Borrow(csequencesCountOffset_allocs)
+
+ var csequencesIndexBuffer_allocs *cgoAllocMap
+ refc05396ea.sequencesIndexBuffer, csequencesIndexBuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.SequencesIndexBuffer)), cgoAllocsUnknown
+ allocsc05396ea.Borrow(csequencesIndexBuffer_allocs)
+
+ var csequencesIndexOffset_allocs *cgoAllocMap
+ refc05396ea.sequencesIndexOffset, csequencesIndexOffset_allocs = (C.VkDeviceSize)(x.SequencesIndexOffset), cgoAllocsUnknown
+ allocsc05396ea.Borrow(csequencesIndexOffset_allocs)
+
+ x.refc05396ea = refc05396ea
+ x.allocsc05396ea = allocsc05396ea
+ return refc05396ea, allocsc05396ea
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ImageDrmFormatModifierExplicitCreateInfo) PassValue() (C.VkImageDrmFormatModifierExplicitCreateInfoEXT, *cgoAllocMap) {
- if x.ref8fb45ca9 != nil {
- return *x.ref8fb45ca9, nil
+func (x GeneratedCommandsInfoNV) PassValue() (C.VkGeneratedCommandsInfoNV, *cgoAllocMap) {
+ if x.refc05396ea != nil {
+ return *x.refc05396ea, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -34067,92 +60827,114 @@ func (x ImageDrmFormatModifierExplicitCreateInfo) PassValue() (C.VkImageDrmForma
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ImageDrmFormatModifierExplicitCreateInfo) Deref() {
- if x.ref8fb45ca9 == nil {
+func (x *GeneratedCommandsInfoNV) Deref() {
+ if x.refc05396ea == nil {
return
}
- x.SType = (StructureType)(x.ref8fb45ca9.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref8fb45ca9.pNext))
- x.DrmFormatModifier = (uint64)(x.ref8fb45ca9.drmFormatModifier)
- x.DrmFormatModifierPlaneCount = (uint32)(x.ref8fb45ca9.drmFormatModifierPlaneCount)
- packSSubresourceLayout(x.PPlaneLayouts, x.ref8fb45ca9.pPlaneLayouts)
-}
-
-// allocImageDrmFormatModifierPropertiesMemory allocates memory for type C.VkImageDrmFormatModifierPropertiesEXT in C.
+ x.SType = (StructureType)(x.refc05396ea.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc05396ea.pNext))
+ x.PipelineBindPoint = (PipelineBindPoint)(x.refc05396ea.pipelineBindPoint)
+ x.Pipeline = *(*Pipeline)(unsafe.Pointer(&x.refc05396ea.pipeline))
+ x.IndirectCommandsLayout = *(*IndirectCommandsLayoutNV)(unsafe.Pointer(&x.refc05396ea.indirectCommandsLayout))
+ x.StreamCount = (uint32)(x.refc05396ea.streamCount)
+ packSIndirectCommandsStreamNV(x.PStreams, x.refc05396ea.pStreams)
+ x.SequencesCount = (uint32)(x.refc05396ea.sequencesCount)
+ x.PreprocessBuffer = *(*Buffer)(unsafe.Pointer(&x.refc05396ea.preprocessBuffer))
+ x.PreprocessOffset = (DeviceSize)(x.refc05396ea.preprocessOffset)
+ x.PreprocessSize = (DeviceSize)(x.refc05396ea.preprocessSize)
+ x.SequencesCountBuffer = *(*Buffer)(unsafe.Pointer(&x.refc05396ea.sequencesCountBuffer))
+ x.SequencesCountOffset = (DeviceSize)(x.refc05396ea.sequencesCountOffset)
+ x.SequencesIndexBuffer = *(*Buffer)(unsafe.Pointer(&x.refc05396ea.sequencesIndexBuffer))
+ x.SequencesIndexOffset = (DeviceSize)(x.refc05396ea.sequencesIndexOffset)
+}
+
+// allocGeneratedCommandsMemoryRequirementsInfoNVMemory allocates memory for type C.VkGeneratedCommandsMemoryRequirementsInfoNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocImageDrmFormatModifierPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageDrmFormatModifierPropertiesValue))
+func allocGeneratedCommandsMemoryRequirementsInfoNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfGeneratedCommandsMemoryRequirementsInfoNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfImageDrmFormatModifierPropertiesValue = unsafe.Sizeof([1]C.VkImageDrmFormatModifierPropertiesEXT{})
+const sizeOfGeneratedCommandsMemoryRequirementsInfoNVValue = unsafe.Sizeof([1]C.VkGeneratedCommandsMemoryRequirementsInfoNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ImageDrmFormatModifierProperties) Ref() *C.VkImageDrmFormatModifierPropertiesEXT {
+func (x *GeneratedCommandsMemoryRequirementsInfoNV) Ref() *C.VkGeneratedCommandsMemoryRequirementsInfoNV {
if x == nil {
return nil
}
- return x.ref86a0f149
+ return x.refe82e5c4c
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ImageDrmFormatModifierProperties) Free() {
- if x != nil && x.allocs86a0f149 != nil {
- x.allocs86a0f149.(*cgoAllocMap).Free()
- x.ref86a0f149 = nil
+func (x *GeneratedCommandsMemoryRequirementsInfoNV) Free() {
+ if x != nil && x.allocse82e5c4c != nil {
+ x.allocse82e5c4c.(*cgoAllocMap).Free()
+ x.refe82e5c4c = nil
}
}
-// NewImageDrmFormatModifierPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewGeneratedCommandsMemoryRequirementsInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewImageDrmFormatModifierPropertiesRef(ref unsafe.Pointer) *ImageDrmFormatModifierProperties {
+func NewGeneratedCommandsMemoryRequirementsInfoNVRef(ref unsafe.Pointer) *GeneratedCommandsMemoryRequirementsInfoNV {
if ref == nil {
return nil
}
- obj := new(ImageDrmFormatModifierProperties)
- obj.ref86a0f149 = (*C.VkImageDrmFormatModifierPropertiesEXT)(unsafe.Pointer(ref))
+ obj := new(GeneratedCommandsMemoryRequirementsInfoNV)
+ obj.refe82e5c4c = (*C.VkGeneratedCommandsMemoryRequirementsInfoNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ImageDrmFormatModifierProperties) PassRef() (*C.VkImageDrmFormatModifierPropertiesEXT, *cgoAllocMap) {
+func (x *GeneratedCommandsMemoryRequirementsInfoNV) PassRef() (*C.VkGeneratedCommandsMemoryRequirementsInfoNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref86a0f149 != nil {
- return x.ref86a0f149, nil
+ } else if x.refe82e5c4c != nil {
+ return x.refe82e5c4c, nil
}
- mem86a0f149 := allocImageDrmFormatModifierPropertiesMemory(1)
- ref86a0f149 := (*C.VkImageDrmFormatModifierPropertiesEXT)(mem86a0f149)
- allocs86a0f149 := new(cgoAllocMap)
- allocs86a0f149.Add(mem86a0f149)
+ meme82e5c4c := allocGeneratedCommandsMemoryRequirementsInfoNVMemory(1)
+ refe82e5c4c := (*C.VkGeneratedCommandsMemoryRequirementsInfoNV)(meme82e5c4c)
+ allocse82e5c4c := new(cgoAllocMap)
+ allocse82e5c4c.Add(meme82e5c4c)
var csType_allocs *cgoAllocMap
- ref86a0f149.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs86a0f149.Borrow(csType_allocs)
+ refe82e5c4c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocse82e5c4c.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref86a0f149.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs86a0f149.Borrow(cpNext_allocs)
+ refe82e5c4c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocse82e5c4c.Borrow(cpNext_allocs)
- var cdrmFormatModifier_allocs *cgoAllocMap
- ref86a0f149.drmFormatModifier, cdrmFormatModifier_allocs = (C.uint64_t)(x.DrmFormatModifier), cgoAllocsUnknown
- allocs86a0f149.Borrow(cdrmFormatModifier_allocs)
+ var cpipelineBindPoint_allocs *cgoAllocMap
+ refe82e5c4c.pipelineBindPoint, cpipelineBindPoint_allocs = (C.VkPipelineBindPoint)(x.PipelineBindPoint), cgoAllocsUnknown
+ allocse82e5c4c.Borrow(cpipelineBindPoint_allocs)
- x.ref86a0f149 = ref86a0f149
- x.allocs86a0f149 = allocs86a0f149
- return ref86a0f149, allocs86a0f149
+ var cpipeline_allocs *cgoAllocMap
+ refe82e5c4c.pipeline, cpipeline_allocs = *(*C.VkPipeline)(unsafe.Pointer(&x.Pipeline)), cgoAllocsUnknown
+ allocse82e5c4c.Borrow(cpipeline_allocs)
+
+ var cindirectCommandsLayout_allocs *cgoAllocMap
+ refe82e5c4c.indirectCommandsLayout, cindirectCommandsLayout_allocs = *(*C.VkIndirectCommandsLayoutNV)(unsafe.Pointer(&x.IndirectCommandsLayout)), cgoAllocsUnknown
+ allocse82e5c4c.Borrow(cindirectCommandsLayout_allocs)
+
+ var cmaxSequencesCount_allocs *cgoAllocMap
+ refe82e5c4c.maxSequencesCount, cmaxSequencesCount_allocs = (C.uint32_t)(x.MaxSequencesCount), cgoAllocsUnknown
+ allocse82e5c4c.Borrow(cmaxSequencesCount_allocs)
+
+ x.refe82e5c4c = refe82e5c4c
+ x.allocse82e5c4c = allocse82e5c4c
+ return refe82e5c4c, allocse82e5c4c
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ImageDrmFormatModifierProperties) PassValue() (C.VkImageDrmFormatModifierPropertiesEXT, *cgoAllocMap) {
- if x.ref86a0f149 != nil {
- return *x.ref86a0f149, nil
+func (x GeneratedCommandsMemoryRequirementsInfoNV) PassValue() (C.VkGeneratedCommandsMemoryRequirementsInfoNV, *cgoAllocMap) {
+ if x.refe82e5c4c != nil {
+ return *x.refe82e5c4c, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -34160,98 +60942,93 @@ func (x ImageDrmFormatModifierProperties) PassValue() (C.VkImageDrmFormatModifie
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ImageDrmFormatModifierProperties) Deref() {
- if x.ref86a0f149 == nil {
+func (x *GeneratedCommandsMemoryRequirementsInfoNV) Deref() {
+ if x.refe82e5c4c == nil {
return
}
- x.SType = (StructureType)(x.ref86a0f149.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref86a0f149.pNext))
- x.DrmFormatModifier = (uint64)(x.ref86a0f149.drmFormatModifier)
+ x.SType = (StructureType)(x.refe82e5c4c.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refe82e5c4c.pNext))
+ x.PipelineBindPoint = (PipelineBindPoint)(x.refe82e5c4c.pipelineBindPoint)
+ x.Pipeline = *(*Pipeline)(unsafe.Pointer(&x.refe82e5c4c.pipeline))
+ x.IndirectCommandsLayout = *(*IndirectCommandsLayoutNV)(unsafe.Pointer(&x.refe82e5c4c.indirectCommandsLayout))
+ x.MaxSequencesCount = (uint32)(x.refe82e5c4c.maxSequencesCount)
}
-// allocValidationCacheCreateInfoMemory allocates memory for type C.VkValidationCacheCreateInfoEXT in C.
+// allocPhysicalDeviceInheritedViewportScissorFeaturesNVMemory allocates memory for type C.VkPhysicalDeviceInheritedViewportScissorFeaturesNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocValidationCacheCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfValidationCacheCreateInfoValue))
+func allocPhysicalDeviceInheritedViewportScissorFeaturesNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceInheritedViewportScissorFeaturesNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfValidationCacheCreateInfoValue = unsafe.Sizeof([1]C.VkValidationCacheCreateInfoEXT{})
+const sizeOfPhysicalDeviceInheritedViewportScissorFeaturesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceInheritedViewportScissorFeaturesNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ValidationCacheCreateInfo) Ref() *C.VkValidationCacheCreateInfoEXT {
+func (x *PhysicalDeviceInheritedViewportScissorFeaturesNV) Ref() *C.VkPhysicalDeviceInheritedViewportScissorFeaturesNV {
if x == nil {
return nil
}
- return x.ref3d8ac8aa
+ return x.refcec68147
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ValidationCacheCreateInfo) Free() {
- if x != nil && x.allocs3d8ac8aa != nil {
- x.allocs3d8ac8aa.(*cgoAllocMap).Free()
- x.ref3d8ac8aa = nil
+func (x *PhysicalDeviceInheritedViewportScissorFeaturesNV) Free() {
+ if x != nil && x.allocscec68147 != nil {
+ x.allocscec68147.(*cgoAllocMap).Free()
+ x.refcec68147 = nil
}
}
-// NewValidationCacheCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceInheritedViewportScissorFeaturesNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewValidationCacheCreateInfoRef(ref unsafe.Pointer) *ValidationCacheCreateInfo {
+func NewPhysicalDeviceInheritedViewportScissorFeaturesNVRef(ref unsafe.Pointer) *PhysicalDeviceInheritedViewportScissorFeaturesNV {
if ref == nil {
return nil
}
- obj := new(ValidationCacheCreateInfo)
- obj.ref3d8ac8aa = (*C.VkValidationCacheCreateInfoEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceInheritedViewportScissorFeaturesNV)
+ obj.refcec68147 = (*C.VkPhysicalDeviceInheritedViewportScissorFeaturesNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ValidationCacheCreateInfo) PassRef() (*C.VkValidationCacheCreateInfoEXT, *cgoAllocMap) {
+func (x *PhysicalDeviceInheritedViewportScissorFeaturesNV) PassRef() (*C.VkPhysicalDeviceInheritedViewportScissorFeaturesNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref3d8ac8aa != nil {
- return x.ref3d8ac8aa, nil
+ } else if x.refcec68147 != nil {
+ return x.refcec68147, nil
}
- mem3d8ac8aa := allocValidationCacheCreateInfoMemory(1)
- ref3d8ac8aa := (*C.VkValidationCacheCreateInfoEXT)(mem3d8ac8aa)
- allocs3d8ac8aa := new(cgoAllocMap)
- allocs3d8ac8aa.Add(mem3d8ac8aa)
+ memcec68147 := allocPhysicalDeviceInheritedViewportScissorFeaturesNVMemory(1)
+ refcec68147 := (*C.VkPhysicalDeviceInheritedViewportScissorFeaturesNV)(memcec68147)
+ allocscec68147 := new(cgoAllocMap)
+ allocscec68147.Add(memcec68147)
var csType_allocs *cgoAllocMap
- ref3d8ac8aa.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs3d8ac8aa.Borrow(csType_allocs)
+ refcec68147.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocscec68147.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref3d8ac8aa.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs3d8ac8aa.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- ref3d8ac8aa.flags, cflags_allocs = (C.VkValidationCacheCreateFlagsEXT)(x.Flags), cgoAllocsUnknown
- allocs3d8ac8aa.Borrow(cflags_allocs)
+ refcec68147.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocscec68147.Borrow(cpNext_allocs)
- var cinitialDataSize_allocs *cgoAllocMap
- ref3d8ac8aa.initialDataSize, cinitialDataSize_allocs = (C.size_t)(x.InitialDataSize), cgoAllocsUnknown
- allocs3d8ac8aa.Borrow(cinitialDataSize_allocs)
-
- var cpInitialData_allocs *cgoAllocMap
- ref3d8ac8aa.pInitialData, cpInitialData_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PInitialData)), cgoAllocsUnknown
- allocs3d8ac8aa.Borrow(cpInitialData_allocs)
+ var cinheritedViewportScissor2D_allocs *cgoAllocMap
+ refcec68147.inheritedViewportScissor2D, cinheritedViewportScissor2D_allocs = (C.VkBool32)(x.InheritedViewportScissor2D), cgoAllocsUnknown
+ allocscec68147.Borrow(cinheritedViewportScissor2D_allocs)
- x.ref3d8ac8aa = ref3d8ac8aa
- x.allocs3d8ac8aa = allocs3d8ac8aa
- return ref3d8ac8aa, allocs3d8ac8aa
+ x.refcec68147 = refcec68147
+ x.allocscec68147 = allocscec68147
+ return refcec68147, allocscec68147
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ValidationCacheCreateInfo) PassValue() (C.VkValidationCacheCreateInfoEXT, *cgoAllocMap) {
- if x.ref3d8ac8aa != nil {
- return *x.ref3d8ac8aa, nil
+func (x PhysicalDeviceInheritedViewportScissorFeaturesNV) PassValue() (C.VkPhysicalDeviceInheritedViewportScissorFeaturesNV, *cgoAllocMap) {
+ if x.refcec68147 != nil {
+ return *x.refcec68147, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -34259,92 +61036,98 @@ func (x ValidationCacheCreateInfo) PassValue() (C.VkValidationCacheCreateInfoEXT
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ValidationCacheCreateInfo) Deref() {
- if x.ref3d8ac8aa == nil {
+func (x *PhysicalDeviceInheritedViewportScissorFeaturesNV) Deref() {
+ if x.refcec68147 == nil {
return
}
- x.SType = (StructureType)(x.ref3d8ac8aa.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref3d8ac8aa.pNext))
- x.Flags = (ValidationCacheCreateFlags)(x.ref3d8ac8aa.flags)
- x.InitialDataSize = (uint)(x.ref3d8ac8aa.initialDataSize)
- x.PInitialData = (unsafe.Pointer)(unsafe.Pointer(x.ref3d8ac8aa.pInitialData))
+ x.SType = (StructureType)(x.refcec68147.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refcec68147.pNext))
+ x.InheritedViewportScissor2D = (Bool32)(x.refcec68147.inheritedViewportScissor2D)
}
-// allocShaderModuleValidationCacheCreateInfoMemory allocates memory for type C.VkShaderModuleValidationCacheCreateInfoEXT in C.
+// allocCommandBufferInheritanceViewportScissorInfoNVMemory allocates memory for type C.VkCommandBufferInheritanceViewportScissorInfoNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocShaderModuleValidationCacheCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfShaderModuleValidationCacheCreateInfoValue))
+func allocCommandBufferInheritanceViewportScissorInfoNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCommandBufferInheritanceViewportScissorInfoNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfShaderModuleValidationCacheCreateInfoValue = unsafe.Sizeof([1]C.VkShaderModuleValidationCacheCreateInfoEXT{})
+const sizeOfCommandBufferInheritanceViewportScissorInfoNVValue = unsafe.Sizeof([1]C.VkCommandBufferInheritanceViewportScissorInfoNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ShaderModuleValidationCacheCreateInfo) Ref() *C.VkShaderModuleValidationCacheCreateInfoEXT {
+func (x *CommandBufferInheritanceViewportScissorInfoNV) Ref() *C.VkCommandBufferInheritanceViewportScissorInfoNV {
if x == nil {
return nil
}
- return x.ref37065f24
+ return x.refc206d63
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ShaderModuleValidationCacheCreateInfo) Free() {
- if x != nil && x.allocs37065f24 != nil {
- x.allocs37065f24.(*cgoAllocMap).Free()
- x.ref37065f24 = nil
+func (x *CommandBufferInheritanceViewportScissorInfoNV) Free() {
+ if x != nil && x.allocsc206d63 != nil {
+ x.allocsc206d63.(*cgoAllocMap).Free()
+ x.refc206d63 = nil
}
}
-// NewShaderModuleValidationCacheCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewCommandBufferInheritanceViewportScissorInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewShaderModuleValidationCacheCreateInfoRef(ref unsafe.Pointer) *ShaderModuleValidationCacheCreateInfo {
+func NewCommandBufferInheritanceViewportScissorInfoNVRef(ref unsafe.Pointer) *CommandBufferInheritanceViewportScissorInfoNV {
if ref == nil {
return nil
}
- obj := new(ShaderModuleValidationCacheCreateInfo)
- obj.ref37065f24 = (*C.VkShaderModuleValidationCacheCreateInfoEXT)(unsafe.Pointer(ref))
+ obj := new(CommandBufferInheritanceViewportScissorInfoNV)
+ obj.refc206d63 = (*C.VkCommandBufferInheritanceViewportScissorInfoNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ShaderModuleValidationCacheCreateInfo) PassRef() (*C.VkShaderModuleValidationCacheCreateInfoEXT, *cgoAllocMap) {
+func (x *CommandBufferInheritanceViewportScissorInfoNV) PassRef() (*C.VkCommandBufferInheritanceViewportScissorInfoNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref37065f24 != nil {
- return x.ref37065f24, nil
+ } else if x.refc206d63 != nil {
+ return x.refc206d63, nil
}
- mem37065f24 := allocShaderModuleValidationCacheCreateInfoMemory(1)
- ref37065f24 := (*C.VkShaderModuleValidationCacheCreateInfoEXT)(mem37065f24)
- allocs37065f24 := new(cgoAllocMap)
- allocs37065f24.Add(mem37065f24)
+ memc206d63 := allocCommandBufferInheritanceViewportScissorInfoNVMemory(1)
+ refc206d63 := (*C.VkCommandBufferInheritanceViewportScissorInfoNV)(memc206d63)
+ allocsc206d63 := new(cgoAllocMap)
+ allocsc206d63.Add(memc206d63)
var csType_allocs *cgoAllocMap
- ref37065f24.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs37065f24.Borrow(csType_allocs)
+ refc206d63.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsc206d63.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref37065f24.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs37065f24.Borrow(cpNext_allocs)
+ refc206d63.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsc206d63.Borrow(cpNext_allocs)
- var cvalidationCache_allocs *cgoAllocMap
- ref37065f24.validationCache, cvalidationCache_allocs = *(*C.VkValidationCacheEXT)(unsafe.Pointer(&x.ValidationCache)), cgoAllocsUnknown
- allocs37065f24.Borrow(cvalidationCache_allocs)
+ var cviewportScissor2D_allocs *cgoAllocMap
+ refc206d63.viewportScissor2D, cviewportScissor2D_allocs = (C.VkBool32)(x.ViewportScissor2D), cgoAllocsUnknown
+ allocsc206d63.Borrow(cviewportScissor2D_allocs)
- x.ref37065f24 = ref37065f24
- x.allocs37065f24 = allocs37065f24
- return ref37065f24, allocs37065f24
+ var cviewportDepthCount_allocs *cgoAllocMap
+ refc206d63.viewportDepthCount, cviewportDepthCount_allocs = (C.uint32_t)(x.ViewportDepthCount), cgoAllocsUnknown
+ allocsc206d63.Borrow(cviewportDepthCount_allocs)
+
+ var cpViewportDepths_allocs *cgoAllocMap
+ refc206d63.pViewportDepths, cpViewportDepths_allocs = unpackSViewport(x.PViewportDepths)
+ allocsc206d63.Borrow(cpViewportDepths_allocs)
+
+ x.refc206d63 = refc206d63
+ x.allocsc206d63 = allocsc206d63
+ return refc206d63, allocsc206d63
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ShaderModuleValidationCacheCreateInfo) PassValue() (C.VkShaderModuleValidationCacheCreateInfoEXT, *cgoAllocMap) {
- if x.ref37065f24 != nil {
- return *x.ref37065f24, nil
+func (x CommandBufferInheritanceViewportScissorInfoNV) PassValue() (C.VkCommandBufferInheritanceViewportScissorInfoNV, *cgoAllocMap) {
+ if x.refc206d63 != nil {
+ return *x.refc206d63, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -34352,94 +61135,92 @@ func (x ShaderModuleValidationCacheCreateInfo) PassValue() (C.VkShaderModuleVali
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ShaderModuleValidationCacheCreateInfo) Deref() {
- if x.ref37065f24 == nil {
+func (x *CommandBufferInheritanceViewportScissorInfoNV) Deref() {
+ if x.refc206d63 == nil {
return
}
- x.SType = (StructureType)(x.ref37065f24.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref37065f24.pNext))
- x.ValidationCache = *(*ValidationCache)(unsafe.Pointer(&x.ref37065f24.validationCache))
+ x.SType = (StructureType)(x.refc206d63.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc206d63.pNext))
+ x.ViewportScissor2D = (Bool32)(x.refc206d63.viewportScissor2D)
+ x.ViewportDepthCount = (uint32)(x.refc206d63.viewportDepthCount)
+ packSViewport(x.PViewportDepths, x.refc206d63.pViewportDepths)
}
-// allocDescriptorSetLayoutBindingFlagsCreateInfoMemory allocates memory for type C.VkDescriptorSetLayoutBindingFlagsCreateInfoEXT in C.
+// allocPhysicalDeviceTexelBufferAlignmentFeaturesMemory allocates memory for type C.VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDescriptorSetLayoutBindingFlagsCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorSetLayoutBindingFlagsCreateInfoValue))
+func allocPhysicalDeviceTexelBufferAlignmentFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceTexelBufferAlignmentFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDescriptorSetLayoutBindingFlagsCreateInfoValue = unsafe.Sizeof([1]C.VkDescriptorSetLayoutBindingFlagsCreateInfoEXT{})
+const sizeOfPhysicalDeviceTexelBufferAlignmentFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DescriptorSetLayoutBindingFlagsCreateInfo) Ref() *C.VkDescriptorSetLayoutBindingFlagsCreateInfoEXT {
+func (x *PhysicalDeviceTexelBufferAlignmentFeatures) Ref() *C.VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT {
if x == nil {
return nil
}
- return x.refcb1cf42
+ return x.ref2c4411b2
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DescriptorSetLayoutBindingFlagsCreateInfo) Free() {
- if x != nil && x.allocscb1cf42 != nil {
- x.allocscb1cf42.(*cgoAllocMap).Free()
- x.refcb1cf42 = nil
+func (x *PhysicalDeviceTexelBufferAlignmentFeatures) Free() {
+ if x != nil && x.allocs2c4411b2 != nil {
+ x.allocs2c4411b2.(*cgoAllocMap).Free()
+ x.ref2c4411b2 = nil
}
}
-// NewDescriptorSetLayoutBindingFlagsCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceTexelBufferAlignmentFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDescriptorSetLayoutBindingFlagsCreateInfoRef(ref unsafe.Pointer) *DescriptorSetLayoutBindingFlagsCreateInfo {
+func NewPhysicalDeviceTexelBufferAlignmentFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceTexelBufferAlignmentFeatures {
if ref == nil {
return nil
}
- obj := new(DescriptorSetLayoutBindingFlagsCreateInfo)
- obj.refcb1cf42 = (*C.VkDescriptorSetLayoutBindingFlagsCreateInfoEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceTexelBufferAlignmentFeatures)
+ obj.ref2c4411b2 = (*C.VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DescriptorSetLayoutBindingFlagsCreateInfo) PassRef() (*C.VkDescriptorSetLayoutBindingFlagsCreateInfoEXT, *cgoAllocMap) {
+func (x *PhysicalDeviceTexelBufferAlignmentFeatures) PassRef() (*C.VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refcb1cf42 != nil {
- return x.refcb1cf42, nil
+ } else if x.ref2c4411b2 != nil {
+ return x.ref2c4411b2, nil
}
- memcb1cf42 := allocDescriptorSetLayoutBindingFlagsCreateInfoMemory(1)
- refcb1cf42 := (*C.VkDescriptorSetLayoutBindingFlagsCreateInfoEXT)(memcb1cf42)
- allocscb1cf42 := new(cgoAllocMap)
- allocscb1cf42.Add(memcb1cf42)
+ mem2c4411b2 := allocPhysicalDeviceTexelBufferAlignmentFeaturesMemory(1)
+ ref2c4411b2 := (*C.VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT)(mem2c4411b2)
+ allocs2c4411b2 := new(cgoAllocMap)
+ allocs2c4411b2.Add(mem2c4411b2)
var csType_allocs *cgoAllocMap
- refcb1cf42.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocscb1cf42.Borrow(csType_allocs)
+ ref2c4411b2.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs2c4411b2.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refcb1cf42.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocscb1cf42.Borrow(cpNext_allocs)
-
- var cbindingCount_allocs *cgoAllocMap
- refcb1cf42.bindingCount, cbindingCount_allocs = (C.uint32_t)(x.BindingCount), cgoAllocsUnknown
- allocscb1cf42.Borrow(cbindingCount_allocs)
+ ref2c4411b2.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs2c4411b2.Borrow(cpNext_allocs)
- var cpBindingFlags_allocs *cgoAllocMap
- refcb1cf42.pBindingFlags, cpBindingFlags_allocs = (*C.VkDescriptorBindingFlagsEXT)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PBindingFlags)).Data)), cgoAllocsUnknown
- allocscb1cf42.Borrow(cpBindingFlags_allocs)
+ var ctexelBufferAlignment_allocs *cgoAllocMap
+ ref2c4411b2.texelBufferAlignment, ctexelBufferAlignment_allocs = (C.VkBool32)(x.TexelBufferAlignment), cgoAllocsUnknown
+ allocs2c4411b2.Borrow(ctexelBufferAlignment_allocs)
- x.refcb1cf42 = refcb1cf42
- x.allocscb1cf42 = allocscb1cf42
- return refcb1cf42, allocscb1cf42
+ x.ref2c4411b2 = ref2c4411b2
+ x.allocs2c4411b2 = allocs2c4411b2
+ return ref2c4411b2, allocs2c4411b2
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DescriptorSetLayoutBindingFlagsCreateInfo) PassValue() (C.VkDescriptorSetLayoutBindingFlagsCreateInfoEXT, *cgoAllocMap) {
- if x.refcb1cf42 != nil {
- return *x.refcb1cf42, nil
+func (x PhysicalDeviceTexelBufferAlignmentFeatures) PassValue() (C.VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT, *cgoAllocMap) {
+ if x.ref2c4411b2 != nil {
+ return *x.ref2c4411b2, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -34447,171 +61228,90 @@ func (x DescriptorSetLayoutBindingFlagsCreateInfo) PassValue() (C.VkDescriptorSe
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DescriptorSetLayoutBindingFlagsCreateInfo) Deref() {
- if x.refcb1cf42 == nil {
+func (x *PhysicalDeviceTexelBufferAlignmentFeatures) Deref() {
+ if x.ref2c4411b2 == nil {
return
}
- x.SType = (StructureType)(x.refcb1cf42.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refcb1cf42.pNext))
- x.BindingCount = (uint32)(x.refcb1cf42.bindingCount)
- hxf8eae10 := (*sliceHeader)(unsafe.Pointer(&x.PBindingFlags))
- hxf8eae10.Data = unsafe.Pointer(x.refcb1cf42.pBindingFlags)
- hxf8eae10.Cap = 0x7fffffff
- // hxf8eae10.Len = ?
-
+ x.SType = (StructureType)(x.ref2c4411b2.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref2c4411b2.pNext))
+ x.TexelBufferAlignment = (Bool32)(x.ref2c4411b2.texelBufferAlignment)
}
-// allocPhysicalDeviceDescriptorIndexingFeaturesMemory allocates memory for type C.VkPhysicalDeviceDescriptorIndexingFeaturesEXT in C.
+// allocRenderPassTransformBeginInfoQCOMMemory allocates memory for type C.VkRenderPassTransformBeginInfoQCOM in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceDescriptorIndexingFeaturesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceDescriptorIndexingFeaturesValue))
+func allocRenderPassTransformBeginInfoQCOMMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfRenderPassTransformBeginInfoQCOMValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceDescriptorIndexingFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceDescriptorIndexingFeaturesEXT{})
+const sizeOfRenderPassTransformBeginInfoQCOMValue = unsafe.Sizeof([1]C.VkRenderPassTransformBeginInfoQCOM{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceDescriptorIndexingFeatures) Ref() *C.VkPhysicalDeviceDescriptorIndexingFeaturesEXT {
+func (x *RenderPassTransformBeginInfoQCOM) Ref() *C.VkRenderPassTransformBeginInfoQCOM {
if x == nil {
return nil
}
- return x.ref76ca48bc
+ return x.ref938e681d
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceDescriptorIndexingFeatures) Free() {
- if x != nil && x.allocs76ca48bc != nil {
- x.allocs76ca48bc.(*cgoAllocMap).Free()
- x.ref76ca48bc = nil
+func (x *RenderPassTransformBeginInfoQCOM) Free() {
+ if x != nil && x.allocs938e681d != nil {
+ x.allocs938e681d.(*cgoAllocMap).Free()
+ x.ref938e681d = nil
}
}
-// NewPhysicalDeviceDescriptorIndexingFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewRenderPassTransformBeginInfoQCOMRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceDescriptorIndexingFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceDescriptorIndexingFeatures {
+func NewRenderPassTransformBeginInfoQCOMRef(ref unsafe.Pointer) *RenderPassTransformBeginInfoQCOM {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceDescriptorIndexingFeatures)
- obj.ref76ca48bc = (*C.VkPhysicalDeviceDescriptorIndexingFeaturesEXT)(unsafe.Pointer(ref))
+ obj := new(RenderPassTransformBeginInfoQCOM)
+ obj.ref938e681d = (*C.VkRenderPassTransformBeginInfoQCOM)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceDescriptorIndexingFeatures) PassRef() (*C.VkPhysicalDeviceDescriptorIndexingFeaturesEXT, *cgoAllocMap) {
+func (x *RenderPassTransformBeginInfoQCOM) PassRef() (*C.VkRenderPassTransformBeginInfoQCOM, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref76ca48bc != nil {
- return x.ref76ca48bc, nil
+ } else if x.ref938e681d != nil {
+ return x.ref938e681d, nil
}
- mem76ca48bc := allocPhysicalDeviceDescriptorIndexingFeaturesMemory(1)
- ref76ca48bc := (*C.VkPhysicalDeviceDescriptorIndexingFeaturesEXT)(mem76ca48bc)
- allocs76ca48bc := new(cgoAllocMap)
- allocs76ca48bc.Add(mem76ca48bc)
+ mem938e681d := allocRenderPassTransformBeginInfoQCOMMemory(1)
+ ref938e681d := (*C.VkRenderPassTransformBeginInfoQCOM)(mem938e681d)
+ allocs938e681d := new(cgoAllocMap)
+ allocs938e681d.Add(mem938e681d)
var csType_allocs *cgoAllocMap
- ref76ca48bc.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs76ca48bc.Borrow(csType_allocs)
+ ref938e681d.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs938e681d.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref76ca48bc.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs76ca48bc.Borrow(cpNext_allocs)
-
- var cshaderInputAttachmentArrayDynamicIndexing_allocs *cgoAllocMap
- ref76ca48bc.shaderInputAttachmentArrayDynamicIndexing, cshaderInputAttachmentArrayDynamicIndexing_allocs = (C.VkBool32)(x.ShaderInputAttachmentArrayDynamicIndexing), cgoAllocsUnknown
- allocs76ca48bc.Borrow(cshaderInputAttachmentArrayDynamicIndexing_allocs)
-
- var cshaderUniformTexelBufferArrayDynamicIndexing_allocs *cgoAllocMap
- ref76ca48bc.shaderUniformTexelBufferArrayDynamicIndexing, cshaderUniformTexelBufferArrayDynamicIndexing_allocs = (C.VkBool32)(x.ShaderUniformTexelBufferArrayDynamicIndexing), cgoAllocsUnknown
- allocs76ca48bc.Borrow(cshaderUniformTexelBufferArrayDynamicIndexing_allocs)
-
- var cshaderStorageTexelBufferArrayDynamicIndexing_allocs *cgoAllocMap
- ref76ca48bc.shaderStorageTexelBufferArrayDynamicIndexing, cshaderStorageTexelBufferArrayDynamicIndexing_allocs = (C.VkBool32)(x.ShaderStorageTexelBufferArrayDynamicIndexing), cgoAllocsUnknown
- allocs76ca48bc.Borrow(cshaderStorageTexelBufferArrayDynamicIndexing_allocs)
-
- var cshaderUniformBufferArrayNonUniformIndexing_allocs *cgoAllocMap
- ref76ca48bc.shaderUniformBufferArrayNonUniformIndexing, cshaderUniformBufferArrayNonUniformIndexing_allocs = (C.VkBool32)(x.ShaderUniformBufferArrayNonUniformIndexing), cgoAllocsUnknown
- allocs76ca48bc.Borrow(cshaderUniformBufferArrayNonUniformIndexing_allocs)
-
- var cshaderSampledImageArrayNonUniformIndexing_allocs *cgoAllocMap
- ref76ca48bc.shaderSampledImageArrayNonUniformIndexing, cshaderSampledImageArrayNonUniformIndexing_allocs = (C.VkBool32)(x.ShaderSampledImageArrayNonUniformIndexing), cgoAllocsUnknown
- allocs76ca48bc.Borrow(cshaderSampledImageArrayNonUniformIndexing_allocs)
-
- var cshaderStorageBufferArrayNonUniformIndexing_allocs *cgoAllocMap
- ref76ca48bc.shaderStorageBufferArrayNonUniformIndexing, cshaderStorageBufferArrayNonUniformIndexing_allocs = (C.VkBool32)(x.ShaderStorageBufferArrayNonUniformIndexing), cgoAllocsUnknown
- allocs76ca48bc.Borrow(cshaderStorageBufferArrayNonUniformIndexing_allocs)
-
- var cshaderStorageImageArrayNonUniformIndexing_allocs *cgoAllocMap
- ref76ca48bc.shaderStorageImageArrayNonUniformIndexing, cshaderStorageImageArrayNonUniformIndexing_allocs = (C.VkBool32)(x.ShaderStorageImageArrayNonUniformIndexing), cgoAllocsUnknown
- allocs76ca48bc.Borrow(cshaderStorageImageArrayNonUniformIndexing_allocs)
-
- var cshaderInputAttachmentArrayNonUniformIndexing_allocs *cgoAllocMap
- ref76ca48bc.shaderInputAttachmentArrayNonUniformIndexing, cshaderInputAttachmentArrayNonUniformIndexing_allocs = (C.VkBool32)(x.ShaderInputAttachmentArrayNonUniformIndexing), cgoAllocsUnknown
- allocs76ca48bc.Borrow(cshaderInputAttachmentArrayNonUniformIndexing_allocs)
-
- var cshaderUniformTexelBufferArrayNonUniformIndexing_allocs *cgoAllocMap
- ref76ca48bc.shaderUniformTexelBufferArrayNonUniformIndexing, cshaderUniformTexelBufferArrayNonUniformIndexing_allocs = (C.VkBool32)(x.ShaderUniformTexelBufferArrayNonUniformIndexing), cgoAllocsUnknown
- allocs76ca48bc.Borrow(cshaderUniformTexelBufferArrayNonUniformIndexing_allocs)
-
- var cshaderStorageTexelBufferArrayNonUniformIndexing_allocs *cgoAllocMap
- ref76ca48bc.shaderStorageTexelBufferArrayNonUniformIndexing, cshaderStorageTexelBufferArrayNonUniformIndexing_allocs = (C.VkBool32)(x.ShaderStorageTexelBufferArrayNonUniformIndexing), cgoAllocsUnknown
- allocs76ca48bc.Borrow(cshaderStorageTexelBufferArrayNonUniformIndexing_allocs)
-
- var cdescriptorBindingUniformBufferUpdateAfterBind_allocs *cgoAllocMap
- ref76ca48bc.descriptorBindingUniformBufferUpdateAfterBind, cdescriptorBindingUniformBufferUpdateAfterBind_allocs = (C.VkBool32)(x.DescriptorBindingUniformBufferUpdateAfterBind), cgoAllocsUnknown
- allocs76ca48bc.Borrow(cdescriptorBindingUniformBufferUpdateAfterBind_allocs)
-
- var cdescriptorBindingSampledImageUpdateAfterBind_allocs *cgoAllocMap
- ref76ca48bc.descriptorBindingSampledImageUpdateAfterBind, cdescriptorBindingSampledImageUpdateAfterBind_allocs = (C.VkBool32)(x.DescriptorBindingSampledImageUpdateAfterBind), cgoAllocsUnknown
- allocs76ca48bc.Borrow(cdescriptorBindingSampledImageUpdateAfterBind_allocs)
-
- var cdescriptorBindingStorageImageUpdateAfterBind_allocs *cgoAllocMap
- ref76ca48bc.descriptorBindingStorageImageUpdateAfterBind, cdescriptorBindingStorageImageUpdateAfterBind_allocs = (C.VkBool32)(x.DescriptorBindingStorageImageUpdateAfterBind), cgoAllocsUnknown
- allocs76ca48bc.Borrow(cdescriptorBindingStorageImageUpdateAfterBind_allocs)
-
- var cdescriptorBindingStorageBufferUpdateAfterBind_allocs *cgoAllocMap
- ref76ca48bc.descriptorBindingStorageBufferUpdateAfterBind, cdescriptorBindingStorageBufferUpdateAfterBind_allocs = (C.VkBool32)(x.DescriptorBindingStorageBufferUpdateAfterBind), cgoAllocsUnknown
- allocs76ca48bc.Borrow(cdescriptorBindingStorageBufferUpdateAfterBind_allocs)
-
- var cdescriptorBindingUniformTexelBufferUpdateAfterBind_allocs *cgoAllocMap
- ref76ca48bc.descriptorBindingUniformTexelBufferUpdateAfterBind, cdescriptorBindingUniformTexelBufferUpdateAfterBind_allocs = (C.VkBool32)(x.DescriptorBindingUniformTexelBufferUpdateAfterBind), cgoAllocsUnknown
- allocs76ca48bc.Borrow(cdescriptorBindingUniformTexelBufferUpdateAfterBind_allocs)
-
- var cdescriptorBindingStorageTexelBufferUpdateAfterBind_allocs *cgoAllocMap
- ref76ca48bc.descriptorBindingStorageTexelBufferUpdateAfterBind, cdescriptorBindingStorageTexelBufferUpdateAfterBind_allocs = (C.VkBool32)(x.DescriptorBindingStorageTexelBufferUpdateAfterBind), cgoAllocsUnknown
- allocs76ca48bc.Borrow(cdescriptorBindingStorageTexelBufferUpdateAfterBind_allocs)
-
- var cdescriptorBindingUpdateUnusedWhilePending_allocs *cgoAllocMap
- ref76ca48bc.descriptorBindingUpdateUnusedWhilePending, cdescriptorBindingUpdateUnusedWhilePending_allocs = (C.VkBool32)(x.DescriptorBindingUpdateUnusedWhilePending), cgoAllocsUnknown
- allocs76ca48bc.Borrow(cdescriptorBindingUpdateUnusedWhilePending_allocs)
-
- var cdescriptorBindingPartiallyBound_allocs *cgoAllocMap
- ref76ca48bc.descriptorBindingPartiallyBound, cdescriptorBindingPartiallyBound_allocs = (C.VkBool32)(x.DescriptorBindingPartiallyBound), cgoAllocsUnknown
- allocs76ca48bc.Borrow(cdescriptorBindingPartiallyBound_allocs)
-
- var cdescriptorBindingVariableDescriptorCount_allocs *cgoAllocMap
- ref76ca48bc.descriptorBindingVariableDescriptorCount, cdescriptorBindingVariableDescriptorCount_allocs = (C.VkBool32)(x.DescriptorBindingVariableDescriptorCount), cgoAllocsUnknown
- allocs76ca48bc.Borrow(cdescriptorBindingVariableDescriptorCount_allocs)
+ ref938e681d.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs938e681d.Borrow(cpNext_allocs)
- var cruntimeDescriptorArray_allocs *cgoAllocMap
- ref76ca48bc.runtimeDescriptorArray, cruntimeDescriptorArray_allocs = (C.VkBool32)(x.RuntimeDescriptorArray), cgoAllocsUnknown
- allocs76ca48bc.Borrow(cruntimeDescriptorArray_allocs)
+ var ctransform_allocs *cgoAllocMap
+ ref938e681d.transform, ctransform_allocs = (C.VkSurfaceTransformFlagBitsKHR)(x.Transform), cgoAllocsUnknown
+ allocs938e681d.Borrow(ctransform_allocs)
- x.ref76ca48bc = ref76ca48bc
- x.allocs76ca48bc = allocs76ca48bc
- return ref76ca48bc, allocs76ca48bc
+ x.ref938e681d = ref938e681d
+ x.allocs938e681d = allocs938e681d
+ return ref938e681d, allocs938e681d
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceDescriptorIndexingFeatures) PassValue() (C.VkPhysicalDeviceDescriptorIndexingFeaturesEXT, *cgoAllocMap) {
- if x.ref76ca48bc != nil {
- return *x.ref76ca48bc, nil
+func (x RenderPassTransformBeginInfoQCOM) PassValue() (C.VkRenderPassTransformBeginInfoQCOM, *cgoAllocMap) {
+ if x.ref938e681d != nil {
+ return *x.ref938e681d, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -34619,197 +61319,94 @@ func (x PhysicalDeviceDescriptorIndexingFeatures) PassValue() (C.VkPhysicalDevic
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceDescriptorIndexingFeatures) Deref() {
- if x.ref76ca48bc == nil {
- return
- }
- x.SType = (StructureType)(x.ref76ca48bc.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref76ca48bc.pNext))
- x.ShaderInputAttachmentArrayDynamicIndexing = (Bool32)(x.ref76ca48bc.shaderInputAttachmentArrayDynamicIndexing)
- x.ShaderUniformTexelBufferArrayDynamicIndexing = (Bool32)(x.ref76ca48bc.shaderUniformTexelBufferArrayDynamicIndexing)
- x.ShaderStorageTexelBufferArrayDynamicIndexing = (Bool32)(x.ref76ca48bc.shaderStorageTexelBufferArrayDynamicIndexing)
- x.ShaderUniformBufferArrayNonUniformIndexing = (Bool32)(x.ref76ca48bc.shaderUniformBufferArrayNonUniformIndexing)
- x.ShaderSampledImageArrayNonUniformIndexing = (Bool32)(x.ref76ca48bc.shaderSampledImageArrayNonUniformIndexing)
- x.ShaderStorageBufferArrayNonUniformIndexing = (Bool32)(x.ref76ca48bc.shaderStorageBufferArrayNonUniformIndexing)
- x.ShaderStorageImageArrayNonUniformIndexing = (Bool32)(x.ref76ca48bc.shaderStorageImageArrayNonUniformIndexing)
- x.ShaderInputAttachmentArrayNonUniformIndexing = (Bool32)(x.ref76ca48bc.shaderInputAttachmentArrayNonUniformIndexing)
- x.ShaderUniformTexelBufferArrayNonUniformIndexing = (Bool32)(x.ref76ca48bc.shaderUniformTexelBufferArrayNonUniformIndexing)
- x.ShaderStorageTexelBufferArrayNonUniformIndexing = (Bool32)(x.ref76ca48bc.shaderStorageTexelBufferArrayNonUniformIndexing)
- x.DescriptorBindingUniformBufferUpdateAfterBind = (Bool32)(x.ref76ca48bc.descriptorBindingUniformBufferUpdateAfterBind)
- x.DescriptorBindingSampledImageUpdateAfterBind = (Bool32)(x.ref76ca48bc.descriptorBindingSampledImageUpdateAfterBind)
- x.DescriptorBindingStorageImageUpdateAfterBind = (Bool32)(x.ref76ca48bc.descriptorBindingStorageImageUpdateAfterBind)
- x.DescriptorBindingStorageBufferUpdateAfterBind = (Bool32)(x.ref76ca48bc.descriptorBindingStorageBufferUpdateAfterBind)
- x.DescriptorBindingUniformTexelBufferUpdateAfterBind = (Bool32)(x.ref76ca48bc.descriptorBindingUniformTexelBufferUpdateAfterBind)
- x.DescriptorBindingStorageTexelBufferUpdateAfterBind = (Bool32)(x.ref76ca48bc.descriptorBindingStorageTexelBufferUpdateAfterBind)
- x.DescriptorBindingUpdateUnusedWhilePending = (Bool32)(x.ref76ca48bc.descriptorBindingUpdateUnusedWhilePending)
- x.DescriptorBindingPartiallyBound = (Bool32)(x.ref76ca48bc.descriptorBindingPartiallyBound)
- x.DescriptorBindingVariableDescriptorCount = (Bool32)(x.ref76ca48bc.descriptorBindingVariableDescriptorCount)
- x.RuntimeDescriptorArray = (Bool32)(x.ref76ca48bc.runtimeDescriptorArray)
-}
-
-// allocPhysicalDeviceDescriptorIndexingPropertiesMemory allocates memory for type C.VkPhysicalDeviceDescriptorIndexingPropertiesEXT in C.
+func (x *RenderPassTransformBeginInfoQCOM) Deref() {
+ if x.ref938e681d == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref938e681d.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref938e681d.pNext))
+ x.Transform = (SurfaceTransformFlagBits)(x.ref938e681d.transform)
+}
+
+// allocCommandBufferInheritanceRenderPassTransformInfoQCOMMemory allocates memory for type C.VkCommandBufferInheritanceRenderPassTransformInfoQCOM in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceDescriptorIndexingPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceDescriptorIndexingPropertiesValue))
+func allocCommandBufferInheritanceRenderPassTransformInfoQCOMMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCommandBufferInheritanceRenderPassTransformInfoQCOMValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceDescriptorIndexingPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceDescriptorIndexingPropertiesEXT{})
+const sizeOfCommandBufferInheritanceRenderPassTransformInfoQCOMValue = unsafe.Sizeof([1]C.VkCommandBufferInheritanceRenderPassTransformInfoQCOM{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceDescriptorIndexingProperties) Ref() *C.VkPhysicalDeviceDescriptorIndexingPropertiesEXT {
+func (x *CommandBufferInheritanceRenderPassTransformInfoQCOM) Ref() *C.VkCommandBufferInheritanceRenderPassTransformInfoQCOM {
if x == nil {
return nil
}
- return x.ref3c07c210
+ return x.refee6ff04
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceDescriptorIndexingProperties) Free() {
- if x != nil && x.allocs3c07c210 != nil {
- x.allocs3c07c210.(*cgoAllocMap).Free()
- x.ref3c07c210 = nil
+func (x *CommandBufferInheritanceRenderPassTransformInfoQCOM) Free() {
+ if x != nil && x.allocsee6ff04 != nil {
+ x.allocsee6ff04.(*cgoAllocMap).Free()
+ x.refee6ff04 = nil
}
}
-// NewPhysicalDeviceDescriptorIndexingPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewCommandBufferInheritanceRenderPassTransformInfoQCOMRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceDescriptorIndexingPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceDescriptorIndexingProperties {
+func NewCommandBufferInheritanceRenderPassTransformInfoQCOMRef(ref unsafe.Pointer) *CommandBufferInheritanceRenderPassTransformInfoQCOM {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceDescriptorIndexingProperties)
- obj.ref3c07c210 = (*C.VkPhysicalDeviceDescriptorIndexingPropertiesEXT)(unsafe.Pointer(ref))
+ obj := new(CommandBufferInheritanceRenderPassTransformInfoQCOM)
+ obj.refee6ff04 = (*C.VkCommandBufferInheritanceRenderPassTransformInfoQCOM)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceDescriptorIndexingProperties) PassRef() (*C.VkPhysicalDeviceDescriptorIndexingPropertiesEXT, *cgoAllocMap) {
+func (x *CommandBufferInheritanceRenderPassTransformInfoQCOM) PassRef() (*C.VkCommandBufferInheritanceRenderPassTransformInfoQCOM, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref3c07c210 != nil {
- return x.ref3c07c210, nil
+ } else if x.refee6ff04 != nil {
+ return x.refee6ff04, nil
}
- mem3c07c210 := allocPhysicalDeviceDescriptorIndexingPropertiesMemory(1)
- ref3c07c210 := (*C.VkPhysicalDeviceDescriptorIndexingPropertiesEXT)(mem3c07c210)
- allocs3c07c210 := new(cgoAllocMap)
- allocs3c07c210.Add(mem3c07c210)
+ memee6ff04 := allocCommandBufferInheritanceRenderPassTransformInfoQCOMMemory(1)
+ refee6ff04 := (*C.VkCommandBufferInheritanceRenderPassTransformInfoQCOM)(memee6ff04)
+ allocsee6ff04 := new(cgoAllocMap)
+ allocsee6ff04.Add(memee6ff04)
var csType_allocs *cgoAllocMap
- ref3c07c210.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs3c07c210.Borrow(csType_allocs)
+ refee6ff04.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsee6ff04.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref3c07c210.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs3c07c210.Borrow(cpNext_allocs)
-
- var cmaxUpdateAfterBindDescriptorsInAllPools_allocs *cgoAllocMap
- ref3c07c210.maxUpdateAfterBindDescriptorsInAllPools, cmaxUpdateAfterBindDescriptorsInAllPools_allocs = (C.uint32_t)(x.MaxUpdateAfterBindDescriptorsInAllPools), cgoAllocsUnknown
- allocs3c07c210.Borrow(cmaxUpdateAfterBindDescriptorsInAllPools_allocs)
-
- var cshaderUniformBufferArrayNonUniformIndexingNative_allocs *cgoAllocMap
- ref3c07c210.shaderUniformBufferArrayNonUniformIndexingNative, cshaderUniformBufferArrayNonUniformIndexingNative_allocs = (C.VkBool32)(x.ShaderUniformBufferArrayNonUniformIndexingNative), cgoAllocsUnknown
- allocs3c07c210.Borrow(cshaderUniformBufferArrayNonUniformIndexingNative_allocs)
-
- var cshaderSampledImageArrayNonUniformIndexingNative_allocs *cgoAllocMap
- ref3c07c210.shaderSampledImageArrayNonUniformIndexingNative, cshaderSampledImageArrayNonUniformIndexingNative_allocs = (C.VkBool32)(x.ShaderSampledImageArrayNonUniformIndexingNative), cgoAllocsUnknown
- allocs3c07c210.Borrow(cshaderSampledImageArrayNonUniformIndexingNative_allocs)
+ refee6ff04.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsee6ff04.Borrow(cpNext_allocs)
- var cshaderStorageBufferArrayNonUniformIndexingNative_allocs *cgoAllocMap
- ref3c07c210.shaderStorageBufferArrayNonUniformIndexingNative, cshaderStorageBufferArrayNonUniformIndexingNative_allocs = (C.VkBool32)(x.ShaderStorageBufferArrayNonUniformIndexingNative), cgoAllocsUnknown
- allocs3c07c210.Borrow(cshaderStorageBufferArrayNonUniformIndexingNative_allocs)
-
- var cshaderStorageImageArrayNonUniformIndexingNative_allocs *cgoAllocMap
- ref3c07c210.shaderStorageImageArrayNonUniformIndexingNative, cshaderStorageImageArrayNonUniformIndexingNative_allocs = (C.VkBool32)(x.ShaderStorageImageArrayNonUniformIndexingNative), cgoAllocsUnknown
- allocs3c07c210.Borrow(cshaderStorageImageArrayNonUniformIndexingNative_allocs)
-
- var cshaderInputAttachmentArrayNonUniformIndexingNative_allocs *cgoAllocMap
- ref3c07c210.shaderInputAttachmentArrayNonUniformIndexingNative, cshaderInputAttachmentArrayNonUniformIndexingNative_allocs = (C.VkBool32)(x.ShaderInputAttachmentArrayNonUniformIndexingNative), cgoAllocsUnknown
- allocs3c07c210.Borrow(cshaderInputAttachmentArrayNonUniformIndexingNative_allocs)
-
- var crobustBufferAccessUpdateAfterBind_allocs *cgoAllocMap
- ref3c07c210.robustBufferAccessUpdateAfterBind, crobustBufferAccessUpdateAfterBind_allocs = (C.VkBool32)(x.RobustBufferAccessUpdateAfterBind), cgoAllocsUnknown
- allocs3c07c210.Borrow(crobustBufferAccessUpdateAfterBind_allocs)
-
- var cquadDivergentImplicitLod_allocs *cgoAllocMap
- ref3c07c210.quadDivergentImplicitLod, cquadDivergentImplicitLod_allocs = (C.VkBool32)(x.QuadDivergentImplicitLod), cgoAllocsUnknown
- allocs3c07c210.Borrow(cquadDivergentImplicitLod_allocs)
-
- var cmaxPerStageDescriptorUpdateAfterBindSamplers_allocs *cgoAllocMap
- ref3c07c210.maxPerStageDescriptorUpdateAfterBindSamplers, cmaxPerStageDescriptorUpdateAfterBindSamplers_allocs = (C.uint32_t)(x.MaxPerStageDescriptorUpdateAfterBindSamplers), cgoAllocsUnknown
- allocs3c07c210.Borrow(cmaxPerStageDescriptorUpdateAfterBindSamplers_allocs)
-
- var cmaxPerStageDescriptorUpdateAfterBindUniformBuffers_allocs *cgoAllocMap
- ref3c07c210.maxPerStageDescriptorUpdateAfterBindUniformBuffers, cmaxPerStageDescriptorUpdateAfterBindUniformBuffers_allocs = (C.uint32_t)(x.MaxPerStageDescriptorUpdateAfterBindUniformBuffers), cgoAllocsUnknown
- allocs3c07c210.Borrow(cmaxPerStageDescriptorUpdateAfterBindUniformBuffers_allocs)
-
- var cmaxPerStageDescriptorUpdateAfterBindStorageBuffers_allocs *cgoAllocMap
- ref3c07c210.maxPerStageDescriptorUpdateAfterBindStorageBuffers, cmaxPerStageDescriptorUpdateAfterBindStorageBuffers_allocs = (C.uint32_t)(x.MaxPerStageDescriptorUpdateAfterBindStorageBuffers), cgoAllocsUnknown
- allocs3c07c210.Borrow(cmaxPerStageDescriptorUpdateAfterBindStorageBuffers_allocs)
-
- var cmaxPerStageDescriptorUpdateAfterBindSampledImages_allocs *cgoAllocMap
- ref3c07c210.maxPerStageDescriptorUpdateAfterBindSampledImages, cmaxPerStageDescriptorUpdateAfterBindSampledImages_allocs = (C.uint32_t)(x.MaxPerStageDescriptorUpdateAfterBindSampledImages), cgoAllocsUnknown
- allocs3c07c210.Borrow(cmaxPerStageDescriptorUpdateAfterBindSampledImages_allocs)
-
- var cmaxPerStageDescriptorUpdateAfterBindStorageImages_allocs *cgoAllocMap
- ref3c07c210.maxPerStageDescriptorUpdateAfterBindStorageImages, cmaxPerStageDescriptorUpdateAfterBindStorageImages_allocs = (C.uint32_t)(x.MaxPerStageDescriptorUpdateAfterBindStorageImages), cgoAllocsUnknown
- allocs3c07c210.Borrow(cmaxPerStageDescriptorUpdateAfterBindStorageImages_allocs)
-
- var cmaxPerStageDescriptorUpdateAfterBindInputAttachments_allocs *cgoAllocMap
- ref3c07c210.maxPerStageDescriptorUpdateAfterBindInputAttachments, cmaxPerStageDescriptorUpdateAfterBindInputAttachments_allocs = (C.uint32_t)(x.MaxPerStageDescriptorUpdateAfterBindInputAttachments), cgoAllocsUnknown
- allocs3c07c210.Borrow(cmaxPerStageDescriptorUpdateAfterBindInputAttachments_allocs)
-
- var cmaxPerStageUpdateAfterBindResources_allocs *cgoAllocMap
- ref3c07c210.maxPerStageUpdateAfterBindResources, cmaxPerStageUpdateAfterBindResources_allocs = (C.uint32_t)(x.MaxPerStageUpdateAfterBindResources), cgoAllocsUnknown
- allocs3c07c210.Borrow(cmaxPerStageUpdateAfterBindResources_allocs)
-
- var cmaxDescriptorSetUpdateAfterBindSamplers_allocs *cgoAllocMap
- ref3c07c210.maxDescriptorSetUpdateAfterBindSamplers, cmaxDescriptorSetUpdateAfterBindSamplers_allocs = (C.uint32_t)(x.MaxDescriptorSetUpdateAfterBindSamplers), cgoAllocsUnknown
- allocs3c07c210.Borrow(cmaxDescriptorSetUpdateAfterBindSamplers_allocs)
-
- var cmaxDescriptorSetUpdateAfterBindUniformBuffers_allocs *cgoAllocMap
- ref3c07c210.maxDescriptorSetUpdateAfterBindUniformBuffers, cmaxDescriptorSetUpdateAfterBindUniformBuffers_allocs = (C.uint32_t)(x.MaxDescriptorSetUpdateAfterBindUniformBuffers), cgoAllocsUnknown
- allocs3c07c210.Borrow(cmaxDescriptorSetUpdateAfterBindUniformBuffers_allocs)
-
- var cmaxDescriptorSetUpdateAfterBindUniformBuffersDynamic_allocs *cgoAllocMap
- ref3c07c210.maxDescriptorSetUpdateAfterBindUniformBuffersDynamic, cmaxDescriptorSetUpdateAfterBindUniformBuffersDynamic_allocs = (C.uint32_t)(x.MaxDescriptorSetUpdateAfterBindUniformBuffersDynamic), cgoAllocsUnknown
- allocs3c07c210.Borrow(cmaxDescriptorSetUpdateAfterBindUniformBuffersDynamic_allocs)
-
- var cmaxDescriptorSetUpdateAfterBindStorageBuffers_allocs *cgoAllocMap
- ref3c07c210.maxDescriptorSetUpdateAfterBindStorageBuffers, cmaxDescriptorSetUpdateAfterBindStorageBuffers_allocs = (C.uint32_t)(x.MaxDescriptorSetUpdateAfterBindStorageBuffers), cgoAllocsUnknown
- allocs3c07c210.Borrow(cmaxDescriptorSetUpdateAfterBindStorageBuffers_allocs)
-
- var cmaxDescriptorSetUpdateAfterBindStorageBuffersDynamic_allocs *cgoAllocMap
- ref3c07c210.maxDescriptorSetUpdateAfterBindStorageBuffersDynamic, cmaxDescriptorSetUpdateAfterBindStorageBuffersDynamic_allocs = (C.uint32_t)(x.MaxDescriptorSetUpdateAfterBindStorageBuffersDynamic), cgoAllocsUnknown
- allocs3c07c210.Borrow(cmaxDescriptorSetUpdateAfterBindStorageBuffersDynamic_allocs)
-
- var cmaxDescriptorSetUpdateAfterBindSampledImages_allocs *cgoAllocMap
- ref3c07c210.maxDescriptorSetUpdateAfterBindSampledImages, cmaxDescriptorSetUpdateAfterBindSampledImages_allocs = (C.uint32_t)(x.MaxDescriptorSetUpdateAfterBindSampledImages), cgoAllocsUnknown
- allocs3c07c210.Borrow(cmaxDescriptorSetUpdateAfterBindSampledImages_allocs)
-
- var cmaxDescriptorSetUpdateAfterBindStorageImages_allocs *cgoAllocMap
- ref3c07c210.maxDescriptorSetUpdateAfterBindStorageImages, cmaxDescriptorSetUpdateAfterBindStorageImages_allocs = (C.uint32_t)(x.MaxDescriptorSetUpdateAfterBindStorageImages), cgoAllocsUnknown
- allocs3c07c210.Borrow(cmaxDescriptorSetUpdateAfterBindStorageImages_allocs)
+ var ctransform_allocs *cgoAllocMap
+ refee6ff04.transform, ctransform_allocs = (C.VkSurfaceTransformFlagBitsKHR)(x.Transform), cgoAllocsUnknown
+ allocsee6ff04.Borrow(ctransform_allocs)
- var cmaxDescriptorSetUpdateAfterBindInputAttachments_allocs *cgoAllocMap
- ref3c07c210.maxDescriptorSetUpdateAfterBindInputAttachments, cmaxDescriptorSetUpdateAfterBindInputAttachments_allocs = (C.uint32_t)(x.MaxDescriptorSetUpdateAfterBindInputAttachments), cgoAllocsUnknown
- allocs3c07c210.Borrow(cmaxDescriptorSetUpdateAfterBindInputAttachments_allocs)
+ var crenderArea_allocs *cgoAllocMap
+ refee6ff04.renderArea, crenderArea_allocs = x.RenderArea.PassValue()
+ allocsee6ff04.Borrow(crenderArea_allocs)
- x.ref3c07c210 = ref3c07c210
- x.allocs3c07c210 = allocs3c07c210
- return ref3c07c210, allocs3c07c210
+ x.refee6ff04 = refee6ff04
+ x.allocsee6ff04 = allocsee6ff04
+ return refee6ff04, allocsee6ff04
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceDescriptorIndexingProperties) PassValue() (C.VkPhysicalDeviceDescriptorIndexingPropertiesEXT, *cgoAllocMap) {
- if x.ref3c07c210 != nil {
- return *x.ref3c07c210, nil
+func (x CommandBufferInheritanceRenderPassTransformInfoQCOM) PassValue() (C.VkCommandBufferInheritanceRenderPassTransformInfoQCOM, *cgoAllocMap) {
+ if x.refee6ff04 != nil {
+ return *x.refee6ff04, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -34817,116 +61414,91 @@ func (x PhysicalDeviceDescriptorIndexingProperties) PassValue() (C.VkPhysicalDev
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceDescriptorIndexingProperties) Deref() {
- if x.ref3c07c210 == nil {
- return
- }
- x.SType = (StructureType)(x.ref3c07c210.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref3c07c210.pNext))
- x.MaxUpdateAfterBindDescriptorsInAllPools = (uint32)(x.ref3c07c210.maxUpdateAfterBindDescriptorsInAllPools)
- x.ShaderUniformBufferArrayNonUniformIndexingNative = (Bool32)(x.ref3c07c210.shaderUniformBufferArrayNonUniformIndexingNative)
- x.ShaderSampledImageArrayNonUniformIndexingNative = (Bool32)(x.ref3c07c210.shaderSampledImageArrayNonUniformIndexingNative)
- x.ShaderStorageBufferArrayNonUniformIndexingNative = (Bool32)(x.ref3c07c210.shaderStorageBufferArrayNonUniformIndexingNative)
- x.ShaderStorageImageArrayNonUniformIndexingNative = (Bool32)(x.ref3c07c210.shaderStorageImageArrayNonUniformIndexingNative)
- x.ShaderInputAttachmentArrayNonUniformIndexingNative = (Bool32)(x.ref3c07c210.shaderInputAttachmentArrayNonUniformIndexingNative)
- x.RobustBufferAccessUpdateAfterBind = (Bool32)(x.ref3c07c210.robustBufferAccessUpdateAfterBind)
- x.QuadDivergentImplicitLod = (Bool32)(x.ref3c07c210.quadDivergentImplicitLod)
- x.MaxPerStageDescriptorUpdateAfterBindSamplers = (uint32)(x.ref3c07c210.maxPerStageDescriptorUpdateAfterBindSamplers)
- x.MaxPerStageDescriptorUpdateAfterBindUniformBuffers = (uint32)(x.ref3c07c210.maxPerStageDescriptorUpdateAfterBindUniformBuffers)
- x.MaxPerStageDescriptorUpdateAfterBindStorageBuffers = (uint32)(x.ref3c07c210.maxPerStageDescriptorUpdateAfterBindStorageBuffers)
- x.MaxPerStageDescriptorUpdateAfterBindSampledImages = (uint32)(x.ref3c07c210.maxPerStageDescriptorUpdateAfterBindSampledImages)
- x.MaxPerStageDescriptorUpdateAfterBindStorageImages = (uint32)(x.ref3c07c210.maxPerStageDescriptorUpdateAfterBindStorageImages)
- x.MaxPerStageDescriptorUpdateAfterBindInputAttachments = (uint32)(x.ref3c07c210.maxPerStageDescriptorUpdateAfterBindInputAttachments)
- x.MaxPerStageUpdateAfterBindResources = (uint32)(x.ref3c07c210.maxPerStageUpdateAfterBindResources)
- x.MaxDescriptorSetUpdateAfterBindSamplers = (uint32)(x.ref3c07c210.maxDescriptorSetUpdateAfterBindSamplers)
- x.MaxDescriptorSetUpdateAfterBindUniformBuffers = (uint32)(x.ref3c07c210.maxDescriptorSetUpdateAfterBindUniformBuffers)
- x.MaxDescriptorSetUpdateAfterBindUniformBuffersDynamic = (uint32)(x.ref3c07c210.maxDescriptorSetUpdateAfterBindUniformBuffersDynamic)
- x.MaxDescriptorSetUpdateAfterBindStorageBuffers = (uint32)(x.ref3c07c210.maxDescriptorSetUpdateAfterBindStorageBuffers)
- x.MaxDescriptorSetUpdateAfterBindStorageBuffersDynamic = (uint32)(x.ref3c07c210.maxDescriptorSetUpdateAfterBindStorageBuffersDynamic)
- x.MaxDescriptorSetUpdateAfterBindSampledImages = (uint32)(x.ref3c07c210.maxDescriptorSetUpdateAfterBindSampledImages)
- x.MaxDescriptorSetUpdateAfterBindStorageImages = (uint32)(x.ref3c07c210.maxDescriptorSetUpdateAfterBindStorageImages)
- x.MaxDescriptorSetUpdateAfterBindInputAttachments = (uint32)(x.ref3c07c210.maxDescriptorSetUpdateAfterBindInputAttachments)
-}
-
-// allocDescriptorSetVariableDescriptorCountAllocateInfoMemory allocates memory for type C.VkDescriptorSetVariableDescriptorCountAllocateInfoEXT in C.
+func (x *CommandBufferInheritanceRenderPassTransformInfoQCOM) Deref() {
+ if x.refee6ff04 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refee6ff04.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refee6ff04.pNext))
+ x.Transform = (SurfaceTransformFlagBits)(x.refee6ff04.transform)
+ x.RenderArea = *NewRect2DRef(unsafe.Pointer(&x.refee6ff04.renderArea))
+}
+
+// allocPhysicalDeviceDeviceMemoryReportFeaturesMemory allocates memory for type C.VkPhysicalDeviceDeviceMemoryReportFeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDescriptorSetVariableDescriptorCountAllocateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorSetVariableDescriptorCountAllocateInfoValue))
+func allocPhysicalDeviceDeviceMemoryReportFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceDeviceMemoryReportFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDescriptorSetVariableDescriptorCountAllocateInfoValue = unsafe.Sizeof([1]C.VkDescriptorSetVariableDescriptorCountAllocateInfoEXT{})
+const sizeOfPhysicalDeviceDeviceMemoryReportFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceDeviceMemoryReportFeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DescriptorSetVariableDescriptorCountAllocateInfo) Ref() *C.VkDescriptorSetVariableDescriptorCountAllocateInfoEXT {
+func (x *PhysicalDeviceDeviceMemoryReportFeatures) Ref() *C.VkPhysicalDeviceDeviceMemoryReportFeaturesEXT {
if x == nil {
return nil
}
- return x.ref65152aef
+ return x.ref477470f6
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DescriptorSetVariableDescriptorCountAllocateInfo) Free() {
- if x != nil && x.allocs65152aef != nil {
- x.allocs65152aef.(*cgoAllocMap).Free()
- x.ref65152aef = nil
+func (x *PhysicalDeviceDeviceMemoryReportFeatures) Free() {
+ if x != nil && x.allocs477470f6 != nil {
+ x.allocs477470f6.(*cgoAllocMap).Free()
+ x.ref477470f6 = nil
}
}
-// NewDescriptorSetVariableDescriptorCountAllocateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceDeviceMemoryReportFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDescriptorSetVariableDescriptorCountAllocateInfoRef(ref unsafe.Pointer) *DescriptorSetVariableDescriptorCountAllocateInfo {
+func NewPhysicalDeviceDeviceMemoryReportFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceDeviceMemoryReportFeatures {
if ref == nil {
return nil
}
- obj := new(DescriptorSetVariableDescriptorCountAllocateInfo)
- obj.ref65152aef = (*C.VkDescriptorSetVariableDescriptorCountAllocateInfoEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceDeviceMemoryReportFeatures)
+ obj.ref477470f6 = (*C.VkPhysicalDeviceDeviceMemoryReportFeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DescriptorSetVariableDescriptorCountAllocateInfo) PassRef() (*C.VkDescriptorSetVariableDescriptorCountAllocateInfoEXT, *cgoAllocMap) {
+func (x *PhysicalDeviceDeviceMemoryReportFeatures) PassRef() (*C.VkPhysicalDeviceDeviceMemoryReportFeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref65152aef != nil {
- return x.ref65152aef, nil
+ } else if x.ref477470f6 != nil {
+ return x.ref477470f6, nil
}
- mem65152aef := allocDescriptorSetVariableDescriptorCountAllocateInfoMemory(1)
- ref65152aef := (*C.VkDescriptorSetVariableDescriptorCountAllocateInfoEXT)(mem65152aef)
- allocs65152aef := new(cgoAllocMap)
- allocs65152aef.Add(mem65152aef)
+ mem477470f6 := allocPhysicalDeviceDeviceMemoryReportFeaturesMemory(1)
+ ref477470f6 := (*C.VkPhysicalDeviceDeviceMemoryReportFeaturesEXT)(mem477470f6)
+ allocs477470f6 := new(cgoAllocMap)
+ allocs477470f6.Add(mem477470f6)
var csType_allocs *cgoAllocMap
- ref65152aef.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs65152aef.Borrow(csType_allocs)
+ ref477470f6.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs477470f6.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref65152aef.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs65152aef.Borrow(cpNext_allocs)
-
- var cdescriptorSetCount_allocs *cgoAllocMap
- ref65152aef.descriptorSetCount, cdescriptorSetCount_allocs = (C.uint32_t)(x.DescriptorSetCount), cgoAllocsUnknown
- allocs65152aef.Borrow(cdescriptorSetCount_allocs)
+ ref477470f6.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs477470f6.Borrow(cpNext_allocs)
- var cpDescriptorCounts_allocs *cgoAllocMap
- ref65152aef.pDescriptorCounts, cpDescriptorCounts_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PDescriptorCounts)).Data)), cgoAllocsUnknown
- allocs65152aef.Borrow(cpDescriptorCounts_allocs)
+ var cdeviceMemoryReport_allocs *cgoAllocMap
+ ref477470f6.deviceMemoryReport, cdeviceMemoryReport_allocs = (C.VkBool32)(x.DeviceMemoryReport), cgoAllocsUnknown
+ allocs477470f6.Borrow(cdeviceMemoryReport_allocs)
- x.ref65152aef = ref65152aef
- x.allocs65152aef = allocs65152aef
- return ref65152aef, allocs65152aef
+ x.ref477470f6 = ref477470f6
+ x.allocs477470f6 = allocs477470f6
+ return ref477470f6, allocs477470f6
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DescriptorSetVariableDescriptorCountAllocateInfo) PassValue() (C.VkDescriptorSetVariableDescriptorCountAllocateInfoEXT, *cgoAllocMap) {
- if x.ref65152aef != nil {
- return *x.ref65152aef, nil
+func (x PhysicalDeviceDeviceMemoryReportFeatures) PassValue() (C.VkPhysicalDeviceDeviceMemoryReportFeaturesEXT, *cgoAllocMap) {
+ if x.ref477470f6 != nil {
+ return *x.ref477470f6, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -34934,95 +61506,114 @@ func (x DescriptorSetVariableDescriptorCountAllocateInfo) PassValue() (C.VkDescr
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DescriptorSetVariableDescriptorCountAllocateInfo) Deref() {
- if x.ref65152aef == nil {
+func (x *PhysicalDeviceDeviceMemoryReportFeatures) Deref() {
+ if x.ref477470f6 == nil {
return
}
- x.SType = (StructureType)(x.ref65152aef.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref65152aef.pNext))
- x.DescriptorSetCount = (uint32)(x.ref65152aef.descriptorSetCount)
- hxfeb55cf := (*sliceHeader)(unsafe.Pointer(&x.PDescriptorCounts))
- hxfeb55cf.Data = unsafe.Pointer(x.ref65152aef.pDescriptorCounts)
- hxfeb55cf.Cap = 0x7fffffff
- // hxfeb55cf.Len = ?
-
+ x.SType = (StructureType)(x.ref477470f6.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref477470f6.pNext))
+ x.DeviceMemoryReport = (Bool32)(x.ref477470f6.deviceMemoryReport)
}
-// allocDescriptorSetVariableDescriptorCountLayoutSupportMemory allocates memory for type C.VkDescriptorSetVariableDescriptorCountLayoutSupportEXT in C.
+// allocDeviceMemoryReportCallbackDataMemory allocates memory for type C.VkDeviceMemoryReportCallbackDataEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDescriptorSetVariableDescriptorCountLayoutSupportMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorSetVariableDescriptorCountLayoutSupportValue))
+func allocDeviceMemoryReportCallbackDataMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceMemoryReportCallbackDataValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDescriptorSetVariableDescriptorCountLayoutSupportValue = unsafe.Sizeof([1]C.VkDescriptorSetVariableDescriptorCountLayoutSupportEXT{})
+const sizeOfDeviceMemoryReportCallbackDataValue = unsafe.Sizeof([1]C.VkDeviceMemoryReportCallbackDataEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DescriptorSetVariableDescriptorCountLayoutSupport) Ref() *C.VkDescriptorSetVariableDescriptorCountLayoutSupportEXT {
+func (x *DeviceMemoryReportCallbackData) Ref() *C.VkDeviceMemoryReportCallbackDataEXT {
if x == nil {
return nil
}
- return x.ref4684c56f
+ return x.ref3150dbde
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DescriptorSetVariableDescriptorCountLayoutSupport) Free() {
- if x != nil && x.allocs4684c56f != nil {
- x.allocs4684c56f.(*cgoAllocMap).Free()
- x.ref4684c56f = nil
+func (x *DeviceMemoryReportCallbackData) Free() {
+ if x != nil && x.allocs3150dbde != nil {
+ x.allocs3150dbde.(*cgoAllocMap).Free()
+ x.ref3150dbde = nil
}
}
-// NewDescriptorSetVariableDescriptorCountLayoutSupportRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDeviceMemoryReportCallbackDataRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDescriptorSetVariableDescriptorCountLayoutSupportRef(ref unsafe.Pointer) *DescriptorSetVariableDescriptorCountLayoutSupport {
+func NewDeviceMemoryReportCallbackDataRef(ref unsafe.Pointer) *DeviceMemoryReportCallbackData {
if ref == nil {
return nil
}
- obj := new(DescriptorSetVariableDescriptorCountLayoutSupport)
- obj.ref4684c56f = (*C.VkDescriptorSetVariableDescriptorCountLayoutSupportEXT)(unsafe.Pointer(ref))
+ obj := new(DeviceMemoryReportCallbackData)
+ obj.ref3150dbde = (*C.VkDeviceMemoryReportCallbackDataEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DescriptorSetVariableDescriptorCountLayoutSupport) PassRef() (*C.VkDescriptorSetVariableDescriptorCountLayoutSupportEXT, *cgoAllocMap) {
+func (x *DeviceMemoryReportCallbackData) PassRef() (*C.VkDeviceMemoryReportCallbackDataEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref4684c56f != nil {
- return x.ref4684c56f, nil
+ } else if x.ref3150dbde != nil {
+ return x.ref3150dbde, nil
}
- mem4684c56f := allocDescriptorSetVariableDescriptorCountLayoutSupportMemory(1)
- ref4684c56f := (*C.VkDescriptorSetVariableDescriptorCountLayoutSupportEXT)(mem4684c56f)
- allocs4684c56f := new(cgoAllocMap)
- allocs4684c56f.Add(mem4684c56f)
+ mem3150dbde := allocDeviceMemoryReportCallbackDataMemory(1)
+ ref3150dbde := (*C.VkDeviceMemoryReportCallbackDataEXT)(mem3150dbde)
+ allocs3150dbde := new(cgoAllocMap)
+ allocs3150dbde.Add(mem3150dbde)
var csType_allocs *cgoAllocMap
- ref4684c56f.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs4684c56f.Borrow(csType_allocs)
+ ref3150dbde.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs3150dbde.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref4684c56f.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs4684c56f.Borrow(cpNext_allocs)
+ ref3150dbde.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs3150dbde.Borrow(cpNext_allocs)
- var cmaxVariableDescriptorCount_allocs *cgoAllocMap
- ref4684c56f.maxVariableDescriptorCount, cmaxVariableDescriptorCount_allocs = (C.uint32_t)(x.MaxVariableDescriptorCount), cgoAllocsUnknown
- allocs4684c56f.Borrow(cmaxVariableDescriptorCount_allocs)
+ var cflags_allocs *cgoAllocMap
+ ref3150dbde.flags, cflags_allocs = (C.VkDeviceMemoryReportFlagsEXT)(x.Flags), cgoAllocsUnknown
+ allocs3150dbde.Borrow(cflags_allocs)
+
+ var c_type_allocs *cgoAllocMap
+ ref3150dbde._type, c_type_allocs = (C.VkDeviceMemoryReportEventTypeEXT)(x.Type), cgoAllocsUnknown
+ allocs3150dbde.Borrow(c_type_allocs)
+
+ var cmemoryObjectId_allocs *cgoAllocMap
+ ref3150dbde.memoryObjectId, cmemoryObjectId_allocs = (C.uint64_t)(x.MemoryObjectId), cgoAllocsUnknown
+ allocs3150dbde.Borrow(cmemoryObjectId_allocs)
+
+ var csize_allocs *cgoAllocMap
+ ref3150dbde.size, csize_allocs = (C.VkDeviceSize)(x.Size), cgoAllocsUnknown
+ allocs3150dbde.Borrow(csize_allocs)
+
+ var cobjectType_allocs *cgoAllocMap
+ ref3150dbde.objectType, cobjectType_allocs = (C.VkObjectType)(x.ObjectType), cgoAllocsUnknown
+ allocs3150dbde.Borrow(cobjectType_allocs)
+
+ var cobjectHandle_allocs *cgoAllocMap
+ ref3150dbde.objectHandle, cobjectHandle_allocs = (C.uint64_t)(x.ObjectHandle), cgoAllocsUnknown
+ allocs3150dbde.Borrow(cobjectHandle_allocs)
+
+ var cheapIndex_allocs *cgoAllocMap
+ ref3150dbde.heapIndex, cheapIndex_allocs = (C.uint32_t)(x.HeapIndex), cgoAllocsUnknown
+ allocs3150dbde.Borrow(cheapIndex_allocs)
- x.ref4684c56f = ref4684c56f
- x.allocs4684c56f = allocs4684c56f
- return ref4684c56f, allocs4684c56f
+ x.ref3150dbde = ref3150dbde
+ x.allocs3150dbde = allocs3150dbde
+ return ref3150dbde, allocs3150dbde
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DescriptorSetVariableDescriptorCountLayoutSupport) PassValue() (C.VkDescriptorSetVariableDescriptorCountLayoutSupportEXT, *cgoAllocMap) {
- if x.ref4684c56f != nil {
- return *x.ref4684c56f, nil
+func (x DeviceMemoryReportCallbackData) PassValue() (C.VkDeviceMemoryReportCallbackDataEXT, *cgoAllocMap) {
+ if x.ref3150dbde != nil {
+ return *x.ref3150dbde, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -35030,86 +61621,151 @@ func (x DescriptorSetVariableDescriptorCountLayoutSupport) PassValue() (C.VkDesc
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DescriptorSetVariableDescriptorCountLayoutSupport) Deref() {
- if x.ref4684c56f == nil {
+func (x *DeviceMemoryReportCallbackData) Deref() {
+ if x.ref3150dbde == nil {
return
}
- x.SType = (StructureType)(x.ref4684c56f.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref4684c56f.pNext))
- x.MaxVariableDescriptorCount = (uint32)(x.ref4684c56f.maxVariableDescriptorCount)
+ x.SType = (StructureType)(x.ref3150dbde.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref3150dbde.pNext))
+ x.Flags = (DeviceMemoryReportFlags)(x.ref3150dbde.flags)
+ x.Type = (DeviceMemoryReportEventType)(x.ref3150dbde._type)
+ x.MemoryObjectId = (uint64)(x.ref3150dbde.memoryObjectId)
+ x.Size = (DeviceSize)(x.ref3150dbde.size)
+ x.ObjectType = (ObjectType)(x.ref3150dbde.objectType)
+ x.ObjectHandle = (uint64)(x.ref3150dbde.objectHandle)
+ x.HeapIndex = (uint32)(x.ref3150dbde.heapIndex)
}
-// allocShadingRatePaletteNVMemory allocates memory for type C.VkShadingRatePaletteNV in C.
+// packSDeviceMemoryReportCallbackData reads sliced Go data structure out from plain C format.
+func packSDeviceMemoryReportCallbackData(v []DeviceMemoryReportCallbackData, ptr0 *C.VkDeviceMemoryReportCallbackDataEXT) {
+ const m = 0x7fffffff
+ for i0 := range v {
+ ptr1 := (*(*[m / sizeOfDeviceMemoryReportCallbackDataValue]C.VkDeviceMemoryReportCallbackDataEXT)(unsafe.Pointer(ptr0)))[i0]
+ v[i0] = *NewDeviceMemoryReportCallbackDataRef(unsafe.Pointer(&ptr1))
+ }
+}
+
+func (x DeviceMemoryReportCallbackFunc) PassRef() (ref *C.PFN_vkDeviceMemoryReportCallbackEXT, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ if deviceMemoryReportCallbackFuncE34D104CFunc == nil {
+ deviceMemoryReportCallbackFuncE34D104CFunc = x
+ }
+ return (*C.PFN_vkDeviceMemoryReportCallbackEXT)(C.PFN_vkDeviceMemoryReportCallbackEXT_e34d104c), nil
+}
+
+func (x DeviceMemoryReportCallbackFunc) PassValue() (ref C.PFN_vkDeviceMemoryReportCallbackEXT, allocs *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ }
+ if deviceMemoryReportCallbackFuncE34D104CFunc == nil {
+ deviceMemoryReportCallbackFuncE34D104CFunc = x
+ }
+ return (C.PFN_vkDeviceMemoryReportCallbackEXT)(C.PFN_vkDeviceMemoryReportCallbackEXT_e34d104c), nil
+}
+
+func NewDeviceMemoryReportCallbackFuncRef(ref unsafe.Pointer) *DeviceMemoryReportCallbackFunc {
+ return (*DeviceMemoryReportCallbackFunc)(ref)
+}
+
+//export deviceMemoryReportCallbackFuncE34D104C
+func deviceMemoryReportCallbackFuncE34D104C(cpCallbackData *C.VkDeviceMemoryReportCallbackDataEXT, cpUserData unsafe.Pointer) {
+ if deviceMemoryReportCallbackFuncE34D104CFunc != nil {
+ var pCallbackDatae34d104c []DeviceMemoryReportCallbackData
+ packSDeviceMemoryReportCallbackData(pCallbackDatae34d104c, cpCallbackData)
+ pUserDatae34d104c := (unsafe.Pointer)(unsafe.Pointer(cpUserData))
+ deviceMemoryReportCallbackFuncE34D104CFunc(pCallbackDatae34d104c, pUserDatae34d104c)
+ return
+ }
+ panic("callback func has not been set (race?)")
+}
+
+var deviceMemoryReportCallbackFuncE34D104CFunc DeviceMemoryReportCallbackFunc
+
+// allocDeviceDeviceMemoryReportCreateInfoMemory allocates memory for type C.VkDeviceDeviceMemoryReportCreateInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocShadingRatePaletteNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfShadingRatePaletteNVValue))
+func allocDeviceDeviceMemoryReportCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceDeviceMemoryReportCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfShadingRatePaletteNVValue = unsafe.Sizeof([1]C.VkShadingRatePaletteNV{})
+const sizeOfDeviceDeviceMemoryReportCreateInfoValue = unsafe.Sizeof([1]C.VkDeviceDeviceMemoryReportCreateInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ShadingRatePaletteNV) Ref() *C.VkShadingRatePaletteNV {
+func (x *DeviceDeviceMemoryReportCreateInfo) Ref() *C.VkDeviceDeviceMemoryReportCreateInfoEXT {
if x == nil {
return nil
}
- return x.refa5c4ae3a
+ return x.refe99f2c76
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ShadingRatePaletteNV) Free() {
- if x != nil && x.allocsa5c4ae3a != nil {
- x.allocsa5c4ae3a.(*cgoAllocMap).Free()
- x.refa5c4ae3a = nil
+func (x *DeviceDeviceMemoryReportCreateInfo) Free() {
+ if x != nil && x.allocse99f2c76 != nil {
+ x.allocse99f2c76.(*cgoAllocMap).Free()
+ x.refe99f2c76 = nil
}
}
-// NewShadingRatePaletteNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDeviceDeviceMemoryReportCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewShadingRatePaletteNVRef(ref unsafe.Pointer) *ShadingRatePaletteNV {
+func NewDeviceDeviceMemoryReportCreateInfoRef(ref unsafe.Pointer) *DeviceDeviceMemoryReportCreateInfo {
if ref == nil {
return nil
}
- obj := new(ShadingRatePaletteNV)
- obj.refa5c4ae3a = (*C.VkShadingRatePaletteNV)(unsafe.Pointer(ref))
+ obj := new(DeviceDeviceMemoryReportCreateInfo)
+ obj.refe99f2c76 = (*C.VkDeviceDeviceMemoryReportCreateInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ShadingRatePaletteNV) PassRef() (*C.VkShadingRatePaletteNV, *cgoAllocMap) {
+func (x *DeviceDeviceMemoryReportCreateInfo) PassRef() (*C.VkDeviceDeviceMemoryReportCreateInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refa5c4ae3a != nil {
- return x.refa5c4ae3a, nil
+ } else if x.refe99f2c76 != nil {
+ return x.refe99f2c76, nil
}
- mema5c4ae3a := allocShadingRatePaletteNVMemory(1)
- refa5c4ae3a := (*C.VkShadingRatePaletteNV)(mema5c4ae3a)
- allocsa5c4ae3a := new(cgoAllocMap)
- allocsa5c4ae3a.Add(mema5c4ae3a)
+ meme99f2c76 := allocDeviceDeviceMemoryReportCreateInfoMemory(1)
+ refe99f2c76 := (*C.VkDeviceDeviceMemoryReportCreateInfoEXT)(meme99f2c76)
+ allocse99f2c76 := new(cgoAllocMap)
+ allocse99f2c76.Add(meme99f2c76)
- var cshadingRatePaletteEntryCount_allocs *cgoAllocMap
- refa5c4ae3a.shadingRatePaletteEntryCount, cshadingRatePaletteEntryCount_allocs = (C.uint32_t)(x.ShadingRatePaletteEntryCount), cgoAllocsUnknown
- allocsa5c4ae3a.Borrow(cshadingRatePaletteEntryCount_allocs)
+ var csType_allocs *cgoAllocMap
+ refe99f2c76.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocse99f2c76.Borrow(csType_allocs)
- var cpShadingRatePaletteEntries_allocs *cgoAllocMap
- refa5c4ae3a.pShadingRatePaletteEntries, cpShadingRatePaletteEntries_allocs = (*C.VkShadingRatePaletteEntryNV)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PShadingRatePaletteEntries)).Data)), cgoAllocsUnknown
- allocsa5c4ae3a.Borrow(cpShadingRatePaletteEntries_allocs)
+ var cpNext_allocs *cgoAllocMap
+ refe99f2c76.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocse99f2c76.Borrow(cpNext_allocs)
- x.refa5c4ae3a = refa5c4ae3a
- x.allocsa5c4ae3a = allocsa5c4ae3a
- return refa5c4ae3a, allocsa5c4ae3a
+ var cflags_allocs *cgoAllocMap
+ refe99f2c76.flags, cflags_allocs = (C.VkDeviceMemoryReportFlagsEXT)(x.Flags), cgoAllocsUnknown
+ allocse99f2c76.Borrow(cflags_allocs)
+
+ var cpfnUserCallback_allocs *cgoAllocMap
+ refe99f2c76.pfnUserCallback, cpfnUserCallback_allocs = x.PfnUserCallback.PassValue()
+ allocse99f2c76.Borrow(cpfnUserCallback_allocs)
+
+ var cpUserData_allocs *cgoAllocMap
+ refe99f2c76.pUserData, cpUserData_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PUserData)), cgoAllocsUnknown
+ allocse99f2c76.Borrow(cpUserData_allocs)
+
+ x.refe99f2c76 = refe99f2c76
+ x.allocse99f2c76 = allocse99f2c76
+ return refe99f2c76, allocse99f2c76
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ShadingRatePaletteNV) PassValue() (C.VkShadingRatePaletteNV, *cgoAllocMap) {
- if x.refa5c4ae3a != nil {
- return *x.refa5c4ae3a, nil
+func (x DeviceDeviceMemoryReportCreateInfo) PassValue() (C.VkDeviceDeviceMemoryReportCreateInfoEXT, *cgoAllocMap) {
+ if x.refe99f2c76 != nil {
+ return *x.refe99f2c76, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -35117,139 +61773,100 @@ func (x ShadingRatePaletteNV) PassValue() (C.VkShadingRatePaletteNV, *cgoAllocMa
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ShadingRatePaletteNV) Deref() {
- if x.refa5c4ae3a == nil {
+func (x *DeviceDeviceMemoryReportCreateInfo) Deref() {
+ if x.refe99f2c76 == nil {
return
}
- x.ShadingRatePaletteEntryCount = (uint32)(x.refa5c4ae3a.shadingRatePaletteEntryCount)
- hxf458096 := (*sliceHeader)(unsafe.Pointer(&x.PShadingRatePaletteEntries))
- hxf458096.Data = unsafe.Pointer(x.refa5c4ae3a.pShadingRatePaletteEntries)
- hxf458096.Cap = 0x7fffffff
- // hxf458096.Len = ?
-
+ x.SType = (StructureType)(x.refe99f2c76.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refe99f2c76.pNext))
+ x.Flags = (DeviceMemoryReportFlags)(x.refe99f2c76.flags)
+ x.PfnUserCallback = *NewDeviceMemoryReportCallbackFuncRef(unsafe.Pointer(&x.refe99f2c76.pfnUserCallback))
+ x.PUserData = (unsafe.Pointer)(unsafe.Pointer(x.refe99f2c76.pUserData))
}
-// allocPipelineViewportShadingRateImageStateCreateInfoNVMemory allocates memory for type C.VkPipelineViewportShadingRateImageStateCreateInfoNV in C.
+// allocPhysicalDeviceRobustness2FeaturesMemory allocates memory for type C.VkPhysicalDeviceRobustness2FeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPipelineViewportShadingRateImageStateCreateInfoNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineViewportShadingRateImageStateCreateInfoNVValue))
+func allocPhysicalDeviceRobustness2FeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceRobustness2FeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPipelineViewportShadingRateImageStateCreateInfoNVValue = unsafe.Sizeof([1]C.VkPipelineViewportShadingRateImageStateCreateInfoNV{})
-
-// unpackSShadingRatePaletteNV transforms a sliced Go data structure into plain C format.
-func unpackSShadingRatePaletteNV(x []ShadingRatePaletteNV) (unpacked *C.VkShadingRatePaletteNV, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkShadingRatePaletteNV) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocShadingRatePaletteNVMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkShadingRatePaletteNV)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkShadingRatePaletteNV)(h.Data)
- return
-}
-
-// packSShadingRatePaletteNV reads sliced Go data structure out from plain C format.
-func packSShadingRatePaletteNV(v []ShadingRatePaletteNV, ptr0 *C.VkShadingRatePaletteNV) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfShadingRatePaletteNVValue]C.VkShadingRatePaletteNV)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewShadingRatePaletteNVRef(unsafe.Pointer(&ptr1))
- }
-}
+const sizeOfPhysicalDeviceRobustness2FeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceRobustness2FeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PipelineViewportShadingRateImageStateCreateInfoNV) Ref() *C.VkPipelineViewportShadingRateImageStateCreateInfoNV {
+func (x *PhysicalDeviceRobustness2Features) Ref() *C.VkPhysicalDeviceRobustness2FeaturesEXT {
if x == nil {
return nil
}
- return x.ref6f2ec732
+ return x.refa1d6be35
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PipelineViewportShadingRateImageStateCreateInfoNV) Free() {
- if x != nil && x.allocs6f2ec732 != nil {
- x.allocs6f2ec732.(*cgoAllocMap).Free()
- x.ref6f2ec732 = nil
+func (x *PhysicalDeviceRobustness2Features) Free() {
+ if x != nil && x.allocsa1d6be35 != nil {
+ x.allocsa1d6be35.(*cgoAllocMap).Free()
+ x.refa1d6be35 = nil
}
}
-// NewPipelineViewportShadingRateImageStateCreateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceRobustness2FeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPipelineViewportShadingRateImageStateCreateInfoNVRef(ref unsafe.Pointer) *PipelineViewportShadingRateImageStateCreateInfoNV {
+func NewPhysicalDeviceRobustness2FeaturesRef(ref unsafe.Pointer) *PhysicalDeviceRobustness2Features {
if ref == nil {
return nil
}
- obj := new(PipelineViewportShadingRateImageStateCreateInfoNV)
- obj.ref6f2ec732 = (*C.VkPipelineViewportShadingRateImageStateCreateInfoNV)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceRobustness2Features)
+ obj.refa1d6be35 = (*C.VkPhysicalDeviceRobustness2FeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PipelineViewportShadingRateImageStateCreateInfoNV) PassRef() (*C.VkPipelineViewportShadingRateImageStateCreateInfoNV, *cgoAllocMap) {
+func (x *PhysicalDeviceRobustness2Features) PassRef() (*C.VkPhysicalDeviceRobustness2FeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref6f2ec732 != nil {
- return x.ref6f2ec732, nil
+ } else if x.refa1d6be35 != nil {
+ return x.refa1d6be35, nil
}
- mem6f2ec732 := allocPipelineViewportShadingRateImageStateCreateInfoNVMemory(1)
- ref6f2ec732 := (*C.VkPipelineViewportShadingRateImageStateCreateInfoNV)(mem6f2ec732)
- allocs6f2ec732 := new(cgoAllocMap)
- allocs6f2ec732.Add(mem6f2ec732)
+ mema1d6be35 := allocPhysicalDeviceRobustness2FeaturesMemory(1)
+ refa1d6be35 := (*C.VkPhysicalDeviceRobustness2FeaturesEXT)(mema1d6be35)
+ allocsa1d6be35 := new(cgoAllocMap)
+ allocsa1d6be35.Add(mema1d6be35)
var csType_allocs *cgoAllocMap
- ref6f2ec732.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs6f2ec732.Borrow(csType_allocs)
+ refa1d6be35.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsa1d6be35.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref6f2ec732.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs6f2ec732.Borrow(cpNext_allocs)
+ refa1d6be35.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsa1d6be35.Borrow(cpNext_allocs)
- var cshadingRateImageEnable_allocs *cgoAllocMap
- ref6f2ec732.shadingRateImageEnable, cshadingRateImageEnable_allocs = (C.VkBool32)(x.ShadingRateImageEnable), cgoAllocsUnknown
- allocs6f2ec732.Borrow(cshadingRateImageEnable_allocs)
+ var crobustBufferAccess2_allocs *cgoAllocMap
+ refa1d6be35.robustBufferAccess2, crobustBufferAccess2_allocs = (C.VkBool32)(x.RobustBufferAccess2), cgoAllocsUnknown
+ allocsa1d6be35.Borrow(crobustBufferAccess2_allocs)
- var cviewportCount_allocs *cgoAllocMap
- ref6f2ec732.viewportCount, cviewportCount_allocs = (C.uint32_t)(x.ViewportCount), cgoAllocsUnknown
- allocs6f2ec732.Borrow(cviewportCount_allocs)
+ var crobustImageAccess2_allocs *cgoAllocMap
+ refa1d6be35.robustImageAccess2, crobustImageAccess2_allocs = (C.VkBool32)(x.RobustImageAccess2), cgoAllocsUnknown
+ allocsa1d6be35.Borrow(crobustImageAccess2_allocs)
- var cpShadingRatePalettes_allocs *cgoAllocMap
- ref6f2ec732.pShadingRatePalettes, cpShadingRatePalettes_allocs = unpackSShadingRatePaletteNV(x.PShadingRatePalettes)
- allocs6f2ec732.Borrow(cpShadingRatePalettes_allocs)
+ var cnullDescriptor_allocs *cgoAllocMap
+ refa1d6be35.nullDescriptor, cnullDescriptor_allocs = (C.VkBool32)(x.NullDescriptor), cgoAllocsUnknown
+ allocsa1d6be35.Borrow(cnullDescriptor_allocs)
- x.ref6f2ec732 = ref6f2ec732
- x.allocs6f2ec732 = allocs6f2ec732
- return ref6f2ec732, allocs6f2ec732
+ x.refa1d6be35 = refa1d6be35
+ x.allocsa1d6be35 = allocsa1d6be35
+ return refa1d6be35, allocsa1d6be35
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PipelineViewportShadingRateImageStateCreateInfoNV) PassValue() (C.VkPipelineViewportShadingRateImageStateCreateInfoNV, *cgoAllocMap) {
- if x.ref6f2ec732 != nil {
- return *x.ref6f2ec732, nil
+func (x PhysicalDeviceRobustness2Features) PassValue() (C.VkPhysicalDeviceRobustness2FeaturesEXT, *cgoAllocMap) {
+ if x.refa1d6be35 != nil {
+ return *x.refa1d6be35, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -35257,96 +61874,96 @@ func (x PipelineViewportShadingRateImageStateCreateInfoNV) PassValue() (C.VkPipe
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PipelineViewportShadingRateImageStateCreateInfoNV) Deref() {
- if x.ref6f2ec732 == nil {
+func (x *PhysicalDeviceRobustness2Features) Deref() {
+ if x.refa1d6be35 == nil {
return
}
- x.SType = (StructureType)(x.ref6f2ec732.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref6f2ec732.pNext))
- x.ShadingRateImageEnable = (Bool32)(x.ref6f2ec732.shadingRateImageEnable)
- x.ViewportCount = (uint32)(x.ref6f2ec732.viewportCount)
- packSShadingRatePaletteNV(x.PShadingRatePalettes, x.ref6f2ec732.pShadingRatePalettes)
+ x.SType = (StructureType)(x.refa1d6be35.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa1d6be35.pNext))
+ x.RobustBufferAccess2 = (Bool32)(x.refa1d6be35.robustBufferAccess2)
+ x.RobustImageAccess2 = (Bool32)(x.refa1d6be35.robustImageAccess2)
+ x.NullDescriptor = (Bool32)(x.refa1d6be35.nullDescriptor)
}
-// allocPhysicalDeviceShadingRateImageFeaturesNVMemory allocates memory for type C.VkPhysicalDeviceShadingRateImageFeaturesNV in C.
+// allocPhysicalDeviceRobustness2PropertiesMemory allocates memory for type C.VkPhysicalDeviceRobustness2PropertiesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceShadingRateImageFeaturesNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceShadingRateImageFeaturesNVValue))
+func allocPhysicalDeviceRobustness2PropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceRobustness2PropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceShadingRateImageFeaturesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceShadingRateImageFeaturesNV{})
+const sizeOfPhysicalDeviceRobustness2PropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceRobustness2PropertiesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceShadingRateImageFeaturesNV) Ref() *C.VkPhysicalDeviceShadingRateImageFeaturesNV {
+func (x *PhysicalDeviceRobustness2Properties) Ref() *C.VkPhysicalDeviceRobustness2PropertiesEXT {
if x == nil {
return nil
}
- return x.ref199a921b
+ return x.ref82986127
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceShadingRateImageFeaturesNV) Free() {
- if x != nil && x.allocs199a921b != nil {
- x.allocs199a921b.(*cgoAllocMap).Free()
- x.ref199a921b = nil
+func (x *PhysicalDeviceRobustness2Properties) Free() {
+ if x != nil && x.allocs82986127 != nil {
+ x.allocs82986127.(*cgoAllocMap).Free()
+ x.ref82986127 = nil
}
}
-// NewPhysicalDeviceShadingRateImageFeaturesNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceRobustness2PropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceShadingRateImageFeaturesNVRef(ref unsafe.Pointer) *PhysicalDeviceShadingRateImageFeaturesNV {
+func NewPhysicalDeviceRobustness2PropertiesRef(ref unsafe.Pointer) *PhysicalDeviceRobustness2Properties {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceShadingRateImageFeaturesNV)
- obj.ref199a921b = (*C.VkPhysicalDeviceShadingRateImageFeaturesNV)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceRobustness2Properties)
+ obj.ref82986127 = (*C.VkPhysicalDeviceRobustness2PropertiesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceShadingRateImageFeaturesNV) PassRef() (*C.VkPhysicalDeviceShadingRateImageFeaturesNV, *cgoAllocMap) {
+func (x *PhysicalDeviceRobustness2Properties) PassRef() (*C.VkPhysicalDeviceRobustness2PropertiesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref199a921b != nil {
- return x.ref199a921b, nil
+ } else if x.ref82986127 != nil {
+ return x.ref82986127, nil
}
- mem199a921b := allocPhysicalDeviceShadingRateImageFeaturesNVMemory(1)
- ref199a921b := (*C.VkPhysicalDeviceShadingRateImageFeaturesNV)(mem199a921b)
- allocs199a921b := new(cgoAllocMap)
- allocs199a921b.Add(mem199a921b)
+ mem82986127 := allocPhysicalDeviceRobustness2PropertiesMemory(1)
+ ref82986127 := (*C.VkPhysicalDeviceRobustness2PropertiesEXT)(mem82986127)
+ allocs82986127 := new(cgoAllocMap)
+ allocs82986127.Add(mem82986127)
var csType_allocs *cgoAllocMap
- ref199a921b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs199a921b.Borrow(csType_allocs)
+ ref82986127.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs82986127.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref199a921b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs199a921b.Borrow(cpNext_allocs)
+ ref82986127.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs82986127.Borrow(cpNext_allocs)
- var cshadingRateImage_allocs *cgoAllocMap
- ref199a921b.shadingRateImage, cshadingRateImage_allocs = (C.VkBool32)(x.ShadingRateImage), cgoAllocsUnknown
- allocs199a921b.Borrow(cshadingRateImage_allocs)
+ var crobustStorageBufferAccessSizeAlignment_allocs *cgoAllocMap
+ ref82986127.robustStorageBufferAccessSizeAlignment, crobustStorageBufferAccessSizeAlignment_allocs = (C.VkDeviceSize)(x.RobustStorageBufferAccessSizeAlignment), cgoAllocsUnknown
+ allocs82986127.Borrow(crobustStorageBufferAccessSizeAlignment_allocs)
- var cshadingRateCoarseSampleOrder_allocs *cgoAllocMap
- ref199a921b.shadingRateCoarseSampleOrder, cshadingRateCoarseSampleOrder_allocs = (C.VkBool32)(x.ShadingRateCoarseSampleOrder), cgoAllocsUnknown
- allocs199a921b.Borrow(cshadingRateCoarseSampleOrder_allocs)
+ var crobustUniformBufferAccessSizeAlignment_allocs *cgoAllocMap
+ ref82986127.robustUniformBufferAccessSizeAlignment, crobustUniformBufferAccessSizeAlignment_allocs = (C.VkDeviceSize)(x.RobustUniformBufferAccessSizeAlignment), cgoAllocsUnknown
+ allocs82986127.Borrow(crobustUniformBufferAccessSizeAlignment_allocs)
- x.ref199a921b = ref199a921b
- x.allocs199a921b = allocs199a921b
- return ref199a921b, allocs199a921b
+ x.ref82986127 = ref82986127
+ x.allocs82986127 = allocs82986127
+ return ref82986127, allocs82986127
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceShadingRateImageFeaturesNV) PassValue() (C.VkPhysicalDeviceShadingRateImageFeaturesNV, *cgoAllocMap) {
- if x.ref199a921b != nil {
- return *x.ref199a921b, nil
+func (x PhysicalDeviceRobustness2Properties) PassValue() (C.VkPhysicalDeviceRobustness2PropertiesEXT, *cgoAllocMap) {
+ if x.ref82986127 != nil {
+ return *x.ref82986127, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -35354,99 +61971,95 @@ func (x PhysicalDeviceShadingRateImageFeaturesNV) PassValue() (C.VkPhysicalDevic
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceShadingRateImageFeaturesNV) Deref() {
- if x.ref199a921b == nil {
+func (x *PhysicalDeviceRobustness2Properties) Deref() {
+ if x.ref82986127 == nil {
return
}
- x.SType = (StructureType)(x.ref199a921b.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref199a921b.pNext))
- x.ShadingRateImage = (Bool32)(x.ref199a921b.shadingRateImage)
- x.ShadingRateCoarseSampleOrder = (Bool32)(x.ref199a921b.shadingRateCoarseSampleOrder)
+ x.SType = (StructureType)(x.ref82986127.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref82986127.pNext))
+ x.RobustStorageBufferAccessSizeAlignment = (DeviceSize)(x.ref82986127.robustStorageBufferAccessSizeAlignment)
+ x.RobustUniformBufferAccessSizeAlignment = (DeviceSize)(x.ref82986127.robustUniformBufferAccessSizeAlignment)
}
-// allocPhysicalDeviceShadingRateImagePropertiesNVMemory allocates memory for type C.VkPhysicalDeviceShadingRateImagePropertiesNV in C.
+// allocSamplerCustomBorderColorCreateInfoMemory allocates memory for type C.VkSamplerCustomBorderColorCreateInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceShadingRateImagePropertiesNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceShadingRateImagePropertiesNVValue))
+func allocSamplerCustomBorderColorCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSamplerCustomBorderColorCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceShadingRateImagePropertiesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceShadingRateImagePropertiesNV{})
+const sizeOfSamplerCustomBorderColorCreateInfoValue = unsafe.Sizeof([1]C.VkSamplerCustomBorderColorCreateInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceShadingRateImagePropertiesNV) Ref() *C.VkPhysicalDeviceShadingRateImagePropertiesNV {
+func (x *SamplerCustomBorderColorCreateInfo) Ref() *C.VkSamplerCustomBorderColorCreateInfoEXT {
if x == nil {
return nil
}
- return x.refea059f34
+ return x.refcac2582e
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceShadingRateImagePropertiesNV) Free() {
- if x != nil && x.allocsea059f34 != nil {
- x.allocsea059f34.(*cgoAllocMap).Free()
- x.refea059f34 = nil
+func (x *SamplerCustomBorderColorCreateInfo) Free() {
+ if x != nil && x.allocscac2582e != nil {
+ x.allocscac2582e.(*cgoAllocMap).Free()
+ x.refcac2582e = nil
}
}
-// NewPhysicalDeviceShadingRateImagePropertiesNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewSamplerCustomBorderColorCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceShadingRateImagePropertiesNVRef(ref unsafe.Pointer) *PhysicalDeviceShadingRateImagePropertiesNV {
+func NewSamplerCustomBorderColorCreateInfoRef(ref unsafe.Pointer) *SamplerCustomBorderColorCreateInfo {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceShadingRateImagePropertiesNV)
- obj.refea059f34 = (*C.VkPhysicalDeviceShadingRateImagePropertiesNV)(unsafe.Pointer(ref))
+ obj := new(SamplerCustomBorderColorCreateInfo)
+ obj.refcac2582e = (*C.VkSamplerCustomBorderColorCreateInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceShadingRateImagePropertiesNV) PassRef() (*C.VkPhysicalDeviceShadingRateImagePropertiesNV, *cgoAllocMap) {
+func (x *SamplerCustomBorderColorCreateInfo) PassRef() (*C.VkSamplerCustomBorderColorCreateInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refea059f34 != nil {
- return x.refea059f34, nil
+ } else if x.refcac2582e != nil {
+ return x.refcac2582e, nil
}
- memea059f34 := allocPhysicalDeviceShadingRateImagePropertiesNVMemory(1)
- refea059f34 := (*C.VkPhysicalDeviceShadingRateImagePropertiesNV)(memea059f34)
- allocsea059f34 := new(cgoAllocMap)
- allocsea059f34.Add(memea059f34)
+ memcac2582e := allocSamplerCustomBorderColorCreateInfoMemory(1)
+ refcac2582e := (*C.VkSamplerCustomBorderColorCreateInfoEXT)(memcac2582e)
+ allocscac2582e := new(cgoAllocMap)
+ allocscac2582e.Add(memcac2582e)
var csType_allocs *cgoAllocMap
- refea059f34.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsea059f34.Borrow(csType_allocs)
+ refcac2582e.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocscac2582e.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refea059f34.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsea059f34.Borrow(cpNext_allocs)
-
- var cshadingRateTexelSize_allocs *cgoAllocMap
- refea059f34.shadingRateTexelSize, cshadingRateTexelSize_allocs = x.ShadingRateTexelSize.PassValue()
- allocsea059f34.Borrow(cshadingRateTexelSize_allocs)
+ refcac2582e.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocscac2582e.Borrow(cpNext_allocs)
- var cshadingRatePaletteSize_allocs *cgoAllocMap
- refea059f34.shadingRatePaletteSize, cshadingRatePaletteSize_allocs = (C.uint32_t)(x.ShadingRatePaletteSize), cgoAllocsUnknown
- allocsea059f34.Borrow(cshadingRatePaletteSize_allocs)
+ var ccustomBorderColor_allocs *cgoAllocMap
+ refcac2582e.customBorderColor, ccustomBorderColor_allocs = *(*C.VkClearColorValue)(unsafe.Pointer(&x.CustomBorderColor)), cgoAllocsUnknown
+ allocscac2582e.Borrow(ccustomBorderColor_allocs)
- var cshadingRateMaxCoarseSamples_allocs *cgoAllocMap
- refea059f34.shadingRateMaxCoarseSamples, cshadingRateMaxCoarseSamples_allocs = (C.uint32_t)(x.ShadingRateMaxCoarseSamples), cgoAllocsUnknown
- allocsea059f34.Borrow(cshadingRateMaxCoarseSamples_allocs)
+ var cformat_allocs *cgoAllocMap
+ refcac2582e.format, cformat_allocs = (C.VkFormat)(x.Format), cgoAllocsUnknown
+ allocscac2582e.Borrow(cformat_allocs)
- x.refea059f34 = refea059f34
- x.allocsea059f34 = allocsea059f34
- return refea059f34, allocsea059f34
+ x.refcac2582e = refcac2582e
+ x.allocscac2582e = allocscac2582e
+ return refcac2582e, allocscac2582e
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceShadingRateImagePropertiesNV) PassValue() (C.VkPhysicalDeviceShadingRateImagePropertiesNV, *cgoAllocMap) {
- if x.refea059f34 != nil {
- return *x.refea059f34, nil
+func (x SamplerCustomBorderColorCreateInfo) PassValue() (C.VkSamplerCustomBorderColorCreateInfoEXT, *cgoAllocMap) {
+ if x.refcac2582e != nil {
+ return *x.refcac2582e, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -35454,92 +62067,91 @@ func (x PhysicalDeviceShadingRateImagePropertiesNV) PassValue() (C.VkPhysicalDev
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceShadingRateImagePropertiesNV) Deref() {
- if x.refea059f34 == nil {
+func (x *SamplerCustomBorderColorCreateInfo) Deref() {
+ if x.refcac2582e == nil {
return
}
- x.SType = (StructureType)(x.refea059f34.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refea059f34.pNext))
- x.ShadingRateTexelSize = *NewExtent2DRef(unsafe.Pointer(&x.refea059f34.shadingRateTexelSize))
- x.ShadingRatePaletteSize = (uint32)(x.refea059f34.shadingRatePaletteSize)
- x.ShadingRateMaxCoarseSamples = (uint32)(x.refea059f34.shadingRateMaxCoarseSamples)
+ x.SType = (StructureType)(x.refcac2582e.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refcac2582e.pNext))
+ x.CustomBorderColor = *(*ClearColorValue)(unsafe.Pointer(&x.refcac2582e.customBorderColor))
+ x.Format = (Format)(x.refcac2582e.format)
}
-// allocCoarseSampleLocationNVMemory allocates memory for type C.VkCoarseSampleLocationNV in C.
+// allocPhysicalDeviceCustomBorderColorPropertiesMemory allocates memory for type C.VkPhysicalDeviceCustomBorderColorPropertiesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocCoarseSampleLocationNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCoarseSampleLocationNVValue))
+func allocPhysicalDeviceCustomBorderColorPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceCustomBorderColorPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfCoarseSampleLocationNVValue = unsafe.Sizeof([1]C.VkCoarseSampleLocationNV{})
+const sizeOfPhysicalDeviceCustomBorderColorPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceCustomBorderColorPropertiesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *CoarseSampleLocationNV) Ref() *C.VkCoarseSampleLocationNV {
+func (x *PhysicalDeviceCustomBorderColorProperties) Ref() *C.VkPhysicalDeviceCustomBorderColorPropertiesEXT {
if x == nil {
return nil
}
- return x.ref2f447beb
+ return x.ref4b62d3cd
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *CoarseSampleLocationNV) Free() {
- if x != nil && x.allocs2f447beb != nil {
- x.allocs2f447beb.(*cgoAllocMap).Free()
- x.ref2f447beb = nil
+func (x *PhysicalDeviceCustomBorderColorProperties) Free() {
+ if x != nil && x.allocs4b62d3cd != nil {
+ x.allocs4b62d3cd.(*cgoAllocMap).Free()
+ x.ref4b62d3cd = nil
}
}
-// NewCoarseSampleLocationNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceCustomBorderColorPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewCoarseSampleLocationNVRef(ref unsafe.Pointer) *CoarseSampleLocationNV {
+func NewPhysicalDeviceCustomBorderColorPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceCustomBorderColorProperties {
if ref == nil {
return nil
}
- obj := new(CoarseSampleLocationNV)
- obj.ref2f447beb = (*C.VkCoarseSampleLocationNV)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceCustomBorderColorProperties)
+ obj.ref4b62d3cd = (*C.VkPhysicalDeviceCustomBorderColorPropertiesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *CoarseSampleLocationNV) PassRef() (*C.VkCoarseSampleLocationNV, *cgoAllocMap) {
+func (x *PhysicalDeviceCustomBorderColorProperties) PassRef() (*C.VkPhysicalDeviceCustomBorderColorPropertiesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref2f447beb != nil {
- return x.ref2f447beb, nil
+ } else if x.ref4b62d3cd != nil {
+ return x.ref4b62d3cd, nil
}
- mem2f447beb := allocCoarseSampleLocationNVMemory(1)
- ref2f447beb := (*C.VkCoarseSampleLocationNV)(mem2f447beb)
- allocs2f447beb := new(cgoAllocMap)
- allocs2f447beb.Add(mem2f447beb)
+ mem4b62d3cd := allocPhysicalDeviceCustomBorderColorPropertiesMemory(1)
+ ref4b62d3cd := (*C.VkPhysicalDeviceCustomBorderColorPropertiesEXT)(mem4b62d3cd)
+ allocs4b62d3cd := new(cgoAllocMap)
+ allocs4b62d3cd.Add(mem4b62d3cd)
- var cpixelX_allocs *cgoAllocMap
- ref2f447beb.pixelX, cpixelX_allocs = (C.uint32_t)(x.PixelX), cgoAllocsUnknown
- allocs2f447beb.Borrow(cpixelX_allocs)
+ var csType_allocs *cgoAllocMap
+ ref4b62d3cd.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs4b62d3cd.Borrow(csType_allocs)
- var cpixelY_allocs *cgoAllocMap
- ref2f447beb.pixelY, cpixelY_allocs = (C.uint32_t)(x.PixelY), cgoAllocsUnknown
- allocs2f447beb.Borrow(cpixelY_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref4b62d3cd.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs4b62d3cd.Borrow(cpNext_allocs)
- var csample_allocs *cgoAllocMap
- ref2f447beb.sample, csample_allocs = (C.uint32_t)(x.Sample), cgoAllocsUnknown
- allocs2f447beb.Borrow(csample_allocs)
+ var cmaxCustomBorderColorSamplers_allocs *cgoAllocMap
+ ref4b62d3cd.maxCustomBorderColorSamplers, cmaxCustomBorderColorSamplers_allocs = (C.uint32_t)(x.MaxCustomBorderColorSamplers), cgoAllocsUnknown
+ allocs4b62d3cd.Borrow(cmaxCustomBorderColorSamplers_allocs)
- x.ref2f447beb = ref2f447beb
- x.allocs2f447beb = allocs2f447beb
- return ref2f447beb, allocs2f447beb
+ x.ref4b62d3cd = ref4b62d3cd
+ x.allocs4b62d3cd = allocs4b62d3cd
+ return ref4b62d3cd, allocs4b62d3cd
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x CoarseSampleLocationNV) PassValue() (C.VkCoarseSampleLocationNV, *cgoAllocMap) {
- if x.ref2f447beb != nil {
- return *x.ref2f447beb, nil
+func (x PhysicalDeviceCustomBorderColorProperties) PassValue() (C.VkPhysicalDeviceCustomBorderColorPropertiesEXT, *cgoAllocMap) {
+ if x.ref4b62d3cd != nil {
+ return *x.ref4b62d3cd, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -35547,132 +62159,94 @@ func (x CoarseSampleLocationNV) PassValue() (C.VkCoarseSampleLocationNV, *cgoAll
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *CoarseSampleLocationNV) Deref() {
- if x.ref2f447beb == nil {
+func (x *PhysicalDeviceCustomBorderColorProperties) Deref() {
+ if x.ref4b62d3cd == nil {
return
}
- x.PixelX = (uint32)(x.ref2f447beb.pixelX)
- x.PixelY = (uint32)(x.ref2f447beb.pixelY)
- x.Sample = (uint32)(x.ref2f447beb.sample)
+ x.SType = (StructureType)(x.ref4b62d3cd.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref4b62d3cd.pNext))
+ x.MaxCustomBorderColorSamplers = (uint32)(x.ref4b62d3cd.maxCustomBorderColorSamplers)
}
-// allocCoarseSampleOrderCustomNVMemory allocates memory for type C.VkCoarseSampleOrderCustomNV in C.
+// allocPhysicalDeviceCustomBorderColorFeaturesMemory allocates memory for type C.VkPhysicalDeviceCustomBorderColorFeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocCoarseSampleOrderCustomNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCoarseSampleOrderCustomNVValue))
+func allocPhysicalDeviceCustomBorderColorFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceCustomBorderColorFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfCoarseSampleOrderCustomNVValue = unsafe.Sizeof([1]C.VkCoarseSampleOrderCustomNV{})
-
-// unpackSCoarseSampleLocationNV transforms a sliced Go data structure into plain C format.
-func unpackSCoarseSampleLocationNV(x []CoarseSampleLocationNV) (unpacked *C.VkCoarseSampleLocationNV, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkCoarseSampleLocationNV) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocCoarseSampleLocationNVMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkCoarseSampleLocationNV)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkCoarseSampleLocationNV)(h.Data)
- return
-}
-
-// packSCoarseSampleLocationNV reads sliced Go data structure out from plain C format.
-func packSCoarseSampleLocationNV(v []CoarseSampleLocationNV, ptr0 *C.VkCoarseSampleLocationNV) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfCoarseSampleLocationNVValue]C.VkCoarseSampleLocationNV)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewCoarseSampleLocationNVRef(unsafe.Pointer(&ptr1))
- }
-}
+const sizeOfPhysicalDeviceCustomBorderColorFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceCustomBorderColorFeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *CoarseSampleOrderCustomNV) Ref() *C.VkCoarseSampleOrderCustomNV {
+func (x *PhysicalDeviceCustomBorderColorFeatures) Ref() *C.VkPhysicalDeviceCustomBorderColorFeaturesEXT {
if x == nil {
return nil
}
- return x.ref4524fa09
+ return x.ref8a9c96e0
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *CoarseSampleOrderCustomNV) Free() {
- if x != nil && x.allocs4524fa09 != nil {
- x.allocs4524fa09.(*cgoAllocMap).Free()
- x.ref4524fa09 = nil
+func (x *PhysicalDeviceCustomBorderColorFeatures) Free() {
+ if x != nil && x.allocs8a9c96e0 != nil {
+ x.allocs8a9c96e0.(*cgoAllocMap).Free()
+ x.ref8a9c96e0 = nil
}
}
-// NewCoarseSampleOrderCustomNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceCustomBorderColorFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewCoarseSampleOrderCustomNVRef(ref unsafe.Pointer) *CoarseSampleOrderCustomNV {
+func NewPhysicalDeviceCustomBorderColorFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceCustomBorderColorFeatures {
if ref == nil {
return nil
}
- obj := new(CoarseSampleOrderCustomNV)
- obj.ref4524fa09 = (*C.VkCoarseSampleOrderCustomNV)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceCustomBorderColorFeatures)
+ obj.ref8a9c96e0 = (*C.VkPhysicalDeviceCustomBorderColorFeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *CoarseSampleOrderCustomNV) PassRef() (*C.VkCoarseSampleOrderCustomNV, *cgoAllocMap) {
+func (x *PhysicalDeviceCustomBorderColorFeatures) PassRef() (*C.VkPhysicalDeviceCustomBorderColorFeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref4524fa09 != nil {
- return x.ref4524fa09, nil
+ } else if x.ref8a9c96e0 != nil {
+ return x.ref8a9c96e0, nil
}
- mem4524fa09 := allocCoarseSampleOrderCustomNVMemory(1)
- ref4524fa09 := (*C.VkCoarseSampleOrderCustomNV)(mem4524fa09)
- allocs4524fa09 := new(cgoAllocMap)
- allocs4524fa09.Add(mem4524fa09)
+ mem8a9c96e0 := allocPhysicalDeviceCustomBorderColorFeaturesMemory(1)
+ ref8a9c96e0 := (*C.VkPhysicalDeviceCustomBorderColorFeaturesEXT)(mem8a9c96e0)
+ allocs8a9c96e0 := new(cgoAllocMap)
+ allocs8a9c96e0.Add(mem8a9c96e0)
- var cshadingRate_allocs *cgoAllocMap
- ref4524fa09.shadingRate, cshadingRate_allocs = (C.VkShadingRatePaletteEntryNV)(x.ShadingRate), cgoAllocsUnknown
- allocs4524fa09.Borrow(cshadingRate_allocs)
+ var csType_allocs *cgoAllocMap
+ ref8a9c96e0.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs8a9c96e0.Borrow(csType_allocs)
- var csampleCount_allocs *cgoAllocMap
- ref4524fa09.sampleCount, csampleCount_allocs = (C.uint32_t)(x.SampleCount), cgoAllocsUnknown
- allocs4524fa09.Borrow(csampleCount_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref8a9c96e0.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs8a9c96e0.Borrow(cpNext_allocs)
- var csampleLocationCount_allocs *cgoAllocMap
- ref4524fa09.sampleLocationCount, csampleLocationCount_allocs = (C.uint32_t)(x.SampleLocationCount), cgoAllocsUnknown
- allocs4524fa09.Borrow(csampleLocationCount_allocs)
+ var ccustomBorderColors_allocs *cgoAllocMap
+ ref8a9c96e0.customBorderColors, ccustomBorderColors_allocs = (C.VkBool32)(x.CustomBorderColors), cgoAllocsUnknown
+ allocs8a9c96e0.Borrow(ccustomBorderColors_allocs)
- var cpSampleLocations_allocs *cgoAllocMap
- ref4524fa09.pSampleLocations, cpSampleLocations_allocs = unpackSCoarseSampleLocationNV(x.PSampleLocations)
- allocs4524fa09.Borrow(cpSampleLocations_allocs)
+ var ccustomBorderColorWithoutFormat_allocs *cgoAllocMap
+ ref8a9c96e0.customBorderColorWithoutFormat, ccustomBorderColorWithoutFormat_allocs = (C.VkBool32)(x.CustomBorderColorWithoutFormat), cgoAllocsUnknown
+ allocs8a9c96e0.Borrow(ccustomBorderColorWithoutFormat_allocs)
- x.ref4524fa09 = ref4524fa09
- x.allocs4524fa09 = allocs4524fa09
- return ref4524fa09, allocs4524fa09
+ x.ref8a9c96e0 = ref8a9c96e0
+ x.allocs8a9c96e0 = allocs8a9c96e0
+ return ref8a9c96e0, allocs8a9c96e0
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x CoarseSampleOrderCustomNV) PassValue() (C.VkCoarseSampleOrderCustomNV, *cgoAllocMap) {
- if x.ref4524fa09 != nil {
- return *x.ref4524fa09, nil
+func (x PhysicalDeviceCustomBorderColorFeatures) PassValue() (C.VkPhysicalDeviceCustomBorderColorFeaturesEXT, *cgoAllocMap) {
+ if x.ref8a9c96e0 != nil {
+ return *x.ref8a9c96e0, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -35680,137 +62254,91 @@ func (x CoarseSampleOrderCustomNV) PassValue() (C.VkCoarseSampleOrderCustomNV, *
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *CoarseSampleOrderCustomNV) Deref() {
- if x.ref4524fa09 == nil {
+func (x *PhysicalDeviceCustomBorderColorFeatures) Deref() {
+ if x.ref8a9c96e0 == nil {
return
}
- x.ShadingRate = (ShadingRatePaletteEntryNV)(x.ref4524fa09.shadingRate)
- x.SampleCount = (uint32)(x.ref4524fa09.sampleCount)
- x.SampleLocationCount = (uint32)(x.ref4524fa09.sampleLocationCount)
- packSCoarseSampleLocationNV(x.PSampleLocations, x.ref4524fa09.pSampleLocations)
+ x.SType = (StructureType)(x.ref8a9c96e0.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref8a9c96e0.pNext))
+ x.CustomBorderColors = (Bool32)(x.ref8a9c96e0.customBorderColors)
+ x.CustomBorderColorWithoutFormat = (Bool32)(x.ref8a9c96e0.customBorderColorWithoutFormat)
}
-// allocPipelineViewportCoarseSampleOrderStateCreateInfoNVMemory allocates memory for type C.VkPipelineViewportCoarseSampleOrderStateCreateInfoNV in C.
+// allocPhysicalDevicePresentBarrierFeaturesNVMemory allocates memory for type C.VkPhysicalDevicePresentBarrierFeaturesNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPipelineViewportCoarseSampleOrderStateCreateInfoNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineViewportCoarseSampleOrderStateCreateInfoNVValue))
+func allocPhysicalDevicePresentBarrierFeaturesNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDevicePresentBarrierFeaturesNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPipelineViewportCoarseSampleOrderStateCreateInfoNVValue = unsafe.Sizeof([1]C.VkPipelineViewportCoarseSampleOrderStateCreateInfoNV{})
-
-// unpackSCoarseSampleOrderCustomNV transforms a sliced Go data structure into plain C format.
-func unpackSCoarseSampleOrderCustomNV(x []CoarseSampleOrderCustomNV) (unpacked *C.VkCoarseSampleOrderCustomNV, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkCoarseSampleOrderCustomNV) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocCoarseSampleOrderCustomNVMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkCoarseSampleOrderCustomNV)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkCoarseSampleOrderCustomNV)(h.Data)
- return
-}
-
-// packSCoarseSampleOrderCustomNV reads sliced Go data structure out from plain C format.
-func packSCoarseSampleOrderCustomNV(v []CoarseSampleOrderCustomNV, ptr0 *C.VkCoarseSampleOrderCustomNV) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfCoarseSampleOrderCustomNVValue]C.VkCoarseSampleOrderCustomNV)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewCoarseSampleOrderCustomNVRef(unsafe.Pointer(&ptr1))
- }
-}
+const sizeOfPhysicalDevicePresentBarrierFeaturesNVValue = unsafe.Sizeof([1]C.VkPhysicalDevicePresentBarrierFeaturesNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PipelineViewportCoarseSampleOrderStateCreateInfoNV) Ref() *C.VkPipelineViewportCoarseSampleOrderStateCreateInfoNV {
+func (x *PhysicalDevicePresentBarrierFeaturesNV) Ref() *C.VkPhysicalDevicePresentBarrierFeaturesNV {
if x == nil {
return nil
}
- return x.ref54de8ca6
+ return x.reff8c28ce8
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PipelineViewportCoarseSampleOrderStateCreateInfoNV) Free() {
- if x != nil && x.allocs54de8ca6 != nil {
- x.allocs54de8ca6.(*cgoAllocMap).Free()
- x.ref54de8ca6 = nil
+func (x *PhysicalDevicePresentBarrierFeaturesNV) Free() {
+ if x != nil && x.allocsf8c28ce8 != nil {
+ x.allocsf8c28ce8.(*cgoAllocMap).Free()
+ x.reff8c28ce8 = nil
}
}
-// NewPipelineViewportCoarseSampleOrderStateCreateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDevicePresentBarrierFeaturesNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPipelineViewportCoarseSampleOrderStateCreateInfoNVRef(ref unsafe.Pointer) *PipelineViewportCoarseSampleOrderStateCreateInfoNV {
+func NewPhysicalDevicePresentBarrierFeaturesNVRef(ref unsafe.Pointer) *PhysicalDevicePresentBarrierFeaturesNV {
if ref == nil {
return nil
}
- obj := new(PipelineViewportCoarseSampleOrderStateCreateInfoNV)
- obj.ref54de8ca6 = (*C.VkPipelineViewportCoarseSampleOrderStateCreateInfoNV)(unsafe.Pointer(ref))
+ obj := new(PhysicalDevicePresentBarrierFeaturesNV)
+ obj.reff8c28ce8 = (*C.VkPhysicalDevicePresentBarrierFeaturesNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PipelineViewportCoarseSampleOrderStateCreateInfoNV) PassRef() (*C.VkPipelineViewportCoarseSampleOrderStateCreateInfoNV, *cgoAllocMap) {
+func (x *PhysicalDevicePresentBarrierFeaturesNV) PassRef() (*C.VkPhysicalDevicePresentBarrierFeaturesNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref54de8ca6 != nil {
- return x.ref54de8ca6, nil
+ } else if x.reff8c28ce8 != nil {
+ return x.reff8c28ce8, nil
}
- mem54de8ca6 := allocPipelineViewportCoarseSampleOrderStateCreateInfoNVMemory(1)
- ref54de8ca6 := (*C.VkPipelineViewportCoarseSampleOrderStateCreateInfoNV)(mem54de8ca6)
- allocs54de8ca6 := new(cgoAllocMap)
- allocs54de8ca6.Add(mem54de8ca6)
+ memf8c28ce8 := allocPhysicalDevicePresentBarrierFeaturesNVMemory(1)
+ reff8c28ce8 := (*C.VkPhysicalDevicePresentBarrierFeaturesNV)(memf8c28ce8)
+ allocsf8c28ce8 := new(cgoAllocMap)
+ allocsf8c28ce8.Add(memf8c28ce8)
var csType_allocs *cgoAllocMap
- ref54de8ca6.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs54de8ca6.Borrow(csType_allocs)
+ reff8c28ce8.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsf8c28ce8.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref54de8ca6.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs54de8ca6.Borrow(cpNext_allocs)
-
- var csampleOrderType_allocs *cgoAllocMap
- ref54de8ca6.sampleOrderType, csampleOrderType_allocs = (C.VkCoarseSampleOrderTypeNV)(x.SampleOrderType), cgoAllocsUnknown
- allocs54de8ca6.Borrow(csampleOrderType_allocs)
-
- var ccustomSampleOrderCount_allocs *cgoAllocMap
- ref54de8ca6.customSampleOrderCount, ccustomSampleOrderCount_allocs = (C.uint32_t)(x.CustomSampleOrderCount), cgoAllocsUnknown
- allocs54de8ca6.Borrow(ccustomSampleOrderCount_allocs)
+ reff8c28ce8.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsf8c28ce8.Borrow(cpNext_allocs)
- var cpCustomSampleOrders_allocs *cgoAllocMap
- ref54de8ca6.pCustomSampleOrders, cpCustomSampleOrders_allocs = unpackSCoarseSampleOrderCustomNV(x.PCustomSampleOrders)
- allocs54de8ca6.Borrow(cpCustomSampleOrders_allocs)
+ var cpresentBarrier_allocs *cgoAllocMap
+ reff8c28ce8.presentBarrier, cpresentBarrier_allocs = (C.VkBool32)(x.PresentBarrier), cgoAllocsUnknown
+ allocsf8c28ce8.Borrow(cpresentBarrier_allocs)
- x.ref54de8ca6 = ref54de8ca6
- x.allocs54de8ca6 = allocs54de8ca6
- return ref54de8ca6, allocs54de8ca6
+ x.reff8c28ce8 = reff8c28ce8
+ x.allocsf8c28ce8 = allocsf8c28ce8
+ return reff8c28ce8, allocsf8c28ce8
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PipelineViewportCoarseSampleOrderStateCreateInfoNV) PassValue() (C.VkPipelineViewportCoarseSampleOrderStateCreateInfoNV, *cgoAllocMap) {
- if x.ref54de8ca6 != nil {
- return *x.ref54de8ca6, nil
+func (x PhysicalDevicePresentBarrierFeaturesNV) PassValue() (C.VkPhysicalDevicePresentBarrierFeaturesNV, *cgoAllocMap) {
+ if x.reff8c28ce8 != nil {
+ return *x.reff8c28ce8, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -35818,120 +62346,90 @@ func (x PipelineViewportCoarseSampleOrderStateCreateInfoNV) PassValue() (C.VkPip
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PipelineViewportCoarseSampleOrderStateCreateInfoNV) Deref() {
- if x.ref54de8ca6 == nil {
+func (x *PhysicalDevicePresentBarrierFeaturesNV) Deref() {
+ if x.reff8c28ce8 == nil {
return
}
- x.SType = (StructureType)(x.ref54de8ca6.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref54de8ca6.pNext))
- x.SampleOrderType = (CoarseSampleOrderTypeNV)(x.ref54de8ca6.sampleOrderType)
- x.CustomSampleOrderCount = (uint32)(x.ref54de8ca6.customSampleOrderCount)
- packSCoarseSampleOrderCustomNV(x.PCustomSampleOrders, x.ref54de8ca6.pCustomSampleOrders)
+ x.SType = (StructureType)(x.reff8c28ce8.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff8c28ce8.pNext))
+ x.PresentBarrier = (Bool32)(x.reff8c28ce8.presentBarrier)
}
-// allocRaytracingPipelineCreateInfoNVXMemory allocates memory for type C.VkRaytracingPipelineCreateInfoNVX in C.
+// allocSurfaceCapabilitiesPresentBarrierNVMemory allocates memory for type C.VkSurfaceCapabilitiesPresentBarrierNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocRaytracingPipelineCreateInfoNVXMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfRaytracingPipelineCreateInfoNVXValue))
+func allocSurfaceCapabilitiesPresentBarrierNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSurfaceCapabilitiesPresentBarrierNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfRaytracingPipelineCreateInfoNVXValue = unsafe.Sizeof([1]C.VkRaytracingPipelineCreateInfoNVX{})
+const sizeOfSurfaceCapabilitiesPresentBarrierNVValue = unsafe.Sizeof([1]C.VkSurfaceCapabilitiesPresentBarrierNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *RaytracingPipelineCreateInfoNVX) Ref() *C.VkRaytracingPipelineCreateInfoNVX {
+func (x *SurfaceCapabilitiesPresentBarrierNV) Ref() *C.VkSurfaceCapabilitiesPresentBarrierNV {
if x == nil {
return nil
}
- return x.ref4d91852a
+ return x.refb05347b2
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *RaytracingPipelineCreateInfoNVX) Free() {
- if x != nil && x.allocs4d91852a != nil {
- x.allocs4d91852a.(*cgoAllocMap).Free()
- x.ref4d91852a = nil
+func (x *SurfaceCapabilitiesPresentBarrierNV) Free() {
+ if x != nil && x.allocsb05347b2 != nil {
+ x.allocsb05347b2.(*cgoAllocMap).Free()
+ x.refb05347b2 = nil
}
}
-// NewRaytracingPipelineCreateInfoNVXRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewSurfaceCapabilitiesPresentBarrierNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewRaytracingPipelineCreateInfoNVXRef(ref unsafe.Pointer) *RaytracingPipelineCreateInfoNVX {
+func NewSurfaceCapabilitiesPresentBarrierNVRef(ref unsafe.Pointer) *SurfaceCapabilitiesPresentBarrierNV {
if ref == nil {
return nil
}
- obj := new(RaytracingPipelineCreateInfoNVX)
- obj.ref4d91852a = (*C.VkRaytracingPipelineCreateInfoNVX)(unsafe.Pointer(ref))
+ obj := new(SurfaceCapabilitiesPresentBarrierNV)
+ obj.refb05347b2 = (*C.VkSurfaceCapabilitiesPresentBarrierNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *RaytracingPipelineCreateInfoNVX) PassRef() (*C.VkRaytracingPipelineCreateInfoNVX, *cgoAllocMap) {
+func (x *SurfaceCapabilitiesPresentBarrierNV) PassRef() (*C.VkSurfaceCapabilitiesPresentBarrierNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref4d91852a != nil {
- return x.ref4d91852a, nil
+ } else if x.refb05347b2 != nil {
+ return x.refb05347b2, nil
}
- mem4d91852a := allocRaytracingPipelineCreateInfoNVXMemory(1)
- ref4d91852a := (*C.VkRaytracingPipelineCreateInfoNVX)(mem4d91852a)
- allocs4d91852a := new(cgoAllocMap)
- allocs4d91852a.Add(mem4d91852a)
+ memb05347b2 := allocSurfaceCapabilitiesPresentBarrierNVMemory(1)
+ refb05347b2 := (*C.VkSurfaceCapabilitiesPresentBarrierNV)(memb05347b2)
+ allocsb05347b2 := new(cgoAllocMap)
+ allocsb05347b2.Add(memb05347b2)
var csType_allocs *cgoAllocMap
- ref4d91852a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs4d91852a.Borrow(csType_allocs)
+ refb05347b2.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsb05347b2.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref4d91852a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs4d91852a.Borrow(cpNext_allocs)
-
- var cflags_allocs *cgoAllocMap
- ref4d91852a.flags, cflags_allocs = (C.VkPipelineCreateFlags)(x.Flags), cgoAllocsUnknown
- allocs4d91852a.Borrow(cflags_allocs)
-
- var cstageCount_allocs *cgoAllocMap
- ref4d91852a.stageCount, cstageCount_allocs = (C.uint32_t)(x.StageCount), cgoAllocsUnknown
- allocs4d91852a.Borrow(cstageCount_allocs)
-
- var cpStages_allocs *cgoAllocMap
- ref4d91852a.pStages, cpStages_allocs = unpackSPipelineShaderStageCreateInfo(x.PStages)
- allocs4d91852a.Borrow(cpStages_allocs)
-
- var cpGroupNumbers_allocs *cgoAllocMap
- ref4d91852a.pGroupNumbers, cpGroupNumbers_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PGroupNumbers)).Data)), cgoAllocsUnknown
- allocs4d91852a.Borrow(cpGroupNumbers_allocs)
-
- var cmaxRecursionDepth_allocs *cgoAllocMap
- ref4d91852a.maxRecursionDepth, cmaxRecursionDepth_allocs = (C.uint32_t)(x.MaxRecursionDepth), cgoAllocsUnknown
- allocs4d91852a.Borrow(cmaxRecursionDepth_allocs)
-
- var clayout_allocs *cgoAllocMap
- ref4d91852a.layout, clayout_allocs = *(*C.VkPipelineLayout)(unsafe.Pointer(&x.Layout)), cgoAllocsUnknown
- allocs4d91852a.Borrow(clayout_allocs)
-
- var cbasePipelineHandle_allocs *cgoAllocMap
- ref4d91852a.basePipelineHandle, cbasePipelineHandle_allocs = *(*C.VkPipeline)(unsafe.Pointer(&x.BasePipelineHandle)), cgoAllocsUnknown
- allocs4d91852a.Borrow(cbasePipelineHandle_allocs)
+ refb05347b2.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsb05347b2.Borrow(cpNext_allocs)
- var cbasePipelineIndex_allocs *cgoAllocMap
- ref4d91852a.basePipelineIndex, cbasePipelineIndex_allocs = (C.int32_t)(x.BasePipelineIndex), cgoAllocsUnknown
- allocs4d91852a.Borrow(cbasePipelineIndex_allocs)
+ var cpresentBarrierSupported_allocs *cgoAllocMap
+ refb05347b2.presentBarrierSupported, cpresentBarrierSupported_allocs = (C.VkBool32)(x.PresentBarrierSupported), cgoAllocsUnknown
+ allocsb05347b2.Borrow(cpresentBarrierSupported_allocs)
- x.ref4d91852a = ref4d91852a
- x.allocs4d91852a = allocs4d91852a
- return ref4d91852a, allocs4d91852a
+ x.refb05347b2 = refb05347b2
+ x.allocsb05347b2 = allocsb05347b2
+ return refb05347b2, allocsb05347b2
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x RaytracingPipelineCreateInfoNVX) PassValue() (C.VkRaytracingPipelineCreateInfoNVX, *cgoAllocMap) {
- if x.ref4d91852a != nil {
- return *x.ref4d91852a, nil
+func (x SurfaceCapabilitiesPresentBarrierNV) PassValue() (C.VkSurfaceCapabilitiesPresentBarrierNV, *cgoAllocMap) {
+ if x.refb05347b2 != nil {
+ return *x.refb05347b2, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -35939,141 +62437,90 @@ func (x RaytracingPipelineCreateInfoNVX) PassValue() (C.VkRaytracingPipelineCrea
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *RaytracingPipelineCreateInfoNVX) Deref() {
- if x.ref4d91852a == nil {
+func (x *SurfaceCapabilitiesPresentBarrierNV) Deref() {
+ if x.refb05347b2 == nil {
return
}
- x.SType = (StructureType)(x.ref4d91852a.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref4d91852a.pNext))
- x.Flags = (PipelineCreateFlags)(x.ref4d91852a.flags)
- x.StageCount = (uint32)(x.ref4d91852a.stageCount)
- packSPipelineShaderStageCreateInfo(x.PStages, x.ref4d91852a.pStages)
- hxf9aab83 := (*sliceHeader)(unsafe.Pointer(&x.PGroupNumbers))
- hxf9aab83.Data = unsafe.Pointer(x.ref4d91852a.pGroupNumbers)
- hxf9aab83.Cap = 0x7fffffff
- // hxf9aab83.Len = ?
-
- x.MaxRecursionDepth = (uint32)(x.ref4d91852a.maxRecursionDepth)
- x.Layout = *(*PipelineLayout)(unsafe.Pointer(&x.ref4d91852a.layout))
- x.BasePipelineHandle = *(*Pipeline)(unsafe.Pointer(&x.ref4d91852a.basePipelineHandle))
- x.BasePipelineIndex = (int32)(x.ref4d91852a.basePipelineIndex)
+ x.SType = (StructureType)(x.refb05347b2.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb05347b2.pNext))
+ x.PresentBarrierSupported = (Bool32)(x.refb05347b2.presentBarrierSupported)
}
-// allocGeometryTrianglesNVXMemory allocates memory for type C.VkGeometryTrianglesNVX in C.
+// allocSwapchainPresentBarrierCreateInfoNVMemory allocates memory for type C.VkSwapchainPresentBarrierCreateInfoNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocGeometryTrianglesNVXMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfGeometryTrianglesNVXValue))
+func allocSwapchainPresentBarrierCreateInfoNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSwapchainPresentBarrierCreateInfoNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfGeometryTrianglesNVXValue = unsafe.Sizeof([1]C.VkGeometryTrianglesNVX{})
+const sizeOfSwapchainPresentBarrierCreateInfoNVValue = unsafe.Sizeof([1]C.VkSwapchainPresentBarrierCreateInfoNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *GeometryTrianglesNVX) Ref() *C.VkGeometryTrianglesNVX {
+func (x *SwapchainPresentBarrierCreateInfoNV) Ref() *C.VkSwapchainPresentBarrierCreateInfoNV {
if x == nil {
return nil
}
- return x.ref5c3b4de9
+ return x.ref72c75914
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *GeometryTrianglesNVX) Free() {
- if x != nil && x.allocs5c3b4de9 != nil {
- x.allocs5c3b4de9.(*cgoAllocMap).Free()
- x.ref5c3b4de9 = nil
+func (x *SwapchainPresentBarrierCreateInfoNV) Free() {
+ if x != nil && x.allocs72c75914 != nil {
+ x.allocs72c75914.(*cgoAllocMap).Free()
+ x.ref72c75914 = nil
}
}
-// NewGeometryTrianglesNVXRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewSwapchainPresentBarrierCreateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewGeometryTrianglesNVXRef(ref unsafe.Pointer) *GeometryTrianglesNVX {
+func NewSwapchainPresentBarrierCreateInfoNVRef(ref unsafe.Pointer) *SwapchainPresentBarrierCreateInfoNV {
if ref == nil {
return nil
}
- obj := new(GeometryTrianglesNVX)
- obj.ref5c3b4de9 = (*C.VkGeometryTrianglesNVX)(unsafe.Pointer(ref))
+ obj := new(SwapchainPresentBarrierCreateInfoNV)
+ obj.ref72c75914 = (*C.VkSwapchainPresentBarrierCreateInfoNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *GeometryTrianglesNVX) PassRef() (*C.VkGeometryTrianglesNVX, *cgoAllocMap) {
+func (x *SwapchainPresentBarrierCreateInfoNV) PassRef() (*C.VkSwapchainPresentBarrierCreateInfoNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref5c3b4de9 != nil {
- return x.ref5c3b4de9, nil
+ } else if x.ref72c75914 != nil {
+ return x.ref72c75914, nil
}
- mem5c3b4de9 := allocGeometryTrianglesNVXMemory(1)
- ref5c3b4de9 := (*C.VkGeometryTrianglesNVX)(mem5c3b4de9)
- allocs5c3b4de9 := new(cgoAllocMap)
- allocs5c3b4de9.Add(mem5c3b4de9)
+ mem72c75914 := allocSwapchainPresentBarrierCreateInfoNVMemory(1)
+ ref72c75914 := (*C.VkSwapchainPresentBarrierCreateInfoNV)(mem72c75914)
+ allocs72c75914 := new(cgoAllocMap)
+ allocs72c75914.Add(mem72c75914)
var csType_allocs *cgoAllocMap
- ref5c3b4de9.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs5c3b4de9.Borrow(csType_allocs)
+ ref72c75914.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs72c75914.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref5c3b4de9.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs5c3b4de9.Borrow(cpNext_allocs)
-
- var cvertexData_allocs *cgoAllocMap
- ref5c3b4de9.vertexData, cvertexData_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.VertexData)), cgoAllocsUnknown
- allocs5c3b4de9.Borrow(cvertexData_allocs)
-
- var cvertexOffset_allocs *cgoAllocMap
- ref5c3b4de9.vertexOffset, cvertexOffset_allocs = (C.VkDeviceSize)(x.VertexOffset), cgoAllocsUnknown
- allocs5c3b4de9.Borrow(cvertexOffset_allocs)
+ ref72c75914.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs72c75914.Borrow(cpNext_allocs)
- var cvertexCount_allocs *cgoAllocMap
- ref5c3b4de9.vertexCount, cvertexCount_allocs = (C.uint32_t)(x.VertexCount), cgoAllocsUnknown
- allocs5c3b4de9.Borrow(cvertexCount_allocs)
-
- var cvertexStride_allocs *cgoAllocMap
- ref5c3b4de9.vertexStride, cvertexStride_allocs = (C.VkDeviceSize)(x.VertexStride), cgoAllocsUnknown
- allocs5c3b4de9.Borrow(cvertexStride_allocs)
-
- var cvertexFormat_allocs *cgoAllocMap
- ref5c3b4de9.vertexFormat, cvertexFormat_allocs = (C.VkFormat)(x.VertexFormat), cgoAllocsUnknown
- allocs5c3b4de9.Borrow(cvertexFormat_allocs)
-
- var cindexData_allocs *cgoAllocMap
- ref5c3b4de9.indexData, cindexData_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.IndexData)), cgoAllocsUnknown
- allocs5c3b4de9.Borrow(cindexData_allocs)
-
- var cindexOffset_allocs *cgoAllocMap
- ref5c3b4de9.indexOffset, cindexOffset_allocs = (C.VkDeviceSize)(x.IndexOffset), cgoAllocsUnknown
- allocs5c3b4de9.Borrow(cindexOffset_allocs)
-
- var cindexCount_allocs *cgoAllocMap
- ref5c3b4de9.indexCount, cindexCount_allocs = (C.uint32_t)(x.IndexCount), cgoAllocsUnknown
- allocs5c3b4de9.Borrow(cindexCount_allocs)
-
- var cindexType_allocs *cgoAllocMap
- ref5c3b4de9.indexType, cindexType_allocs = (C.VkIndexType)(x.IndexType), cgoAllocsUnknown
- allocs5c3b4de9.Borrow(cindexType_allocs)
-
- var ctransformData_allocs *cgoAllocMap
- ref5c3b4de9.transformData, ctransformData_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.TransformData)), cgoAllocsUnknown
- allocs5c3b4de9.Borrow(ctransformData_allocs)
+ var cpresentBarrierEnable_allocs *cgoAllocMap
+ ref72c75914.presentBarrierEnable, cpresentBarrierEnable_allocs = (C.VkBool32)(x.PresentBarrierEnable), cgoAllocsUnknown
+ allocs72c75914.Borrow(cpresentBarrierEnable_allocs)
- var ctransformOffset_allocs *cgoAllocMap
- ref5c3b4de9.transformOffset, ctransformOffset_allocs = (C.VkDeviceSize)(x.TransformOffset), cgoAllocsUnknown
- allocs5c3b4de9.Borrow(ctransformOffset_allocs)
-
- x.ref5c3b4de9 = ref5c3b4de9
- x.allocs5c3b4de9 = allocs5c3b4de9
- return ref5c3b4de9, allocs5c3b4de9
+ x.ref72c75914 = ref72c75914
+ x.allocs72c75914 = allocs72c75914
+ return ref72c75914, allocs72c75914
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x GeometryTrianglesNVX) PassValue() (C.VkGeometryTrianglesNVX, *cgoAllocMap) {
- if x.ref5c3b4de9 != nil {
- return *x.ref5c3b4de9, nil
+func (x SwapchainPresentBarrierCreateInfoNV) PassValue() (C.VkSwapchainPresentBarrierCreateInfoNV, *cgoAllocMap) {
+ if x.ref72c75914 != nil {
+ return *x.ref72c75914, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -36081,112 +62528,90 @@ func (x GeometryTrianglesNVX) PassValue() (C.VkGeometryTrianglesNVX, *cgoAllocMa
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *GeometryTrianglesNVX) Deref() {
- if x.ref5c3b4de9 == nil {
+func (x *SwapchainPresentBarrierCreateInfoNV) Deref() {
+ if x.ref72c75914 == nil {
return
}
- x.SType = (StructureType)(x.ref5c3b4de9.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5c3b4de9.pNext))
- x.VertexData = *(*Buffer)(unsafe.Pointer(&x.ref5c3b4de9.vertexData))
- x.VertexOffset = (DeviceSize)(x.ref5c3b4de9.vertexOffset)
- x.VertexCount = (uint32)(x.ref5c3b4de9.vertexCount)
- x.VertexStride = (DeviceSize)(x.ref5c3b4de9.vertexStride)
- x.VertexFormat = (Format)(x.ref5c3b4de9.vertexFormat)
- x.IndexData = *(*Buffer)(unsafe.Pointer(&x.ref5c3b4de9.indexData))
- x.IndexOffset = (DeviceSize)(x.ref5c3b4de9.indexOffset)
- x.IndexCount = (uint32)(x.ref5c3b4de9.indexCount)
- x.IndexType = (IndexType)(x.ref5c3b4de9.indexType)
- x.TransformData = *(*Buffer)(unsafe.Pointer(&x.ref5c3b4de9.transformData))
- x.TransformOffset = (DeviceSize)(x.ref5c3b4de9.transformOffset)
+ x.SType = (StructureType)(x.ref72c75914.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref72c75914.pNext))
+ x.PresentBarrierEnable = (Bool32)(x.ref72c75914.presentBarrierEnable)
}
-// allocGeometryAABBNVXMemory allocates memory for type C.VkGeometryAABBNVX in C.
+// allocPhysicalDeviceDiagnosticsConfigFeaturesNVMemory allocates memory for type C.VkPhysicalDeviceDiagnosticsConfigFeaturesNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocGeometryAABBNVXMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfGeometryAABBNVXValue))
+func allocPhysicalDeviceDiagnosticsConfigFeaturesNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceDiagnosticsConfigFeaturesNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfGeometryAABBNVXValue = unsafe.Sizeof([1]C.VkGeometryAABBNVX{})
+const sizeOfPhysicalDeviceDiagnosticsConfigFeaturesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceDiagnosticsConfigFeaturesNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *GeometryAABBNVX) Ref() *C.VkGeometryAABBNVX {
+func (x *PhysicalDeviceDiagnosticsConfigFeaturesNV) Ref() *C.VkPhysicalDeviceDiagnosticsConfigFeaturesNV {
if x == nil {
return nil
}
- return x.reff4c42a9d
+ return x.refd354d3ba
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *GeometryAABBNVX) Free() {
- if x != nil && x.allocsf4c42a9d != nil {
- x.allocsf4c42a9d.(*cgoAllocMap).Free()
- x.reff4c42a9d = nil
+func (x *PhysicalDeviceDiagnosticsConfigFeaturesNV) Free() {
+ if x != nil && x.allocsd354d3ba != nil {
+ x.allocsd354d3ba.(*cgoAllocMap).Free()
+ x.refd354d3ba = nil
}
}
-// NewGeometryAABBNVXRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceDiagnosticsConfigFeaturesNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewGeometryAABBNVXRef(ref unsafe.Pointer) *GeometryAABBNVX {
+func NewPhysicalDeviceDiagnosticsConfigFeaturesNVRef(ref unsafe.Pointer) *PhysicalDeviceDiagnosticsConfigFeaturesNV {
if ref == nil {
return nil
}
- obj := new(GeometryAABBNVX)
- obj.reff4c42a9d = (*C.VkGeometryAABBNVX)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceDiagnosticsConfigFeaturesNV)
+ obj.refd354d3ba = (*C.VkPhysicalDeviceDiagnosticsConfigFeaturesNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *GeometryAABBNVX) PassRef() (*C.VkGeometryAABBNVX, *cgoAllocMap) {
+func (x *PhysicalDeviceDiagnosticsConfigFeaturesNV) PassRef() (*C.VkPhysicalDeviceDiagnosticsConfigFeaturesNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.reff4c42a9d != nil {
- return x.reff4c42a9d, nil
+ } else if x.refd354d3ba != nil {
+ return x.refd354d3ba, nil
}
- memf4c42a9d := allocGeometryAABBNVXMemory(1)
- reff4c42a9d := (*C.VkGeometryAABBNVX)(memf4c42a9d)
- allocsf4c42a9d := new(cgoAllocMap)
- allocsf4c42a9d.Add(memf4c42a9d)
+ memd354d3ba := allocPhysicalDeviceDiagnosticsConfigFeaturesNVMemory(1)
+ refd354d3ba := (*C.VkPhysicalDeviceDiagnosticsConfigFeaturesNV)(memd354d3ba)
+ allocsd354d3ba := new(cgoAllocMap)
+ allocsd354d3ba.Add(memd354d3ba)
var csType_allocs *cgoAllocMap
- reff4c42a9d.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsf4c42a9d.Borrow(csType_allocs)
+ refd354d3ba.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd354d3ba.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- reff4c42a9d.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsf4c42a9d.Borrow(cpNext_allocs)
-
- var caabbData_allocs *cgoAllocMap
- reff4c42a9d.aabbData, caabbData_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.AabbData)), cgoAllocsUnknown
- allocsf4c42a9d.Borrow(caabbData_allocs)
+ refd354d3ba.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsd354d3ba.Borrow(cpNext_allocs)
- var cnumAABBs_allocs *cgoAllocMap
- reff4c42a9d.numAABBs, cnumAABBs_allocs = (C.uint32_t)(x.NumAABBs), cgoAllocsUnknown
- allocsf4c42a9d.Borrow(cnumAABBs_allocs)
-
- var cstride_allocs *cgoAllocMap
- reff4c42a9d.stride, cstride_allocs = (C.uint32_t)(x.Stride), cgoAllocsUnknown
- allocsf4c42a9d.Borrow(cstride_allocs)
-
- var coffset_allocs *cgoAllocMap
- reff4c42a9d.offset, coffset_allocs = (C.VkDeviceSize)(x.Offset), cgoAllocsUnknown
- allocsf4c42a9d.Borrow(coffset_allocs)
+ var cdiagnosticsConfig_allocs *cgoAllocMap
+ refd354d3ba.diagnosticsConfig, cdiagnosticsConfig_allocs = (C.VkBool32)(x.DiagnosticsConfig), cgoAllocsUnknown
+ allocsd354d3ba.Borrow(cdiagnosticsConfig_allocs)
- x.reff4c42a9d = reff4c42a9d
- x.allocsf4c42a9d = allocsf4c42a9d
- return reff4c42a9d, allocsf4c42a9d
+ x.refd354d3ba = refd354d3ba
+ x.allocsd354d3ba = allocsd354d3ba
+ return refd354d3ba, allocsd354d3ba
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x GeometryAABBNVX) PassValue() (C.VkGeometryAABBNVX, *cgoAllocMap) {
- if x.reff4c42a9d != nil {
- return *x.reff4c42a9d, nil
+func (x PhysicalDeviceDiagnosticsConfigFeaturesNV) PassValue() (C.VkPhysicalDeviceDiagnosticsConfigFeaturesNV, *cgoAllocMap) {
+ if x.refd354d3ba != nil {
+ return *x.refd354d3ba, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -36194,89 +62619,90 @@ func (x GeometryAABBNVX) PassValue() (C.VkGeometryAABBNVX, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *GeometryAABBNVX) Deref() {
- if x.reff4c42a9d == nil {
+func (x *PhysicalDeviceDiagnosticsConfigFeaturesNV) Deref() {
+ if x.refd354d3ba == nil {
return
}
- x.SType = (StructureType)(x.reff4c42a9d.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff4c42a9d.pNext))
- x.AabbData = *(*Buffer)(unsafe.Pointer(&x.reff4c42a9d.aabbData))
- x.NumAABBs = (uint32)(x.reff4c42a9d.numAABBs)
- x.Stride = (uint32)(x.reff4c42a9d.stride)
- x.Offset = (DeviceSize)(x.reff4c42a9d.offset)
+ x.SType = (StructureType)(x.refd354d3ba.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd354d3ba.pNext))
+ x.DiagnosticsConfig = (Bool32)(x.refd354d3ba.diagnosticsConfig)
}
-// allocGeometryDataNVXMemory allocates memory for type C.VkGeometryDataNVX in C.
+// allocDeviceDiagnosticsConfigCreateInfoNVMemory allocates memory for type C.VkDeviceDiagnosticsConfigCreateInfoNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocGeometryDataNVXMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfGeometryDataNVXValue))
+func allocDeviceDiagnosticsConfigCreateInfoNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceDiagnosticsConfigCreateInfoNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfGeometryDataNVXValue = unsafe.Sizeof([1]C.VkGeometryDataNVX{})
+const sizeOfDeviceDiagnosticsConfigCreateInfoNVValue = unsafe.Sizeof([1]C.VkDeviceDiagnosticsConfigCreateInfoNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *GeometryDataNVX) Ref() *C.VkGeometryDataNVX {
+func (x *DeviceDiagnosticsConfigCreateInfoNV) Ref() *C.VkDeviceDiagnosticsConfigCreateInfoNV {
if x == nil {
return nil
}
- return x.ref3db64dfa
+ return x.ref856c966a
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *GeometryDataNVX) Free() {
- if x != nil && x.allocs3db64dfa != nil {
- x.allocs3db64dfa.(*cgoAllocMap).Free()
- x.ref3db64dfa = nil
+func (x *DeviceDiagnosticsConfigCreateInfoNV) Free() {
+ if x != nil && x.allocs856c966a != nil {
+ x.allocs856c966a.(*cgoAllocMap).Free()
+ x.ref856c966a = nil
}
}
-// NewGeometryDataNVXRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDeviceDiagnosticsConfigCreateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewGeometryDataNVXRef(ref unsafe.Pointer) *GeometryDataNVX {
+func NewDeviceDiagnosticsConfigCreateInfoNVRef(ref unsafe.Pointer) *DeviceDiagnosticsConfigCreateInfoNV {
if ref == nil {
return nil
}
- obj := new(GeometryDataNVX)
- obj.ref3db64dfa = (*C.VkGeometryDataNVX)(unsafe.Pointer(ref))
+ obj := new(DeviceDiagnosticsConfigCreateInfoNV)
+ obj.ref856c966a = (*C.VkDeviceDiagnosticsConfigCreateInfoNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *GeometryDataNVX) PassRef() (*C.VkGeometryDataNVX, *cgoAllocMap) {
+func (x *DeviceDiagnosticsConfigCreateInfoNV) PassRef() (*C.VkDeviceDiagnosticsConfigCreateInfoNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref3db64dfa != nil {
- return x.ref3db64dfa, nil
+ } else if x.ref856c966a != nil {
+ return x.ref856c966a, nil
}
- mem3db64dfa := allocGeometryDataNVXMemory(1)
- ref3db64dfa := (*C.VkGeometryDataNVX)(mem3db64dfa)
- allocs3db64dfa := new(cgoAllocMap)
- allocs3db64dfa.Add(mem3db64dfa)
+ mem856c966a := allocDeviceDiagnosticsConfigCreateInfoNVMemory(1)
+ ref856c966a := (*C.VkDeviceDiagnosticsConfigCreateInfoNV)(mem856c966a)
+ allocs856c966a := new(cgoAllocMap)
+ allocs856c966a.Add(mem856c966a)
- var ctriangles_allocs *cgoAllocMap
- ref3db64dfa.triangles, ctriangles_allocs = x.Triangles.PassValue()
- allocs3db64dfa.Borrow(ctriangles_allocs)
+ var csType_allocs *cgoAllocMap
+ ref856c966a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs856c966a.Borrow(csType_allocs)
- var caabbs_allocs *cgoAllocMap
- ref3db64dfa.aabbs, caabbs_allocs = x.Aabbs.PassValue()
- allocs3db64dfa.Borrow(caabbs_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref856c966a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs856c966a.Borrow(cpNext_allocs)
- x.ref3db64dfa = ref3db64dfa
- x.allocs3db64dfa = allocs3db64dfa
- return ref3db64dfa, allocs3db64dfa
+ var cflags_allocs *cgoAllocMap
+ ref856c966a.flags, cflags_allocs = (C.VkDeviceDiagnosticsConfigFlagsNV)(x.Flags), cgoAllocsUnknown
+ allocs856c966a.Borrow(cflags_allocs)
+
+ x.ref856c966a = ref856c966a
+ x.allocs856c966a = allocs856c966a
+ return ref856c966a, allocs856c966a
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x GeometryDataNVX) PassValue() (C.VkGeometryDataNVX, *cgoAllocMap) {
- if x.ref3db64dfa != nil {
- return *x.ref3db64dfa, nil
+func (x DeviceDiagnosticsConfigCreateInfoNV) PassValue() (C.VkDeviceDiagnosticsConfigCreateInfoNV, *cgoAllocMap) {
+ if x.ref856c966a != nil {
+ return *x.ref856c966a, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -36284,97 +62710,218 @@ func (x GeometryDataNVX) PassValue() (C.VkGeometryDataNVX, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *GeometryDataNVX) Deref() {
- if x.ref3db64dfa == nil {
+func (x *DeviceDiagnosticsConfigCreateInfoNV) Deref() {
+ if x.ref856c966a == nil {
return
}
- x.Triangles = *NewGeometryTrianglesNVXRef(unsafe.Pointer(&x.ref3db64dfa.triangles))
- x.Aabbs = *NewGeometryAABBNVXRef(unsafe.Pointer(&x.ref3db64dfa.aabbs))
+ x.SType = (StructureType)(x.ref856c966a.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref856c966a.pNext))
+ x.Flags = (DeviceDiagnosticsConfigFlagsNV)(x.ref856c966a.flags)
}
-// allocGeometryNVXMemory allocates memory for type C.VkGeometryNVX in C.
+// allocPhysicalDeviceDescriptorBufferPropertiesMemory allocates memory for type C.VkPhysicalDeviceDescriptorBufferPropertiesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocGeometryNVXMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfGeometryNVXValue))
+func allocPhysicalDeviceDescriptorBufferPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceDescriptorBufferPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfGeometryNVXValue = unsafe.Sizeof([1]C.VkGeometryNVX{})
+const sizeOfPhysicalDeviceDescriptorBufferPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceDescriptorBufferPropertiesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *GeometryNVX) Ref() *C.VkGeometryNVX {
+func (x *PhysicalDeviceDescriptorBufferProperties) Ref() *C.VkPhysicalDeviceDescriptorBufferPropertiesEXT {
if x == nil {
return nil
}
- return x.refd01fad9d
+ return x.ref62cc13fb
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *GeometryNVX) Free() {
- if x != nil && x.allocsd01fad9d != nil {
- x.allocsd01fad9d.(*cgoAllocMap).Free()
- x.refd01fad9d = nil
+func (x *PhysicalDeviceDescriptorBufferProperties) Free() {
+ if x != nil && x.allocs62cc13fb != nil {
+ x.allocs62cc13fb.(*cgoAllocMap).Free()
+ x.ref62cc13fb = nil
}
}
-// NewGeometryNVXRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceDescriptorBufferPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewGeometryNVXRef(ref unsafe.Pointer) *GeometryNVX {
+func NewPhysicalDeviceDescriptorBufferPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceDescriptorBufferProperties {
if ref == nil {
return nil
}
- obj := new(GeometryNVX)
- obj.refd01fad9d = (*C.VkGeometryNVX)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceDescriptorBufferProperties)
+ obj.ref62cc13fb = (*C.VkPhysicalDeviceDescriptorBufferPropertiesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *GeometryNVX) PassRef() (*C.VkGeometryNVX, *cgoAllocMap) {
+func (x *PhysicalDeviceDescriptorBufferProperties) PassRef() (*C.VkPhysicalDeviceDescriptorBufferPropertiesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refd01fad9d != nil {
- return x.refd01fad9d, nil
+ } else if x.ref62cc13fb != nil {
+ return x.ref62cc13fb, nil
}
- memd01fad9d := allocGeometryNVXMemory(1)
- refd01fad9d := (*C.VkGeometryNVX)(memd01fad9d)
- allocsd01fad9d := new(cgoAllocMap)
- allocsd01fad9d.Add(memd01fad9d)
+ mem62cc13fb := allocPhysicalDeviceDescriptorBufferPropertiesMemory(1)
+ ref62cc13fb := (*C.VkPhysicalDeviceDescriptorBufferPropertiesEXT)(mem62cc13fb)
+ allocs62cc13fb := new(cgoAllocMap)
+ allocs62cc13fb.Add(mem62cc13fb)
var csType_allocs *cgoAllocMap
- refd01fad9d.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsd01fad9d.Borrow(csType_allocs)
+ ref62cc13fb.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refd01fad9d.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsd01fad9d.Borrow(cpNext_allocs)
+ ref62cc13fb.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(cpNext_allocs)
- var cgeometryType_allocs *cgoAllocMap
- refd01fad9d.geometryType, cgeometryType_allocs = (C.VkGeometryTypeNVX)(x.GeometryType), cgoAllocsUnknown
- allocsd01fad9d.Borrow(cgeometryType_allocs)
+ var ccombinedImageSamplerDescriptorSingleArray_allocs *cgoAllocMap
+ ref62cc13fb.combinedImageSamplerDescriptorSingleArray, ccombinedImageSamplerDescriptorSingleArray_allocs = (C.VkBool32)(x.CombinedImageSamplerDescriptorSingleArray), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(ccombinedImageSamplerDescriptorSingleArray_allocs)
- var cgeometry_allocs *cgoAllocMap
- refd01fad9d.geometry, cgeometry_allocs = x.Geometry.PassValue()
- allocsd01fad9d.Borrow(cgeometry_allocs)
+ var cbufferlessPushDescriptors_allocs *cgoAllocMap
+ ref62cc13fb.bufferlessPushDescriptors, cbufferlessPushDescriptors_allocs = (C.VkBool32)(x.BufferlessPushDescriptors), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(cbufferlessPushDescriptors_allocs)
- var cflags_allocs *cgoAllocMap
- refd01fad9d.flags, cflags_allocs = (C.VkGeometryFlagsNVX)(x.Flags), cgoAllocsUnknown
- allocsd01fad9d.Borrow(cflags_allocs)
+ var callowSamplerImageViewPostSubmitCreation_allocs *cgoAllocMap
+ ref62cc13fb.allowSamplerImageViewPostSubmitCreation, callowSamplerImageViewPostSubmitCreation_allocs = (C.VkBool32)(x.AllowSamplerImageViewPostSubmitCreation), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(callowSamplerImageViewPostSubmitCreation_allocs)
+
+ var cdescriptorBufferOffsetAlignment_allocs *cgoAllocMap
+ ref62cc13fb.descriptorBufferOffsetAlignment, cdescriptorBufferOffsetAlignment_allocs = (C.VkDeviceSize)(x.DescriptorBufferOffsetAlignment), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(cdescriptorBufferOffsetAlignment_allocs)
+
+ var cmaxDescriptorBufferBindings_allocs *cgoAllocMap
+ ref62cc13fb.maxDescriptorBufferBindings, cmaxDescriptorBufferBindings_allocs = (C.uint32_t)(x.MaxDescriptorBufferBindings), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(cmaxDescriptorBufferBindings_allocs)
+
+ var cmaxResourceDescriptorBufferBindings_allocs *cgoAllocMap
+ ref62cc13fb.maxResourceDescriptorBufferBindings, cmaxResourceDescriptorBufferBindings_allocs = (C.uint32_t)(x.MaxResourceDescriptorBufferBindings), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(cmaxResourceDescriptorBufferBindings_allocs)
+
+ var cmaxSamplerDescriptorBufferBindings_allocs *cgoAllocMap
+ ref62cc13fb.maxSamplerDescriptorBufferBindings, cmaxSamplerDescriptorBufferBindings_allocs = (C.uint32_t)(x.MaxSamplerDescriptorBufferBindings), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(cmaxSamplerDescriptorBufferBindings_allocs)
+
+ var cmaxEmbeddedImmutableSamplerBindings_allocs *cgoAllocMap
+ ref62cc13fb.maxEmbeddedImmutableSamplerBindings, cmaxEmbeddedImmutableSamplerBindings_allocs = (C.uint32_t)(x.MaxEmbeddedImmutableSamplerBindings), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(cmaxEmbeddedImmutableSamplerBindings_allocs)
+
+ var cmaxEmbeddedImmutableSamplers_allocs *cgoAllocMap
+ ref62cc13fb.maxEmbeddedImmutableSamplers, cmaxEmbeddedImmutableSamplers_allocs = (C.uint32_t)(x.MaxEmbeddedImmutableSamplers), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(cmaxEmbeddedImmutableSamplers_allocs)
+
+ var cbufferCaptureReplayDescriptorDataSize_allocs *cgoAllocMap
+ ref62cc13fb.bufferCaptureReplayDescriptorDataSize, cbufferCaptureReplayDescriptorDataSize_allocs = (C.size_t)(x.BufferCaptureReplayDescriptorDataSize), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(cbufferCaptureReplayDescriptorDataSize_allocs)
+
+ var cimageCaptureReplayDescriptorDataSize_allocs *cgoAllocMap
+ ref62cc13fb.imageCaptureReplayDescriptorDataSize, cimageCaptureReplayDescriptorDataSize_allocs = (C.size_t)(x.ImageCaptureReplayDescriptorDataSize), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(cimageCaptureReplayDescriptorDataSize_allocs)
+
+ var cimageViewCaptureReplayDescriptorDataSize_allocs *cgoAllocMap
+ ref62cc13fb.imageViewCaptureReplayDescriptorDataSize, cimageViewCaptureReplayDescriptorDataSize_allocs = (C.size_t)(x.ImageViewCaptureReplayDescriptorDataSize), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(cimageViewCaptureReplayDescriptorDataSize_allocs)
+
+ var csamplerCaptureReplayDescriptorDataSize_allocs *cgoAllocMap
+ ref62cc13fb.samplerCaptureReplayDescriptorDataSize, csamplerCaptureReplayDescriptorDataSize_allocs = (C.size_t)(x.SamplerCaptureReplayDescriptorDataSize), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(csamplerCaptureReplayDescriptorDataSize_allocs)
+
+ var caccelerationStructureCaptureReplayDescriptorDataSize_allocs *cgoAllocMap
+ ref62cc13fb.accelerationStructureCaptureReplayDescriptorDataSize, caccelerationStructureCaptureReplayDescriptorDataSize_allocs = (C.size_t)(x.AccelerationStructureCaptureReplayDescriptorDataSize), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(caccelerationStructureCaptureReplayDescriptorDataSize_allocs)
+
+ var csamplerDescriptorSize_allocs *cgoAllocMap
+ ref62cc13fb.samplerDescriptorSize, csamplerDescriptorSize_allocs = (C.size_t)(x.SamplerDescriptorSize), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(csamplerDescriptorSize_allocs)
+
+ var ccombinedImageSamplerDescriptorSize_allocs *cgoAllocMap
+ ref62cc13fb.combinedImageSamplerDescriptorSize, ccombinedImageSamplerDescriptorSize_allocs = (C.size_t)(x.CombinedImageSamplerDescriptorSize), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(ccombinedImageSamplerDescriptorSize_allocs)
+
+ var csampledImageDescriptorSize_allocs *cgoAllocMap
+ ref62cc13fb.sampledImageDescriptorSize, csampledImageDescriptorSize_allocs = (C.size_t)(x.SampledImageDescriptorSize), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(csampledImageDescriptorSize_allocs)
+
+ var cstorageImageDescriptorSize_allocs *cgoAllocMap
+ ref62cc13fb.storageImageDescriptorSize, cstorageImageDescriptorSize_allocs = (C.size_t)(x.StorageImageDescriptorSize), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(cstorageImageDescriptorSize_allocs)
+
+ var cuniformTexelBufferDescriptorSize_allocs *cgoAllocMap
+ ref62cc13fb.uniformTexelBufferDescriptorSize, cuniformTexelBufferDescriptorSize_allocs = (C.size_t)(x.UniformTexelBufferDescriptorSize), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(cuniformTexelBufferDescriptorSize_allocs)
+
+ var crobustUniformTexelBufferDescriptorSize_allocs *cgoAllocMap
+ ref62cc13fb.robustUniformTexelBufferDescriptorSize, crobustUniformTexelBufferDescriptorSize_allocs = (C.size_t)(x.RobustUniformTexelBufferDescriptorSize), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(crobustUniformTexelBufferDescriptorSize_allocs)
+
+ var cstorageTexelBufferDescriptorSize_allocs *cgoAllocMap
+ ref62cc13fb.storageTexelBufferDescriptorSize, cstorageTexelBufferDescriptorSize_allocs = (C.size_t)(x.StorageTexelBufferDescriptorSize), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(cstorageTexelBufferDescriptorSize_allocs)
+
+ var crobustStorageTexelBufferDescriptorSize_allocs *cgoAllocMap
+ ref62cc13fb.robustStorageTexelBufferDescriptorSize, crobustStorageTexelBufferDescriptorSize_allocs = (C.size_t)(x.RobustStorageTexelBufferDescriptorSize), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(crobustStorageTexelBufferDescriptorSize_allocs)
+
+ var cuniformBufferDescriptorSize_allocs *cgoAllocMap
+ ref62cc13fb.uniformBufferDescriptorSize, cuniformBufferDescriptorSize_allocs = (C.size_t)(x.UniformBufferDescriptorSize), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(cuniformBufferDescriptorSize_allocs)
+
+ var crobustUniformBufferDescriptorSize_allocs *cgoAllocMap
+ ref62cc13fb.robustUniformBufferDescriptorSize, crobustUniformBufferDescriptorSize_allocs = (C.size_t)(x.RobustUniformBufferDescriptorSize), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(crobustUniformBufferDescriptorSize_allocs)
+
+ var cstorageBufferDescriptorSize_allocs *cgoAllocMap
+ ref62cc13fb.storageBufferDescriptorSize, cstorageBufferDescriptorSize_allocs = (C.size_t)(x.StorageBufferDescriptorSize), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(cstorageBufferDescriptorSize_allocs)
+
+ var crobustStorageBufferDescriptorSize_allocs *cgoAllocMap
+ ref62cc13fb.robustStorageBufferDescriptorSize, crobustStorageBufferDescriptorSize_allocs = (C.size_t)(x.RobustStorageBufferDescriptorSize), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(crobustStorageBufferDescriptorSize_allocs)
+
+ var cinputAttachmentDescriptorSize_allocs *cgoAllocMap
+ ref62cc13fb.inputAttachmentDescriptorSize, cinputAttachmentDescriptorSize_allocs = (C.size_t)(x.InputAttachmentDescriptorSize), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(cinputAttachmentDescriptorSize_allocs)
+
+ var caccelerationStructureDescriptorSize_allocs *cgoAllocMap
+ ref62cc13fb.accelerationStructureDescriptorSize, caccelerationStructureDescriptorSize_allocs = (C.size_t)(x.AccelerationStructureDescriptorSize), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(caccelerationStructureDescriptorSize_allocs)
+
+ var cmaxSamplerDescriptorBufferRange_allocs *cgoAllocMap
+ ref62cc13fb.maxSamplerDescriptorBufferRange, cmaxSamplerDescriptorBufferRange_allocs = (C.VkDeviceSize)(x.MaxSamplerDescriptorBufferRange), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(cmaxSamplerDescriptorBufferRange_allocs)
+
+ var cmaxResourceDescriptorBufferRange_allocs *cgoAllocMap
+ ref62cc13fb.maxResourceDescriptorBufferRange, cmaxResourceDescriptorBufferRange_allocs = (C.VkDeviceSize)(x.MaxResourceDescriptorBufferRange), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(cmaxResourceDescriptorBufferRange_allocs)
+
+ var csamplerDescriptorBufferAddressSpaceSize_allocs *cgoAllocMap
+ ref62cc13fb.samplerDescriptorBufferAddressSpaceSize, csamplerDescriptorBufferAddressSpaceSize_allocs = (C.VkDeviceSize)(x.SamplerDescriptorBufferAddressSpaceSize), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(csamplerDescriptorBufferAddressSpaceSize_allocs)
+
+ var cresourceDescriptorBufferAddressSpaceSize_allocs *cgoAllocMap
+ ref62cc13fb.resourceDescriptorBufferAddressSpaceSize, cresourceDescriptorBufferAddressSpaceSize_allocs = (C.VkDeviceSize)(x.ResourceDescriptorBufferAddressSpaceSize), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(cresourceDescriptorBufferAddressSpaceSize_allocs)
+
+ var cdescriptorBufferAddressSpaceSize_allocs *cgoAllocMap
+ ref62cc13fb.descriptorBufferAddressSpaceSize, cdescriptorBufferAddressSpaceSize_allocs = (C.VkDeviceSize)(x.DescriptorBufferAddressSpaceSize), cgoAllocsUnknown
+ allocs62cc13fb.Borrow(cdescriptorBufferAddressSpaceSize_allocs)
- x.refd01fad9d = refd01fad9d
- x.allocsd01fad9d = allocsd01fad9d
- return refd01fad9d, allocsd01fad9d
+ x.ref62cc13fb = ref62cc13fb
+ x.allocs62cc13fb = allocs62cc13fb
+ return ref62cc13fb, allocs62cc13fb
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x GeometryNVX) PassValue() (C.VkGeometryNVX, *cgoAllocMap) {
- if x.refd01fad9d != nil {
- return *x.refd01fad9d, nil
+func (x PhysicalDeviceDescriptorBufferProperties) PassValue() (C.VkPhysicalDeviceDescriptorBufferPropertiesEXT, *cgoAllocMap) {
+ if x.ref62cc13fb != nil {
+ return *x.ref62cc13fb, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -36382,150 +62929,327 @@ func (x GeometryNVX) PassValue() (C.VkGeometryNVX, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *GeometryNVX) Deref() {
- if x.refd01fad9d == nil {
+func (x *PhysicalDeviceDescriptorBufferProperties) Deref() {
+ if x.ref62cc13fb == nil {
return
}
- x.SType = (StructureType)(x.refd01fad9d.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd01fad9d.pNext))
- x.GeometryType = (GeometryTypeNVX)(x.refd01fad9d.geometryType)
- x.Geometry = *NewGeometryDataNVXRef(unsafe.Pointer(&x.refd01fad9d.geometry))
- x.Flags = (GeometryFlagsNVX)(x.refd01fad9d.flags)
-}
-
-// allocAccelerationStructureCreateInfoNVXMemory allocates memory for type C.VkAccelerationStructureCreateInfoNVX in C.
+ x.SType = (StructureType)(x.ref62cc13fb.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref62cc13fb.pNext))
+ x.CombinedImageSamplerDescriptorSingleArray = (Bool32)(x.ref62cc13fb.combinedImageSamplerDescriptorSingleArray)
+ x.BufferlessPushDescriptors = (Bool32)(x.ref62cc13fb.bufferlessPushDescriptors)
+ x.AllowSamplerImageViewPostSubmitCreation = (Bool32)(x.ref62cc13fb.allowSamplerImageViewPostSubmitCreation)
+ x.DescriptorBufferOffsetAlignment = (DeviceSize)(x.ref62cc13fb.descriptorBufferOffsetAlignment)
+ x.MaxDescriptorBufferBindings = (uint32)(x.ref62cc13fb.maxDescriptorBufferBindings)
+ x.MaxResourceDescriptorBufferBindings = (uint32)(x.ref62cc13fb.maxResourceDescriptorBufferBindings)
+ x.MaxSamplerDescriptorBufferBindings = (uint32)(x.ref62cc13fb.maxSamplerDescriptorBufferBindings)
+ x.MaxEmbeddedImmutableSamplerBindings = (uint32)(x.ref62cc13fb.maxEmbeddedImmutableSamplerBindings)
+ x.MaxEmbeddedImmutableSamplers = (uint32)(x.ref62cc13fb.maxEmbeddedImmutableSamplers)
+ x.BufferCaptureReplayDescriptorDataSize = (uint64)(x.ref62cc13fb.bufferCaptureReplayDescriptorDataSize)
+ x.ImageCaptureReplayDescriptorDataSize = (uint64)(x.ref62cc13fb.imageCaptureReplayDescriptorDataSize)
+ x.ImageViewCaptureReplayDescriptorDataSize = (uint64)(x.ref62cc13fb.imageViewCaptureReplayDescriptorDataSize)
+ x.SamplerCaptureReplayDescriptorDataSize = (uint64)(x.ref62cc13fb.samplerCaptureReplayDescriptorDataSize)
+ x.AccelerationStructureCaptureReplayDescriptorDataSize = (uint64)(x.ref62cc13fb.accelerationStructureCaptureReplayDescriptorDataSize)
+ x.SamplerDescriptorSize = (uint64)(x.ref62cc13fb.samplerDescriptorSize)
+ x.CombinedImageSamplerDescriptorSize = (uint64)(x.ref62cc13fb.combinedImageSamplerDescriptorSize)
+ x.SampledImageDescriptorSize = (uint64)(x.ref62cc13fb.sampledImageDescriptorSize)
+ x.StorageImageDescriptorSize = (uint64)(x.ref62cc13fb.storageImageDescriptorSize)
+ x.UniformTexelBufferDescriptorSize = (uint64)(x.ref62cc13fb.uniformTexelBufferDescriptorSize)
+ x.RobustUniformTexelBufferDescriptorSize = (uint64)(x.ref62cc13fb.robustUniformTexelBufferDescriptorSize)
+ x.StorageTexelBufferDescriptorSize = (uint64)(x.ref62cc13fb.storageTexelBufferDescriptorSize)
+ x.RobustStorageTexelBufferDescriptorSize = (uint64)(x.ref62cc13fb.robustStorageTexelBufferDescriptorSize)
+ x.UniformBufferDescriptorSize = (uint64)(x.ref62cc13fb.uniformBufferDescriptorSize)
+ x.RobustUniformBufferDescriptorSize = (uint64)(x.ref62cc13fb.robustUniformBufferDescriptorSize)
+ x.StorageBufferDescriptorSize = (uint64)(x.ref62cc13fb.storageBufferDescriptorSize)
+ x.RobustStorageBufferDescriptorSize = (uint64)(x.ref62cc13fb.robustStorageBufferDescriptorSize)
+ x.InputAttachmentDescriptorSize = (uint64)(x.ref62cc13fb.inputAttachmentDescriptorSize)
+ x.AccelerationStructureDescriptorSize = (uint64)(x.ref62cc13fb.accelerationStructureDescriptorSize)
+ x.MaxSamplerDescriptorBufferRange = (DeviceSize)(x.ref62cc13fb.maxSamplerDescriptorBufferRange)
+ x.MaxResourceDescriptorBufferRange = (DeviceSize)(x.ref62cc13fb.maxResourceDescriptorBufferRange)
+ x.SamplerDescriptorBufferAddressSpaceSize = (DeviceSize)(x.ref62cc13fb.samplerDescriptorBufferAddressSpaceSize)
+ x.ResourceDescriptorBufferAddressSpaceSize = (DeviceSize)(x.ref62cc13fb.resourceDescriptorBufferAddressSpaceSize)
+ x.DescriptorBufferAddressSpaceSize = (DeviceSize)(x.ref62cc13fb.descriptorBufferAddressSpaceSize)
+}
+
+// allocPhysicalDeviceDescriptorBufferDensityMapPropertiesMemory allocates memory for type C.VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocAccelerationStructureCreateInfoNVXMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfAccelerationStructureCreateInfoNVXValue))
+func allocPhysicalDeviceDescriptorBufferDensityMapPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceDescriptorBufferDensityMapPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfAccelerationStructureCreateInfoNVXValue = unsafe.Sizeof([1]C.VkAccelerationStructureCreateInfoNVX{})
+const sizeOfPhysicalDeviceDescriptorBufferDensityMapPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *PhysicalDeviceDescriptorBufferDensityMapProperties) Ref() *C.VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT {
+ if x == nil {
+ return nil
+ }
+ return x.refb23ce6c9
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *PhysicalDeviceDescriptorBufferDensityMapProperties) Free() {
+ if x != nil && x.allocsb23ce6c9 != nil {
+ x.allocsb23ce6c9.(*cgoAllocMap).Free()
+ x.refb23ce6c9 = nil
+ }
+}
+
+// NewPhysicalDeviceDescriptorBufferDensityMapPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewPhysicalDeviceDescriptorBufferDensityMapPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceDescriptorBufferDensityMapProperties {
+ if ref == nil {
+ return nil
+ }
+ obj := new(PhysicalDeviceDescriptorBufferDensityMapProperties)
+ obj.refb23ce6c9 = (*C.VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT)(unsafe.Pointer(ref))
+ return obj
+}
-// unpackSGeometryNVX transforms a sliced Go data structure into plain C format.
-func unpackSGeometryNVX(x []GeometryNVX) (unpacked *C.VkGeometryNVX, allocs *cgoAllocMap) {
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *PhysicalDeviceDescriptorBufferDensityMapProperties) PassRef() (*C.VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
+ } else if x.refb23ce6c9 != nil {
+ return x.refb23ce6c9, nil
}
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkGeometryNVX) {
- go allocs.Free()
- })
+ memb23ce6c9 := allocPhysicalDeviceDescriptorBufferDensityMapPropertiesMemory(1)
+ refb23ce6c9 := (*C.VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT)(memb23ce6c9)
+ allocsb23ce6c9 := new(cgoAllocMap)
+ allocsb23ce6c9.Add(memb23ce6c9)
- len0 := len(x)
- mem0 := allocGeometryNVXMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
+ var csType_allocs *cgoAllocMap
+ refb23ce6c9.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsb23ce6c9.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ refb23ce6c9.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsb23ce6c9.Borrow(cpNext_allocs)
+
+ var ccombinedImageSamplerDensityMapDescriptorSize_allocs *cgoAllocMap
+ refb23ce6c9.combinedImageSamplerDensityMapDescriptorSize, ccombinedImageSamplerDensityMapDescriptorSize_allocs = (C.size_t)(x.CombinedImageSamplerDensityMapDescriptorSize), cgoAllocsUnknown
+ allocsb23ce6c9.Borrow(ccombinedImageSamplerDensityMapDescriptorSize_allocs)
+
+ x.refb23ce6c9 = refb23ce6c9
+ x.allocsb23ce6c9 = allocsb23ce6c9
+ return refb23ce6c9, allocsb23ce6c9
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceDescriptorBufferDensityMapProperties) PassValue() (C.VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT, *cgoAllocMap) {
+ if x.refb23ce6c9 != nil {
+ return *x.refb23ce6c9, nil
}
- v0 := *(*[]C.VkGeometryNVX)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceDescriptorBufferDensityMapProperties) Deref() {
+ if x.refb23ce6c9 == nil {
+ return
}
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkGeometryNVX)(h.Data)
- return
+ x.SType = (StructureType)(x.refb23ce6c9.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb23ce6c9.pNext))
+ x.CombinedImageSamplerDensityMapDescriptorSize = (uint64)(x.refb23ce6c9.combinedImageSamplerDensityMapDescriptorSize)
}
-// packSGeometryNVX reads sliced Go data structure out from plain C format.
-func packSGeometryNVX(v []GeometryNVX, ptr0 *C.VkGeometryNVX) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfGeometryNVXValue]C.VkGeometryNVX)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewGeometryNVXRef(unsafe.Pointer(&ptr1))
+// allocPhysicalDeviceDescriptorBufferFeaturesMemory allocates memory for type C.VkPhysicalDeviceDescriptorBufferFeaturesEXT in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceDescriptorBufferFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceDescriptorBufferFeaturesValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
}
+ return mem
}
+const sizeOfPhysicalDeviceDescriptorBufferFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceDescriptorBufferFeaturesEXT{})
+
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *AccelerationStructureCreateInfoNVX) Ref() *C.VkAccelerationStructureCreateInfoNVX {
+func (x *PhysicalDeviceDescriptorBufferFeatures) Ref() *C.VkPhysicalDeviceDescriptorBufferFeaturesEXT {
if x == nil {
return nil
}
- return x.ref1289fd56
+ return x.ref840279e1
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *AccelerationStructureCreateInfoNVX) Free() {
- if x != nil && x.allocs1289fd56 != nil {
- x.allocs1289fd56.(*cgoAllocMap).Free()
- x.ref1289fd56 = nil
+func (x *PhysicalDeviceDescriptorBufferFeatures) Free() {
+ if x != nil && x.allocs840279e1 != nil {
+ x.allocs840279e1.(*cgoAllocMap).Free()
+ x.ref840279e1 = nil
}
}
-// NewAccelerationStructureCreateInfoNVXRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceDescriptorBufferFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewAccelerationStructureCreateInfoNVXRef(ref unsafe.Pointer) *AccelerationStructureCreateInfoNVX {
+func NewPhysicalDeviceDescriptorBufferFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceDescriptorBufferFeatures {
if ref == nil {
return nil
}
- obj := new(AccelerationStructureCreateInfoNVX)
- obj.ref1289fd56 = (*C.VkAccelerationStructureCreateInfoNVX)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceDescriptorBufferFeatures)
+ obj.ref840279e1 = (*C.VkPhysicalDeviceDescriptorBufferFeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *AccelerationStructureCreateInfoNVX) PassRef() (*C.VkAccelerationStructureCreateInfoNVX, *cgoAllocMap) {
+func (x *PhysicalDeviceDescriptorBufferFeatures) PassRef() (*C.VkPhysicalDeviceDescriptorBufferFeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref1289fd56 != nil {
- return x.ref1289fd56, nil
+ } else if x.ref840279e1 != nil {
+ return x.ref840279e1, nil
}
- mem1289fd56 := allocAccelerationStructureCreateInfoNVXMemory(1)
- ref1289fd56 := (*C.VkAccelerationStructureCreateInfoNVX)(mem1289fd56)
- allocs1289fd56 := new(cgoAllocMap)
- allocs1289fd56.Add(mem1289fd56)
+ mem840279e1 := allocPhysicalDeviceDescriptorBufferFeaturesMemory(1)
+ ref840279e1 := (*C.VkPhysicalDeviceDescriptorBufferFeaturesEXT)(mem840279e1)
+ allocs840279e1 := new(cgoAllocMap)
+ allocs840279e1.Add(mem840279e1)
var csType_allocs *cgoAllocMap
- ref1289fd56.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs1289fd56.Borrow(csType_allocs)
+ ref840279e1.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs840279e1.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref1289fd56.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs1289fd56.Borrow(cpNext_allocs)
+ ref840279e1.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs840279e1.Borrow(cpNext_allocs)
- var c_type_allocs *cgoAllocMap
- ref1289fd56._type, c_type_allocs = (C.VkAccelerationStructureTypeNVX)(x.Type), cgoAllocsUnknown
- allocs1289fd56.Borrow(c_type_allocs)
+ var cdescriptorBuffer_allocs *cgoAllocMap
+ ref840279e1.descriptorBuffer, cdescriptorBuffer_allocs = (C.VkBool32)(x.DescriptorBuffer), cgoAllocsUnknown
+ allocs840279e1.Borrow(cdescriptorBuffer_allocs)
- var cflags_allocs *cgoAllocMap
- ref1289fd56.flags, cflags_allocs = (C.VkBuildAccelerationStructureFlagsNVX)(x.Flags), cgoAllocsUnknown
- allocs1289fd56.Borrow(cflags_allocs)
+ var cdescriptorBufferCaptureReplay_allocs *cgoAllocMap
+ ref840279e1.descriptorBufferCaptureReplay, cdescriptorBufferCaptureReplay_allocs = (C.VkBool32)(x.DescriptorBufferCaptureReplay), cgoAllocsUnknown
+ allocs840279e1.Borrow(cdescriptorBufferCaptureReplay_allocs)
- var ccompactedSize_allocs *cgoAllocMap
- ref1289fd56.compactedSize, ccompactedSize_allocs = (C.VkDeviceSize)(x.CompactedSize), cgoAllocsUnknown
- allocs1289fd56.Borrow(ccompactedSize_allocs)
+ var cdescriptorBufferImageLayoutIgnored_allocs *cgoAllocMap
+ ref840279e1.descriptorBufferImageLayoutIgnored, cdescriptorBufferImageLayoutIgnored_allocs = (C.VkBool32)(x.DescriptorBufferImageLayoutIgnored), cgoAllocsUnknown
+ allocs840279e1.Borrow(cdescriptorBufferImageLayoutIgnored_allocs)
- var cinstanceCount_allocs *cgoAllocMap
- ref1289fd56.instanceCount, cinstanceCount_allocs = (C.uint32_t)(x.InstanceCount), cgoAllocsUnknown
- allocs1289fd56.Borrow(cinstanceCount_allocs)
+ var cdescriptorBufferPushDescriptors_allocs *cgoAllocMap
+ ref840279e1.descriptorBufferPushDescriptors, cdescriptorBufferPushDescriptors_allocs = (C.VkBool32)(x.DescriptorBufferPushDescriptors), cgoAllocsUnknown
+ allocs840279e1.Borrow(cdescriptorBufferPushDescriptors_allocs)
+
+ x.ref840279e1 = ref840279e1
+ x.allocs840279e1 = allocs840279e1
+ return ref840279e1, allocs840279e1
+
+}
+
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x PhysicalDeviceDescriptorBufferFeatures) PassValue() (C.VkPhysicalDeviceDescriptorBufferFeaturesEXT, *cgoAllocMap) {
+ if x.ref840279e1 != nil {
+ return *x.ref840279e1, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *PhysicalDeviceDescriptorBufferFeatures) Deref() {
+ if x.ref840279e1 == nil {
+ return
+ }
+ x.SType = (StructureType)(x.ref840279e1.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref840279e1.pNext))
+ x.DescriptorBuffer = (Bool32)(x.ref840279e1.descriptorBuffer)
+ x.DescriptorBufferCaptureReplay = (Bool32)(x.ref840279e1.descriptorBufferCaptureReplay)
+ x.DescriptorBufferImageLayoutIgnored = (Bool32)(x.ref840279e1.descriptorBufferImageLayoutIgnored)
+ x.DescriptorBufferPushDescriptors = (Bool32)(x.ref840279e1.descriptorBufferPushDescriptors)
+}
+
+// allocDescriptorAddressInfoMemory allocates memory for type C.VkDescriptorAddressInfoEXT in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocDescriptorAddressInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorAddressInfoValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
- var cgeometryCount_allocs *cgoAllocMap
- ref1289fd56.geometryCount, cgeometryCount_allocs = (C.uint32_t)(x.GeometryCount), cgoAllocsUnknown
- allocs1289fd56.Borrow(cgeometryCount_allocs)
+const sizeOfDescriptorAddressInfoValue = unsafe.Sizeof([1]C.VkDescriptorAddressInfoEXT{})
- var cpGeometries_allocs *cgoAllocMap
- ref1289fd56.pGeometries, cpGeometries_allocs = unpackSGeometryNVX(x.PGeometries)
- allocs1289fd56.Borrow(cpGeometries_allocs)
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *DescriptorAddressInfo) Ref() *C.VkDescriptorAddressInfoEXT {
+ if x == nil {
+ return nil
+ }
+ return x.ref3f3c750d
+}
- x.ref1289fd56 = ref1289fd56
- x.allocs1289fd56 = allocs1289fd56
- return ref1289fd56, allocs1289fd56
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *DescriptorAddressInfo) Free() {
+ if x != nil && x.allocs3f3c750d != nil {
+ x.allocs3f3c750d.(*cgoAllocMap).Free()
+ x.ref3f3c750d = nil
+ }
+}
+
+// NewDescriptorAddressInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewDescriptorAddressInfoRef(ref unsafe.Pointer) *DescriptorAddressInfo {
+ if ref == nil {
+ return nil
+ }
+ obj := new(DescriptorAddressInfo)
+ obj.ref3f3c750d = (*C.VkDescriptorAddressInfoEXT)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DescriptorAddressInfo) PassRef() (*C.VkDescriptorAddressInfoEXT, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref3f3c750d != nil {
+ return x.ref3f3c750d, nil
+ }
+ mem3f3c750d := allocDescriptorAddressInfoMemory(1)
+ ref3f3c750d := (*C.VkDescriptorAddressInfoEXT)(mem3f3c750d)
+ allocs3f3c750d := new(cgoAllocMap)
+ allocs3f3c750d.Add(mem3f3c750d)
+
+ var csType_allocs *cgoAllocMap
+ ref3f3c750d.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs3f3c750d.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref3f3c750d.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs3f3c750d.Borrow(cpNext_allocs)
+
+ var caddress_allocs *cgoAllocMap
+ ref3f3c750d.address, caddress_allocs = (C.VkDeviceAddress)(x.Address), cgoAllocsUnknown
+ allocs3f3c750d.Borrow(caddress_allocs)
+
+ var c_range_allocs *cgoAllocMap
+ ref3f3c750d._range, c_range_allocs = (C.VkDeviceSize)(x.Range), cgoAllocsUnknown
+ allocs3f3c750d.Borrow(c_range_allocs)
+
+ var cformat_allocs *cgoAllocMap
+ ref3f3c750d.format, cformat_allocs = (C.VkFormat)(x.Format), cgoAllocsUnknown
+ allocs3f3c750d.Borrow(cformat_allocs)
+
+ x.ref3f3c750d = ref3f3c750d
+ x.allocs3f3c750d = allocs3f3c750d
+ return ref3f3c750d, allocs3f3c750d
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x AccelerationStructureCreateInfoNVX) PassValue() (C.VkAccelerationStructureCreateInfoNVX, *cgoAllocMap) {
- if x.ref1289fd56 != nil {
- return *x.ref1289fd56, nil
+func (x DescriptorAddressInfo) PassValue() (C.VkDescriptorAddressInfoEXT, *cgoAllocMap) {
+ if x.ref3f3c750d != nil {
+ return *x.ref3f3c750d, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -36533,111 +63257,188 @@ func (x AccelerationStructureCreateInfoNVX) PassValue() (C.VkAccelerationStructu
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *AccelerationStructureCreateInfoNVX) Deref() {
- if x.ref1289fd56 == nil {
+func (x *DescriptorAddressInfo) Deref() {
+ if x.ref3f3c750d == nil {
return
}
- x.SType = (StructureType)(x.ref1289fd56.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref1289fd56.pNext))
- x.Type = (AccelerationStructureTypeNVX)(x.ref1289fd56._type)
- x.Flags = (BuildAccelerationStructureFlagsNVX)(x.ref1289fd56.flags)
- x.CompactedSize = (DeviceSize)(x.ref1289fd56.compactedSize)
- x.InstanceCount = (uint32)(x.ref1289fd56.instanceCount)
- x.GeometryCount = (uint32)(x.ref1289fd56.geometryCount)
- packSGeometryNVX(x.PGeometries, x.ref1289fd56.pGeometries)
+ x.SType = (StructureType)(x.ref3f3c750d.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref3f3c750d.pNext))
+ x.Address = (DeviceAddress)(x.ref3f3c750d.address)
+ x.Range = (DeviceSize)(x.ref3f3c750d._range)
+ x.Format = (Format)(x.ref3f3c750d.format)
}
-// allocBindAccelerationStructureMemoryInfoNVXMemory allocates memory for type C.VkBindAccelerationStructureMemoryInfoNVX in C.
+// allocDescriptorBufferBindingInfoMemory allocates memory for type C.VkDescriptorBufferBindingInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocBindAccelerationStructureMemoryInfoNVXMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBindAccelerationStructureMemoryInfoNVXValue))
+func allocDescriptorBufferBindingInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorBufferBindingInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfBindAccelerationStructureMemoryInfoNVXValue = unsafe.Sizeof([1]C.VkBindAccelerationStructureMemoryInfoNVX{})
+const sizeOfDescriptorBufferBindingInfoValue = unsafe.Sizeof([1]C.VkDescriptorBufferBindingInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *BindAccelerationStructureMemoryInfoNVX) Ref() *C.VkBindAccelerationStructureMemoryInfoNVX {
+func (x *DescriptorBufferBindingInfo) Ref() *C.VkDescriptorBufferBindingInfoEXT {
if x == nil {
return nil
}
- return x.refb92eae10
+ return x.refbfb2412f
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *BindAccelerationStructureMemoryInfoNVX) Free() {
- if x != nil && x.allocsb92eae10 != nil {
- x.allocsb92eae10.(*cgoAllocMap).Free()
- x.refb92eae10 = nil
+func (x *DescriptorBufferBindingInfo) Free() {
+ if x != nil && x.allocsbfb2412f != nil {
+ x.allocsbfb2412f.(*cgoAllocMap).Free()
+ x.refbfb2412f = nil
}
}
-// NewBindAccelerationStructureMemoryInfoNVXRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDescriptorBufferBindingInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewBindAccelerationStructureMemoryInfoNVXRef(ref unsafe.Pointer) *BindAccelerationStructureMemoryInfoNVX {
+func NewDescriptorBufferBindingInfoRef(ref unsafe.Pointer) *DescriptorBufferBindingInfo {
if ref == nil {
return nil
}
- obj := new(BindAccelerationStructureMemoryInfoNVX)
- obj.refb92eae10 = (*C.VkBindAccelerationStructureMemoryInfoNVX)(unsafe.Pointer(ref))
+ obj := new(DescriptorBufferBindingInfo)
+ obj.refbfb2412f = (*C.VkDescriptorBufferBindingInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *BindAccelerationStructureMemoryInfoNVX) PassRef() (*C.VkBindAccelerationStructureMemoryInfoNVX, *cgoAllocMap) {
+func (x *DescriptorBufferBindingInfo) PassRef() (*C.VkDescriptorBufferBindingInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refb92eae10 != nil {
- return x.refb92eae10, nil
+ } else if x.refbfb2412f != nil {
+ return x.refbfb2412f, nil
}
- memb92eae10 := allocBindAccelerationStructureMemoryInfoNVXMemory(1)
- refb92eae10 := (*C.VkBindAccelerationStructureMemoryInfoNVX)(memb92eae10)
- allocsb92eae10 := new(cgoAllocMap)
- allocsb92eae10.Add(memb92eae10)
+ membfb2412f := allocDescriptorBufferBindingInfoMemory(1)
+ refbfb2412f := (*C.VkDescriptorBufferBindingInfoEXT)(membfb2412f)
+ allocsbfb2412f := new(cgoAllocMap)
+ allocsbfb2412f.Add(membfb2412f)
var csType_allocs *cgoAllocMap
- refb92eae10.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsb92eae10.Borrow(csType_allocs)
+ refbfb2412f.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsbfb2412f.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refb92eae10.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsb92eae10.Borrow(cpNext_allocs)
+ refbfb2412f.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsbfb2412f.Borrow(cpNext_allocs)
- var caccelerationStructure_allocs *cgoAllocMap
- refb92eae10.accelerationStructure, caccelerationStructure_allocs = *(*C.VkAccelerationStructureNVX)(unsafe.Pointer(&x.AccelerationStructure)), cgoAllocsUnknown
- allocsb92eae10.Borrow(caccelerationStructure_allocs)
+ var caddress_allocs *cgoAllocMap
+ refbfb2412f.address, caddress_allocs = (C.VkDeviceAddress)(x.Address), cgoAllocsUnknown
+ allocsbfb2412f.Borrow(caddress_allocs)
- var cmemory_allocs *cgoAllocMap
- refb92eae10.memory, cmemory_allocs = *(*C.VkDeviceMemory)(unsafe.Pointer(&x.Memory)), cgoAllocsUnknown
- allocsb92eae10.Borrow(cmemory_allocs)
+ var cusage_allocs *cgoAllocMap
+ refbfb2412f.usage, cusage_allocs = (C.VkBufferUsageFlags)(x.Usage), cgoAllocsUnknown
+ allocsbfb2412f.Borrow(cusage_allocs)
- var cmemoryOffset_allocs *cgoAllocMap
- refb92eae10.memoryOffset, cmemoryOffset_allocs = (C.VkDeviceSize)(x.MemoryOffset), cgoAllocsUnknown
- allocsb92eae10.Borrow(cmemoryOffset_allocs)
+ x.refbfb2412f = refbfb2412f
+ x.allocsbfb2412f = allocsbfb2412f
+ return refbfb2412f, allocsbfb2412f
- var cdeviceIndexCount_allocs *cgoAllocMap
- refb92eae10.deviceIndexCount, cdeviceIndexCount_allocs = (C.uint32_t)(x.DeviceIndexCount), cgoAllocsUnknown
- allocsb92eae10.Borrow(cdeviceIndexCount_allocs)
+}
- var cpDeviceIndices_allocs *cgoAllocMap
- refb92eae10.pDeviceIndices, cpDeviceIndices_allocs = (*C.uint32_t)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PDeviceIndices)).Data)), cgoAllocsUnknown
- allocsb92eae10.Borrow(cpDeviceIndices_allocs)
+// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
+func (x DescriptorBufferBindingInfo) PassValue() (C.VkDescriptorBufferBindingInfoEXT, *cgoAllocMap) {
+ if x.refbfb2412f != nil {
+ return *x.refbfb2412f, nil
+ }
+ ref, allocs := x.PassRef()
+ return *ref, allocs
+}
+
+// Deref uses the underlying reference to C object and fills the wrapping struct with values.
+// Do not forget to call this method whether you get a struct for C object and want to read its values.
+func (x *DescriptorBufferBindingInfo) Deref() {
+ if x.refbfb2412f == nil {
+ return
+ }
+ x.SType = (StructureType)(x.refbfb2412f.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refbfb2412f.pNext))
+ x.Address = (DeviceAddress)(x.refbfb2412f.address)
+ x.Usage = (BufferUsageFlags)(x.refbfb2412f.usage)
+}
+
+// allocDescriptorBufferBindingPushDescriptorBufferHandleMemory allocates memory for type C.VkDescriptorBufferBindingPushDescriptorBufferHandleEXT in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocDescriptorBufferBindingPushDescriptorBufferHandleMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorBufferBindingPushDescriptorBufferHandleValue))
+ if err != nil {
+ panic("memory alloc error: " + err.Error())
+ }
+ return mem
+}
+
+const sizeOfDescriptorBufferBindingPushDescriptorBufferHandleValue = unsafe.Sizeof([1]C.VkDescriptorBufferBindingPushDescriptorBufferHandleEXT{})
+
+// Ref returns the underlying reference to C object or nil if struct is nil.
+func (x *DescriptorBufferBindingPushDescriptorBufferHandle) Ref() *C.VkDescriptorBufferBindingPushDescriptorBufferHandleEXT {
+ if x == nil {
+ return nil
+ }
+ return x.ref14f143c5
+}
+
+// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
+// Does nothing if struct is nil or has no allocation map.
+func (x *DescriptorBufferBindingPushDescriptorBufferHandle) Free() {
+ if x != nil && x.allocs14f143c5 != nil {
+ x.allocs14f143c5.(*cgoAllocMap).Free()
+ x.ref14f143c5 = nil
+ }
+}
+
+// NewDescriptorBufferBindingPushDescriptorBufferHandleRef creates a new wrapper struct with underlying reference set to the original C object.
+// Returns nil if the provided pointer to C object is nil too.
+func NewDescriptorBufferBindingPushDescriptorBufferHandleRef(ref unsafe.Pointer) *DescriptorBufferBindingPushDescriptorBufferHandle {
+ if ref == nil {
+ return nil
+ }
+ obj := new(DescriptorBufferBindingPushDescriptorBufferHandle)
+ obj.ref14f143c5 = (*C.VkDescriptorBufferBindingPushDescriptorBufferHandleEXT)(unsafe.Pointer(ref))
+ return obj
+}
+
+// PassRef returns the underlying C object, otherwise it will allocate one and set its values
+// from this wrapping struct, counting allocations into an allocation map.
+func (x *DescriptorBufferBindingPushDescriptorBufferHandle) PassRef() (*C.VkDescriptorBufferBindingPushDescriptorBufferHandleEXT, *cgoAllocMap) {
+ if x == nil {
+ return nil, nil
+ } else if x.ref14f143c5 != nil {
+ return x.ref14f143c5, nil
+ }
+ mem14f143c5 := allocDescriptorBufferBindingPushDescriptorBufferHandleMemory(1)
+ ref14f143c5 := (*C.VkDescriptorBufferBindingPushDescriptorBufferHandleEXT)(mem14f143c5)
+ allocs14f143c5 := new(cgoAllocMap)
+ allocs14f143c5.Add(mem14f143c5)
+
+ var csType_allocs *cgoAllocMap
+ ref14f143c5.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs14f143c5.Borrow(csType_allocs)
+
+ var cpNext_allocs *cgoAllocMap
+ ref14f143c5.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs14f143c5.Borrow(cpNext_allocs)
- x.refb92eae10 = refb92eae10
- x.allocsb92eae10 = allocsb92eae10
- return refb92eae10, allocsb92eae10
+ var cbuffer_allocs *cgoAllocMap
+ ref14f143c5.buffer, cbuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.Buffer)), cgoAllocsUnknown
+ allocs14f143c5.Borrow(cbuffer_allocs)
+
+ x.ref14f143c5 = ref14f143c5
+ x.allocs14f143c5 = allocs14f143c5
+ return ref14f143c5, allocs14f143c5
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x BindAccelerationStructureMemoryInfoNVX) PassValue() (C.VkBindAccelerationStructureMemoryInfoNVX, *cgoAllocMap) {
- if x.refb92eae10 != nil {
- return *x.refb92eae10, nil
+func (x DescriptorBufferBindingPushDescriptorBufferHandle) PassValue() (C.VkDescriptorBufferBindingPushDescriptorBufferHandleEXT, *cgoAllocMap) {
+ if x.ref14f143c5 != nil {
+ return *x.ref14f143c5, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -36645,102 +63446,94 @@ func (x BindAccelerationStructureMemoryInfoNVX) PassValue() (C.VkBindAcceleratio
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *BindAccelerationStructureMemoryInfoNVX) Deref() {
- if x.refb92eae10 == nil {
+func (x *DescriptorBufferBindingPushDescriptorBufferHandle) Deref() {
+ if x.ref14f143c5 == nil {
return
}
- x.SType = (StructureType)(x.refb92eae10.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refb92eae10.pNext))
- x.AccelerationStructure = *(*AccelerationStructureNVX)(unsafe.Pointer(&x.refb92eae10.accelerationStructure))
- x.Memory = *(*DeviceMemory)(unsafe.Pointer(&x.refb92eae10.memory))
- x.MemoryOffset = (DeviceSize)(x.refb92eae10.memoryOffset)
- x.DeviceIndexCount = (uint32)(x.refb92eae10.deviceIndexCount)
- hxf8b35a8 := (*sliceHeader)(unsafe.Pointer(&x.PDeviceIndices))
- hxf8b35a8.Data = unsafe.Pointer(x.refb92eae10.pDeviceIndices)
- hxf8b35a8.Cap = 0x7fffffff
- // hxf8b35a8.Len = ?
-
+ x.SType = (StructureType)(x.ref14f143c5.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref14f143c5.pNext))
+ x.Buffer = *(*Buffer)(unsafe.Pointer(&x.ref14f143c5.buffer))
}
-// allocDescriptorAccelerationStructureInfoNVXMemory allocates memory for type C.VkDescriptorAccelerationStructureInfoNVX in C.
+// allocDescriptorGetInfoMemory allocates memory for type C.VkDescriptorGetInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDescriptorAccelerationStructureInfoNVXMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorAccelerationStructureInfoNVXValue))
+func allocDescriptorGetInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDescriptorGetInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDescriptorAccelerationStructureInfoNVXValue = unsafe.Sizeof([1]C.VkDescriptorAccelerationStructureInfoNVX{})
+const sizeOfDescriptorGetInfoValue = unsafe.Sizeof([1]C.VkDescriptorGetInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DescriptorAccelerationStructureInfoNVX) Ref() *C.VkDescriptorAccelerationStructureInfoNVX {
+func (x *DescriptorGetInfo) Ref() *C.VkDescriptorGetInfoEXT {
if x == nil {
return nil
}
- return x.refde5f3ba5
+ return x.ref15e17023
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DescriptorAccelerationStructureInfoNVX) Free() {
- if x != nil && x.allocsde5f3ba5 != nil {
- x.allocsde5f3ba5.(*cgoAllocMap).Free()
- x.refde5f3ba5 = nil
+func (x *DescriptorGetInfo) Free() {
+ if x != nil && x.allocs15e17023 != nil {
+ x.allocs15e17023.(*cgoAllocMap).Free()
+ x.ref15e17023 = nil
}
}
-// NewDescriptorAccelerationStructureInfoNVXRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewDescriptorGetInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDescriptorAccelerationStructureInfoNVXRef(ref unsafe.Pointer) *DescriptorAccelerationStructureInfoNVX {
+func NewDescriptorGetInfoRef(ref unsafe.Pointer) *DescriptorGetInfo {
if ref == nil {
return nil
}
- obj := new(DescriptorAccelerationStructureInfoNVX)
- obj.refde5f3ba5 = (*C.VkDescriptorAccelerationStructureInfoNVX)(unsafe.Pointer(ref))
+ obj := new(DescriptorGetInfo)
+ obj.ref15e17023 = (*C.VkDescriptorGetInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DescriptorAccelerationStructureInfoNVX) PassRef() (*C.VkDescriptorAccelerationStructureInfoNVX, *cgoAllocMap) {
+func (x *DescriptorGetInfo) PassRef() (*C.VkDescriptorGetInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refde5f3ba5 != nil {
- return x.refde5f3ba5, nil
+ } else if x.ref15e17023 != nil {
+ return x.ref15e17023, nil
}
- memde5f3ba5 := allocDescriptorAccelerationStructureInfoNVXMemory(1)
- refde5f3ba5 := (*C.VkDescriptorAccelerationStructureInfoNVX)(memde5f3ba5)
- allocsde5f3ba5 := new(cgoAllocMap)
- allocsde5f3ba5.Add(memde5f3ba5)
+ mem15e17023 := allocDescriptorGetInfoMemory(1)
+ ref15e17023 := (*C.VkDescriptorGetInfoEXT)(mem15e17023)
+ allocs15e17023 := new(cgoAllocMap)
+ allocs15e17023.Add(mem15e17023)
var csType_allocs *cgoAllocMap
- refde5f3ba5.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsde5f3ba5.Borrow(csType_allocs)
+ ref15e17023.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs15e17023.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refde5f3ba5.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsde5f3ba5.Borrow(cpNext_allocs)
+ ref15e17023.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs15e17023.Borrow(cpNext_allocs)
- var caccelerationStructureCount_allocs *cgoAllocMap
- refde5f3ba5.accelerationStructureCount, caccelerationStructureCount_allocs = (C.uint32_t)(x.AccelerationStructureCount), cgoAllocsUnknown
- allocsde5f3ba5.Borrow(caccelerationStructureCount_allocs)
+ var c_type_allocs *cgoAllocMap
+ ref15e17023._type, c_type_allocs = (C.VkDescriptorType)(x.Type), cgoAllocsUnknown
+ allocs15e17023.Borrow(c_type_allocs)
- var cpAccelerationStructures_allocs *cgoAllocMap
- refde5f3ba5.pAccelerationStructures, cpAccelerationStructures_allocs = (*C.VkAccelerationStructureNVX)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PAccelerationStructures)).Data)), cgoAllocsUnknown
- allocsde5f3ba5.Borrow(cpAccelerationStructures_allocs)
+ var cdata_allocs *cgoAllocMap
+ ref15e17023.data, cdata_allocs = *(*C.VkDescriptorDataEXT)(unsafe.Pointer(&x.Data)), cgoAllocsUnknown
+ allocs15e17023.Borrow(cdata_allocs)
- x.refde5f3ba5 = refde5f3ba5
- x.allocsde5f3ba5 = allocsde5f3ba5
- return refde5f3ba5, allocsde5f3ba5
+ x.ref15e17023 = ref15e17023
+ x.allocs15e17023 = allocs15e17023
+ return ref15e17023, allocs15e17023
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DescriptorAccelerationStructureInfoNVX) PassValue() (C.VkDescriptorAccelerationStructureInfoNVX, *cgoAllocMap) {
- if x.refde5f3ba5 != nil {
- return *x.refde5f3ba5, nil
+func (x DescriptorGetInfo) PassValue() (C.VkDescriptorGetInfoEXT, *cgoAllocMap) {
+ if x.ref15e17023 != nil {
+ return *x.ref15e17023, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -36748,95 +63541,91 @@ func (x DescriptorAccelerationStructureInfoNVX) PassValue() (C.VkDescriptorAccel
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DescriptorAccelerationStructureInfoNVX) Deref() {
- if x.refde5f3ba5 == nil {
+func (x *DescriptorGetInfo) Deref() {
+ if x.ref15e17023 == nil {
return
}
- x.SType = (StructureType)(x.refde5f3ba5.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refde5f3ba5.pNext))
- x.AccelerationStructureCount = (uint32)(x.refde5f3ba5.accelerationStructureCount)
- hxf8959c2 := (*sliceHeader)(unsafe.Pointer(&x.PAccelerationStructures))
- hxf8959c2.Data = unsafe.Pointer(x.refde5f3ba5.pAccelerationStructures)
- hxf8959c2.Cap = 0x7fffffff
- // hxf8959c2.Len = ?
-
+ x.SType = (StructureType)(x.ref15e17023.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref15e17023.pNext))
+ x.Type = (DescriptorType)(x.ref15e17023._type)
+ x.Data = *(*DescriptorData)(unsafe.Pointer(&x.ref15e17023.data))
}
-// allocAccelerationStructureMemoryRequirementsInfoNVXMemory allocates memory for type C.VkAccelerationStructureMemoryRequirementsInfoNVX in C.
+// allocBufferCaptureDescriptorDataInfoMemory allocates memory for type C.VkBufferCaptureDescriptorDataInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocAccelerationStructureMemoryRequirementsInfoNVXMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfAccelerationStructureMemoryRequirementsInfoNVXValue))
+func allocBufferCaptureDescriptorDataInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfBufferCaptureDescriptorDataInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfAccelerationStructureMemoryRequirementsInfoNVXValue = unsafe.Sizeof([1]C.VkAccelerationStructureMemoryRequirementsInfoNVX{})
+const sizeOfBufferCaptureDescriptorDataInfoValue = unsafe.Sizeof([1]C.VkBufferCaptureDescriptorDataInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *AccelerationStructureMemoryRequirementsInfoNVX) Ref() *C.VkAccelerationStructureMemoryRequirementsInfoNVX {
+func (x *BufferCaptureDescriptorDataInfo) Ref() *C.VkBufferCaptureDescriptorDataInfoEXT {
if x == nil {
return nil
}
- return x.ref212466e8
+ return x.ref7d170bdd
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *AccelerationStructureMemoryRequirementsInfoNVX) Free() {
- if x != nil && x.allocs212466e8 != nil {
- x.allocs212466e8.(*cgoAllocMap).Free()
- x.ref212466e8 = nil
+func (x *BufferCaptureDescriptorDataInfo) Free() {
+ if x != nil && x.allocs7d170bdd != nil {
+ x.allocs7d170bdd.(*cgoAllocMap).Free()
+ x.ref7d170bdd = nil
}
}
-// NewAccelerationStructureMemoryRequirementsInfoNVXRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewBufferCaptureDescriptorDataInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewAccelerationStructureMemoryRequirementsInfoNVXRef(ref unsafe.Pointer) *AccelerationStructureMemoryRequirementsInfoNVX {
+func NewBufferCaptureDescriptorDataInfoRef(ref unsafe.Pointer) *BufferCaptureDescriptorDataInfo {
if ref == nil {
return nil
}
- obj := new(AccelerationStructureMemoryRequirementsInfoNVX)
- obj.ref212466e8 = (*C.VkAccelerationStructureMemoryRequirementsInfoNVX)(unsafe.Pointer(ref))
+ obj := new(BufferCaptureDescriptorDataInfo)
+ obj.ref7d170bdd = (*C.VkBufferCaptureDescriptorDataInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *AccelerationStructureMemoryRequirementsInfoNVX) PassRef() (*C.VkAccelerationStructureMemoryRequirementsInfoNVX, *cgoAllocMap) {
+func (x *BufferCaptureDescriptorDataInfo) PassRef() (*C.VkBufferCaptureDescriptorDataInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref212466e8 != nil {
- return x.ref212466e8, nil
+ } else if x.ref7d170bdd != nil {
+ return x.ref7d170bdd, nil
}
- mem212466e8 := allocAccelerationStructureMemoryRequirementsInfoNVXMemory(1)
- ref212466e8 := (*C.VkAccelerationStructureMemoryRequirementsInfoNVX)(mem212466e8)
- allocs212466e8 := new(cgoAllocMap)
- allocs212466e8.Add(mem212466e8)
+ mem7d170bdd := allocBufferCaptureDescriptorDataInfoMemory(1)
+ ref7d170bdd := (*C.VkBufferCaptureDescriptorDataInfoEXT)(mem7d170bdd)
+ allocs7d170bdd := new(cgoAllocMap)
+ allocs7d170bdd.Add(mem7d170bdd)
var csType_allocs *cgoAllocMap
- ref212466e8.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs212466e8.Borrow(csType_allocs)
+ ref7d170bdd.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs7d170bdd.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref212466e8.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs212466e8.Borrow(cpNext_allocs)
+ ref7d170bdd.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs7d170bdd.Borrow(cpNext_allocs)
- var caccelerationStructure_allocs *cgoAllocMap
- ref212466e8.accelerationStructure, caccelerationStructure_allocs = *(*C.VkAccelerationStructureNVX)(unsafe.Pointer(&x.AccelerationStructure)), cgoAllocsUnknown
- allocs212466e8.Borrow(caccelerationStructure_allocs)
+ var cbuffer_allocs *cgoAllocMap
+ ref7d170bdd.buffer, cbuffer_allocs = *(*C.VkBuffer)(unsafe.Pointer(&x.Buffer)), cgoAllocsUnknown
+ allocs7d170bdd.Borrow(cbuffer_allocs)
- x.ref212466e8 = ref212466e8
- x.allocs212466e8 = allocs212466e8
- return ref212466e8, allocs212466e8
+ x.ref7d170bdd = ref7d170bdd
+ x.allocs7d170bdd = allocs7d170bdd
+ return ref7d170bdd, allocs7d170bdd
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x AccelerationStructureMemoryRequirementsInfoNVX) PassValue() (C.VkAccelerationStructureMemoryRequirementsInfoNVX, *cgoAllocMap) {
- if x.ref212466e8 != nil {
- return *x.ref212466e8, nil
+func (x BufferCaptureDescriptorDataInfo) PassValue() (C.VkBufferCaptureDescriptorDataInfoEXT, *cgoAllocMap) {
+ if x.ref7d170bdd != nil {
+ return *x.ref7d170bdd, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -36844,98 +63633,90 @@ func (x AccelerationStructureMemoryRequirementsInfoNVX) PassValue() (C.VkAcceler
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *AccelerationStructureMemoryRequirementsInfoNVX) Deref() {
- if x.ref212466e8 == nil {
+func (x *BufferCaptureDescriptorDataInfo) Deref() {
+ if x.ref7d170bdd == nil {
return
}
- x.SType = (StructureType)(x.ref212466e8.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref212466e8.pNext))
- x.AccelerationStructure = *(*AccelerationStructureNVX)(unsafe.Pointer(&x.ref212466e8.accelerationStructure))
+ x.SType = (StructureType)(x.ref7d170bdd.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref7d170bdd.pNext))
+ x.Buffer = *(*Buffer)(unsafe.Pointer(&x.ref7d170bdd.buffer))
}
-// allocPhysicalDeviceRaytracingPropertiesNVXMemory allocates memory for type C.VkPhysicalDeviceRaytracingPropertiesNVX in C.
+// allocImageCaptureDescriptorDataInfoMemory allocates memory for type C.VkImageCaptureDescriptorDataInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceRaytracingPropertiesNVXMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceRaytracingPropertiesNVXValue))
+func allocImageCaptureDescriptorDataInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageCaptureDescriptorDataInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceRaytracingPropertiesNVXValue = unsafe.Sizeof([1]C.VkPhysicalDeviceRaytracingPropertiesNVX{})
+const sizeOfImageCaptureDescriptorDataInfoValue = unsafe.Sizeof([1]C.VkImageCaptureDescriptorDataInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceRaytracingPropertiesNVX) Ref() *C.VkPhysicalDeviceRaytracingPropertiesNVX {
+func (x *ImageCaptureDescriptorDataInfo) Ref() *C.VkImageCaptureDescriptorDataInfoEXT {
if x == nil {
return nil
}
- return x.refd37a6b69
+ return x.refc02d1ea8
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceRaytracingPropertiesNVX) Free() {
- if x != nil && x.allocsd37a6b69 != nil {
- x.allocsd37a6b69.(*cgoAllocMap).Free()
- x.refd37a6b69 = nil
+func (x *ImageCaptureDescriptorDataInfo) Free() {
+ if x != nil && x.allocsc02d1ea8 != nil {
+ x.allocsc02d1ea8.(*cgoAllocMap).Free()
+ x.refc02d1ea8 = nil
}
}
-// NewPhysicalDeviceRaytracingPropertiesNVXRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewImageCaptureDescriptorDataInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceRaytracingPropertiesNVXRef(ref unsafe.Pointer) *PhysicalDeviceRaytracingPropertiesNVX {
+func NewImageCaptureDescriptorDataInfoRef(ref unsafe.Pointer) *ImageCaptureDescriptorDataInfo {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceRaytracingPropertiesNVX)
- obj.refd37a6b69 = (*C.VkPhysicalDeviceRaytracingPropertiesNVX)(unsafe.Pointer(ref))
+ obj := new(ImageCaptureDescriptorDataInfo)
+ obj.refc02d1ea8 = (*C.VkImageCaptureDescriptorDataInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceRaytracingPropertiesNVX) PassRef() (*C.VkPhysicalDeviceRaytracingPropertiesNVX, *cgoAllocMap) {
+func (x *ImageCaptureDescriptorDataInfo) PassRef() (*C.VkImageCaptureDescriptorDataInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refd37a6b69 != nil {
- return x.refd37a6b69, nil
+ } else if x.refc02d1ea8 != nil {
+ return x.refc02d1ea8, nil
}
- memd37a6b69 := allocPhysicalDeviceRaytracingPropertiesNVXMemory(1)
- refd37a6b69 := (*C.VkPhysicalDeviceRaytracingPropertiesNVX)(memd37a6b69)
- allocsd37a6b69 := new(cgoAllocMap)
- allocsd37a6b69.Add(memd37a6b69)
+ memc02d1ea8 := allocImageCaptureDescriptorDataInfoMemory(1)
+ refc02d1ea8 := (*C.VkImageCaptureDescriptorDataInfoEXT)(memc02d1ea8)
+ allocsc02d1ea8 := new(cgoAllocMap)
+ allocsc02d1ea8.Add(memc02d1ea8)
var csType_allocs *cgoAllocMap
- refd37a6b69.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsd37a6b69.Borrow(csType_allocs)
+ refc02d1ea8.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsc02d1ea8.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refd37a6b69.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsd37a6b69.Borrow(cpNext_allocs)
-
- var cshaderHeaderSize_allocs *cgoAllocMap
- refd37a6b69.shaderHeaderSize, cshaderHeaderSize_allocs = (C.uint32_t)(x.ShaderHeaderSize), cgoAllocsUnknown
- allocsd37a6b69.Borrow(cshaderHeaderSize_allocs)
+ refc02d1ea8.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsc02d1ea8.Borrow(cpNext_allocs)
- var cmaxRecursionDepth_allocs *cgoAllocMap
- refd37a6b69.maxRecursionDepth, cmaxRecursionDepth_allocs = (C.uint32_t)(x.MaxRecursionDepth), cgoAllocsUnknown
- allocsd37a6b69.Borrow(cmaxRecursionDepth_allocs)
-
- var cmaxGeometryCount_allocs *cgoAllocMap
- refd37a6b69.maxGeometryCount, cmaxGeometryCount_allocs = (C.uint32_t)(x.MaxGeometryCount), cgoAllocsUnknown
- allocsd37a6b69.Borrow(cmaxGeometryCount_allocs)
+ var cimage_allocs *cgoAllocMap
+ refc02d1ea8.image, cimage_allocs = *(*C.VkImage)(unsafe.Pointer(&x.Image)), cgoAllocsUnknown
+ allocsc02d1ea8.Borrow(cimage_allocs)
- x.refd37a6b69 = refd37a6b69
- x.allocsd37a6b69 = allocsd37a6b69
- return refd37a6b69, allocsd37a6b69
+ x.refc02d1ea8 = refc02d1ea8
+ x.allocsc02d1ea8 = allocsc02d1ea8
+ return refc02d1ea8, allocsc02d1ea8
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceRaytracingPropertiesNVX) PassValue() (C.VkPhysicalDeviceRaytracingPropertiesNVX, *cgoAllocMap) {
- if x.refd37a6b69 != nil {
- return *x.refd37a6b69, nil
+func (x ImageCaptureDescriptorDataInfo) PassValue() (C.VkImageCaptureDescriptorDataInfoEXT, *cgoAllocMap) {
+ if x.refc02d1ea8 != nil {
+ return *x.refc02d1ea8, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -36943,92 +63724,90 @@ func (x PhysicalDeviceRaytracingPropertiesNVX) PassValue() (C.VkPhysicalDeviceRa
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceRaytracingPropertiesNVX) Deref() {
- if x.refd37a6b69 == nil {
+func (x *ImageCaptureDescriptorDataInfo) Deref() {
+ if x.refc02d1ea8 == nil {
return
}
- x.SType = (StructureType)(x.refd37a6b69.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd37a6b69.pNext))
- x.ShaderHeaderSize = (uint32)(x.refd37a6b69.shaderHeaderSize)
- x.MaxRecursionDepth = (uint32)(x.refd37a6b69.maxRecursionDepth)
- x.MaxGeometryCount = (uint32)(x.refd37a6b69.maxGeometryCount)
+ x.SType = (StructureType)(x.refc02d1ea8.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc02d1ea8.pNext))
+ x.Image = *(*Image)(unsafe.Pointer(&x.refc02d1ea8.image))
}
-// allocPhysicalDeviceRepresentativeFragmentTestFeaturesNVMemory allocates memory for type C.VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV in C.
+// allocImageViewCaptureDescriptorDataInfoMemory allocates memory for type C.VkImageViewCaptureDescriptorDataInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceRepresentativeFragmentTestFeaturesNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceRepresentativeFragmentTestFeaturesNVValue))
+func allocImageViewCaptureDescriptorDataInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageViewCaptureDescriptorDataInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceRepresentativeFragmentTestFeaturesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV{})
+const sizeOfImageViewCaptureDescriptorDataInfoValue = unsafe.Sizeof([1]C.VkImageViewCaptureDescriptorDataInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceRepresentativeFragmentTestFeaturesNV) Ref() *C.VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV {
+func (x *ImageViewCaptureDescriptorDataInfo) Ref() *C.VkImageViewCaptureDescriptorDataInfoEXT {
if x == nil {
return nil
}
- return x.reff1f69e03
+ return x.refe2b761d2
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceRepresentativeFragmentTestFeaturesNV) Free() {
- if x != nil && x.allocsf1f69e03 != nil {
- x.allocsf1f69e03.(*cgoAllocMap).Free()
- x.reff1f69e03 = nil
+func (x *ImageViewCaptureDescriptorDataInfo) Free() {
+ if x != nil && x.allocse2b761d2 != nil {
+ x.allocse2b761d2.(*cgoAllocMap).Free()
+ x.refe2b761d2 = nil
}
}
-// NewPhysicalDeviceRepresentativeFragmentTestFeaturesNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewImageViewCaptureDescriptorDataInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceRepresentativeFragmentTestFeaturesNVRef(ref unsafe.Pointer) *PhysicalDeviceRepresentativeFragmentTestFeaturesNV {
+func NewImageViewCaptureDescriptorDataInfoRef(ref unsafe.Pointer) *ImageViewCaptureDescriptorDataInfo {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceRepresentativeFragmentTestFeaturesNV)
- obj.reff1f69e03 = (*C.VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV)(unsafe.Pointer(ref))
+ obj := new(ImageViewCaptureDescriptorDataInfo)
+ obj.refe2b761d2 = (*C.VkImageViewCaptureDescriptorDataInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceRepresentativeFragmentTestFeaturesNV) PassRef() (*C.VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV, *cgoAllocMap) {
+func (x *ImageViewCaptureDescriptorDataInfo) PassRef() (*C.VkImageViewCaptureDescriptorDataInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.reff1f69e03 != nil {
- return x.reff1f69e03, nil
+ } else if x.refe2b761d2 != nil {
+ return x.refe2b761d2, nil
}
- memf1f69e03 := allocPhysicalDeviceRepresentativeFragmentTestFeaturesNVMemory(1)
- reff1f69e03 := (*C.VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV)(memf1f69e03)
- allocsf1f69e03 := new(cgoAllocMap)
- allocsf1f69e03.Add(memf1f69e03)
+ meme2b761d2 := allocImageViewCaptureDescriptorDataInfoMemory(1)
+ refe2b761d2 := (*C.VkImageViewCaptureDescriptorDataInfoEXT)(meme2b761d2)
+ allocse2b761d2 := new(cgoAllocMap)
+ allocse2b761d2.Add(meme2b761d2)
var csType_allocs *cgoAllocMap
- reff1f69e03.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsf1f69e03.Borrow(csType_allocs)
+ refe2b761d2.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocse2b761d2.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- reff1f69e03.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsf1f69e03.Borrow(cpNext_allocs)
+ refe2b761d2.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocse2b761d2.Borrow(cpNext_allocs)
- var crepresentativeFragmentTest_allocs *cgoAllocMap
- reff1f69e03.representativeFragmentTest, crepresentativeFragmentTest_allocs = (C.VkBool32)(x.RepresentativeFragmentTest), cgoAllocsUnknown
- allocsf1f69e03.Borrow(crepresentativeFragmentTest_allocs)
+ var cimageView_allocs *cgoAllocMap
+ refe2b761d2.imageView, cimageView_allocs = *(*C.VkImageView)(unsafe.Pointer(&x.ImageView)), cgoAllocsUnknown
+ allocse2b761d2.Borrow(cimageView_allocs)
- x.reff1f69e03 = reff1f69e03
- x.allocsf1f69e03 = allocsf1f69e03
- return reff1f69e03, allocsf1f69e03
+ x.refe2b761d2 = refe2b761d2
+ x.allocse2b761d2 = allocse2b761d2
+ return refe2b761d2, allocse2b761d2
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceRepresentativeFragmentTestFeaturesNV) PassValue() (C.VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV, *cgoAllocMap) {
- if x.reff1f69e03 != nil {
- return *x.reff1f69e03, nil
+func (x ImageViewCaptureDescriptorDataInfo) PassValue() (C.VkImageViewCaptureDescriptorDataInfoEXT, *cgoAllocMap) {
+ if x.refe2b761d2 != nil {
+ return *x.refe2b761d2, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -37036,90 +63815,90 @@ func (x PhysicalDeviceRepresentativeFragmentTestFeaturesNV) PassValue() (C.VkPhy
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceRepresentativeFragmentTestFeaturesNV) Deref() {
- if x.reff1f69e03 == nil {
+func (x *ImageViewCaptureDescriptorDataInfo) Deref() {
+ if x.refe2b761d2 == nil {
return
}
- x.SType = (StructureType)(x.reff1f69e03.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff1f69e03.pNext))
- x.RepresentativeFragmentTest = (Bool32)(x.reff1f69e03.representativeFragmentTest)
+ x.SType = (StructureType)(x.refe2b761d2.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refe2b761d2.pNext))
+ x.ImageView = *(*ImageView)(unsafe.Pointer(&x.refe2b761d2.imageView))
}
-// allocPipelineRepresentativeFragmentTestStateCreateInfoNVMemory allocates memory for type C.VkPipelineRepresentativeFragmentTestStateCreateInfoNV in C.
+// allocSamplerCaptureDescriptorDataInfoMemory allocates memory for type C.VkSamplerCaptureDescriptorDataInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPipelineRepresentativeFragmentTestStateCreateInfoNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineRepresentativeFragmentTestStateCreateInfoNVValue))
+func allocSamplerCaptureDescriptorDataInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSamplerCaptureDescriptorDataInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPipelineRepresentativeFragmentTestStateCreateInfoNVValue = unsafe.Sizeof([1]C.VkPipelineRepresentativeFragmentTestStateCreateInfoNV{})
+const sizeOfSamplerCaptureDescriptorDataInfoValue = unsafe.Sizeof([1]C.VkSamplerCaptureDescriptorDataInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PipelineRepresentativeFragmentTestStateCreateInfoNV) Ref() *C.VkPipelineRepresentativeFragmentTestStateCreateInfoNV {
+func (x *SamplerCaptureDescriptorDataInfo) Ref() *C.VkSamplerCaptureDescriptorDataInfoEXT {
if x == nil {
return nil
}
- return x.ref9c224e21
+ return x.ref2455cc7e
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PipelineRepresentativeFragmentTestStateCreateInfoNV) Free() {
- if x != nil && x.allocs9c224e21 != nil {
- x.allocs9c224e21.(*cgoAllocMap).Free()
- x.ref9c224e21 = nil
+func (x *SamplerCaptureDescriptorDataInfo) Free() {
+ if x != nil && x.allocs2455cc7e != nil {
+ x.allocs2455cc7e.(*cgoAllocMap).Free()
+ x.ref2455cc7e = nil
}
}
-// NewPipelineRepresentativeFragmentTestStateCreateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewSamplerCaptureDescriptorDataInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPipelineRepresentativeFragmentTestStateCreateInfoNVRef(ref unsafe.Pointer) *PipelineRepresentativeFragmentTestStateCreateInfoNV {
+func NewSamplerCaptureDescriptorDataInfoRef(ref unsafe.Pointer) *SamplerCaptureDescriptorDataInfo {
if ref == nil {
return nil
- }
- obj := new(PipelineRepresentativeFragmentTestStateCreateInfoNV)
- obj.ref9c224e21 = (*C.VkPipelineRepresentativeFragmentTestStateCreateInfoNV)(unsafe.Pointer(ref))
+ }
+ obj := new(SamplerCaptureDescriptorDataInfo)
+ obj.ref2455cc7e = (*C.VkSamplerCaptureDescriptorDataInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PipelineRepresentativeFragmentTestStateCreateInfoNV) PassRef() (*C.VkPipelineRepresentativeFragmentTestStateCreateInfoNV, *cgoAllocMap) {
+func (x *SamplerCaptureDescriptorDataInfo) PassRef() (*C.VkSamplerCaptureDescriptorDataInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref9c224e21 != nil {
- return x.ref9c224e21, nil
+ } else if x.ref2455cc7e != nil {
+ return x.ref2455cc7e, nil
}
- mem9c224e21 := allocPipelineRepresentativeFragmentTestStateCreateInfoNVMemory(1)
- ref9c224e21 := (*C.VkPipelineRepresentativeFragmentTestStateCreateInfoNV)(mem9c224e21)
- allocs9c224e21 := new(cgoAllocMap)
- allocs9c224e21.Add(mem9c224e21)
+ mem2455cc7e := allocSamplerCaptureDescriptorDataInfoMemory(1)
+ ref2455cc7e := (*C.VkSamplerCaptureDescriptorDataInfoEXT)(mem2455cc7e)
+ allocs2455cc7e := new(cgoAllocMap)
+ allocs2455cc7e.Add(mem2455cc7e)
var csType_allocs *cgoAllocMap
- ref9c224e21.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs9c224e21.Borrow(csType_allocs)
+ ref2455cc7e.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs2455cc7e.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref9c224e21.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs9c224e21.Borrow(cpNext_allocs)
+ ref2455cc7e.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs2455cc7e.Borrow(cpNext_allocs)
- var crepresentativeFragmentTestEnable_allocs *cgoAllocMap
- ref9c224e21.representativeFragmentTestEnable, crepresentativeFragmentTestEnable_allocs = (C.VkBool32)(x.RepresentativeFragmentTestEnable), cgoAllocsUnknown
- allocs9c224e21.Borrow(crepresentativeFragmentTestEnable_allocs)
+ var csampler_allocs *cgoAllocMap
+ ref2455cc7e.sampler, csampler_allocs = *(*C.VkSampler)(unsafe.Pointer(&x.Sampler)), cgoAllocsUnknown
+ allocs2455cc7e.Borrow(csampler_allocs)
- x.ref9c224e21 = ref9c224e21
- x.allocs9c224e21 = allocs9c224e21
- return ref9c224e21, allocs9c224e21
+ x.ref2455cc7e = ref2455cc7e
+ x.allocs2455cc7e = allocs2455cc7e
+ return ref2455cc7e, allocs2455cc7e
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PipelineRepresentativeFragmentTestStateCreateInfoNV) PassValue() (C.VkPipelineRepresentativeFragmentTestStateCreateInfoNV, *cgoAllocMap) {
- if x.ref9c224e21 != nil {
- return *x.ref9c224e21, nil
+func (x SamplerCaptureDescriptorDataInfo) PassValue() (C.VkSamplerCaptureDescriptorDataInfoEXT, *cgoAllocMap) {
+ if x.ref2455cc7e != nil {
+ return *x.ref2455cc7e, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -37127,90 +63906,90 @@ func (x PipelineRepresentativeFragmentTestStateCreateInfoNV) PassValue() (C.VkPi
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PipelineRepresentativeFragmentTestStateCreateInfoNV) Deref() {
- if x.ref9c224e21 == nil {
+func (x *SamplerCaptureDescriptorDataInfo) Deref() {
+ if x.ref2455cc7e == nil {
return
}
- x.SType = (StructureType)(x.ref9c224e21.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref9c224e21.pNext))
- x.RepresentativeFragmentTestEnable = (Bool32)(x.ref9c224e21.representativeFragmentTestEnable)
+ x.SType = (StructureType)(x.ref2455cc7e.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref2455cc7e.pNext))
+ x.Sampler = *(*Sampler)(unsafe.Pointer(&x.ref2455cc7e.sampler))
}
-// allocDeviceQueueGlobalPriorityCreateInfoMemory allocates memory for type C.VkDeviceQueueGlobalPriorityCreateInfoEXT in C.
+// allocOpaqueCaptureDescriptorDataCreateInfoMemory allocates memory for type C.VkOpaqueCaptureDescriptorDataCreateInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDeviceQueueGlobalPriorityCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDeviceQueueGlobalPriorityCreateInfoValue))
+func allocOpaqueCaptureDescriptorDataCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfOpaqueCaptureDescriptorDataCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDeviceQueueGlobalPriorityCreateInfoValue = unsafe.Sizeof([1]C.VkDeviceQueueGlobalPriorityCreateInfoEXT{})
+const sizeOfOpaqueCaptureDescriptorDataCreateInfoValue = unsafe.Sizeof([1]C.VkOpaqueCaptureDescriptorDataCreateInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DeviceQueueGlobalPriorityCreateInfo) Ref() *C.VkDeviceQueueGlobalPriorityCreateInfoEXT {
+func (x *OpaqueCaptureDescriptorDataCreateInfo) Ref() *C.VkOpaqueCaptureDescriptorDataCreateInfoEXT {
if x == nil {
return nil
}
- return x.ref76356646
+ return x.ref48a027d
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DeviceQueueGlobalPriorityCreateInfo) Free() {
- if x != nil && x.allocs76356646 != nil {
- x.allocs76356646.(*cgoAllocMap).Free()
- x.ref76356646 = nil
+func (x *OpaqueCaptureDescriptorDataCreateInfo) Free() {
+ if x != nil && x.allocs48a027d != nil {
+ x.allocs48a027d.(*cgoAllocMap).Free()
+ x.ref48a027d = nil
}
}
-// NewDeviceQueueGlobalPriorityCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewOpaqueCaptureDescriptorDataCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDeviceQueueGlobalPriorityCreateInfoRef(ref unsafe.Pointer) *DeviceQueueGlobalPriorityCreateInfo {
+func NewOpaqueCaptureDescriptorDataCreateInfoRef(ref unsafe.Pointer) *OpaqueCaptureDescriptorDataCreateInfo {
if ref == nil {
return nil
}
- obj := new(DeviceQueueGlobalPriorityCreateInfo)
- obj.ref76356646 = (*C.VkDeviceQueueGlobalPriorityCreateInfoEXT)(unsafe.Pointer(ref))
+ obj := new(OpaqueCaptureDescriptorDataCreateInfo)
+ obj.ref48a027d = (*C.VkOpaqueCaptureDescriptorDataCreateInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DeviceQueueGlobalPriorityCreateInfo) PassRef() (*C.VkDeviceQueueGlobalPriorityCreateInfoEXT, *cgoAllocMap) {
+func (x *OpaqueCaptureDescriptorDataCreateInfo) PassRef() (*C.VkOpaqueCaptureDescriptorDataCreateInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref76356646 != nil {
- return x.ref76356646, nil
+ } else if x.ref48a027d != nil {
+ return x.ref48a027d, nil
}
- mem76356646 := allocDeviceQueueGlobalPriorityCreateInfoMemory(1)
- ref76356646 := (*C.VkDeviceQueueGlobalPriorityCreateInfoEXT)(mem76356646)
- allocs76356646 := new(cgoAllocMap)
- allocs76356646.Add(mem76356646)
+ mem48a027d := allocOpaqueCaptureDescriptorDataCreateInfoMemory(1)
+ ref48a027d := (*C.VkOpaqueCaptureDescriptorDataCreateInfoEXT)(mem48a027d)
+ allocs48a027d := new(cgoAllocMap)
+ allocs48a027d.Add(mem48a027d)
var csType_allocs *cgoAllocMap
- ref76356646.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs76356646.Borrow(csType_allocs)
+ ref48a027d.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs48a027d.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref76356646.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs76356646.Borrow(cpNext_allocs)
+ ref48a027d.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs48a027d.Borrow(cpNext_allocs)
- var cglobalPriority_allocs *cgoAllocMap
- ref76356646.globalPriority, cglobalPriority_allocs = (C.VkQueueGlobalPriorityEXT)(x.GlobalPriority), cgoAllocsUnknown
- allocs76356646.Borrow(cglobalPriority_allocs)
+ var copaqueCaptureDescriptorData_allocs *cgoAllocMap
+ ref48a027d.opaqueCaptureDescriptorData, copaqueCaptureDescriptorData_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.OpaqueCaptureDescriptorData)), cgoAllocsUnknown
+ allocs48a027d.Borrow(copaqueCaptureDescriptorData_allocs)
- x.ref76356646 = ref76356646
- x.allocs76356646 = allocs76356646
- return ref76356646, allocs76356646
+ x.ref48a027d = ref48a027d
+ x.allocs48a027d = allocs48a027d
+ return ref48a027d, allocs48a027d
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DeviceQueueGlobalPriorityCreateInfo) PassValue() (C.VkDeviceQueueGlobalPriorityCreateInfoEXT, *cgoAllocMap) {
- if x.ref76356646 != nil {
- return *x.ref76356646, nil
+func (x OpaqueCaptureDescriptorDataCreateInfo) PassValue() (C.VkOpaqueCaptureDescriptorDataCreateInfoEXT, *cgoAllocMap) {
+ if x.ref48a027d != nil {
+ return *x.ref48a027d, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -37218,94 +63997,90 @@ func (x DeviceQueueGlobalPriorityCreateInfo) PassValue() (C.VkDeviceQueueGlobalP
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DeviceQueueGlobalPriorityCreateInfo) Deref() {
- if x.ref76356646 == nil {
+func (x *OpaqueCaptureDescriptorDataCreateInfo) Deref() {
+ if x.ref48a027d == nil {
return
}
- x.SType = (StructureType)(x.ref76356646.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref76356646.pNext))
- x.GlobalPriority = (QueueGlobalPriority)(x.ref76356646.globalPriority)
+ x.SType = (StructureType)(x.ref48a027d.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref48a027d.pNext))
+ x.OpaqueCaptureDescriptorData = (unsafe.Pointer)(unsafe.Pointer(x.ref48a027d.opaqueCaptureDescriptorData))
}
-// allocImportMemoryHostPointerInfoMemory allocates memory for type C.VkImportMemoryHostPointerInfoEXT in C.
+// allocPhysicalDeviceGraphicsPipelineLibraryFeaturesMemory allocates memory for type C.VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocImportMemoryHostPointerInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImportMemoryHostPointerInfoValue))
+func allocPhysicalDeviceGraphicsPipelineLibraryFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceGraphicsPipelineLibraryFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfImportMemoryHostPointerInfoValue = unsafe.Sizeof([1]C.VkImportMemoryHostPointerInfoEXT{})
+const sizeOfPhysicalDeviceGraphicsPipelineLibraryFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *ImportMemoryHostPointerInfo) Ref() *C.VkImportMemoryHostPointerInfoEXT {
+func (x *PhysicalDeviceGraphicsPipelineLibraryFeatures) Ref() *C.VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT {
if x == nil {
return nil
}
- return x.reffe09253e
+ return x.ref34a84548
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *ImportMemoryHostPointerInfo) Free() {
- if x != nil && x.allocsfe09253e != nil {
- x.allocsfe09253e.(*cgoAllocMap).Free()
- x.reffe09253e = nil
+func (x *PhysicalDeviceGraphicsPipelineLibraryFeatures) Free() {
+ if x != nil && x.allocs34a84548 != nil {
+ x.allocs34a84548.(*cgoAllocMap).Free()
+ x.ref34a84548 = nil
}
}
-// NewImportMemoryHostPointerInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceGraphicsPipelineLibraryFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewImportMemoryHostPointerInfoRef(ref unsafe.Pointer) *ImportMemoryHostPointerInfo {
+func NewPhysicalDeviceGraphicsPipelineLibraryFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceGraphicsPipelineLibraryFeatures {
if ref == nil {
return nil
}
- obj := new(ImportMemoryHostPointerInfo)
- obj.reffe09253e = (*C.VkImportMemoryHostPointerInfoEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceGraphicsPipelineLibraryFeatures)
+ obj.ref34a84548 = (*C.VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *ImportMemoryHostPointerInfo) PassRef() (*C.VkImportMemoryHostPointerInfoEXT, *cgoAllocMap) {
+func (x *PhysicalDeviceGraphicsPipelineLibraryFeatures) PassRef() (*C.VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.reffe09253e != nil {
- return x.reffe09253e, nil
+ } else if x.ref34a84548 != nil {
+ return x.ref34a84548, nil
}
- memfe09253e := allocImportMemoryHostPointerInfoMemory(1)
- reffe09253e := (*C.VkImportMemoryHostPointerInfoEXT)(memfe09253e)
- allocsfe09253e := new(cgoAllocMap)
- allocsfe09253e.Add(memfe09253e)
+ mem34a84548 := allocPhysicalDeviceGraphicsPipelineLibraryFeaturesMemory(1)
+ ref34a84548 := (*C.VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT)(mem34a84548)
+ allocs34a84548 := new(cgoAllocMap)
+ allocs34a84548.Add(mem34a84548)
var csType_allocs *cgoAllocMap
- reffe09253e.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsfe09253e.Borrow(csType_allocs)
+ ref34a84548.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs34a84548.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- reffe09253e.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsfe09253e.Borrow(cpNext_allocs)
-
- var chandleType_allocs *cgoAllocMap
- reffe09253e.handleType, chandleType_allocs = (C.VkExternalMemoryHandleTypeFlagBits)(x.HandleType), cgoAllocsUnknown
- allocsfe09253e.Borrow(chandleType_allocs)
+ ref34a84548.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs34a84548.Borrow(cpNext_allocs)
- var cpHostPointer_allocs *cgoAllocMap
- reffe09253e.pHostPointer, cpHostPointer_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PHostPointer)), cgoAllocsUnknown
- allocsfe09253e.Borrow(cpHostPointer_allocs)
+ var cgraphicsPipelineLibrary_allocs *cgoAllocMap
+ ref34a84548.graphicsPipelineLibrary, cgraphicsPipelineLibrary_allocs = (C.VkBool32)(x.GraphicsPipelineLibrary), cgoAllocsUnknown
+ allocs34a84548.Borrow(cgraphicsPipelineLibrary_allocs)
- x.reffe09253e = reffe09253e
- x.allocsfe09253e = allocsfe09253e
- return reffe09253e, allocsfe09253e
+ x.ref34a84548 = ref34a84548
+ x.allocs34a84548 = allocs34a84548
+ return ref34a84548, allocs34a84548
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x ImportMemoryHostPointerInfo) PassValue() (C.VkImportMemoryHostPointerInfoEXT, *cgoAllocMap) {
- if x.reffe09253e != nil {
- return *x.reffe09253e, nil
+func (x PhysicalDeviceGraphicsPipelineLibraryFeatures) PassValue() (C.VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT, *cgoAllocMap) {
+ if x.ref34a84548 != nil {
+ return *x.ref34a84548, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -37313,91 +64088,94 @@ func (x ImportMemoryHostPointerInfo) PassValue() (C.VkImportMemoryHostPointerInf
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *ImportMemoryHostPointerInfo) Deref() {
- if x.reffe09253e == nil {
+func (x *PhysicalDeviceGraphicsPipelineLibraryFeatures) Deref() {
+ if x.ref34a84548 == nil {
return
}
- x.SType = (StructureType)(x.reffe09253e.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reffe09253e.pNext))
- x.HandleType = (ExternalMemoryHandleTypeFlagBits)(x.reffe09253e.handleType)
- x.PHostPointer = (unsafe.Pointer)(unsafe.Pointer(x.reffe09253e.pHostPointer))
+ x.SType = (StructureType)(x.ref34a84548.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref34a84548.pNext))
+ x.GraphicsPipelineLibrary = (Bool32)(x.ref34a84548.graphicsPipelineLibrary)
}
-// allocMemoryHostPointerPropertiesMemory allocates memory for type C.VkMemoryHostPointerPropertiesEXT in C.
+// allocPhysicalDeviceGraphicsPipelineLibraryPropertiesMemory allocates memory for type C.VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocMemoryHostPointerPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfMemoryHostPointerPropertiesValue))
+func allocPhysicalDeviceGraphicsPipelineLibraryPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceGraphicsPipelineLibraryPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfMemoryHostPointerPropertiesValue = unsafe.Sizeof([1]C.VkMemoryHostPointerPropertiesEXT{})
+const sizeOfPhysicalDeviceGraphicsPipelineLibraryPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *MemoryHostPointerProperties) Ref() *C.VkMemoryHostPointerPropertiesEXT {
+func (x *PhysicalDeviceGraphicsPipelineLibraryProperties) Ref() *C.VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT {
if x == nil {
return nil
}
- return x.refebf46a84
+ return x.ref3266d876
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *MemoryHostPointerProperties) Free() {
- if x != nil && x.allocsebf46a84 != nil {
- x.allocsebf46a84.(*cgoAllocMap).Free()
- x.refebf46a84 = nil
+func (x *PhysicalDeviceGraphicsPipelineLibraryProperties) Free() {
+ if x != nil && x.allocs3266d876 != nil {
+ x.allocs3266d876.(*cgoAllocMap).Free()
+ x.ref3266d876 = nil
}
}
-// NewMemoryHostPointerPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceGraphicsPipelineLibraryPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewMemoryHostPointerPropertiesRef(ref unsafe.Pointer) *MemoryHostPointerProperties {
+func NewPhysicalDeviceGraphicsPipelineLibraryPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceGraphicsPipelineLibraryProperties {
if ref == nil {
return nil
}
- obj := new(MemoryHostPointerProperties)
- obj.refebf46a84 = (*C.VkMemoryHostPointerPropertiesEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceGraphicsPipelineLibraryProperties)
+ obj.ref3266d876 = (*C.VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *MemoryHostPointerProperties) PassRef() (*C.VkMemoryHostPointerPropertiesEXT, *cgoAllocMap) {
+func (x *PhysicalDeviceGraphicsPipelineLibraryProperties) PassRef() (*C.VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refebf46a84 != nil {
- return x.refebf46a84, nil
+ } else if x.ref3266d876 != nil {
+ return x.ref3266d876, nil
}
- memebf46a84 := allocMemoryHostPointerPropertiesMemory(1)
- refebf46a84 := (*C.VkMemoryHostPointerPropertiesEXT)(memebf46a84)
- allocsebf46a84 := new(cgoAllocMap)
- allocsebf46a84.Add(memebf46a84)
+ mem3266d876 := allocPhysicalDeviceGraphicsPipelineLibraryPropertiesMemory(1)
+ ref3266d876 := (*C.VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT)(mem3266d876)
+ allocs3266d876 := new(cgoAllocMap)
+ allocs3266d876.Add(mem3266d876)
var csType_allocs *cgoAllocMap
- refebf46a84.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsebf46a84.Borrow(csType_allocs)
+ ref3266d876.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs3266d876.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refebf46a84.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsebf46a84.Borrow(cpNext_allocs)
+ ref3266d876.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs3266d876.Borrow(cpNext_allocs)
- var cmemoryTypeBits_allocs *cgoAllocMap
- refebf46a84.memoryTypeBits, cmemoryTypeBits_allocs = (C.uint32_t)(x.MemoryTypeBits), cgoAllocsUnknown
- allocsebf46a84.Borrow(cmemoryTypeBits_allocs)
+ var cgraphicsPipelineLibraryFastLinking_allocs *cgoAllocMap
+ ref3266d876.graphicsPipelineLibraryFastLinking, cgraphicsPipelineLibraryFastLinking_allocs = (C.VkBool32)(x.GraphicsPipelineLibraryFastLinking), cgoAllocsUnknown
+ allocs3266d876.Borrow(cgraphicsPipelineLibraryFastLinking_allocs)
- x.refebf46a84 = refebf46a84
- x.allocsebf46a84 = allocsebf46a84
- return refebf46a84, allocsebf46a84
+ var cgraphicsPipelineLibraryIndependentInterpolationDecoration_allocs *cgoAllocMap
+ ref3266d876.graphicsPipelineLibraryIndependentInterpolationDecoration, cgraphicsPipelineLibraryIndependentInterpolationDecoration_allocs = (C.VkBool32)(x.GraphicsPipelineLibraryIndependentInterpolationDecoration), cgoAllocsUnknown
+ allocs3266d876.Borrow(cgraphicsPipelineLibraryIndependentInterpolationDecoration_allocs)
+
+ x.ref3266d876 = ref3266d876
+ x.allocs3266d876 = allocs3266d876
+ return ref3266d876, allocs3266d876
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x MemoryHostPointerProperties) PassValue() (C.VkMemoryHostPointerPropertiesEXT, *cgoAllocMap) {
- if x.refebf46a84 != nil {
- return *x.refebf46a84, nil
+func (x PhysicalDeviceGraphicsPipelineLibraryProperties) PassValue() (C.VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT, *cgoAllocMap) {
+ if x.ref3266d876 != nil {
+ return *x.ref3266d876, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -37405,90 +64183,91 @@ func (x MemoryHostPointerProperties) PassValue() (C.VkMemoryHostPointerPropertie
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *MemoryHostPointerProperties) Deref() {
- if x.refebf46a84 == nil {
+func (x *PhysicalDeviceGraphicsPipelineLibraryProperties) Deref() {
+ if x.ref3266d876 == nil {
return
}
- x.SType = (StructureType)(x.refebf46a84.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refebf46a84.pNext))
- x.MemoryTypeBits = (uint32)(x.refebf46a84.memoryTypeBits)
+ x.SType = (StructureType)(x.ref3266d876.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref3266d876.pNext))
+ x.GraphicsPipelineLibraryFastLinking = (Bool32)(x.ref3266d876.graphicsPipelineLibraryFastLinking)
+ x.GraphicsPipelineLibraryIndependentInterpolationDecoration = (Bool32)(x.ref3266d876.graphicsPipelineLibraryIndependentInterpolationDecoration)
}
-// allocPhysicalDeviceExternalMemoryHostPropertiesMemory allocates memory for type C.VkPhysicalDeviceExternalMemoryHostPropertiesEXT in C.
+// allocGraphicsPipelineLibraryCreateInfoMemory allocates memory for type C.VkGraphicsPipelineLibraryCreateInfoEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceExternalMemoryHostPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceExternalMemoryHostPropertiesValue))
+func allocGraphicsPipelineLibraryCreateInfoMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfGraphicsPipelineLibraryCreateInfoValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceExternalMemoryHostPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceExternalMemoryHostPropertiesEXT{})
+const sizeOfGraphicsPipelineLibraryCreateInfoValue = unsafe.Sizeof([1]C.VkGraphicsPipelineLibraryCreateInfoEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceExternalMemoryHostProperties) Ref() *C.VkPhysicalDeviceExternalMemoryHostPropertiesEXT {
+func (x *GraphicsPipelineLibraryCreateInfo) Ref() *C.VkGraphicsPipelineLibraryCreateInfoEXT {
if x == nil {
return nil
}
- return x.ref7f697d15
+ return x.reff164ebfc
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceExternalMemoryHostProperties) Free() {
- if x != nil && x.allocs7f697d15 != nil {
- x.allocs7f697d15.(*cgoAllocMap).Free()
- x.ref7f697d15 = nil
+func (x *GraphicsPipelineLibraryCreateInfo) Free() {
+ if x != nil && x.allocsf164ebfc != nil {
+ x.allocsf164ebfc.(*cgoAllocMap).Free()
+ x.reff164ebfc = nil
}
}
-// NewPhysicalDeviceExternalMemoryHostPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewGraphicsPipelineLibraryCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceExternalMemoryHostPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceExternalMemoryHostProperties {
+func NewGraphicsPipelineLibraryCreateInfoRef(ref unsafe.Pointer) *GraphicsPipelineLibraryCreateInfo {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceExternalMemoryHostProperties)
- obj.ref7f697d15 = (*C.VkPhysicalDeviceExternalMemoryHostPropertiesEXT)(unsafe.Pointer(ref))
+ obj := new(GraphicsPipelineLibraryCreateInfo)
+ obj.reff164ebfc = (*C.VkGraphicsPipelineLibraryCreateInfoEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceExternalMemoryHostProperties) PassRef() (*C.VkPhysicalDeviceExternalMemoryHostPropertiesEXT, *cgoAllocMap) {
+func (x *GraphicsPipelineLibraryCreateInfo) PassRef() (*C.VkGraphicsPipelineLibraryCreateInfoEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref7f697d15 != nil {
- return x.ref7f697d15, nil
+ } else if x.reff164ebfc != nil {
+ return x.reff164ebfc, nil
}
- mem7f697d15 := allocPhysicalDeviceExternalMemoryHostPropertiesMemory(1)
- ref7f697d15 := (*C.VkPhysicalDeviceExternalMemoryHostPropertiesEXT)(mem7f697d15)
- allocs7f697d15 := new(cgoAllocMap)
- allocs7f697d15.Add(mem7f697d15)
+ memf164ebfc := allocGraphicsPipelineLibraryCreateInfoMemory(1)
+ reff164ebfc := (*C.VkGraphicsPipelineLibraryCreateInfoEXT)(memf164ebfc)
+ allocsf164ebfc := new(cgoAllocMap)
+ allocsf164ebfc.Add(memf164ebfc)
var csType_allocs *cgoAllocMap
- ref7f697d15.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs7f697d15.Borrow(csType_allocs)
+ reff164ebfc.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsf164ebfc.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref7f697d15.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs7f697d15.Borrow(cpNext_allocs)
+ reff164ebfc.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsf164ebfc.Borrow(cpNext_allocs)
- var cminImportedHostPointerAlignment_allocs *cgoAllocMap
- ref7f697d15.minImportedHostPointerAlignment, cminImportedHostPointerAlignment_allocs = (C.VkDeviceSize)(x.MinImportedHostPointerAlignment), cgoAllocsUnknown
- allocs7f697d15.Borrow(cminImportedHostPointerAlignment_allocs)
+ var cflags_allocs *cgoAllocMap
+ reff164ebfc.flags, cflags_allocs = (C.VkGraphicsPipelineLibraryFlagsEXT)(x.Flags), cgoAllocsUnknown
+ allocsf164ebfc.Borrow(cflags_allocs)
- x.ref7f697d15 = ref7f697d15
- x.allocs7f697d15 = allocs7f697d15
- return ref7f697d15, allocs7f697d15
+ x.reff164ebfc = reff164ebfc
+ x.allocsf164ebfc = allocsf164ebfc
+ return reff164ebfc, allocsf164ebfc
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceExternalMemoryHostProperties) PassValue() (C.VkPhysicalDeviceExternalMemoryHostPropertiesEXT, *cgoAllocMap) {
- if x.ref7f697d15 != nil {
- return *x.ref7f697d15, nil
+func (x GraphicsPipelineLibraryCreateInfo) PassValue() (C.VkGraphicsPipelineLibraryCreateInfoEXT, *cgoAllocMap) {
+ if x.reff164ebfc != nil {
+ return *x.reff164ebfc, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -37496,90 +64275,90 @@ func (x PhysicalDeviceExternalMemoryHostProperties) PassValue() (C.VkPhysicalDev
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceExternalMemoryHostProperties) Deref() {
- if x.ref7f697d15 == nil {
+func (x *GraphicsPipelineLibraryCreateInfo) Deref() {
+ if x.reff164ebfc == nil {
return
}
- x.SType = (StructureType)(x.ref7f697d15.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref7f697d15.pNext))
- x.MinImportedHostPointerAlignment = (DeviceSize)(x.ref7f697d15.minImportedHostPointerAlignment)
+ x.SType = (StructureType)(x.reff164ebfc.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff164ebfc.pNext))
+ x.Flags = (GraphicsPipelineLibraryFlags)(x.reff164ebfc.flags)
}
-// allocCalibratedTimestampInfoMemory allocates memory for type C.VkCalibratedTimestampInfoEXT in C.
+// allocPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMDMemory allocates memory for type C.VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocCalibratedTimestampInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCalibratedTimestampInfoValue))
+func allocPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMDMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMDValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfCalibratedTimestampInfoValue = unsafe.Sizeof([1]C.VkCalibratedTimestampInfoEXT{})
+const sizeOfPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMDValue = unsafe.Sizeof([1]C.VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *CalibratedTimestampInfo) Ref() *C.VkCalibratedTimestampInfoEXT {
+func (x *PhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD) Ref() *C.VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD {
if x == nil {
return nil
}
- return x.ref5f061d2a
+ return x.refec282b5f
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *CalibratedTimestampInfo) Free() {
- if x != nil && x.allocs5f061d2a != nil {
- x.allocs5f061d2a.(*cgoAllocMap).Free()
- x.ref5f061d2a = nil
+func (x *PhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD) Free() {
+ if x != nil && x.allocsec282b5f != nil {
+ x.allocsec282b5f.(*cgoAllocMap).Free()
+ x.refec282b5f = nil
}
}
-// NewCalibratedTimestampInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMDRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewCalibratedTimestampInfoRef(ref unsafe.Pointer) *CalibratedTimestampInfo {
+func NewPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMDRef(ref unsafe.Pointer) *PhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD {
if ref == nil {
return nil
}
- obj := new(CalibratedTimestampInfo)
- obj.ref5f061d2a = (*C.VkCalibratedTimestampInfoEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD)
+ obj.refec282b5f = (*C.VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *CalibratedTimestampInfo) PassRef() (*C.VkCalibratedTimestampInfoEXT, *cgoAllocMap) {
+func (x *PhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD) PassRef() (*C.VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref5f061d2a != nil {
- return x.ref5f061d2a, nil
+ } else if x.refec282b5f != nil {
+ return x.refec282b5f, nil
}
- mem5f061d2a := allocCalibratedTimestampInfoMemory(1)
- ref5f061d2a := (*C.VkCalibratedTimestampInfoEXT)(mem5f061d2a)
- allocs5f061d2a := new(cgoAllocMap)
- allocs5f061d2a.Add(mem5f061d2a)
+ memec282b5f := allocPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMDMemory(1)
+ refec282b5f := (*C.VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD)(memec282b5f)
+ allocsec282b5f := new(cgoAllocMap)
+ allocsec282b5f.Add(memec282b5f)
var csType_allocs *cgoAllocMap
- ref5f061d2a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs5f061d2a.Borrow(csType_allocs)
+ refec282b5f.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsec282b5f.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref5f061d2a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs5f061d2a.Borrow(cpNext_allocs)
+ refec282b5f.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsec282b5f.Borrow(cpNext_allocs)
- var ctimeDomain_allocs *cgoAllocMap
- ref5f061d2a.timeDomain, ctimeDomain_allocs = (C.VkTimeDomainEXT)(x.TimeDomain), cgoAllocsUnknown
- allocs5f061d2a.Borrow(ctimeDomain_allocs)
+ var cshaderEarlyAndLateFragmentTests_allocs *cgoAllocMap
+ refec282b5f.shaderEarlyAndLateFragmentTests, cshaderEarlyAndLateFragmentTests_allocs = (C.VkBool32)(x.ShaderEarlyAndLateFragmentTests), cgoAllocsUnknown
+ allocsec282b5f.Borrow(cshaderEarlyAndLateFragmentTests_allocs)
- x.ref5f061d2a = ref5f061d2a
- x.allocs5f061d2a = allocs5f061d2a
- return ref5f061d2a, allocs5f061d2a
+ x.refec282b5f = refec282b5f
+ x.allocsec282b5f = allocsec282b5f
+ return refec282b5f, allocsec282b5f
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x CalibratedTimestampInfo) PassValue() (C.VkCalibratedTimestampInfoEXT, *cgoAllocMap) {
- if x.ref5f061d2a != nil {
- return *x.ref5f061d2a, nil
+func (x PhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD) PassValue() (C.VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD, *cgoAllocMap) {
+ if x.refec282b5f != nil {
+ return *x.refec282b5f, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -37587,142 +64366,98 @@ func (x CalibratedTimestampInfo) PassValue() (C.VkCalibratedTimestampInfoEXT, *c
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *CalibratedTimestampInfo) Deref() {
- if x.ref5f061d2a == nil {
+func (x *PhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD) Deref() {
+ if x.refec282b5f == nil {
return
}
- x.SType = (StructureType)(x.ref5f061d2a.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref5f061d2a.pNext))
- x.TimeDomain = (TimeDomain)(x.ref5f061d2a.timeDomain)
+ x.SType = (StructureType)(x.refec282b5f.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refec282b5f.pNext))
+ x.ShaderEarlyAndLateFragmentTests = (Bool32)(x.refec282b5f.shaderEarlyAndLateFragmentTests)
}
-// allocPhysicalDeviceShaderCorePropertiesAMDMemory allocates memory for type C.VkPhysicalDeviceShaderCorePropertiesAMD in C.
+// allocPhysicalDeviceFragmentShadingRateEnumsFeaturesNVMemory allocates memory for type C.VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceShaderCorePropertiesAMDMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceShaderCorePropertiesAMDValue))
+func allocPhysicalDeviceFragmentShadingRateEnumsFeaturesNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceFragmentShadingRateEnumsFeaturesNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceShaderCorePropertiesAMDValue = unsafe.Sizeof([1]C.VkPhysicalDeviceShaderCorePropertiesAMD{})
+const sizeOfPhysicalDeviceFragmentShadingRateEnumsFeaturesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceShaderCorePropertiesAMD) Ref() *C.VkPhysicalDeviceShaderCorePropertiesAMD {
+func (x *PhysicalDeviceFragmentShadingRateEnumsFeaturesNV) Ref() *C.VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV {
if x == nil {
return nil
}
- return x.refde4b3b09
+ return x.refd295c0e9
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceShaderCorePropertiesAMD) Free() {
- if x != nil && x.allocsde4b3b09 != nil {
- x.allocsde4b3b09.(*cgoAllocMap).Free()
- x.refde4b3b09 = nil
+func (x *PhysicalDeviceFragmentShadingRateEnumsFeaturesNV) Free() {
+ if x != nil && x.allocsd295c0e9 != nil {
+ x.allocsd295c0e9.(*cgoAllocMap).Free()
+ x.refd295c0e9 = nil
}
}
-// NewPhysicalDeviceShaderCorePropertiesAMDRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceFragmentShadingRateEnumsFeaturesNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceShaderCorePropertiesAMDRef(ref unsafe.Pointer) *PhysicalDeviceShaderCorePropertiesAMD {
+func NewPhysicalDeviceFragmentShadingRateEnumsFeaturesNVRef(ref unsafe.Pointer) *PhysicalDeviceFragmentShadingRateEnumsFeaturesNV {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceShaderCorePropertiesAMD)
- obj.refde4b3b09 = (*C.VkPhysicalDeviceShaderCorePropertiesAMD)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceFragmentShadingRateEnumsFeaturesNV)
+ obj.refd295c0e9 = (*C.VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceShaderCorePropertiesAMD) PassRef() (*C.VkPhysicalDeviceShaderCorePropertiesAMD, *cgoAllocMap) {
+func (x *PhysicalDeviceFragmentShadingRateEnumsFeaturesNV) PassRef() (*C.VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refde4b3b09 != nil {
- return x.refde4b3b09, nil
+ } else if x.refd295c0e9 != nil {
+ return x.refd295c0e9, nil
}
- memde4b3b09 := allocPhysicalDeviceShaderCorePropertiesAMDMemory(1)
- refde4b3b09 := (*C.VkPhysicalDeviceShaderCorePropertiesAMD)(memde4b3b09)
- allocsde4b3b09 := new(cgoAllocMap)
- allocsde4b3b09.Add(memde4b3b09)
+ memd295c0e9 := allocPhysicalDeviceFragmentShadingRateEnumsFeaturesNVMemory(1)
+ refd295c0e9 := (*C.VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV)(memd295c0e9)
+ allocsd295c0e9 := new(cgoAllocMap)
+ allocsd295c0e9.Add(memd295c0e9)
var csType_allocs *cgoAllocMap
- refde4b3b09.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsde4b3b09.Borrow(csType_allocs)
+ refd295c0e9.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsd295c0e9.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refde4b3b09.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsde4b3b09.Borrow(cpNext_allocs)
-
- var cshaderEngineCount_allocs *cgoAllocMap
- refde4b3b09.shaderEngineCount, cshaderEngineCount_allocs = (C.uint32_t)(x.ShaderEngineCount), cgoAllocsUnknown
- allocsde4b3b09.Borrow(cshaderEngineCount_allocs)
-
- var cshaderArraysPerEngineCount_allocs *cgoAllocMap
- refde4b3b09.shaderArraysPerEngineCount, cshaderArraysPerEngineCount_allocs = (C.uint32_t)(x.ShaderArraysPerEngineCount), cgoAllocsUnknown
- allocsde4b3b09.Borrow(cshaderArraysPerEngineCount_allocs)
-
- var ccomputeUnitsPerShaderArray_allocs *cgoAllocMap
- refde4b3b09.computeUnitsPerShaderArray, ccomputeUnitsPerShaderArray_allocs = (C.uint32_t)(x.ComputeUnitsPerShaderArray), cgoAllocsUnknown
- allocsde4b3b09.Borrow(ccomputeUnitsPerShaderArray_allocs)
-
- var csimdPerComputeUnit_allocs *cgoAllocMap
- refde4b3b09.simdPerComputeUnit, csimdPerComputeUnit_allocs = (C.uint32_t)(x.SimdPerComputeUnit), cgoAllocsUnknown
- allocsde4b3b09.Borrow(csimdPerComputeUnit_allocs)
-
- var cwavefrontsPerSimd_allocs *cgoAllocMap
- refde4b3b09.wavefrontsPerSimd, cwavefrontsPerSimd_allocs = (C.uint32_t)(x.WavefrontsPerSimd), cgoAllocsUnknown
- allocsde4b3b09.Borrow(cwavefrontsPerSimd_allocs)
-
- var cwavefrontSize_allocs *cgoAllocMap
- refde4b3b09.wavefrontSize, cwavefrontSize_allocs = (C.uint32_t)(x.WavefrontSize), cgoAllocsUnknown
- allocsde4b3b09.Borrow(cwavefrontSize_allocs)
-
- var csgprsPerSimd_allocs *cgoAllocMap
- refde4b3b09.sgprsPerSimd, csgprsPerSimd_allocs = (C.uint32_t)(x.SgprsPerSimd), cgoAllocsUnknown
- allocsde4b3b09.Borrow(csgprsPerSimd_allocs)
-
- var cminSgprAllocation_allocs *cgoAllocMap
- refde4b3b09.minSgprAllocation, cminSgprAllocation_allocs = (C.uint32_t)(x.MinSgprAllocation), cgoAllocsUnknown
- allocsde4b3b09.Borrow(cminSgprAllocation_allocs)
-
- var cmaxSgprAllocation_allocs *cgoAllocMap
- refde4b3b09.maxSgprAllocation, cmaxSgprAllocation_allocs = (C.uint32_t)(x.MaxSgprAllocation), cgoAllocsUnknown
- allocsde4b3b09.Borrow(cmaxSgprAllocation_allocs)
-
- var csgprAllocationGranularity_allocs *cgoAllocMap
- refde4b3b09.sgprAllocationGranularity, csgprAllocationGranularity_allocs = (C.uint32_t)(x.SgprAllocationGranularity), cgoAllocsUnknown
- allocsde4b3b09.Borrow(csgprAllocationGranularity_allocs)
-
- var cvgprsPerSimd_allocs *cgoAllocMap
- refde4b3b09.vgprsPerSimd, cvgprsPerSimd_allocs = (C.uint32_t)(x.VgprsPerSimd), cgoAllocsUnknown
- allocsde4b3b09.Borrow(cvgprsPerSimd_allocs)
+ refd295c0e9.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsd295c0e9.Borrow(cpNext_allocs)
- var cminVgprAllocation_allocs *cgoAllocMap
- refde4b3b09.minVgprAllocation, cminVgprAllocation_allocs = (C.uint32_t)(x.MinVgprAllocation), cgoAllocsUnknown
- allocsde4b3b09.Borrow(cminVgprAllocation_allocs)
+ var cfragmentShadingRateEnums_allocs *cgoAllocMap
+ refd295c0e9.fragmentShadingRateEnums, cfragmentShadingRateEnums_allocs = (C.VkBool32)(x.FragmentShadingRateEnums), cgoAllocsUnknown
+ allocsd295c0e9.Borrow(cfragmentShadingRateEnums_allocs)
- var cmaxVgprAllocation_allocs *cgoAllocMap
- refde4b3b09.maxVgprAllocation, cmaxVgprAllocation_allocs = (C.uint32_t)(x.MaxVgprAllocation), cgoAllocsUnknown
- allocsde4b3b09.Borrow(cmaxVgprAllocation_allocs)
+ var csupersampleFragmentShadingRates_allocs *cgoAllocMap
+ refd295c0e9.supersampleFragmentShadingRates, csupersampleFragmentShadingRates_allocs = (C.VkBool32)(x.SupersampleFragmentShadingRates), cgoAllocsUnknown
+ allocsd295c0e9.Borrow(csupersampleFragmentShadingRates_allocs)
- var cvgprAllocationGranularity_allocs *cgoAllocMap
- refde4b3b09.vgprAllocationGranularity, cvgprAllocationGranularity_allocs = (C.uint32_t)(x.VgprAllocationGranularity), cgoAllocsUnknown
- allocsde4b3b09.Borrow(cvgprAllocationGranularity_allocs)
+ var cnoInvocationFragmentShadingRates_allocs *cgoAllocMap
+ refd295c0e9.noInvocationFragmentShadingRates, cnoInvocationFragmentShadingRates_allocs = (C.VkBool32)(x.NoInvocationFragmentShadingRates), cgoAllocsUnknown
+ allocsd295c0e9.Borrow(cnoInvocationFragmentShadingRates_allocs)
- x.refde4b3b09 = refde4b3b09
- x.allocsde4b3b09 = allocsde4b3b09
- return refde4b3b09, allocsde4b3b09
+ x.refd295c0e9 = refd295c0e9
+ x.allocsd295c0e9 = allocsd295c0e9
+ return refd295c0e9, allocsd295c0e9
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceShaderCorePropertiesAMD) PassValue() (C.VkPhysicalDeviceShaderCorePropertiesAMD, *cgoAllocMap) {
- if x.refde4b3b09 != nil {
- return *x.refde4b3b09, nil
+func (x PhysicalDeviceFragmentShadingRateEnumsFeaturesNV) PassValue() (C.VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV, *cgoAllocMap) {
+ if x.refd295c0e9 != nil {
+ return *x.refd295c0e9, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -37730,103 +64465,92 @@ func (x PhysicalDeviceShaderCorePropertiesAMD) PassValue() (C.VkPhysicalDeviceSh
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceShaderCorePropertiesAMD) Deref() {
- if x.refde4b3b09 == nil {
+func (x *PhysicalDeviceFragmentShadingRateEnumsFeaturesNV) Deref() {
+ if x.refd295c0e9 == nil {
return
}
- x.SType = (StructureType)(x.refde4b3b09.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refde4b3b09.pNext))
- x.ShaderEngineCount = (uint32)(x.refde4b3b09.shaderEngineCount)
- x.ShaderArraysPerEngineCount = (uint32)(x.refde4b3b09.shaderArraysPerEngineCount)
- x.ComputeUnitsPerShaderArray = (uint32)(x.refde4b3b09.computeUnitsPerShaderArray)
- x.SimdPerComputeUnit = (uint32)(x.refde4b3b09.simdPerComputeUnit)
- x.WavefrontsPerSimd = (uint32)(x.refde4b3b09.wavefrontsPerSimd)
- x.WavefrontSize = (uint32)(x.refde4b3b09.wavefrontSize)
- x.SgprsPerSimd = (uint32)(x.refde4b3b09.sgprsPerSimd)
- x.MinSgprAllocation = (uint32)(x.refde4b3b09.minSgprAllocation)
- x.MaxSgprAllocation = (uint32)(x.refde4b3b09.maxSgprAllocation)
- x.SgprAllocationGranularity = (uint32)(x.refde4b3b09.sgprAllocationGranularity)
- x.VgprsPerSimd = (uint32)(x.refde4b3b09.vgprsPerSimd)
- x.MinVgprAllocation = (uint32)(x.refde4b3b09.minVgprAllocation)
- x.MaxVgprAllocation = (uint32)(x.refde4b3b09.maxVgprAllocation)
- x.VgprAllocationGranularity = (uint32)(x.refde4b3b09.vgprAllocationGranularity)
+ x.SType = (StructureType)(x.refd295c0e9.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd295c0e9.pNext))
+ x.FragmentShadingRateEnums = (Bool32)(x.refd295c0e9.fragmentShadingRateEnums)
+ x.SupersampleFragmentShadingRates = (Bool32)(x.refd295c0e9.supersampleFragmentShadingRates)
+ x.NoInvocationFragmentShadingRates = (Bool32)(x.refd295c0e9.noInvocationFragmentShadingRates)
}
-// allocPhysicalDeviceVertexAttributeDivisorPropertiesMemory allocates memory for type C.VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT in C.
+// allocPhysicalDeviceFragmentShadingRateEnumsPropertiesNVMemory allocates memory for type C.VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceVertexAttributeDivisorPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceVertexAttributeDivisorPropertiesValue))
+func allocPhysicalDeviceFragmentShadingRateEnumsPropertiesNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceFragmentShadingRateEnumsPropertiesNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceVertexAttributeDivisorPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT{})
+const sizeOfPhysicalDeviceFragmentShadingRateEnumsPropertiesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceVertexAttributeDivisorProperties) Ref() *C.VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT {
+func (x *PhysicalDeviceFragmentShadingRateEnumsPropertiesNV) Ref() *C.VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV {
if x == nil {
return nil
}
- return x.refbd6b5075
+ return x.ref49eae7dc
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceVertexAttributeDivisorProperties) Free() {
- if x != nil && x.allocsbd6b5075 != nil {
- x.allocsbd6b5075.(*cgoAllocMap).Free()
- x.refbd6b5075 = nil
+func (x *PhysicalDeviceFragmentShadingRateEnumsPropertiesNV) Free() {
+ if x != nil && x.allocs49eae7dc != nil {
+ x.allocs49eae7dc.(*cgoAllocMap).Free()
+ x.ref49eae7dc = nil
}
}
-// NewPhysicalDeviceVertexAttributeDivisorPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceFragmentShadingRateEnumsPropertiesNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceVertexAttributeDivisorPropertiesRef(ref unsafe.Pointer) *PhysicalDeviceVertexAttributeDivisorProperties {
+func NewPhysicalDeviceFragmentShadingRateEnumsPropertiesNVRef(ref unsafe.Pointer) *PhysicalDeviceFragmentShadingRateEnumsPropertiesNV {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceVertexAttributeDivisorProperties)
- obj.refbd6b5075 = (*C.VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceFragmentShadingRateEnumsPropertiesNV)
+ obj.ref49eae7dc = (*C.VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceVertexAttributeDivisorProperties) PassRef() (*C.VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT, *cgoAllocMap) {
+func (x *PhysicalDeviceFragmentShadingRateEnumsPropertiesNV) PassRef() (*C.VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refbd6b5075 != nil {
- return x.refbd6b5075, nil
+ } else if x.ref49eae7dc != nil {
+ return x.ref49eae7dc, nil
}
- membd6b5075 := allocPhysicalDeviceVertexAttributeDivisorPropertiesMemory(1)
- refbd6b5075 := (*C.VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT)(membd6b5075)
- allocsbd6b5075 := new(cgoAllocMap)
- allocsbd6b5075.Add(membd6b5075)
+ mem49eae7dc := allocPhysicalDeviceFragmentShadingRateEnumsPropertiesNVMemory(1)
+ ref49eae7dc := (*C.VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV)(mem49eae7dc)
+ allocs49eae7dc := new(cgoAllocMap)
+ allocs49eae7dc.Add(mem49eae7dc)
var csType_allocs *cgoAllocMap
- refbd6b5075.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsbd6b5075.Borrow(csType_allocs)
+ ref49eae7dc.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs49eae7dc.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refbd6b5075.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsbd6b5075.Borrow(cpNext_allocs)
+ ref49eae7dc.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs49eae7dc.Borrow(cpNext_allocs)
- var cmaxVertexAttribDivisor_allocs *cgoAllocMap
- refbd6b5075.maxVertexAttribDivisor, cmaxVertexAttribDivisor_allocs = (C.uint32_t)(x.MaxVertexAttribDivisor), cgoAllocsUnknown
- allocsbd6b5075.Borrow(cmaxVertexAttribDivisor_allocs)
+ var cmaxFragmentShadingRateInvocationCount_allocs *cgoAllocMap
+ ref49eae7dc.maxFragmentShadingRateInvocationCount, cmaxFragmentShadingRateInvocationCount_allocs = (C.VkSampleCountFlagBits)(x.MaxFragmentShadingRateInvocationCount), cgoAllocsUnknown
+ allocs49eae7dc.Borrow(cmaxFragmentShadingRateInvocationCount_allocs)
- x.refbd6b5075 = refbd6b5075
- x.allocsbd6b5075 = allocsbd6b5075
- return refbd6b5075, allocsbd6b5075
+ x.ref49eae7dc = ref49eae7dc
+ x.allocs49eae7dc = allocs49eae7dc
+ return ref49eae7dc, allocs49eae7dc
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceVertexAttributeDivisorProperties) PassValue() (C.VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT, *cgoAllocMap) {
- if x.refbd6b5075 != nil {
- return *x.refbd6b5075, nil
+func (x PhysicalDeviceFragmentShadingRateEnumsPropertiesNV) PassValue() (C.VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV, *cgoAllocMap) {
+ if x.ref49eae7dc != nil {
+ return *x.ref49eae7dc, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -37834,86 +64558,98 @@ func (x PhysicalDeviceVertexAttributeDivisorProperties) PassValue() (C.VkPhysica
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceVertexAttributeDivisorProperties) Deref() {
- if x.refbd6b5075 == nil {
+func (x *PhysicalDeviceFragmentShadingRateEnumsPropertiesNV) Deref() {
+ if x.ref49eae7dc == nil {
return
}
- x.SType = (StructureType)(x.refbd6b5075.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refbd6b5075.pNext))
- x.MaxVertexAttribDivisor = (uint32)(x.refbd6b5075.maxVertexAttribDivisor)
+ x.SType = (StructureType)(x.ref49eae7dc.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref49eae7dc.pNext))
+ x.MaxFragmentShadingRateInvocationCount = (SampleCountFlagBits)(x.ref49eae7dc.maxFragmentShadingRateInvocationCount)
}
-// allocVertexInputBindingDivisorDescriptionMemory allocates memory for type C.VkVertexInputBindingDivisorDescriptionEXT in C.
+// allocPipelineFragmentShadingRateEnumStateCreateInfoNVMemory allocates memory for type C.VkPipelineFragmentShadingRateEnumStateCreateInfoNV in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocVertexInputBindingDivisorDescriptionMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfVertexInputBindingDivisorDescriptionValue))
+func allocPipelineFragmentShadingRateEnumStateCreateInfoNVMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineFragmentShadingRateEnumStateCreateInfoNVValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfVertexInputBindingDivisorDescriptionValue = unsafe.Sizeof([1]C.VkVertexInputBindingDivisorDescriptionEXT{})
+const sizeOfPipelineFragmentShadingRateEnumStateCreateInfoNVValue = unsafe.Sizeof([1]C.VkPipelineFragmentShadingRateEnumStateCreateInfoNV{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *VertexInputBindingDivisorDescription) Ref() *C.VkVertexInputBindingDivisorDescriptionEXT {
+func (x *PipelineFragmentShadingRateEnumStateCreateInfoNV) Ref() *C.VkPipelineFragmentShadingRateEnumStateCreateInfoNV {
if x == nil {
return nil
}
- return x.refd64d4396
+ return x.ref82a7e17b
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *VertexInputBindingDivisorDescription) Free() {
- if x != nil && x.allocsd64d4396 != nil {
- x.allocsd64d4396.(*cgoAllocMap).Free()
- x.refd64d4396 = nil
+func (x *PipelineFragmentShadingRateEnumStateCreateInfoNV) Free() {
+ if x != nil && x.allocs82a7e17b != nil {
+ x.allocs82a7e17b.(*cgoAllocMap).Free()
+ x.ref82a7e17b = nil
}
}
-// NewVertexInputBindingDivisorDescriptionRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPipelineFragmentShadingRateEnumStateCreateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewVertexInputBindingDivisorDescriptionRef(ref unsafe.Pointer) *VertexInputBindingDivisorDescription {
+func NewPipelineFragmentShadingRateEnumStateCreateInfoNVRef(ref unsafe.Pointer) *PipelineFragmentShadingRateEnumStateCreateInfoNV {
if ref == nil {
return nil
}
- obj := new(VertexInputBindingDivisorDescription)
- obj.refd64d4396 = (*C.VkVertexInputBindingDivisorDescriptionEXT)(unsafe.Pointer(ref))
+ obj := new(PipelineFragmentShadingRateEnumStateCreateInfoNV)
+ obj.ref82a7e17b = (*C.VkPipelineFragmentShadingRateEnumStateCreateInfoNV)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *VertexInputBindingDivisorDescription) PassRef() (*C.VkVertexInputBindingDivisorDescriptionEXT, *cgoAllocMap) {
+func (x *PipelineFragmentShadingRateEnumStateCreateInfoNV) PassRef() (*C.VkPipelineFragmentShadingRateEnumStateCreateInfoNV, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refd64d4396 != nil {
- return x.refd64d4396, nil
+ } else if x.ref82a7e17b != nil {
+ return x.ref82a7e17b, nil
}
- memd64d4396 := allocVertexInputBindingDivisorDescriptionMemory(1)
- refd64d4396 := (*C.VkVertexInputBindingDivisorDescriptionEXT)(memd64d4396)
- allocsd64d4396 := new(cgoAllocMap)
- allocsd64d4396.Add(memd64d4396)
+ mem82a7e17b := allocPipelineFragmentShadingRateEnumStateCreateInfoNVMemory(1)
+ ref82a7e17b := (*C.VkPipelineFragmentShadingRateEnumStateCreateInfoNV)(mem82a7e17b)
+ allocs82a7e17b := new(cgoAllocMap)
+ allocs82a7e17b.Add(mem82a7e17b)
- var cbinding_allocs *cgoAllocMap
- refd64d4396.binding, cbinding_allocs = (C.uint32_t)(x.Binding), cgoAllocsUnknown
- allocsd64d4396.Borrow(cbinding_allocs)
+ var csType_allocs *cgoAllocMap
+ ref82a7e17b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs82a7e17b.Borrow(csType_allocs)
- var cdivisor_allocs *cgoAllocMap
- refd64d4396.divisor, cdivisor_allocs = (C.uint32_t)(x.Divisor), cgoAllocsUnknown
- allocsd64d4396.Borrow(cdivisor_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref82a7e17b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs82a7e17b.Borrow(cpNext_allocs)
- x.refd64d4396 = refd64d4396
- x.allocsd64d4396 = allocsd64d4396
- return refd64d4396, allocsd64d4396
+ var cshadingRateType_allocs *cgoAllocMap
+ ref82a7e17b.shadingRateType, cshadingRateType_allocs = (C.VkFragmentShadingRateTypeNV)(x.ShadingRateType), cgoAllocsUnknown
+ allocs82a7e17b.Borrow(cshadingRateType_allocs)
+
+ var cshadingRate_allocs *cgoAllocMap
+ ref82a7e17b.shadingRate, cshadingRate_allocs = (C.VkFragmentShadingRateNV)(x.ShadingRate), cgoAllocsUnknown
+ allocs82a7e17b.Borrow(cshadingRate_allocs)
+
+ var ccombinerOps_allocs *cgoAllocMap
+ ref82a7e17b.combinerOps, ccombinerOps_allocs = *(*[2]C.VkFragmentShadingRateCombinerOpKHR)(unsafe.Pointer(&x.CombinerOps)), cgoAllocsUnknown
+ allocs82a7e17b.Borrow(ccombinerOps_allocs)
+
+ x.ref82a7e17b = ref82a7e17b
+ x.allocs82a7e17b = allocs82a7e17b
+ return ref82a7e17b, allocs82a7e17b
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x VertexInputBindingDivisorDescription) PassValue() (C.VkVertexInputBindingDivisorDescriptionEXT, *cgoAllocMap) {
- if x.refd64d4396 != nil {
- return *x.refd64d4396, nil
+func (x PipelineFragmentShadingRateEnumStateCreateInfoNV) PassValue() (C.VkPipelineFragmentShadingRateEnumStateCreateInfoNV, *cgoAllocMap) {
+ if x.ref82a7e17b != nil {
+ return *x.ref82a7e17b, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -37921,131 +64657,92 @@ func (x VertexInputBindingDivisorDescription) PassValue() (C.VkVertexInputBindin
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *VertexInputBindingDivisorDescription) Deref() {
- if x.refd64d4396 == nil {
+func (x *PipelineFragmentShadingRateEnumStateCreateInfoNV) Deref() {
+ if x.ref82a7e17b == nil {
return
}
- x.Binding = (uint32)(x.refd64d4396.binding)
- x.Divisor = (uint32)(x.refd64d4396.divisor)
+ x.SType = (StructureType)(x.ref82a7e17b.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref82a7e17b.pNext))
+ x.ShadingRateType = (FragmentShadingRateTypeNV)(x.ref82a7e17b.shadingRateType)
+ x.ShadingRate = (FragmentShadingRateNV)(x.ref82a7e17b.shadingRate)
+ x.CombinerOps = *(*[2]FragmentShadingRateCombinerOp)(unsafe.Pointer(&x.ref82a7e17b.combinerOps))
}
-// allocPipelineVertexInputDivisorStateCreateInfoMemory allocates memory for type C.VkPipelineVertexInputDivisorStateCreateInfoEXT in C.
+// allocPhysicalDeviceYcbcr2Plane444FormatsFeaturesMemory allocates memory for type C.VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPipelineVertexInputDivisorStateCreateInfoMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineVertexInputDivisorStateCreateInfoValue))
+func allocPhysicalDeviceYcbcr2Plane444FormatsFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceYcbcr2Plane444FormatsFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPipelineVertexInputDivisorStateCreateInfoValue = unsafe.Sizeof([1]C.VkPipelineVertexInputDivisorStateCreateInfoEXT{})
-
-// unpackSVertexInputBindingDivisorDescription transforms a sliced Go data structure into plain C format.
-func unpackSVertexInputBindingDivisorDescription(x []VertexInputBindingDivisorDescription) (unpacked *C.VkVertexInputBindingDivisorDescriptionEXT, allocs *cgoAllocMap) {
- if x == nil {
- return nil, nil
- }
- allocs = new(cgoAllocMap)
- defer runtime.SetFinalizer(&unpacked, func(**C.VkVertexInputBindingDivisorDescriptionEXT) {
- go allocs.Free()
- })
-
- len0 := len(x)
- mem0 := allocVertexInputBindingDivisorDescriptionMemory(len0)
- allocs.Add(mem0)
- h0 := &sliceHeader{
- Data: mem0,
- Cap: len0,
- Len: len0,
- }
- v0 := *(*[]C.VkVertexInputBindingDivisorDescriptionEXT)(unsafe.Pointer(h0))
- for i0 := range x {
- allocs0 := new(cgoAllocMap)
- v0[i0], allocs0 = x[i0].PassValue()
- allocs.Borrow(allocs0)
- }
- h := (*sliceHeader)(unsafe.Pointer(&v0))
- unpacked = (*C.VkVertexInputBindingDivisorDescriptionEXT)(h.Data)
- return
-}
-
-// packSVertexInputBindingDivisorDescription reads sliced Go data structure out from plain C format.
-func packSVertexInputBindingDivisorDescription(v []VertexInputBindingDivisorDescription, ptr0 *C.VkVertexInputBindingDivisorDescriptionEXT) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfVertexInputBindingDivisorDescriptionValue]C.VkVertexInputBindingDivisorDescriptionEXT)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewVertexInputBindingDivisorDescriptionRef(unsafe.Pointer(&ptr1))
- }
-}
+const sizeOfPhysicalDeviceYcbcr2Plane444FormatsFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PipelineVertexInputDivisorStateCreateInfo) Ref() *C.VkPipelineVertexInputDivisorStateCreateInfoEXT {
+func (x *PhysicalDeviceYcbcr2Plane444FormatsFeatures) Ref() *C.VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT {
if x == nil {
return nil
}
- return x.ref86096bfd
+ return x.reff075d674
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PipelineVertexInputDivisorStateCreateInfo) Free() {
- if x != nil && x.allocs86096bfd != nil {
- x.allocs86096bfd.(*cgoAllocMap).Free()
- x.ref86096bfd = nil
+func (x *PhysicalDeviceYcbcr2Plane444FormatsFeatures) Free() {
+ if x != nil && x.allocsf075d674 != nil {
+ x.allocsf075d674.(*cgoAllocMap).Free()
+ x.reff075d674 = nil
}
}
-// NewPipelineVertexInputDivisorStateCreateInfoRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceYcbcr2Plane444FormatsFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPipelineVertexInputDivisorStateCreateInfoRef(ref unsafe.Pointer) *PipelineVertexInputDivisorStateCreateInfo {
+func NewPhysicalDeviceYcbcr2Plane444FormatsFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceYcbcr2Plane444FormatsFeatures {
if ref == nil {
return nil
}
- obj := new(PipelineVertexInputDivisorStateCreateInfo)
- obj.ref86096bfd = (*C.VkPipelineVertexInputDivisorStateCreateInfoEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceYcbcr2Plane444FormatsFeatures)
+ obj.reff075d674 = (*C.VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PipelineVertexInputDivisorStateCreateInfo) PassRef() (*C.VkPipelineVertexInputDivisorStateCreateInfoEXT, *cgoAllocMap) {
+func (x *PhysicalDeviceYcbcr2Plane444FormatsFeatures) PassRef() (*C.VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref86096bfd != nil {
- return x.ref86096bfd, nil
+ } else if x.reff075d674 != nil {
+ return x.reff075d674, nil
}
- mem86096bfd := allocPipelineVertexInputDivisorStateCreateInfoMemory(1)
- ref86096bfd := (*C.VkPipelineVertexInputDivisorStateCreateInfoEXT)(mem86096bfd)
- allocs86096bfd := new(cgoAllocMap)
- allocs86096bfd.Add(mem86096bfd)
+ memf075d674 := allocPhysicalDeviceYcbcr2Plane444FormatsFeaturesMemory(1)
+ reff075d674 := (*C.VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT)(memf075d674)
+ allocsf075d674 := new(cgoAllocMap)
+ allocsf075d674.Add(memf075d674)
var csType_allocs *cgoAllocMap
- ref86096bfd.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs86096bfd.Borrow(csType_allocs)
+ reff075d674.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsf075d674.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref86096bfd.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs86096bfd.Borrow(cpNext_allocs)
-
- var cvertexBindingDivisorCount_allocs *cgoAllocMap
- ref86096bfd.vertexBindingDivisorCount, cvertexBindingDivisorCount_allocs = (C.uint32_t)(x.VertexBindingDivisorCount), cgoAllocsUnknown
- allocs86096bfd.Borrow(cvertexBindingDivisorCount_allocs)
+ reff075d674.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsf075d674.Borrow(cpNext_allocs)
- var cpVertexBindingDivisors_allocs *cgoAllocMap
- ref86096bfd.pVertexBindingDivisors, cpVertexBindingDivisors_allocs = unpackSVertexInputBindingDivisorDescription(x.PVertexBindingDivisors)
- allocs86096bfd.Borrow(cpVertexBindingDivisors_allocs)
+ var cycbcr2plane444Formats_allocs *cgoAllocMap
+ reff075d674.ycbcr2plane444Formats, cycbcr2plane444Formats_allocs = (C.VkBool32)(x.Ycbcr2plane444Formats), cgoAllocsUnknown
+ allocsf075d674.Borrow(cycbcr2plane444Formats_allocs)
- x.ref86096bfd = ref86096bfd
- x.allocs86096bfd = allocs86096bfd
- return ref86096bfd, allocs86096bfd
+ x.reff075d674 = reff075d674
+ x.allocsf075d674 = allocsf075d674
+ return reff075d674, allocsf075d674
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PipelineVertexInputDivisorStateCreateInfo) PassValue() (C.VkPipelineVertexInputDivisorStateCreateInfoEXT, *cgoAllocMap) {
- if x.ref86096bfd != nil {
- return *x.ref86096bfd, nil
+func (x PhysicalDeviceYcbcr2Plane444FormatsFeatures) PassValue() (C.VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT, *cgoAllocMap) {
+ if x.reff075d674 != nil {
+ return *x.reff075d674, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -38053,95 +64750,90 @@ func (x PipelineVertexInputDivisorStateCreateInfo) PassValue() (C.VkPipelineVert
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PipelineVertexInputDivisorStateCreateInfo) Deref() {
- if x.ref86096bfd == nil {
+func (x *PhysicalDeviceYcbcr2Plane444FormatsFeatures) Deref() {
+ if x.reff075d674 == nil {
return
}
- x.SType = (StructureType)(x.ref86096bfd.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref86096bfd.pNext))
- x.VertexBindingDivisorCount = (uint32)(x.ref86096bfd.vertexBindingDivisorCount)
- packSVertexInputBindingDivisorDescription(x.PVertexBindingDivisors, x.ref86096bfd.pVertexBindingDivisors)
+ x.SType = (StructureType)(x.reff075d674.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff075d674.pNext))
+ x.Ycbcr2plane444Formats = (Bool32)(x.reff075d674.ycbcr2plane444Formats)
}
-// allocPhysicalDeviceVertexAttributeDivisorFeaturesMemory allocates memory for type C.VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT in C.
+// allocPhysicalDeviceFragmentDensityMap2FeaturesMemory allocates memory for type C.VkPhysicalDeviceFragmentDensityMap2FeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceVertexAttributeDivisorFeaturesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceVertexAttributeDivisorFeaturesValue))
+func allocPhysicalDeviceFragmentDensityMap2FeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceFragmentDensityMap2FeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceVertexAttributeDivisorFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT{})
+const sizeOfPhysicalDeviceFragmentDensityMap2FeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceFragmentDensityMap2FeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceVertexAttributeDivisorFeatures) Ref() *C.VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT {
+func (x *PhysicalDeviceFragmentDensityMap2Features) Ref() *C.VkPhysicalDeviceFragmentDensityMap2FeaturesEXT {
if x == nil {
return nil
}
- return x.refffe7619a
+ return x.ref30a59f8
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceVertexAttributeDivisorFeatures) Free() {
- if x != nil && x.allocsffe7619a != nil {
- x.allocsffe7619a.(*cgoAllocMap).Free()
- x.refffe7619a = nil
+func (x *PhysicalDeviceFragmentDensityMap2Features) Free() {
+ if x != nil && x.allocs30a59f8 != nil {
+ x.allocs30a59f8.(*cgoAllocMap).Free()
+ x.ref30a59f8 = nil
}
}
-// NewPhysicalDeviceVertexAttributeDivisorFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceFragmentDensityMap2FeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceVertexAttributeDivisorFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceVertexAttributeDivisorFeatures {
+func NewPhysicalDeviceFragmentDensityMap2FeaturesRef(ref unsafe.Pointer) *PhysicalDeviceFragmentDensityMap2Features {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceVertexAttributeDivisorFeatures)
- obj.refffe7619a = (*C.VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceFragmentDensityMap2Features)
+ obj.ref30a59f8 = (*C.VkPhysicalDeviceFragmentDensityMap2FeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceVertexAttributeDivisorFeatures) PassRef() (*C.VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT, *cgoAllocMap) {
+func (x *PhysicalDeviceFragmentDensityMap2Features) PassRef() (*C.VkPhysicalDeviceFragmentDensityMap2FeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refffe7619a != nil {
- return x.refffe7619a, nil
+ } else if x.ref30a59f8 != nil {
+ return x.ref30a59f8, nil
}
- memffe7619a := allocPhysicalDeviceVertexAttributeDivisorFeaturesMemory(1)
- refffe7619a := (*C.VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT)(memffe7619a)
- allocsffe7619a := new(cgoAllocMap)
- allocsffe7619a.Add(memffe7619a)
+ mem30a59f8 := allocPhysicalDeviceFragmentDensityMap2FeaturesMemory(1)
+ ref30a59f8 := (*C.VkPhysicalDeviceFragmentDensityMap2FeaturesEXT)(mem30a59f8)
+ allocs30a59f8 := new(cgoAllocMap)
+ allocs30a59f8.Add(mem30a59f8)
var csType_allocs *cgoAllocMap
- refffe7619a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsffe7619a.Borrow(csType_allocs)
+ ref30a59f8.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs30a59f8.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refffe7619a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsffe7619a.Borrow(cpNext_allocs)
-
- var cvertexAttributeInstanceRateDivisor_allocs *cgoAllocMap
- refffe7619a.vertexAttributeInstanceRateDivisor, cvertexAttributeInstanceRateDivisor_allocs = (C.VkBool32)(x.VertexAttributeInstanceRateDivisor), cgoAllocsUnknown
- allocsffe7619a.Borrow(cvertexAttributeInstanceRateDivisor_allocs)
+ ref30a59f8.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs30a59f8.Borrow(cpNext_allocs)
- var cvertexAttributeInstanceRateZeroDivisor_allocs *cgoAllocMap
- refffe7619a.vertexAttributeInstanceRateZeroDivisor, cvertexAttributeInstanceRateZeroDivisor_allocs = (C.VkBool32)(x.VertexAttributeInstanceRateZeroDivisor), cgoAllocsUnknown
- allocsffe7619a.Borrow(cvertexAttributeInstanceRateZeroDivisor_allocs)
+ var cfragmentDensityMapDeferred_allocs *cgoAllocMap
+ ref30a59f8.fragmentDensityMapDeferred, cfragmentDensityMapDeferred_allocs = (C.VkBool32)(x.FragmentDensityMapDeferred), cgoAllocsUnknown
+ allocs30a59f8.Borrow(cfragmentDensityMapDeferred_allocs)
- x.refffe7619a = refffe7619a
- x.allocsffe7619a = allocsffe7619a
- return refffe7619a, allocsffe7619a
+ x.ref30a59f8 = ref30a59f8
+ x.allocs30a59f8 = allocs30a59f8
+ return ref30a59f8, allocs30a59f8
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceVertexAttributeDivisorFeatures) PassValue() (C.VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT, *cgoAllocMap) {
- if x.refffe7619a != nil {
- return *x.refffe7619a, nil
+func (x PhysicalDeviceFragmentDensityMap2Features) PassValue() (C.VkPhysicalDeviceFragmentDensityMap2FeaturesEXT, *cgoAllocMap) {
+ if x.ref30a59f8 != nil {
+ return *x.ref30a59f8, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -38149,95 +64841,102 @@ func (x PhysicalDeviceVertexAttributeDivisorFeatures) PassValue() (C.VkPhysicalD
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceVertexAttributeDivisorFeatures) Deref() {
- if x.refffe7619a == nil {
+func (x *PhysicalDeviceFragmentDensityMap2Features) Deref() {
+ if x.ref30a59f8 == nil {
return
}
- x.SType = (StructureType)(x.refffe7619a.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refffe7619a.pNext))
- x.VertexAttributeInstanceRateDivisor = (Bool32)(x.refffe7619a.vertexAttributeInstanceRateDivisor)
- x.VertexAttributeInstanceRateZeroDivisor = (Bool32)(x.refffe7619a.vertexAttributeInstanceRateZeroDivisor)
+ x.SType = (StructureType)(x.ref30a59f8.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref30a59f8.pNext))
+ x.FragmentDensityMapDeferred = (Bool32)(x.ref30a59f8.fragmentDensityMapDeferred)
}
-// allocPhysicalDeviceComputeShaderDerivativesFeaturesNVMemory allocates memory for type C.VkPhysicalDeviceComputeShaderDerivativesFeaturesNV in C.
-// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceComputeShaderDerivativesFeaturesNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceComputeShaderDerivativesFeaturesNVValue))
+// allocPhysicalDeviceFragmentDensityMap2PropertiesMemory allocates memory for type C.VkPhysicalDeviceFragmentDensityMap2PropertiesEXT in C.
+// The caller is responsible for freeing the this memory via C.free.
+func allocPhysicalDeviceFragmentDensityMap2PropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceFragmentDensityMap2PropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceComputeShaderDerivativesFeaturesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceComputeShaderDerivativesFeaturesNV{})
+const sizeOfPhysicalDeviceFragmentDensityMap2PropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceFragmentDensityMap2PropertiesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceComputeShaderDerivativesFeaturesNV) Ref() *C.VkPhysicalDeviceComputeShaderDerivativesFeaturesNV {
+func (x *PhysicalDeviceFragmentDensityMap2Properties) Ref() *C.VkPhysicalDeviceFragmentDensityMap2PropertiesEXT {
if x == nil {
return nil
}
- return x.reff31d599c
+ return x.refc2a21d23
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceComputeShaderDerivativesFeaturesNV) Free() {
- if x != nil && x.allocsf31d599c != nil {
- x.allocsf31d599c.(*cgoAllocMap).Free()
- x.reff31d599c = nil
+func (x *PhysicalDeviceFragmentDensityMap2Properties) Free() {
+ if x != nil && x.allocsc2a21d23 != nil {
+ x.allocsc2a21d23.(*cgoAllocMap).Free()
+ x.refc2a21d23 = nil
}
}
-// NewPhysicalDeviceComputeShaderDerivativesFeaturesNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceFragmentDensityMap2PropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceComputeShaderDerivativesFeaturesNVRef(ref unsafe.Pointer) *PhysicalDeviceComputeShaderDerivativesFeaturesNV {
+func NewPhysicalDeviceFragmentDensityMap2PropertiesRef(ref unsafe.Pointer) *PhysicalDeviceFragmentDensityMap2Properties {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceComputeShaderDerivativesFeaturesNV)
- obj.reff31d599c = (*C.VkPhysicalDeviceComputeShaderDerivativesFeaturesNV)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceFragmentDensityMap2Properties)
+ obj.refc2a21d23 = (*C.VkPhysicalDeviceFragmentDensityMap2PropertiesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceComputeShaderDerivativesFeaturesNV) PassRef() (*C.VkPhysicalDeviceComputeShaderDerivativesFeaturesNV, *cgoAllocMap) {
+func (x *PhysicalDeviceFragmentDensityMap2Properties) PassRef() (*C.VkPhysicalDeviceFragmentDensityMap2PropertiesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.reff31d599c != nil {
- return x.reff31d599c, nil
+ } else if x.refc2a21d23 != nil {
+ return x.refc2a21d23, nil
}
- memf31d599c := allocPhysicalDeviceComputeShaderDerivativesFeaturesNVMemory(1)
- reff31d599c := (*C.VkPhysicalDeviceComputeShaderDerivativesFeaturesNV)(memf31d599c)
- allocsf31d599c := new(cgoAllocMap)
- allocsf31d599c.Add(memf31d599c)
+ memc2a21d23 := allocPhysicalDeviceFragmentDensityMap2PropertiesMemory(1)
+ refc2a21d23 := (*C.VkPhysicalDeviceFragmentDensityMap2PropertiesEXT)(memc2a21d23)
+ allocsc2a21d23 := new(cgoAllocMap)
+ allocsc2a21d23.Add(memc2a21d23)
var csType_allocs *cgoAllocMap
- reff31d599c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsf31d599c.Borrow(csType_allocs)
+ refc2a21d23.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsc2a21d23.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- reff31d599c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsf31d599c.Borrow(cpNext_allocs)
+ refc2a21d23.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsc2a21d23.Borrow(cpNext_allocs)
- var ccomputeDerivativeGroupQuads_allocs *cgoAllocMap
- reff31d599c.computeDerivativeGroupQuads, ccomputeDerivativeGroupQuads_allocs = (C.VkBool32)(x.ComputeDerivativeGroupQuads), cgoAllocsUnknown
- allocsf31d599c.Borrow(ccomputeDerivativeGroupQuads_allocs)
+ var csubsampledLoads_allocs *cgoAllocMap
+ refc2a21d23.subsampledLoads, csubsampledLoads_allocs = (C.VkBool32)(x.SubsampledLoads), cgoAllocsUnknown
+ allocsc2a21d23.Borrow(csubsampledLoads_allocs)
- var ccomputeDerivativeGroupLinear_allocs *cgoAllocMap
- reff31d599c.computeDerivativeGroupLinear, ccomputeDerivativeGroupLinear_allocs = (C.VkBool32)(x.ComputeDerivativeGroupLinear), cgoAllocsUnknown
- allocsf31d599c.Borrow(ccomputeDerivativeGroupLinear_allocs)
+ var csubsampledCoarseReconstructionEarlyAccess_allocs *cgoAllocMap
+ refc2a21d23.subsampledCoarseReconstructionEarlyAccess, csubsampledCoarseReconstructionEarlyAccess_allocs = (C.VkBool32)(x.SubsampledCoarseReconstructionEarlyAccess), cgoAllocsUnknown
+ allocsc2a21d23.Borrow(csubsampledCoarseReconstructionEarlyAccess_allocs)
- x.reff31d599c = reff31d599c
- x.allocsf31d599c = allocsf31d599c
- return reff31d599c, allocsf31d599c
+ var cmaxSubsampledArrayLayers_allocs *cgoAllocMap
+ refc2a21d23.maxSubsampledArrayLayers, cmaxSubsampledArrayLayers_allocs = (C.uint32_t)(x.MaxSubsampledArrayLayers), cgoAllocsUnknown
+ allocsc2a21d23.Borrow(cmaxSubsampledArrayLayers_allocs)
+
+ var cmaxDescriptorSetSubsampledSamplers_allocs *cgoAllocMap
+ refc2a21d23.maxDescriptorSetSubsampledSamplers, cmaxDescriptorSetSubsampledSamplers_allocs = (C.uint32_t)(x.MaxDescriptorSetSubsampledSamplers), cgoAllocsUnknown
+ allocsc2a21d23.Borrow(cmaxDescriptorSetSubsampledSamplers_allocs)
+
+ x.refc2a21d23 = refc2a21d23
+ x.allocsc2a21d23 = allocsc2a21d23
+ return refc2a21d23, allocsc2a21d23
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceComputeShaderDerivativesFeaturesNV) PassValue() (C.VkPhysicalDeviceComputeShaderDerivativesFeaturesNV, *cgoAllocMap) {
- if x.reff31d599c != nil {
- return *x.reff31d599c, nil
+func (x PhysicalDeviceFragmentDensityMap2Properties) PassValue() (C.VkPhysicalDeviceFragmentDensityMap2PropertiesEXT, *cgoAllocMap) {
+ if x.refc2a21d23 != nil {
+ return *x.refc2a21d23, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -38245,95 +64944,93 @@ func (x PhysicalDeviceComputeShaderDerivativesFeaturesNV) PassValue() (C.VkPhysi
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceComputeShaderDerivativesFeaturesNV) Deref() {
- if x.reff31d599c == nil {
+func (x *PhysicalDeviceFragmentDensityMap2Properties) Deref() {
+ if x.refc2a21d23 == nil {
return
}
- x.SType = (StructureType)(x.reff31d599c.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff31d599c.pNext))
- x.ComputeDerivativeGroupQuads = (Bool32)(x.reff31d599c.computeDerivativeGroupQuads)
- x.ComputeDerivativeGroupLinear = (Bool32)(x.reff31d599c.computeDerivativeGroupLinear)
+ x.SType = (StructureType)(x.refc2a21d23.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refc2a21d23.pNext))
+ x.SubsampledLoads = (Bool32)(x.refc2a21d23.subsampledLoads)
+ x.SubsampledCoarseReconstructionEarlyAccess = (Bool32)(x.refc2a21d23.subsampledCoarseReconstructionEarlyAccess)
+ x.MaxSubsampledArrayLayers = (uint32)(x.refc2a21d23.maxSubsampledArrayLayers)
+ x.MaxDescriptorSetSubsampledSamplers = (uint32)(x.refc2a21d23.maxDescriptorSetSubsampledSamplers)
}
-// allocPhysicalDeviceMeshShaderFeaturesNVMemory allocates memory for type C.VkPhysicalDeviceMeshShaderFeaturesNV in C.
+// allocCopyCommandTransformInfoQCOMMemory allocates memory for type C.VkCopyCommandTransformInfoQCOM in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceMeshShaderFeaturesNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceMeshShaderFeaturesNVValue))
+func allocCopyCommandTransformInfoQCOMMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCopyCommandTransformInfoQCOMValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceMeshShaderFeaturesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceMeshShaderFeaturesNV{})
+const sizeOfCopyCommandTransformInfoQCOMValue = unsafe.Sizeof([1]C.VkCopyCommandTransformInfoQCOM{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceMeshShaderFeaturesNV) Ref() *C.VkPhysicalDeviceMeshShaderFeaturesNV {
+func (x *CopyCommandTransformInfoQCOM) Ref() *C.VkCopyCommandTransformInfoQCOM {
if x == nil {
return nil
}
- return x.ref802b98a
+ return x.refeaa6777c
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceMeshShaderFeaturesNV) Free() {
- if x != nil && x.allocs802b98a != nil {
- x.allocs802b98a.(*cgoAllocMap).Free()
- x.ref802b98a = nil
+func (x *CopyCommandTransformInfoQCOM) Free() {
+ if x != nil && x.allocseaa6777c != nil {
+ x.allocseaa6777c.(*cgoAllocMap).Free()
+ x.refeaa6777c = nil
}
}
-// NewPhysicalDeviceMeshShaderFeaturesNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewCopyCommandTransformInfoQCOMRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceMeshShaderFeaturesNVRef(ref unsafe.Pointer) *PhysicalDeviceMeshShaderFeaturesNV {
+func NewCopyCommandTransformInfoQCOMRef(ref unsafe.Pointer) *CopyCommandTransformInfoQCOM {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceMeshShaderFeaturesNV)
- obj.ref802b98a = (*C.VkPhysicalDeviceMeshShaderFeaturesNV)(unsafe.Pointer(ref))
+ obj := new(CopyCommandTransformInfoQCOM)
+ obj.refeaa6777c = (*C.VkCopyCommandTransformInfoQCOM)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceMeshShaderFeaturesNV) PassRef() (*C.VkPhysicalDeviceMeshShaderFeaturesNV, *cgoAllocMap) {
+func (x *CopyCommandTransformInfoQCOM) PassRef() (*C.VkCopyCommandTransformInfoQCOM, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref802b98a != nil {
- return x.ref802b98a, nil
+ } else if x.refeaa6777c != nil {
+ return x.refeaa6777c, nil
}
- mem802b98a := allocPhysicalDeviceMeshShaderFeaturesNVMemory(1)
- ref802b98a := (*C.VkPhysicalDeviceMeshShaderFeaturesNV)(mem802b98a)
- allocs802b98a := new(cgoAllocMap)
- allocs802b98a.Add(mem802b98a)
+ memeaa6777c := allocCopyCommandTransformInfoQCOMMemory(1)
+ refeaa6777c := (*C.VkCopyCommandTransformInfoQCOM)(memeaa6777c)
+ allocseaa6777c := new(cgoAllocMap)
+ allocseaa6777c.Add(memeaa6777c)
var csType_allocs *cgoAllocMap
- ref802b98a.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs802b98a.Borrow(csType_allocs)
+ refeaa6777c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocseaa6777c.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref802b98a.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs802b98a.Borrow(cpNext_allocs)
-
- var ctaskShader_allocs *cgoAllocMap
- ref802b98a.taskShader, ctaskShader_allocs = (C.VkBool32)(x.TaskShader), cgoAllocsUnknown
- allocs802b98a.Borrow(ctaskShader_allocs)
+ refeaa6777c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocseaa6777c.Borrow(cpNext_allocs)
- var cmeshShader_allocs *cgoAllocMap
- ref802b98a.meshShader, cmeshShader_allocs = (C.VkBool32)(x.MeshShader), cgoAllocsUnknown
- allocs802b98a.Borrow(cmeshShader_allocs)
+ var ctransform_allocs *cgoAllocMap
+ refeaa6777c.transform, ctransform_allocs = (C.VkSurfaceTransformFlagBitsKHR)(x.Transform), cgoAllocsUnknown
+ allocseaa6777c.Borrow(ctransform_allocs)
- x.ref802b98a = ref802b98a
- x.allocs802b98a = allocs802b98a
- return ref802b98a, allocs802b98a
+ x.refeaa6777c = refeaa6777c
+ x.allocseaa6777c = allocseaa6777c
+ return refeaa6777c, allocseaa6777c
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceMeshShaderFeaturesNV) PassValue() (C.VkPhysicalDeviceMeshShaderFeaturesNV, *cgoAllocMap) {
- if x.ref802b98a != nil {
- return *x.ref802b98a, nil
+func (x CopyCommandTransformInfoQCOM) PassValue() (C.VkCopyCommandTransformInfoQCOM, *cgoAllocMap) {
+ if x.refeaa6777c != nil {
+ return *x.refeaa6777c, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -38341,139 +65038,90 @@ func (x PhysicalDeviceMeshShaderFeaturesNV) PassValue() (C.VkPhysicalDeviceMeshS
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceMeshShaderFeaturesNV) Deref() {
- if x.ref802b98a == nil {
+func (x *CopyCommandTransformInfoQCOM) Deref() {
+ if x.refeaa6777c == nil {
return
}
- x.SType = (StructureType)(x.ref802b98a.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref802b98a.pNext))
- x.TaskShader = (Bool32)(x.ref802b98a.taskShader)
- x.MeshShader = (Bool32)(x.ref802b98a.meshShader)
+ x.SType = (StructureType)(x.refeaa6777c.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refeaa6777c.pNext))
+ x.Transform = (SurfaceTransformFlagBits)(x.refeaa6777c.transform)
}
-// allocPhysicalDeviceMeshShaderPropertiesNVMemory allocates memory for type C.VkPhysicalDeviceMeshShaderPropertiesNV in C.
+// allocPhysicalDeviceImageCompressionControlFeaturesMemory allocates memory for type C.VkPhysicalDeviceImageCompressionControlFeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceMeshShaderPropertiesNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceMeshShaderPropertiesNVValue))
+func allocPhysicalDeviceImageCompressionControlFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceImageCompressionControlFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceMeshShaderPropertiesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceMeshShaderPropertiesNV{})
+const sizeOfPhysicalDeviceImageCompressionControlFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceImageCompressionControlFeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceMeshShaderPropertiesNV) Ref() *C.VkPhysicalDeviceMeshShaderPropertiesNV {
+func (x *PhysicalDeviceImageCompressionControlFeatures) Ref() *C.VkPhysicalDeviceImageCompressionControlFeaturesEXT {
if x == nil {
return nil
}
- return x.ref2ee3ccb7
+ return x.ref25740c12
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceMeshShaderPropertiesNV) Free() {
- if x != nil && x.allocs2ee3ccb7 != nil {
- x.allocs2ee3ccb7.(*cgoAllocMap).Free()
- x.ref2ee3ccb7 = nil
+func (x *PhysicalDeviceImageCompressionControlFeatures) Free() {
+ if x != nil && x.allocs25740c12 != nil {
+ x.allocs25740c12.(*cgoAllocMap).Free()
+ x.ref25740c12 = nil
}
}
-// NewPhysicalDeviceMeshShaderPropertiesNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceImageCompressionControlFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceMeshShaderPropertiesNVRef(ref unsafe.Pointer) *PhysicalDeviceMeshShaderPropertiesNV {
+func NewPhysicalDeviceImageCompressionControlFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceImageCompressionControlFeatures {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceMeshShaderPropertiesNV)
- obj.ref2ee3ccb7 = (*C.VkPhysicalDeviceMeshShaderPropertiesNV)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceImageCompressionControlFeatures)
+ obj.ref25740c12 = (*C.VkPhysicalDeviceImageCompressionControlFeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceMeshShaderPropertiesNV) PassRef() (*C.VkPhysicalDeviceMeshShaderPropertiesNV, *cgoAllocMap) {
+func (x *PhysicalDeviceImageCompressionControlFeatures) PassRef() (*C.VkPhysicalDeviceImageCompressionControlFeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref2ee3ccb7 != nil {
- return x.ref2ee3ccb7, nil
+ } else if x.ref25740c12 != nil {
+ return x.ref25740c12, nil
}
- mem2ee3ccb7 := allocPhysicalDeviceMeshShaderPropertiesNVMemory(1)
- ref2ee3ccb7 := (*C.VkPhysicalDeviceMeshShaderPropertiesNV)(mem2ee3ccb7)
- allocs2ee3ccb7 := new(cgoAllocMap)
- allocs2ee3ccb7.Add(mem2ee3ccb7)
+ mem25740c12 := allocPhysicalDeviceImageCompressionControlFeaturesMemory(1)
+ ref25740c12 := (*C.VkPhysicalDeviceImageCompressionControlFeaturesEXT)(mem25740c12)
+ allocs25740c12 := new(cgoAllocMap)
+ allocs25740c12.Add(mem25740c12)
var csType_allocs *cgoAllocMap
- ref2ee3ccb7.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs2ee3ccb7.Borrow(csType_allocs)
+ ref25740c12.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs25740c12.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref2ee3ccb7.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs2ee3ccb7.Borrow(cpNext_allocs)
-
- var cmaxDrawMeshTasksCount_allocs *cgoAllocMap
- ref2ee3ccb7.maxDrawMeshTasksCount, cmaxDrawMeshTasksCount_allocs = (C.uint32_t)(x.MaxDrawMeshTasksCount), cgoAllocsUnknown
- allocs2ee3ccb7.Borrow(cmaxDrawMeshTasksCount_allocs)
-
- var cmaxTaskWorkGroupInvocations_allocs *cgoAllocMap
- ref2ee3ccb7.maxTaskWorkGroupInvocations, cmaxTaskWorkGroupInvocations_allocs = (C.uint32_t)(x.MaxTaskWorkGroupInvocations), cgoAllocsUnknown
- allocs2ee3ccb7.Borrow(cmaxTaskWorkGroupInvocations_allocs)
-
- var cmaxTaskWorkGroupSize_allocs *cgoAllocMap
- ref2ee3ccb7.maxTaskWorkGroupSize, cmaxTaskWorkGroupSize_allocs = *(*[3]C.uint32_t)(unsafe.Pointer(&x.MaxTaskWorkGroupSize)), cgoAllocsUnknown
- allocs2ee3ccb7.Borrow(cmaxTaskWorkGroupSize_allocs)
-
- var cmaxTaskTotalMemorySize_allocs *cgoAllocMap
- ref2ee3ccb7.maxTaskTotalMemorySize, cmaxTaskTotalMemorySize_allocs = (C.uint32_t)(x.MaxTaskTotalMemorySize), cgoAllocsUnknown
- allocs2ee3ccb7.Borrow(cmaxTaskTotalMemorySize_allocs)
-
- var cmaxTaskOutputCount_allocs *cgoAllocMap
- ref2ee3ccb7.maxTaskOutputCount, cmaxTaskOutputCount_allocs = (C.uint32_t)(x.MaxTaskOutputCount), cgoAllocsUnknown
- allocs2ee3ccb7.Borrow(cmaxTaskOutputCount_allocs)
-
- var cmaxMeshWorkGroupInvocations_allocs *cgoAllocMap
- ref2ee3ccb7.maxMeshWorkGroupInvocations, cmaxMeshWorkGroupInvocations_allocs = (C.uint32_t)(x.MaxMeshWorkGroupInvocations), cgoAllocsUnknown
- allocs2ee3ccb7.Borrow(cmaxMeshWorkGroupInvocations_allocs)
-
- var cmaxMeshWorkGroupSize_allocs *cgoAllocMap
- ref2ee3ccb7.maxMeshWorkGroupSize, cmaxMeshWorkGroupSize_allocs = *(*[3]C.uint32_t)(unsafe.Pointer(&x.MaxMeshWorkGroupSize)), cgoAllocsUnknown
- allocs2ee3ccb7.Borrow(cmaxMeshWorkGroupSize_allocs)
-
- var cmaxMeshTotalMemorySize_allocs *cgoAllocMap
- ref2ee3ccb7.maxMeshTotalMemorySize, cmaxMeshTotalMemorySize_allocs = (C.uint32_t)(x.MaxMeshTotalMemorySize), cgoAllocsUnknown
- allocs2ee3ccb7.Borrow(cmaxMeshTotalMemorySize_allocs)
-
- var cmaxMeshOutputVertices_allocs *cgoAllocMap
- ref2ee3ccb7.maxMeshOutputVertices, cmaxMeshOutputVertices_allocs = (C.uint32_t)(x.MaxMeshOutputVertices), cgoAllocsUnknown
- allocs2ee3ccb7.Borrow(cmaxMeshOutputVertices_allocs)
-
- var cmaxMeshOutputPrimitives_allocs *cgoAllocMap
- ref2ee3ccb7.maxMeshOutputPrimitives, cmaxMeshOutputPrimitives_allocs = (C.uint32_t)(x.MaxMeshOutputPrimitives), cgoAllocsUnknown
- allocs2ee3ccb7.Borrow(cmaxMeshOutputPrimitives_allocs)
-
- var cmaxMeshMultiviewViewCount_allocs *cgoAllocMap
- ref2ee3ccb7.maxMeshMultiviewViewCount, cmaxMeshMultiviewViewCount_allocs = (C.uint32_t)(x.MaxMeshMultiviewViewCount), cgoAllocsUnknown
- allocs2ee3ccb7.Borrow(cmaxMeshMultiviewViewCount_allocs)
-
- var cmeshOutputPerVertexGranularity_allocs *cgoAllocMap
- ref2ee3ccb7.meshOutputPerVertexGranularity, cmeshOutputPerVertexGranularity_allocs = (C.uint32_t)(x.MeshOutputPerVertexGranularity), cgoAllocsUnknown
- allocs2ee3ccb7.Borrow(cmeshOutputPerVertexGranularity_allocs)
+ ref25740c12.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs25740c12.Borrow(cpNext_allocs)
- var cmeshOutputPerPrimitiveGranularity_allocs *cgoAllocMap
- ref2ee3ccb7.meshOutputPerPrimitiveGranularity, cmeshOutputPerPrimitiveGranularity_allocs = (C.uint32_t)(x.MeshOutputPerPrimitiveGranularity), cgoAllocsUnknown
- allocs2ee3ccb7.Borrow(cmeshOutputPerPrimitiveGranularity_allocs)
+ var cimageCompressionControl_allocs *cgoAllocMap
+ ref25740c12.imageCompressionControl, cimageCompressionControl_allocs = (C.VkBool32)(x.ImageCompressionControl), cgoAllocsUnknown
+ allocs25740c12.Borrow(cimageCompressionControl_allocs)
- x.ref2ee3ccb7 = ref2ee3ccb7
- x.allocs2ee3ccb7 = allocs2ee3ccb7
- return ref2ee3ccb7, allocs2ee3ccb7
+ x.ref25740c12 = ref25740c12
+ x.allocs25740c12 = allocs25740c12
+ return ref25740c12, allocs25740c12
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceMeshShaderPropertiesNV) PassValue() (C.VkPhysicalDeviceMeshShaderPropertiesNV, *cgoAllocMap) {
- if x.ref2ee3ccb7 != nil {
- return *x.ref2ee3ccb7, nil
+func (x PhysicalDeviceImageCompressionControlFeatures) PassValue() (C.VkPhysicalDeviceImageCompressionControlFeaturesEXT, *cgoAllocMap) {
+ if x.ref25740c12 != nil {
+ return *x.ref25740c12, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -38481,98 +65129,98 @@ func (x PhysicalDeviceMeshShaderPropertiesNV) PassValue() (C.VkPhysicalDeviceMes
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceMeshShaderPropertiesNV) Deref() {
- if x.ref2ee3ccb7 == nil {
+func (x *PhysicalDeviceImageCompressionControlFeatures) Deref() {
+ if x.ref25740c12 == nil {
return
}
- x.SType = (StructureType)(x.ref2ee3ccb7.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref2ee3ccb7.pNext))
- x.MaxDrawMeshTasksCount = (uint32)(x.ref2ee3ccb7.maxDrawMeshTasksCount)
- x.MaxTaskWorkGroupInvocations = (uint32)(x.ref2ee3ccb7.maxTaskWorkGroupInvocations)
- x.MaxTaskWorkGroupSize = *(*[3]uint32)(unsafe.Pointer(&x.ref2ee3ccb7.maxTaskWorkGroupSize))
- x.MaxTaskTotalMemorySize = (uint32)(x.ref2ee3ccb7.maxTaskTotalMemorySize)
- x.MaxTaskOutputCount = (uint32)(x.ref2ee3ccb7.maxTaskOutputCount)
- x.MaxMeshWorkGroupInvocations = (uint32)(x.ref2ee3ccb7.maxMeshWorkGroupInvocations)
- x.MaxMeshWorkGroupSize = *(*[3]uint32)(unsafe.Pointer(&x.ref2ee3ccb7.maxMeshWorkGroupSize))
- x.MaxMeshTotalMemorySize = (uint32)(x.ref2ee3ccb7.maxMeshTotalMemorySize)
- x.MaxMeshOutputVertices = (uint32)(x.ref2ee3ccb7.maxMeshOutputVertices)
- x.MaxMeshOutputPrimitives = (uint32)(x.ref2ee3ccb7.maxMeshOutputPrimitives)
- x.MaxMeshMultiviewViewCount = (uint32)(x.ref2ee3ccb7.maxMeshMultiviewViewCount)
- x.MeshOutputPerVertexGranularity = (uint32)(x.ref2ee3ccb7.meshOutputPerVertexGranularity)
- x.MeshOutputPerPrimitiveGranularity = (uint32)(x.ref2ee3ccb7.meshOutputPerPrimitiveGranularity)
+ x.SType = (StructureType)(x.ref25740c12.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref25740c12.pNext))
+ x.ImageCompressionControl = (Bool32)(x.ref25740c12.imageCompressionControl)
}
-// allocDrawMeshTasksIndirectCommandNVMemory allocates memory for type C.VkDrawMeshTasksIndirectCommandNV in C.
+// allocImageCompressionControlMemory allocates memory for type C.VkImageCompressionControlEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocDrawMeshTasksIndirectCommandNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfDrawMeshTasksIndirectCommandNVValue))
+func allocImageCompressionControlMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageCompressionControlValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfDrawMeshTasksIndirectCommandNVValue = unsafe.Sizeof([1]C.VkDrawMeshTasksIndirectCommandNV{})
+const sizeOfImageCompressionControlValue = unsafe.Sizeof([1]C.VkImageCompressionControlEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *DrawMeshTasksIndirectCommandNV) Ref() *C.VkDrawMeshTasksIndirectCommandNV {
+func (x *ImageCompressionControl) Ref() *C.VkImageCompressionControlEXT {
if x == nil {
return nil
}
- return x.refda6c46ea
+ return x.ref37cbe96e
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *DrawMeshTasksIndirectCommandNV) Free() {
- if x != nil && x.allocsda6c46ea != nil {
- x.allocsda6c46ea.(*cgoAllocMap).Free()
- x.refda6c46ea = nil
+func (x *ImageCompressionControl) Free() {
+ if x != nil && x.allocs37cbe96e != nil {
+ x.allocs37cbe96e.(*cgoAllocMap).Free()
+ x.ref37cbe96e = nil
}
}
-// NewDrawMeshTasksIndirectCommandNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewImageCompressionControlRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewDrawMeshTasksIndirectCommandNVRef(ref unsafe.Pointer) *DrawMeshTasksIndirectCommandNV {
+func NewImageCompressionControlRef(ref unsafe.Pointer) *ImageCompressionControl {
if ref == nil {
return nil
}
- obj := new(DrawMeshTasksIndirectCommandNV)
- obj.refda6c46ea = (*C.VkDrawMeshTasksIndirectCommandNV)(unsafe.Pointer(ref))
+ obj := new(ImageCompressionControl)
+ obj.ref37cbe96e = (*C.VkImageCompressionControlEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *DrawMeshTasksIndirectCommandNV) PassRef() (*C.VkDrawMeshTasksIndirectCommandNV, *cgoAllocMap) {
+func (x *ImageCompressionControl) PassRef() (*C.VkImageCompressionControlEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refda6c46ea != nil {
- return x.refda6c46ea, nil
+ } else if x.ref37cbe96e != nil {
+ return x.ref37cbe96e, nil
}
- memda6c46ea := allocDrawMeshTasksIndirectCommandNVMemory(1)
- refda6c46ea := (*C.VkDrawMeshTasksIndirectCommandNV)(memda6c46ea)
- allocsda6c46ea := new(cgoAllocMap)
- allocsda6c46ea.Add(memda6c46ea)
+ mem37cbe96e := allocImageCompressionControlMemory(1)
+ ref37cbe96e := (*C.VkImageCompressionControlEXT)(mem37cbe96e)
+ allocs37cbe96e := new(cgoAllocMap)
+ allocs37cbe96e.Add(mem37cbe96e)
- var ctaskCount_allocs *cgoAllocMap
- refda6c46ea.taskCount, ctaskCount_allocs = (C.uint32_t)(x.TaskCount), cgoAllocsUnknown
- allocsda6c46ea.Borrow(ctaskCount_allocs)
+ var csType_allocs *cgoAllocMap
+ ref37cbe96e.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs37cbe96e.Borrow(csType_allocs)
- var cfirstTask_allocs *cgoAllocMap
- refda6c46ea.firstTask, cfirstTask_allocs = (C.uint32_t)(x.FirstTask), cgoAllocsUnknown
- allocsda6c46ea.Borrow(cfirstTask_allocs)
+ var cpNext_allocs *cgoAllocMap
+ ref37cbe96e.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs37cbe96e.Borrow(cpNext_allocs)
- x.refda6c46ea = refda6c46ea
- x.allocsda6c46ea = allocsda6c46ea
- return refda6c46ea, allocsda6c46ea
+ var cflags_allocs *cgoAllocMap
+ ref37cbe96e.flags, cflags_allocs = (C.VkImageCompressionFlagsEXT)(x.Flags), cgoAllocsUnknown
+ allocs37cbe96e.Borrow(cflags_allocs)
+
+ var ccompressionControlPlaneCount_allocs *cgoAllocMap
+ ref37cbe96e.compressionControlPlaneCount, ccompressionControlPlaneCount_allocs = (C.uint32_t)(x.CompressionControlPlaneCount), cgoAllocsUnknown
+ allocs37cbe96e.Borrow(ccompressionControlPlaneCount_allocs)
+
+ var cpFixedRateFlags_allocs *cgoAllocMap
+ ref37cbe96e.pFixedRateFlags, cpFixedRateFlags_allocs = (*C.VkImageCompressionFixedRateFlagsEXT)(unsafe.Pointer((*sliceHeader)(unsafe.Pointer(&x.PFixedRateFlags)).Data)), cgoAllocsUnknown
+ allocs37cbe96e.Borrow(cpFixedRateFlags_allocs)
+
+ x.ref37cbe96e = ref37cbe96e
+ x.allocs37cbe96e = allocs37cbe96e
+ return ref37cbe96e, allocs37cbe96e
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x DrawMeshTasksIndirectCommandNV) PassValue() (C.VkDrawMeshTasksIndirectCommandNV, *cgoAllocMap) {
- if x.refda6c46ea != nil {
- return *x.refda6c46ea, nil
+func (x ImageCompressionControl) PassValue() (C.VkImageCompressionControlEXT, *cgoAllocMap) {
+ if x.ref37cbe96e != nil {
+ return *x.ref37cbe96e, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -38580,89 +65228,96 @@ func (x DrawMeshTasksIndirectCommandNV) PassValue() (C.VkDrawMeshTasksIndirectCo
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *DrawMeshTasksIndirectCommandNV) Deref() {
- if x.refda6c46ea == nil {
+func (x *ImageCompressionControl) Deref() {
+ if x.ref37cbe96e == nil {
return
}
- x.TaskCount = (uint32)(x.refda6c46ea.taskCount)
- x.FirstTask = (uint32)(x.refda6c46ea.firstTask)
+ x.SType = (StructureType)(x.ref37cbe96e.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref37cbe96e.pNext))
+ x.Flags = (ImageCompressionFlags)(x.ref37cbe96e.flags)
+ x.CompressionControlPlaneCount = (uint32)(x.ref37cbe96e.compressionControlPlaneCount)
+ hxfd9261b := (*sliceHeader)(unsafe.Pointer(&x.PFixedRateFlags))
+ hxfd9261b.Data = unsafe.Pointer(x.ref37cbe96e.pFixedRateFlags)
+ hxfd9261b.Cap = 0x7fffffff
+ // hxfd9261b.Len = ?
+
}
-// allocPhysicalDeviceFragmentShaderBarycentricFeaturesNVMemory allocates memory for type C.VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV in C.
+// allocSubresourceLayout2Memory allocates memory for type C.VkSubresourceLayout2EXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceFragmentShaderBarycentricFeaturesNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceFragmentShaderBarycentricFeaturesNVValue))
+func allocSubresourceLayout2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfSubresourceLayout2Value))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceFragmentShaderBarycentricFeaturesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV{})
+const sizeOfSubresourceLayout2Value = unsafe.Sizeof([1]C.VkSubresourceLayout2EXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceFragmentShaderBarycentricFeaturesNV) Ref() *C.VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV {
+func (x *SubresourceLayout2) Ref() *C.VkSubresourceLayout2EXT {
if x == nil {
return nil
}
- return x.ref191b97c6
+ return x.ref63424f18
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceFragmentShaderBarycentricFeaturesNV) Free() {
- if x != nil && x.allocs191b97c6 != nil {
- x.allocs191b97c6.(*cgoAllocMap).Free()
- x.ref191b97c6 = nil
+func (x *SubresourceLayout2) Free() {
+ if x != nil && x.allocs63424f18 != nil {
+ x.allocs63424f18.(*cgoAllocMap).Free()
+ x.ref63424f18 = nil
}
}
-// NewPhysicalDeviceFragmentShaderBarycentricFeaturesNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewSubresourceLayout2Ref creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceFragmentShaderBarycentricFeaturesNVRef(ref unsafe.Pointer) *PhysicalDeviceFragmentShaderBarycentricFeaturesNV {
+func NewSubresourceLayout2Ref(ref unsafe.Pointer) *SubresourceLayout2 {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceFragmentShaderBarycentricFeaturesNV)
- obj.ref191b97c6 = (*C.VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV)(unsafe.Pointer(ref))
+ obj := new(SubresourceLayout2)
+ obj.ref63424f18 = (*C.VkSubresourceLayout2EXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceFragmentShaderBarycentricFeaturesNV) PassRef() (*C.VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV, *cgoAllocMap) {
+func (x *SubresourceLayout2) PassRef() (*C.VkSubresourceLayout2EXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref191b97c6 != nil {
- return x.ref191b97c6, nil
+ } else if x.ref63424f18 != nil {
+ return x.ref63424f18, nil
}
- mem191b97c6 := allocPhysicalDeviceFragmentShaderBarycentricFeaturesNVMemory(1)
- ref191b97c6 := (*C.VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV)(mem191b97c6)
- allocs191b97c6 := new(cgoAllocMap)
- allocs191b97c6.Add(mem191b97c6)
+ mem63424f18 := allocSubresourceLayout2Memory(1)
+ ref63424f18 := (*C.VkSubresourceLayout2EXT)(mem63424f18)
+ allocs63424f18 := new(cgoAllocMap)
+ allocs63424f18.Add(mem63424f18)
var csType_allocs *cgoAllocMap
- ref191b97c6.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs191b97c6.Borrow(csType_allocs)
+ ref63424f18.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs63424f18.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref191b97c6.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs191b97c6.Borrow(cpNext_allocs)
+ ref63424f18.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs63424f18.Borrow(cpNext_allocs)
- var cfragmentShaderBarycentric_allocs *cgoAllocMap
- ref191b97c6.fragmentShaderBarycentric, cfragmentShaderBarycentric_allocs = (C.VkBool32)(x.FragmentShaderBarycentric), cgoAllocsUnknown
- allocs191b97c6.Borrow(cfragmentShaderBarycentric_allocs)
+ var csubresourceLayout_allocs *cgoAllocMap
+ ref63424f18.subresourceLayout, csubresourceLayout_allocs = x.SubresourceLayout.PassValue()
+ allocs63424f18.Borrow(csubresourceLayout_allocs)
- x.ref191b97c6 = ref191b97c6
- x.allocs191b97c6 = allocs191b97c6
- return ref191b97c6, allocs191b97c6
+ x.ref63424f18 = ref63424f18
+ x.allocs63424f18 = allocs63424f18
+ return ref63424f18, allocs63424f18
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceFragmentShaderBarycentricFeaturesNV) PassValue() (C.VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV, *cgoAllocMap) {
- if x.ref191b97c6 != nil {
- return *x.ref191b97c6, nil
+func (x SubresourceLayout2) PassValue() (C.VkSubresourceLayout2EXT, *cgoAllocMap) {
+ if x.ref63424f18 != nil {
+ return *x.ref63424f18, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -38670,90 +65325,90 @@ func (x PhysicalDeviceFragmentShaderBarycentricFeaturesNV) PassValue() (C.VkPhys
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceFragmentShaderBarycentricFeaturesNV) Deref() {
- if x.ref191b97c6 == nil {
+func (x *SubresourceLayout2) Deref() {
+ if x.ref63424f18 == nil {
return
}
- x.SType = (StructureType)(x.ref191b97c6.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref191b97c6.pNext))
- x.FragmentShaderBarycentric = (Bool32)(x.ref191b97c6.fragmentShaderBarycentric)
+ x.SType = (StructureType)(x.ref63424f18.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref63424f18.pNext))
+ x.SubresourceLayout = *NewSubresourceLayoutRef(unsafe.Pointer(&x.ref63424f18.subresourceLayout))
}
-// allocPhysicalDeviceShaderImageFootprintFeaturesNVMemory allocates memory for type C.VkPhysicalDeviceShaderImageFootprintFeaturesNV in C.
+// allocImageSubresource2Memory allocates memory for type C.VkImageSubresource2EXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceShaderImageFootprintFeaturesNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceShaderImageFootprintFeaturesNVValue))
+func allocImageSubresource2Memory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageSubresource2Value))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceShaderImageFootprintFeaturesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceShaderImageFootprintFeaturesNV{})
+const sizeOfImageSubresource2Value = unsafe.Sizeof([1]C.VkImageSubresource2EXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceShaderImageFootprintFeaturesNV) Ref() *C.VkPhysicalDeviceShaderImageFootprintFeaturesNV {
+func (x *ImageSubresource2) Ref() *C.VkImageSubresource2EXT {
if x == nil {
return nil
}
- return x.ref9d61e1b2
+ return x.ref9782acd8
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceShaderImageFootprintFeaturesNV) Free() {
- if x != nil && x.allocs9d61e1b2 != nil {
- x.allocs9d61e1b2.(*cgoAllocMap).Free()
- x.ref9d61e1b2 = nil
+func (x *ImageSubresource2) Free() {
+ if x != nil && x.allocs9782acd8 != nil {
+ x.allocs9782acd8.(*cgoAllocMap).Free()
+ x.ref9782acd8 = nil
}
}
-// NewPhysicalDeviceShaderImageFootprintFeaturesNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewImageSubresource2Ref creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceShaderImageFootprintFeaturesNVRef(ref unsafe.Pointer) *PhysicalDeviceShaderImageFootprintFeaturesNV {
+func NewImageSubresource2Ref(ref unsafe.Pointer) *ImageSubresource2 {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceShaderImageFootprintFeaturesNV)
- obj.ref9d61e1b2 = (*C.VkPhysicalDeviceShaderImageFootprintFeaturesNV)(unsafe.Pointer(ref))
+ obj := new(ImageSubresource2)
+ obj.ref9782acd8 = (*C.VkImageSubresource2EXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceShaderImageFootprintFeaturesNV) PassRef() (*C.VkPhysicalDeviceShaderImageFootprintFeaturesNV, *cgoAllocMap) {
+func (x *ImageSubresource2) PassRef() (*C.VkImageSubresource2EXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref9d61e1b2 != nil {
- return x.ref9d61e1b2, nil
+ } else if x.ref9782acd8 != nil {
+ return x.ref9782acd8, nil
}
- mem9d61e1b2 := allocPhysicalDeviceShaderImageFootprintFeaturesNVMemory(1)
- ref9d61e1b2 := (*C.VkPhysicalDeviceShaderImageFootprintFeaturesNV)(mem9d61e1b2)
- allocs9d61e1b2 := new(cgoAllocMap)
- allocs9d61e1b2.Add(mem9d61e1b2)
+ mem9782acd8 := allocImageSubresource2Memory(1)
+ ref9782acd8 := (*C.VkImageSubresource2EXT)(mem9782acd8)
+ allocs9782acd8 := new(cgoAllocMap)
+ allocs9782acd8.Add(mem9782acd8)
var csType_allocs *cgoAllocMap
- ref9d61e1b2.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs9d61e1b2.Borrow(csType_allocs)
+ ref9782acd8.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs9782acd8.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref9d61e1b2.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs9d61e1b2.Borrow(cpNext_allocs)
+ ref9782acd8.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs9782acd8.Borrow(cpNext_allocs)
- var cimageFootprint_allocs *cgoAllocMap
- ref9d61e1b2.imageFootprint, cimageFootprint_allocs = (C.VkBool32)(x.ImageFootprint), cgoAllocsUnknown
- allocs9d61e1b2.Borrow(cimageFootprint_allocs)
+ var cimageSubresource_allocs *cgoAllocMap
+ ref9782acd8.imageSubresource, cimageSubresource_allocs = x.ImageSubresource.PassValue()
+ allocs9782acd8.Borrow(cimageSubresource_allocs)
- x.ref9d61e1b2 = ref9d61e1b2
- x.allocs9d61e1b2 = allocs9d61e1b2
- return ref9d61e1b2, allocs9d61e1b2
+ x.ref9782acd8 = ref9782acd8
+ x.allocs9782acd8 = allocs9782acd8
+ return ref9782acd8, allocs9782acd8
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceShaderImageFootprintFeaturesNV) PassValue() (C.VkPhysicalDeviceShaderImageFootprintFeaturesNV, *cgoAllocMap) {
- if x.ref9d61e1b2 != nil {
- return *x.ref9d61e1b2, nil
+func (x ImageSubresource2) PassValue() (C.VkImageSubresource2EXT, *cgoAllocMap) {
+ if x.ref9782acd8 != nil {
+ return *x.ref9782acd8, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -38761,94 +65416,94 @@ func (x PhysicalDeviceShaderImageFootprintFeaturesNV) PassValue() (C.VkPhysicalD
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceShaderImageFootprintFeaturesNV) Deref() {
- if x.ref9d61e1b2 == nil {
+func (x *ImageSubresource2) Deref() {
+ if x.ref9782acd8 == nil {
return
}
- x.SType = (StructureType)(x.ref9d61e1b2.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref9d61e1b2.pNext))
- x.ImageFootprint = (Bool32)(x.ref9d61e1b2.imageFootprint)
+ x.SType = (StructureType)(x.ref9782acd8.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref9782acd8.pNext))
+ x.ImageSubresource = *NewImageSubresourceRef(unsafe.Pointer(&x.ref9782acd8.imageSubresource))
}
-// allocPipelineViewportExclusiveScissorStateCreateInfoNVMemory allocates memory for type C.VkPipelineViewportExclusiveScissorStateCreateInfoNV in C.
+// allocImageCompressionPropertiesMemory allocates memory for type C.VkImageCompressionPropertiesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPipelineViewportExclusiveScissorStateCreateInfoNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPipelineViewportExclusiveScissorStateCreateInfoNVValue))
+func allocImageCompressionPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfImageCompressionPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPipelineViewportExclusiveScissorStateCreateInfoNVValue = unsafe.Sizeof([1]C.VkPipelineViewportExclusiveScissorStateCreateInfoNV{})
+const sizeOfImageCompressionPropertiesValue = unsafe.Sizeof([1]C.VkImageCompressionPropertiesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PipelineViewportExclusiveScissorStateCreateInfoNV) Ref() *C.VkPipelineViewportExclusiveScissorStateCreateInfoNV {
+func (x *ImageCompressionProperties) Ref() *C.VkImageCompressionPropertiesEXT {
if x == nil {
return nil
}
- return x.refa8715ba6
+ return x.ref6a3ccfa2
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PipelineViewportExclusiveScissorStateCreateInfoNV) Free() {
- if x != nil && x.allocsa8715ba6 != nil {
- x.allocsa8715ba6.(*cgoAllocMap).Free()
- x.refa8715ba6 = nil
+func (x *ImageCompressionProperties) Free() {
+ if x != nil && x.allocs6a3ccfa2 != nil {
+ x.allocs6a3ccfa2.(*cgoAllocMap).Free()
+ x.ref6a3ccfa2 = nil
}
}
-// NewPipelineViewportExclusiveScissorStateCreateInfoNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewImageCompressionPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPipelineViewportExclusiveScissorStateCreateInfoNVRef(ref unsafe.Pointer) *PipelineViewportExclusiveScissorStateCreateInfoNV {
+func NewImageCompressionPropertiesRef(ref unsafe.Pointer) *ImageCompressionProperties {
if ref == nil {
return nil
}
- obj := new(PipelineViewportExclusiveScissorStateCreateInfoNV)
- obj.refa8715ba6 = (*C.VkPipelineViewportExclusiveScissorStateCreateInfoNV)(unsafe.Pointer(ref))
+ obj := new(ImageCompressionProperties)
+ obj.ref6a3ccfa2 = (*C.VkImageCompressionPropertiesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PipelineViewportExclusiveScissorStateCreateInfoNV) PassRef() (*C.VkPipelineViewportExclusiveScissorStateCreateInfoNV, *cgoAllocMap) {
+func (x *ImageCompressionProperties) PassRef() (*C.VkImageCompressionPropertiesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refa8715ba6 != nil {
- return x.refa8715ba6, nil
+ } else if x.ref6a3ccfa2 != nil {
+ return x.ref6a3ccfa2, nil
}
- mema8715ba6 := allocPipelineViewportExclusiveScissorStateCreateInfoNVMemory(1)
- refa8715ba6 := (*C.VkPipelineViewportExclusiveScissorStateCreateInfoNV)(mema8715ba6)
- allocsa8715ba6 := new(cgoAllocMap)
- allocsa8715ba6.Add(mema8715ba6)
+ mem6a3ccfa2 := allocImageCompressionPropertiesMemory(1)
+ ref6a3ccfa2 := (*C.VkImageCompressionPropertiesEXT)(mem6a3ccfa2)
+ allocs6a3ccfa2 := new(cgoAllocMap)
+ allocs6a3ccfa2.Add(mem6a3ccfa2)
var csType_allocs *cgoAllocMap
- refa8715ba6.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsa8715ba6.Borrow(csType_allocs)
+ ref6a3ccfa2.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs6a3ccfa2.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refa8715ba6.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsa8715ba6.Borrow(cpNext_allocs)
+ ref6a3ccfa2.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs6a3ccfa2.Borrow(cpNext_allocs)
- var cexclusiveScissorCount_allocs *cgoAllocMap
- refa8715ba6.exclusiveScissorCount, cexclusiveScissorCount_allocs = (C.uint32_t)(x.ExclusiveScissorCount), cgoAllocsUnknown
- allocsa8715ba6.Borrow(cexclusiveScissorCount_allocs)
+ var cimageCompressionFlags_allocs *cgoAllocMap
+ ref6a3ccfa2.imageCompressionFlags, cimageCompressionFlags_allocs = (C.VkImageCompressionFlagsEXT)(x.ImageCompressionFlags), cgoAllocsUnknown
+ allocs6a3ccfa2.Borrow(cimageCompressionFlags_allocs)
- var cpExclusiveScissors_allocs *cgoAllocMap
- refa8715ba6.pExclusiveScissors, cpExclusiveScissors_allocs = unpackSRect2D(x.PExclusiveScissors)
- allocsa8715ba6.Borrow(cpExclusiveScissors_allocs)
+ var cimageCompressionFixedRateFlags_allocs *cgoAllocMap
+ ref6a3ccfa2.imageCompressionFixedRateFlags, cimageCompressionFixedRateFlags_allocs = (C.VkImageCompressionFixedRateFlagsEXT)(x.ImageCompressionFixedRateFlags), cgoAllocsUnknown
+ allocs6a3ccfa2.Borrow(cimageCompressionFixedRateFlags_allocs)
- x.refa8715ba6 = refa8715ba6
- x.allocsa8715ba6 = allocsa8715ba6
- return refa8715ba6, allocsa8715ba6
+ x.ref6a3ccfa2 = ref6a3ccfa2
+ x.allocs6a3ccfa2 = allocs6a3ccfa2
+ return ref6a3ccfa2, allocs6a3ccfa2
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PipelineViewportExclusiveScissorStateCreateInfoNV) PassValue() (C.VkPipelineViewportExclusiveScissorStateCreateInfoNV, *cgoAllocMap) {
- if x.refa8715ba6 != nil {
- return *x.refa8715ba6, nil
+func (x ImageCompressionProperties) PassValue() (C.VkImageCompressionPropertiesEXT, *cgoAllocMap) {
+ if x.ref6a3ccfa2 != nil {
+ return *x.ref6a3ccfa2, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -38856,91 +65511,91 @@ func (x PipelineViewportExclusiveScissorStateCreateInfoNV) PassValue() (C.VkPipe
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PipelineViewportExclusiveScissorStateCreateInfoNV) Deref() {
- if x.refa8715ba6 == nil {
+func (x *ImageCompressionProperties) Deref() {
+ if x.ref6a3ccfa2 == nil {
return
}
- x.SType = (StructureType)(x.refa8715ba6.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refa8715ba6.pNext))
- x.ExclusiveScissorCount = (uint32)(x.refa8715ba6.exclusiveScissorCount)
- packSRect2D(x.PExclusiveScissors, x.refa8715ba6.pExclusiveScissors)
+ x.SType = (StructureType)(x.ref6a3ccfa2.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref6a3ccfa2.pNext))
+ x.ImageCompressionFlags = (ImageCompressionFlags)(x.ref6a3ccfa2.imageCompressionFlags)
+ x.ImageCompressionFixedRateFlags = (ImageCompressionFixedRateFlags)(x.ref6a3ccfa2.imageCompressionFixedRateFlags)
}
-// allocPhysicalDeviceExclusiveScissorFeaturesNVMemory allocates memory for type C.VkPhysicalDeviceExclusiveScissorFeaturesNV in C.
+// allocPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesMemory allocates memory for type C.VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDeviceExclusiveScissorFeaturesNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceExclusiveScissorFeaturesNVValue))
+func allocPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDeviceExclusiveScissorFeaturesNVValue = unsafe.Sizeof([1]C.VkPhysicalDeviceExclusiveScissorFeaturesNV{})
+const sizeOfPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDeviceExclusiveScissorFeaturesNV) Ref() *C.VkPhysicalDeviceExclusiveScissorFeaturesNV {
+func (x *PhysicalDeviceAttachmentFeedbackLoopLayoutFeatures) Ref() *C.VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT {
if x == nil {
return nil
}
- return x.ref52c9fcfc
+ return x.reff251dd56
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDeviceExclusiveScissorFeaturesNV) Free() {
- if x != nil && x.allocs52c9fcfc != nil {
- x.allocs52c9fcfc.(*cgoAllocMap).Free()
- x.ref52c9fcfc = nil
+func (x *PhysicalDeviceAttachmentFeedbackLoopLayoutFeatures) Free() {
+ if x != nil && x.allocsf251dd56 != nil {
+ x.allocsf251dd56.(*cgoAllocMap).Free()
+ x.reff251dd56 = nil
}
}
-// NewPhysicalDeviceExclusiveScissorFeaturesNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDeviceExclusiveScissorFeaturesNVRef(ref unsafe.Pointer) *PhysicalDeviceExclusiveScissorFeaturesNV {
+func NewPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesRef(ref unsafe.Pointer) *PhysicalDeviceAttachmentFeedbackLoopLayoutFeatures {
if ref == nil {
return nil
}
- obj := new(PhysicalDeviceExclusiveScissorFeaturesNV)
- obj.ref52c9fcfc = (*C.VkPhysicalDeviceExclusiveScissorFeaturesNV)(unsafe.Pointer(ref))
+ obj := new(PhysicalDeviceAttachmentFeedbackLoopLayoutFeatures)
+ obj.reff251dd56 = (*C.VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDeviceExclusiveScissorFeaturesNV) PassRef() (*C.VkPhysicalDeviceExclusiveScissorFeaturesNV, *cgoAllocMap) {
+func (x *PhysicalDeviceAttachmentFeedbackLoopLayoutFeatures) PassRef() (*C.VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref52c9fcfc != nil {
- return x.ref52c9fcfc, nil
+ } else if x.reff251dd56 != nil {
+ return x.reff251dd56, nil
}
- mem52c9fcfc := allocPhysicalDeviceExclusiveScissorFeaturesNVMemory(1)
- ref52c9fcfc := (*C.VkPhysicalDeviceExclusiveScissorFeaturesNV)(mem52c9fcfc)
- allocs52c9fcfc := new(cgoAllocMap)
- allocs52c9fcfc.Add(mem52c9fcfc)
+ memf251dd56 := allocPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesMemory(1)
+ reff251dd56 := (*C.VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT)(memf251dd56)
+ allocsf251dd56 := new(cgoAllocMap)
+ allocsf251dd56.Add(memf251dd56)
var csType_allocs *cgoAllocMap
- ref52c9fcfc.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs52c9fcfc.Borrow(csType_allocs)
+ reff251dd56.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocsf251dd56.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref52c9fcfc.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs52c9fcfc.Borrow(cpNext_allocs)
+ reff251dd56.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocsf251dd56.Borrow(cpNext_allocs)
- var cexclusiveScissor_allocs *cgoAllocMap
- ref52c9fcfc.exclusiveScissor, cexclusiveScissor_allocs = (C.VkBool32)(x.ExclusiveScissor), cgoAllocsUnknown
- allocs52c9fcfc.Borrow(cexclusiveScissor_allocs)
+ var cattachmentFeedbackLoopLayout_allocs *cgoAllocMap
+ reff251dd56.attachmentFeedbackLoopLayout, cattachmentFeedbackLoopLayout_allocs = (C.VkBool32)(x.AttachmentFeedbackLoopLayout), cgoAllocsUnknown
+ allocsf251dd56.Borrow(cattachmentFeedbackLoopLayout_allocs)
- x.ref52c9fcfc = ref52c9fcfc
- x.allocs52c9fcfc = allocs52c9fcfc
- return ref52c9fcfc, allocs52c9fcfc
+ x.reff251dd56 = reff251dd56
+ x.allocsf251dd56 = allocsf251dd56
+ return reff251dd56, allocsf251dd56
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDeviceExclusiveScissorFeaturesNV) PassValue() (C.VkPhysicalDeviceExclusiveScissorFeaturesNV, *cgoAllocMap) {
- if x.ref52c9fcfc != nil {
- return *x.ref52c9fcfc, nil
+func (x PhysicalDeviceAttachmentFeedbackLoopLayoutFeatures) PassValue() (C.VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT, *cgoAllocMap) {
+ if x.reff251dd56 != nil {
+ return *x.reff251dd56, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -38948,90 +65603,94 @@ func (x PhysicalDeviceExclusiveScissorFeaturesNV) PassValue() (C.VkPhysicalDevic
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDeviceExclusiveScissorFeaturesNV) Deref() {
- if x.ref52c9fcfc == nil {
+func (x *PhysicalDeviceAttachmentFeedbackLoopLayoutFeatures) Deref() {
+ if x.reff251dd56 == nil {
return
}
- x.SType = (StructureType)(x.ref52c9fcfc.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref52c9fcfc.pNext))
- x.ExclusiveScissor = (Bool32)(x.ref52c9fcfc.exclusiveScissor)
+ x.SType = (StructureType)(x.reff251dd56.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.reff251dd56.pNext))
+ x.AttachmentFeedbackLoopLayout = (Bool32)(x.reff251dd56.attachmentFeedbackLoopLayout)
}
-// allocQueueFamilyCheckpointPropertiesNVMemory allocates memory for type C.VkQueueFamilyCheckpointPropertiesNV in C.
+// allocPhysicalDevice4444FormatsFeaturesMemory allocates memory for type C.VkPhysicalDevice4444FormatsFeaturesEXT in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocQueueFamilyCheckpointPropertiesNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfQueueFamilyCheckpointPropertiesNVValue))
+func allocPhysicalDevice4444FormatsFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDevice4444FormatsFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfQueueFamilyCheckpointPropertiesNVValue = unsafe.Sizeof([1]C.VkQueueFamilyCheckpointPropertiesNV{})
+const sizeOfPhysicalDevice4444FormatsFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDevice4444FormatsFeaturesEXT{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *QueueFamilyCheckpointPropertiesNV) Ref() *C.VkQueueFamilyCheckpointPropertiesNV {
+func (x *PhysicalDevice4444FormatsFeatures) Ref() *C.VkPhysicalDevice4444FormatsFeaturesEXT {
if x == nil {
return nil
}
- return x.ref351f58c6
+ return x.ref51c957d0
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *QueueFamilyCheckpointPropertiesNV) Free() {
- if x != nil && x.allocs351f58c6 != nil {
- x.allocs351f58c6.(*cgoAllocMap).Free()
- x.ref351f58c6 = nil
+func (x *PhysicalDevice4444FormatsFeatures) Free() {
+ if x != nil && x.allocs51c957d0 != nil {
+ x.allocs51c957d0.(*cgoAllocMap).Free()
+ x.ref51c957d0 = nil
}
}
-// NewQueueFamilyCheckpointPropertiesNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDevice4444FormatsFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewQueueFamilyCheckpointPropertiesNVRef(ref unsafe.Pointer) *QueueFamilyCheckpointPropertiesNV {
+func NewPhysicalDevice4444FormatsFeaturesRef(ref unsafe.Pointer) *PhysicalDevice4444FormatsFeatures {
if ref == nil {
return nil
}
- obj := new(QueueFamilyCheckpointPropertiesNV)
- obj.ref351f58c6 = (*C.VkQueueFamilyCheckpointPropertiesNV)(unsafe.Pointer(ref))
+ obj := new(PhysicalDevice4444FormatsFeatures)
+ obj.ref51c957d0 = (*C.VkPhysicalDevice4444FormatsFeaturesEXT)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *QueueFamilyCheckpointPropertiesNV) PassRef() (*C.VkQueueFamilyCheckpointPropertiesNV, *cgoAllocMap) {
+func (x *PhysicalDevice4444FormatsFeatures) PassRef() (*C.VkPhysicalDevice4444FormatsFeaturesEXT, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.ref351f58c6 != nil {
- return x.ref351f58c6, nil
+ } else if x.ref51c957d0 != nil {
+ return x.ref51c957d0, nil
}
- mem351f58c6 := allocQueueFamilyCheckpointPropertiesNVMemory(1)
- ref351f58c6 := (*C.VkQueueFamilyCheckpointPropertiesNV)(mem351f58c6)
- allocs351f58c6 := new(cgoAllocMap)
- allocs351f58c6.Add(mem351f58c6)
+ mem51c957d0 := allocPhysicalDevice4444FormatsFeaturesMemory(1)
+ ref51c957d0 := (*C.VkPhysicalDevice4444FormatsFeaturesEXT)(mem51c957d0)
+ allocs51c957d0 := new(cgoAllocMap)
+ allocs51c957d0.Add(mem51c957d0)
var csType_allocs *cgoAllocMap
- ref351f58c6.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocs351f58c6.Borrow(csType_allocs)
+ ref51c957d0.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs51c957d0.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- ref351f58c6.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocs351f58c6.Borrow(cpNext_allocs)
+ ref51c957d0.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs51c957d0.Borrow(cpNext_allocs)
- var ccheckpointExecutionStageMask_allocs *cgoAllocMap
- ref351f58c6.checkpointExecutionStageMask, ccheckpointExecutionStageMask_allocs = (C.VkPipelineStageFlags)(x.CheckpointExecutionStageMask), cgoAllocsUnknown
- allocs351f58c6.Borrow(ccheckpointExecutionStageMask_allocs)
+ var cformatA4R4G4B4_allocs *cgoAllocMap
+ ref51c957d0.formatA4R4G4B4, cformatA4R4G4B4_allocs = (C.VkBool32)(x.FormatA4R4G4B4), cgoAllocsUnknown
+ allocs51c957d0.Borrow(cformatA4R4G4B4_allocs)
- x.ref351f58c6 = ref351f58c6
- x.allocs351f58c6 = allocs351f58c6
- return ref351f58c6, allocs351f58c6
+ var cformatA4B4G4R4_allocs *cgoAllocMap
+ ref51c957d0.formatA4B4G4R4, cformatA4B4G4R4_allocs = (C.VkBool32)(x.FormatA4B4G4R4), cgoAllocsUnknown
+ allocs51c957d0.Borrow(cformatA4B4G4R4_allocs)
+
+ x.ref51c957d0 = ref51c957d0
+ x.allocs51c957d0 = allocs51c957d0
+ return ref51c957d0, allocs51c957d0
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x QueueFamilyCheckpointPropertiesNV) PassValue() (C.VkQueueFamilyCheckpointPropertiesNV, *cgoAllocMap) {
- if x.ref351f58c6 != nil {
- return *x.ref351f58c6, nil
+func (x PhysicalDevice4444FormatsFeatures) PassValue() (C.VkPhysicalDevice4444FormatsFeaturesEXT, *cgoAllocMap) {
+ if x.ref51c957d0 != nil {
+ return *x.ref51c957d0, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -39039,94 +65698,147 @@ func (x QueueFamilyCheckpointPropertiesNV) PassValue() (C.VkQueueFamilyCheckpoin
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *QueueFamilyCheckpointPropertiesNV) Deref() {
- if x.ref351f58c6 == nil {
+func (x *PhysicalDevice4444FormatsFeatures) Deref() {
+ if x.ref51c957d0 == nil {
return
}
- x.SType = (StructureType)(x.ref351f58c6.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref351f58c6.pNext))
- x.CheckpointExecutionStageMask = (PipelineStageFlags)(x.ref351f58c6.checkpointExecutionStageMask)
+ x.SType = (StructureType)(x.ref51c957d0.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref51c957d0.pNext))
+ x.FormatA4R4G4B4 = (Bool32)(x.ref51c957d0.formatA4R4G4B4)
+ x.FormatA4B4G4R4 = (Bool32)(x.ref51c957d0.formatA4B4G4R4)
}
-// allocCheckpointDataNVMemory allocates memory for type C.VkCheckpointDataNV in C.
+// allocPhysicalDevicePortabilitySubsetFeaturesMemory allocates memory for type C.VkPhysicalDevicePortabilitySubsetFeaturesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocCheckpointDataNVMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfCheckpointDataNVValue))
+func allocPhysicalDevicePortabilitySubsetFeaturesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDevicePortabilitySubsetFeaturesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfCheckpointDataNVValue = unsafe.Sizeof([1]C.VkCheckpointDataNV{})
+const sizeOfPhysicalDevicePortabilitySubsetFeaturesValue = unsafe.Sizeof([1]C.VkPhysicalDevicePortabilitySubsetFeaturesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *CheckpointDataNV) Ref() *C.VkCheckpointDataNV {
+func (x *PhysicalDevicePortabilitySubsetFeatures) Ref() *C.VkPhysicalDevicePortabilitySubsetFeaturesKHR {
if x == nil {
return nil
}
- return x.refd1c9224b
+ return x.ref1a31db1e
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *CheckpointDataNV) Free() {
- if x != nil && x.allocsd1c9224b != nil {
- x.allocsd1c9224b.(*cgoAllocMap).Free()
- x.refd1c9224b = nil
+func (x *PhysicalDevicePortabilitySubsetFeatures) Free() {
+ if x != nil && x.allocs1a31db1e != nil {
+ x.allocs1a31db1e.(*cgoAllocMap).Free()
+ x.ref1a31db1e = nil
}
}
-// NewCheckpointDataNVRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDevicePortabilitySubsetFeaturesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewCheckpointDataNVRef(ref unsafe.Pointer) *CheckpointDataNV {
+func NewPhysicalDevicePortabilitySubsetFeaturesRef(ref unsafe.Pointer) *PhysicalDevicePortabilitySubsetFeatures {
if ref == nil {
return nil
}
- obj := new(CheckpointDataNV)
- obj.refd1c9224b = (*C.VkCheckpointDataNV)(unsafe.Pointer(ref))
+ obj := new(PhysicalDevicePortabilitySubsetFeatures)
+ obj.ref1a31db1e = (*C.VkPhysicalDevicePortabilitySubsetFeaturesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *CheckpointDataNV) PassRef() (*C.VkCheckpointDataNV, *cgoAllocMap) {
+func (x *PhysicalDevicePortabilitySubsetFeatures) PassRef() (*C.VkPhysicalDevicePortabilitySubsetFeaturesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refd1c9224b != nil {
- return x.refd1c9224b, nil
+ } else if x.ref1a31db1e != nil {
+ return x.ref1a31db1e, nil
}
- memd1c9224b := allocCheckpointDataNVMemory(1)
- refd1c9224b := (*C.VkCheckpointDataNV)(memd1c9224b)
- allocsd1c9224b := new(cgoAllocMap)
- allocsd1c9224b.Add(memd1c9224b)
+ mem1a31db1e := allocPhysicalDevicePortabilitySubsetFeaturesMemory(1)
+ ref1a31db1e := (*C.VkPhysicalDevicePortabilitySubsetFeaturesKHR)(mem1a31db1e)
+ allocs1a31db1e := new(cgoAllocMap)
+ allocs1a31db1e.Add(mem1a31db1e)
var csType_allocs *cgoAllocMap
- refd1c9224b.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsd1c9224b.Borrow(csType_allocs)
+ ref1a31db1e.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs1a31db1e.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refd1c9224b.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsd1c9224b.Borrow(cpNext_allocs)
+ ref1a31db1e.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs1a31db1e.Borrow(cpNext_allocs)
- var cstage_allocs *cgoAllocMap
- refd1c9224b.stage, cstage_allocs = (C.VkPipelineStageFlagBits)(x.Stage), cgoAllocsUnknown
- allocsd1c9224b.Borrow(cstage_allocs)
+ var cconstantAlphaColorBlendFactors_allocs *cgoAllocMap
+ ref1a31db1e.constantAlphaColorBlendFactors, cconstantAlphaColorBlendFactors_allocs = (C.VkBool32)(x.ConstantAlphaColorBlendFactors), cgoAllocsUnknown
+ allocs1a31db1e.Borrow(cconstantAlphaColorBlendFactors_allocs)
- var cpCheckpointMarker_allocs *cgoAllocMap
- refd1c9224b.pCheckpointMarker, cpCheckpointMarker_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PCheckpointMarker)), cgoAllocsUnknown
- allocsd1c9224b.Borrow(cpCheckpointMarker_allocs)
+ var cevents_allocs *cgoAllocMap
+ ref1a31db1e.events, cevents_allocs = (C.VkBool32)(x.Events), cgoAllocsUnknown
+ allocs1a31db1e.Borrow(cevents_allocs)
- x.refd1c9224b = refd1c9224b
- x.allocsd1c9224b = allocsd1c9224b
- return refd1c9224b, allocsd1c9224b
+ var cimageViewFormatReinterpretation_allocs *cgoAllocMap
+ ref1a31db1e.imageViewFormatReinterpretation, cimageViewFormatReinterpretation_allocs = (C.VkBool32)(x.ImageViewFormatReinterpretation), cgoAllocsUnknown
+ allocs1a31db1e.Borrow(cimageViewFormatReinterpretation_allocs)
+
+ var cimageViewFormatSwizzle_allocs *cgoAllocMap
+ ref1a31db1e.imageViewFormatSwizzle, cimageViewFormatSwizzle_allocs = (C.VkBool32)(x.ImageViewFormatSwizzle), cgoAllocsUnknown
+ allocs1a31db1e.Borrow(cimageViewFormatSwizzle_allocs)
+
+ var cimageView2DOn3DImage_allocs *cgoAllocMap
+ ref1a31db1e.imageView2DOn3DImage, cimageView2DOn3DImage_allocs = (C.VkBool32)(x.ImageView2DOn3DImage), cgoAllocsUnknown
+ allocs1a31db1e.Borrow(cimageView2DOn3DImage_allocs)
+
+ var cmultisampleArrayImage_allocs *cgoAllocMap
+ ref1a31db1e.multisampleArrayImage, cmultisampleArrayImage_allocs = (C.VkBool32)(x.MultisampleArrayImage), cgoAllocsUnknown
+ allocs1a31db1e.Borrow(cmultisampleArrayImage_allocs)
+
+ var cmutableComparisonSamplers_allocs *cgoAllocMap
+ ref1a31db1e.mutableComparisonSamplers, cmutableComparisonSamplers_allocs = (C.VkBool32)(x.MutableComparisonSamplers), cgoAllocsUnknown
+ allocs1a31db1e.Borrow(cmutableComparisonSamplers_allocs)
+
+ var cpointPolygons_allocs *cgoAllocMap
+ ref1a31db1e.pointPolygons, cpointPolygons_allocs = (C.VkBool32)(x.PointPolygons), cgoAllocsUnknown
+ allocs1a31db1e.Borrow(cpointPolygons_allocs)
+
+ var csamplerMipLodBias_allocs *cgoAllocMap
+ ref1a31db1e.samplerMipLodBias, csamplerMipLodBias_allocs = (C.VkBool32)(x.SamplerMipLodBias), cgoAllocsUnknown
+ allocs1a31db1e.Borrow(csamplerMipLodBias_allocs)
+
+ var cseparateStencilMaskRef_allocs *cgoAllocMap
+ ref1a31db1e.separateStencilMaskRef, cseparateStencilMaskRef_allocs = (C.VkBool32)(x.SeparateStencilMaskRef), cgoAllocsUnknown
+ allocs1a31db1e.Borrow(cseparateStencilMaskRef_allocs)
+
+ var cshaderSampleRateInterpolationFunctions_allocs *cgoAllocMap
+ ref1a31db1e.shaderSampleRateInterpolationFunctions, cshaderSampleRateInterpolationFunctions_allocs = (C.VkBool32)(x.ShaderSampleRateInterpolationFunctions), cgoAllocsUnknown
+ allocs1a31db1e.Borrow(cshaderSampleRateInterpolationFunctions_allocs)
+
+ var ctessellationIsolines_allocs *cgoAllocMap
+ ref1a31db1e.tessellationIsolines, ctessellationIsolines_allocs = (C.VkBool32)(x.TessellationIsolines), cgoAllocsUnknown
+ allocs1a31db1e.Borrow(ctessellationIsolines_allocs)
+
+ var ctessellationPointMode_allocs *cgoAllocMap
+ ref1a31db1e.tessellationPointMode, ctessellationPointMode_allocs = (C.VkBool32)(x.TessellationPointMode), cgoAllocsUnknown
+ allocs1a31db1e.Borrow(ctessellationPointMode_allocs)
+
+ var ctriangleFans_allocs *cgoAllocMap
+ ref1a31db1e.triangleFans, ctriangleFans_allocs = (C.VkBool32)(x.TriangleFans), cgoAllocsUnknown
+ allocs1a31db1e.Borrow(ctriangleFans_allocs)
+
+ var cvertexAttributeAccessBeyondStride_allocs *cgoAllocMap
+ ref1a31db1e.vertexAttributeAccessBeyondStride, cvertexAttributeAccessBeyondStride_allocs = (C.VkBool32)(x.VertexAttributeAccessBeyondStride), cgoAllocsUnknown
+ allocs1a31db1e.Borrow(cvertexAttributeAccessBeyondStride_allocs)
+
+ x.ref1a31db1e = ref1a31db1e
+ x.allocs1a31db1e = allocs1a31db1e
+ return ref1a31db1e, allocs1a31db1e
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x CheckpointDataNV) PassValue() (C.VkCheckpointDataNV, *cgoAllocMap) {
- if x.refd1c9224b != nil {
- return *x.refd1c9224b, nil
+func (x PhysicalDevicePortabilitySubsetFeatures) PassValue() (C.VkPhysicalDevicePortabilitySubsetFeaturesKHR, *cgoAllocMap) {
+ if x.ref1a31db1e != nil {
+ return *x.ref1a31db1e, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -39134,103 +65846,104 @@ func (x CheckpointDataNV) PassValue() (C.VkCheckpointDataNV, *cgoAllocMap) {
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *CheckpointDataNV) Deref() {
- if x.refd1c9224b == nil {
+func (x *PhysicalDevicePortabilitySubsetFeatures) Deref() {
+ if x.ref1a31db1e == nil {
return
}
- x.SType = (StructureType)(x.refd1c9224b.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refd1c9224b.pNext))
- x.Stage = (PipelineStageFlagBits)(x.refd1c9224b.stage)
- x.PCheckpointMarker = (unsafe.Pointer)(unsafe.Pointer(x.refd1c9224b.pCheckpointMarker))
-}
-
-// allocPhysicalDevicePCIBusInfoPropertiesMemory allocates memory for type C.VkPhysicalDevicePCIBusInfoPropertiesEXT in C.
+ x.SType = (StructureType)(x.ref1a31db1e.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref1a31db1e.pNext))
+ x.ConstantAlphaColorBlendFactors = (Bool32)(x.ref1a31db1e.constantAlphaColorBlendFactors)
+ x.Events = (Bool32)(x.ref1a31db1e.events)
+ x.ImageViewFormatReinterpretation = (Bool32)(x.ref1a31db1e.imageViewFormatReinterpretation)
+ x.ImageViewFormatSwizzle = (Bool32)(x.ref1a31db1e.imageViewFormatSwizzle)
+ x.ImageView2DOn3DImage = (Bool32)(x.ref1a31db1e.imageView2DOn3DImage)
+ x.MultisampleArrayImage = (Bool32)(x.ref1a31db1e.multisampleArrayImage)
+ x.MutableComparisonSamplers = (Bool32)(x.ref1a31db1e.mutableComparisonSamplers)
+ x.PointPolygons = (Bool32)(x.ref1a31db1e.pointPolygons)
+ x.SamplerMipLodBias = (Bool32)(x.ref1a31db1e.samplerMipLodBias)
+ x.SeparateStencilMaskRef = (Bool32)(x.ref1a31db1e.separateStencilMaskRef)
+ x.ShaderSampleRateInterpolationFunctions = (Bool32)(x.ref1a31db1e.shaderSampleRateInterpolationFunctions)
+ x.TessellationIsolines = (Bool32)(x.ref1a31db1e.tessellationIsolines)
+ x.TessellationPointMode = (Bool32)(x.ref1a31db1e.tessellationPointMode)
+ x.TriangleFans = (Bool32)(x.ref1a31db1e.triangleFans)
+ x.VertexAttributeAccessBeyondStride = (Bool32)(x.ref1a31db1e.vertexAttributeAccessBeyondStride)
+}
+
+// allocPhysicalDevicePortabilitySubsetPropertiesMemory allocates memory for type C.VkPhysicalDevicePortabilitySubsetPropertiesKHR in C.
// The caller is responsible for freeing the this memory via C.free.
-func allocPhysicalDevicePCIBusInfoPropertiesMemory(n int) unsafe.Pointer {
- mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDevicePCIBusInfoPropertiesValue))
+func allocPhysicalDevicePortabilitySubsetPropertiesMemory(n int) unsafe.Pointer {
+ mem, err := C.calloc(C.size_t(n), (C.size_t)(sizeOfPhysicalDevicePortabilitySubsetPropertiesValue))
if err != nil {
panic("memory alloc error: " + err.Error())
}
return mem
}
-const sizeOfPhysicalDevicePCIBusInfoPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDevicePCIBusInfoPropertiesEXT{})
+const sizeOfPhysicalDevicePortabilitySubsetPropertiesValue = unsafe.Sizeof([1]C.VkPhysicalDevicePortabilitySubsetPropertiesKHR{})
// Ref returns the underlying reference to C object or nil if struct is nil.
-func (x *PhysicalDevicePCIBusInfoProperties) Ref() *C.VkPhysicalDevicePCIBusInfoPropertiesEXT {
+func (x *PhysicalDevicePortabilitySubsetProperties) Ref() *C.VkPhysicalDevicePortabilitySubsetPropertiesKHR {
if x == nil {
return nil
}
- return x.refdd9947ff
+ return x.ref8babbd5c
}
// Free invokes alloc map's free mechanism that cleanups any allocated memory using C free.
// Does nothing if struct is nil or has no allocation map.
-func (x *PhysicalDevicePCIBusInfoProperties) Free() {
- if x != nil && x.allocsdd9947ff != nil {
- x.allocsdd9947ff.(*cgoAllocMap).Free()
- x.refdd9947ff = nil
+func (x *PhysicalDevicePortabilitySubsetProperties) Free() {
+ if x != nil && x.allocs8babbd5c != nil {
+ x.allocs8babbd5c.(*cgoAllocMap).Free()
+ x.ref8babbd5c = nil
}
}
-// NewPhysicalDevicePCIBusInfoPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
+// NewPhysicalDevicePortabilitySubsetPropertiesRef creates a new wrapper struct with underlying reference set to the original C object.
// Returns nil if the provided pointer to C object is nil too.
-func NewPhysicalDevicePCIBusInfoPropertiesRef(ref unsafe.Pointer) *PhysicalDevicePCIBusInfoProperties {
+func NewPhysicalDevicePortabilitySubsetPropertiesRef(ref unsafe.Pointer) *PhysicalDevicePortabilitySubsetProperties {
if ref == nil {
return nil
}
- obj := new(PhysicalDevicePCIBusInfoProperties)
- obj.refdd9947ff = (*C.VkPhysicalDevicePCIBusInfoPropertiesEXT)(unsafe.Pointer(ref))
+ obj := new(PhysicalDevicePortabilitySubsetProperties)
+ obj.ref8babbd5c = (*C.VkPhysicalDevicePortabilitySubsetPropertiesKHR)(unsafe.Pointer(ref))
return obj
}
// PassRef returns the underlying C object, otherwise it will allocate one and set its values
// from this wrapping struct, counting allocations into an allocation map.
-func (x *PhysicalDevicePCIBusInfoProperties) PassRef() (*C.VkPhysicalDevicePCIBusInfoPropertiesEXT, *cgoAllocMap) {
+func (x *PhysicalDevicePortabilitySubsetProperties) PassRef() (*C.VkPhysicalDevicePortabilitySubsetPropertiesKHR, *cgoAllocMap) {
if x == nil {
return nil, nil
- } else if x.refdd9947ff != nil {
- return x.refdd9947ff, nil
+ } else if x.ref8babbd5c != nil {
+ return x.ref8babbd5c, nil
}
- memdd9947ff := allocPhysicalDevicePCIBusInfoPropertiesMemory(1)
- refdd9947ff := (*C.VkPhysicalDevicePCIBusInfoPropertiesEXT)(memdd9947ff)
- allocsdd9947ff := new(cgoAllocMap)
- allocsdd9947ff.Add(memdd9947ff)
+ mem8babbd5c := allocPhysicalDevicePortabilitySubsetPropertiesMemory(1)
+ ref8babbd5c := (*C.VkPhysicalDevicePortabilitySubsetPropertiesKHR)(mem8babbd5c)
+ allocs8babbd5c := new(cgoAllocMap)
+ allocs8babbd5c.Add(mem8babbd5c)
var csType_allocs *cgoAllocMap
- refdd9947ff.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
- allocsdd9947ff.Borrow(csType_allocs)
+ ref8babbd5c.sType, csType_allocs = (C.VkStructureType)(x.SType), cgoAllocsUnknown
+ allocs8babbd5c.Borrow(csType_allocs)
var cpNext_allocs *cgoAllocMap
- refdd9947ff.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
- allocsdd9947ff.Borrow(cpNext_allocs)
-
- var cpciDomain_allocs *cgoAllocMap
- refdd9947ff.pciDomain, cpciDomain_allocs = (C.uint16_t)(x.PciDomain), cgoAllocsUnknown
- allocsdd9947ff.Borrow(cpciDomain_allocs)
-
- var cpciBus_allocs *cgoAllocMap
- refdd9947ff.pciBus, cpciBus_allocs = (C.uint8_t)(x.PciBus), cgoAllocsUnknown
- allocsdd9947ff.Borrow(cpciBus_allocs)
+ ref8babbd5c.pNext, cpNext_allocs = *(*unsafe.Pointer)(unsafe.Pointer(&x.PNext)), cgoAllocsUnknown
+ allocs8babbd5c.Borrow(cpNext_allocs)
- var cpciDevice_allocs *cgoAllocMap
- refdd9947ff.pciDevice, cpciDevice_allocs = (C.uint8_t)(x.PciDevice), cgoAllocsUnknown
- allocsdd9947ff.Borrow(cpciDevice_allocs)
-
- var cpciFunction_allocs *cgoAllocMap
- refdd9947ff.pciFunction, cpciFunction_allocs = (C.uint8_t)(x.PciFunction), cgoAllocsUnknown
- allocsdd9947ff.Borrow(cpciFunction_allocs)
+ var cminVertexInputBindingStrideAlignment_allocs *cgoAllocMap
+ ref8babbd5c.minVertexInputBindingStrideAlignment, cminVertexInputBindingStrideAlignment_allocs = (C.uint32_t)(x.MinVertexInputBindingStrideAlignment), cgoAllocsUnknown
+ allocs8babbd5c.Borrow(cminVertexInputBindingStrideAlignment_allocs)
- x.refdd9947ff = refdd9947ff
- x.allocsdd9947ff = allocsdd9947ff
- return refdd9947ff, allocsdd9947ff
+ x.ref8babbd5c = ref8babbd5c
+ x.allocs8babbd5c = allocs8babbd5c
+ return ref8babbd5c, allocs8babbd5c
}
// PassValue does the same as PassRef except that it will try to dereference the returned pointer.
-func (x PhysicalDevicePCIBusInfoProperties) PassValue() (C.VkPhysicalDevicePCIBusInfoPropertiesEXT, *cgoAllocMap) {
- if x.refdd9947ff != nil {
- return *x.refdd9947ff, nil
+func (x PhysicalDevicePortabilitySubsetProperties) PassValue() (C.VkPhysicalDevicePortabilitySubsetPropertiesKHR, *cgoAllocMap) {
+ if x.ref8babbd5c != nil {
+ return *x.ref8babbd5c, nil
}
ref, allocs := x.PassRef()
return *ref, allocs
@@ -39238,16 +65951,13 @@ func (x PhysicalDevicePCIBusInfoProperties) PassValue() (C.VkPhysicalDevicePCIBu
// Deref uses the underlying reference to C object and fills the wrapping struct with values.
// Do not forget to call this method whether you get a struct for C object and want to read its values.
-func (x *PhysicalDevicePCIBusInfoProperties) Deref() {
- if x.refdd9947ff == nil {
+func (x *PhysicalDevicePortabilitySubsetProperties) Deref() {
+ if x.ref8babbd5c == nil {
return
}
- x.SType = (StructureType)(x.refdd9947ff.sType)
- x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.refdd9947ff.pNext))
- x.PciDomain = (uint16)(x.refdd9947ff.pciDomain)
- x.PciBus = (byte)(x.refdd9947ff.pciBus)
- x.PciDevice = (byte)(x.refdd9947ff.pciDevice)
- x.PciFunction = (byte)(x.refdd9947ff.pciFunction)
+ x.SType = (StructureType)(x.ref8babbd5c.sType)
+ x.PNext = (unsafe.Pointer)(unsafe.Pointer(x.ref8babbd5c.pNext))
+ x.MinVertexInputBindingStrideAlignment = (uint32)(x.ref8babbd5c.minVertexInputBindingStrideAlignment)
}
// unpackArgSQueueFamilyProperties transforms a sliced Go data structure into plain C format.
@@ -39317,15 +66027,6 @@ func unpackArgSExtensionProperties(x []ExtensionProperties) (unpacked *C.VkExten
return
}
-// packSExtensionProperties reads sliced Go data structure out from plain C format.
-func packSExtensionProperties(v []ExtensionProperties, ptr0 *C.VkExtensionProperties) {
- const m = 0x7fffffff
- for i0 := range v {
- ptr1 := (*(*[m / sizeOfExtensionPropertiesValue]C.VkExtensionProperties)(unsafe.Pointer(ptr0)))[i0]
- v[i0] = *NewExtensionPropertiesRef(unsafe.Pointer(&ptr1))
- }
-}
-
// unpackArgSLayerProperties transforms a sliced Go data structure into plain C format.
func unpackArgSLayerProperties(x []LayerProperties) (unpacked *C.VkLayerProperties, allocs *cgoAllocMap) {
if x == nil {
diff --git a/cgo_helpers.h b/cgo_helpers.h
index 78c2901..4843e46 100644
--- a/cgo_helpers.h
+++ b/cgo_helpers.h
@@ -1,9 +1,10 @@
// THE AUTOGENERATED LICENSE. ALL THE RIGHTS ARE RESERVED BY ROBOTS.
-// WARNING: This file has automatically been generated on Mon, 15 Oct 2018 01:04:16 +07.
+// WARNING: This file has automatically been generated on Fri, 10 Feb 2023 11:56:02 PST.
// Code generated by https://git.io/c-for-go. DO NOT EDIT.
#include "vulkan/vulkan.h"
+#include "vulkan/vulkan_beta.h"
#include "vk_wrapper.h"
#include "vk_bridge.h"
#include
@@ -12,5 +13,8 @@
#define __CGOGEN 1
// PFN_vkDebugReportCallbackEXT_c918aac4 is a proxy for callback PFN_vkDebugReportCallbackEXT.
-unsigned int PFN_vkDebugReportCallbackEXT_c918aac4(unsigned int flags, VkDebugReportObjectTypeEXT objectType, unsigned long long object, unsigned long int location, int messageCode, char* pLayerPrefix, char* pMessage, void* pUserData);
+unsigned int PFN_vkDebugReportCallbackEXT_c918aac4(unsigned int flags, VkDebugReportObjectTypeEXT objectType, unsigned long long object, unsigned long long location, int messageCode, char* pLayerPrefix, char* pMessage, void* pUserData);
+
+// PFN_vkDeviceMemoryReportCallbackEXT_e34d104c is a proxy for callback PFN_vkDeviceMemoryReportCallbackEXT.
+void PFN_vkDeviceMemoryReportCallbackEXT_e34d104c(VkDeviceMemoryReportCallbackDataEXT* pCallbackData, void* pUserData);
diff --git a/const.go b/const.go
index e48162e..db2c5a9 100644
--- a/const.go
+++ b/const.go
@@ -1,6 +1,6 @@
// THE AUTOGENERATED LICENSE. ALL THE RIGHTS ARE RESERVED BY ROBOTS.
-// WARNING: This file has automatically been generated on Mon, 15 Oct 2018 01:04:16 +07.
+// WARNING: This file has automatically been generated on Fri, 10 Feb 2023 11:56:02 PST.
// Code generated by https://git.io/c-for-go. DO NOT EDIT.
package vulkan
@@ -8,6 +8,7 @@ package vulkan
/*
#cgo CFLAGS: -I. -DVK_NO_PROTOTYPES
#include "vulkan/vulkan.h"
+#include "vulkan/vulkan_beta.h"
#include "vk_wrapper.h"
#include "vk_bridge.h"
#include
@@ -16,814 +17,1416 @@ package vulkan
import "C"
const (
- // NoPrototypes as defined in vulkan/:24
+ // EnableBetaExtensions as defined in vulkan/:24
+ EnableBetaExtensions = 1
+ // NoPrototypes as defined in vulkan/:25
NoPrototypes = 1
- // Version10 as defined in vulkan/vulkan_core.h:30
+ // Version10 as defined in vulkan/vulkan_core.h:22
Version10 = 1
- // ApiVersion10 as defined in vulkan/vulkan_core.h:40
- ApiVersion10 = 4194304
- // HeaderVersion as defined in vulkan/vulkan_core.h:46
- HeaderVersion = 88
- // LodClampNone as defined in vulkan/vulkan_core.h:97
- LodClampNone = 1000.0
- // RemainingMipLevels as defined in vulkan/vulkan_core.h:98
- RemainingMipLevels = (^uint32(0))
- // RemainingArrayLayers as defined in vulkan/vulkan_core.h:99
- RemainingArrayLayers = (^uint32(0))
- // WholeSize as defined in vulkan/vulkan_core.h:100
- WholeSize = (^uint64(0))
- // AttachmentUnused as defined in vulkan/vulkan_core.h:101
+ // Use64BitPtrDefines as defined in vulkan/vulkan_core.h:30
+ Use64BitPtrDefines = 1
+ // HeaderVersion as defined in vulkan/vulkan_core.h:75
+ HeaderVersion = 239
+ // AttachmentUnused as defined in vulkan/vulkan_core.h:123
AttachmentUnused = (^uint32(0))
- // True as defined in vulkan/vulkan_core.h:102
- True = 1
- // False as defined in vulkan/vulkan_core.h:103
+ // False as defined in vulkan/vulkan_core.h:124
False = 0
- // QueueFamilyIgnored as defined in vulkan/vulkan_core.h:104
+ // LodClampNone as defined in vulkan/vulkan_core.h:125
+ LodClampNone = 1000.0
+ // QueueFamilyIgnored as defined in vulkan/vulkan_core.h:126
QueueFamilyIgnored = (^uint32(0))
- // SubpassExternal as defined in vulkan/vulkan_core.h:105
+ // RemainingArrayLayers as defined in vulkan/vulkan_core.h:127
+ RemainingArrayLayers = (^uint32(0))
+ // RemainingMipLevels as defined in vulkan/vulkan_core.h:128
+ RemainingMipLevels = (^uint32(0))
+ // SubpassExternal as defined in vulkan/vulkan_core.h:129
SubpassExternal = (^uint32(0))
- // MaxPhysicalDeviceNameSize as defined in vulkan/vulkan_core.h:106
- MaxPhysicalDeviceNameSize = 256
- // UuidSize as defined in vulkan/vulkan_core.h:107
- UuidSize = 16
- // MaxMemoryTypes as defined in vulkan/vulkan_core.h:108
- MaxMemoryTypes = 32
- // MaxMemoryHeaps as defined in vulkan/vulkan_core.h:109
- MaxMemoryHeaps = 16
- // MaxExtensionNameSize as defined in vulkan/vulkan_core.h:110
- MaxExtensionNameSize = 256
- // MaxDescriptionSize as defined in vulkan/vulkan_core.h:111
- MaxDescriptionSize = 256
- // Version11 as defined in vulkan/vulkan_core.h:3787
+ // True as defined in vulkan/vulkan_core.h:130
+ True = 1
+ // WholeSize as defined in vulkan/vulkan_core.h:131
+ WholeSize = (^uint64(0))
+ // MaxMemoryTypes as defined in vulkan/vulkan_core.h:132
+ MaxMemoryTypes = uint32(32)
+ // MaxPhysicalDeviceNameSize as defined in vulkan/vulkan_core.h:133
+ MaxPhysicalDeviceNameSize = uint32(256)
+ // UuidSize as defined in vulkan/vulkan_core.h:134
+ UuidSize = uint32(16)
+ // MaxExtensionNameSize as defined in vulkan/vulkan_core.h:135
+ MaxExtensionNameSize = uint32(256)
+ // MaxDescriptionSize as defined in vulkan/vulkan_core.h:136
+ MaxDescriptionSize = uint32(256)
+ // MaxMemoryHeaps as defined in vulkan/vulkan_core.h:137
+ MaxMemoryHeaps = uint32(16)
+ // Version11 as defined in vulkan/vulkan_core.h:4751
Version11 = 1
- // ApiVersion11 as defined in vulkan/vulkan_core.h:3789
- ApiVersion11 = 4198400
- // MaxDeviceGroupSize as defined in vulkan/vulkan_core.h:3795
- MaxDeviceGroupSize = 32
- // LuidSize as defined in vulkan/vulkan_core.h:3796
- LuidSize = 8
- // QueueFamilyExternal as defined in vulkan/vulkan_core.h:3797
- QueueFamilyExternal = (^uint32(0) - 1)
- // KhrSurface as defined in vulkan/vulkan_core.h:4665
+ // MaxDeviceGroupSize as defined in vulkan/vulkan_core.h:4757
+ MaxDeviceGroupSize = uint32(32)
+ // LuidSize as defined in vulkan/vulkan_core.h:4758
+ LuidSize = uint32(8)
+ // QueueFamilyExternal as defined in vulkan/vulkan_core.h:4759
+ QueueFamilyExternal = (^uint32(1))
+ // Version12 as defined in vulkan/vulkan_core.h:5616
+ Version12 = 1
+ // MaxDriverNameSize as defined in vulkan/vulkan_core.h:5620
+ MaxDriverNameSize = uint32(256)
+ // MaxDriverInfoSize as defined in vulkan/vulkan_core.h:5621
+ MaxDriverInfoSize = uint32(256)
+ // Version13 as defined in vulkan/vulkan_core.h:6370
+ Version13 = 1
+ // KhrSurface as defined in vulkan/vulkan_core.h:7411
KhrSurface = 1
- // KhrSurfaceSpecVersion as defined in vulkan/vulkan_core.h:4668
+ // KhrSurfaceSpecVersion as defined in vulkan/vulkan_core.h:7413
KhrSurfaceSpecVersion = 25
- // KhrSurfaceExtensionName as defined in vulkan/vulkan_core.h:4669
+ // KhrSurfaceExtensionName as defined in vulkan/vulkan_core.h:7414
KhrSurfaceExtensionName = "VK_KHR_surface"
- // KhrSwapchain as defined in vulkan/vulkan_core.h:4787
+ // KhrSwapchain as defined in vulkan/vulkan_core.h:7525
KhrSwapchain = 1
- // KhrSwapchainSpecVersion as defined in vulkan/vulkan_core.h:4790
+ // KhrSwapchainSpecVersion as defined in vulkan/vulkan_core.h:7527
KhrSwapchainSpecVersion = 70
- // KhrSwapchainExtensionName as defined in vulkan/vulkan_core.h:4791
+ // KhrSwapchainExtensionName as defined in vulkan/vulkan_core.h:7528
KhrSwapchainExtensionName = "VK_KHR_swapchain"
- // KhrDisplay as defined in vulkan/vulkan_core.h:4948
+ // KhrDisplay as defined in vulkan/vulkan_core.h:7685
KhrDisplay = 1
- // KhrDisplaySpecVersion as defined in vulkan/vulkan_core.h:4952
- KhrDisplaySpecVersion = 21
- // KhrDisplayExtensionName as defined in vulkan/vulkan_core.h:4953
+ // KhrDisplaySpecVersion as defined in vulkan/vulkan_core.h:7688
+ KhrDisplaySpecVersion = 23
+ // KhrDisplayExtensionName as defined in vulkan/vulkan_core.h:7689
KhrDisplayExtensionName = "VK_KHR_display"
- // KhrDisplaySwapchain as defined in vulkan/vulkan_core.h:5076
+ // KhrDisplaySwapchain as defined in vulkan/vulkan_core.h:7810
KhrDisplaySwapchain = 1
- // KhrDisplaySwapchainSpecVersion as defined in vulkan/vulkan_core.h:5077
- KhrDisplaySwapchainSpecVersion = 9
- // KhrDisplaySwapchainExtensionName as defined in vulkan/vulkan_core.h:5078
+ // KhrDisplaySwapchainSpecVersion as defined in vulkan/vulkan_core.h:7811
+ KhrDisplaySwapchainSpecVersion = 10
+ // KhrDisplaySwapchainExtensionName as defined in vulkan/vulkan_core.h:7812
KhrDisplaySwapchainExtensionName = "VK_KHR_display_swapchain"
- // KhrSamplerMirrorClampToEdge as defined in vulkan/vulkan_core.h:5100
+ // KhrSamplerMirrorClampToEdge as defined in vulkan/vulkan_core.h:7833
KhrSamplerMirrorClampToEdge = 1
- // KhrSamplerMirrorClampToEdgeSpecVersion as defined in vulkan/vulkan_core.h:5101
- KhrSamplerMirrorClampToEdgeSpecVersion = 1
- // KhrSamplerMirrorClampToEdgeExtensionName as defined in vulkan/vulkan_core.h:5102
+ // KhrSamplerMirrorClampToEdgeSpecVersion as defined in vulkan/vulkan_core.h:7834
+ KhrSamplerMirrorClampToEdgeSpecVersion = 3
+ // KhrSamplerMirrorClampToEdgeExtensionName as defined in vulkan/vulkan_core.h:7835
KhrSamplerMirrorClampToEdgeExtensionName = "VK_KHR_sampler_mirror_clamp_to_edge"
- // KhrMultiview as defined in vulkan/vulkan_core.h:5105
+ // KhrVideoQueue as defined in vulkan/vulkan_core.h:7838
+ KhrVideoQueue = 1
+ // KhrVideoQueueSpecVersion as defined in vulkan/vulkan_core.h:7841
+ KhrVideoQueueSpecVersion = 8
+ // KhrVideoQueueExtensionName as defined in vulkan/vulkan_core.h:7842
+ KhrVideoQueueExtensionName = "VK_KHR_video_queue"
+ // KhrVideoDecodeQueue as defined in vulkan/vulkan_core.h:8130
+ KhrVideoDecodeQueue = 1
+ // KhrVideoDecodeQueueSpecVersion as defined in vulkan/vulkan_core.h:8131
+ KhrVideoDecodeQueueSpecVersion = 7
+ // KhrVideoDecodeQueueExtensionName as defined in vulkan/vulkan_core.h:8132
+ KhrVideoDecodeQueueExtensionName = "VK_KHR_video_decode_queue"
+ // KhrDynamicRendering as defined in vulkan/vulkan_core.h:8245
+ KhrDynamicRendering = 1
+ // KhrDynamicRenderingSpecVersion as defined in vulkan/vulkan_core.h:8246
+ KhrDynamicRenderingSpecVersion = 1
+ // KhrDynamicRenderingExtensionName as defined in vulkan/vulkan_core.h:8247
+ KhrDynamicRenderingExtensionName = "VK_KHR_dynamic_rendering"
+ // KhrMultiview as defined in vulkan/vulkan_core.h:8307
KhrMultiview = 1
- // KhrMultiviewSpecVersion as defined in vulkan/vulkan_core.h:5106
+ // KhrMultiviewSpecVersion as defined in vulkan/vulkan_core.h:8308
KhrMultiviewSpecVersion = 1
- // KhrMultiviewExtensionName as defined in vulkan/vulkan_core.h:5107
+ // KhrMultiviewExtensionName as defined in vulkan/vulkan_core.h:8309
KhrMultiviewExtensionName = "VK_KHR_multiview"
- // KhrGetPhysicalDeviceProperties2 as defined in vulkan/vulkan_core.h:5117
+ // KhrGetPhysicalDeviceProperties2 as defined in vulkan/vulkan_core.h:8318
KhrGetPhysicalDeviceProperties2 = 1
- // KhrGetPhysicalDeviceProperties2SpecVersion as defined in vulkan/vulkan_core.h:5118
- KhrGetPhysicalDeviceProperties2SpecVersion = 1
- // KhrGetPhysicalDeviceProperties2ExtensionName as defined in vulkan/vulkan_core.h:5119
+ // KhrGetPhysicalDeviceProperties2SpecVersion as defined in vulkan/vulkan_core.h:8319
+ KhrGetPhysicalDeviceProperties2SpecVersion = 2
+ // KhrGetPhysicalDeviceProperties2ExtensionName as defined in vulkan/vulkan_core.h:8320
KhrGetPhysicalDeviceProperties2ExtensionName = "VK_KHR_get_physical_device_properties2"
- // KhrDeviceGroup as defined in vulkan/vulkan_core.h:5183
+ // KhrDeviceGroup as defined in vulkan/vulkan_core.h:8383
KhrDeviceGroup = 1
- // KhrDeviceGroupSpecVersion as defined in vulkan/vulkan_core.h:5184
- KhrDeviceGroupSpecVersion = 3
- // KhrDeviceGroupExtensionName as defined in vulkan/vulkan_core.h:5185
+ // KhrDeviceGroupSpecVersion as defined in vulkan/vulkan_core.h:8384
+ KhrDeviceGroupSpecVersion = 4
+ // KhrDeviceGroupExtensionName as defined in vulkan/vulkan_core.h:8385
KhrDeviceGroupExtensionName = "VK_KHR_device_group"
- // KhrShaderDrawParameters as defined in vulkan/vulkan_core.h:5237
+ // KhrShaderDrawParameters as defined in vulkan/vulkan_core.h:8435
KhrShaderDrawParameters = 1
- // KhrShaderDrawParametersSpecVersion as defined in vulkan/vulkan_core.h:5238
+ // KhrShaderDrawParametersSpecVersion as defined in vulkan/vulkan_core.h:8436
KhrShaderDrawParametersSpecVersion = 1
- // KhrShaderDrawParametersExtensionName as defined in vulkan/vulkan_core.h:5239
+ // KhrShaderDrawParametersExtensionName as defined in vulkan/vulkan_core.h:8437
KhrShaderDrawParametersExtensionName = "VK_KHR_shader_draw_parameters"
- // KhrMaintenance1 as defined in vulkan/vulkan_core.h:5242
+ // KhrMaintenance1 as defined in vulkan/vulkan_core.h:8440
KhrMaintenance1 = 1
- // KhrMaintenance1SpecVersion as defined in vulkan/vulkan_core.h:5243
+ // KhrMaintenance1SpecVersion as defined in vulkan/vulkan_core.h:8441
KhrMaintenance1SpecVersion = 2
- // KhrMaintenance1ExtensionName as defined in vulkan/vulkan_core.h:5244
+ // KhrMaintenance1ExtensionName as defined in vulkan/vulkan_core.h:8442
KhrMaintenance1ExtensionName = "VK_KHR_maintenance1"
- // KhrDeviceGroupCreation as defined in vulkan/vulkan_core.h:5258
+ // KhrDeviceGroupCreation as defined in vulkan/vulkan_core.h:8457
KhrDeviceGroupCreation = 1
- // KhrDeviceGroupCreationSpecVersion as defined in vulkan/vulkan_core.h:5259
+ // KhrDeviceGroupCreationSpecVersion as defined in vulkan/vulkan_core.h:8458
KhrDeviceGroupCreationSpecVersion = 1
- // KhrDeviceGroupCreationExtensionName as defined in vulkan/vulkan_core.h:5260
+ // KhrDeviceGroupCreationExtensionName as defined in vulkan/vulkan_core.h:8459
KhrDeviceGroupCreationExtensionName = "VK_KHR_device_group_creation"
- // KhrExternalMemoryCapabilities as defined in vulkan/vulkan_core.h:5277
+ // KhrExternalMemoryCapabilities as defined in vulkan/vulkan_core.h:8475
KhrExternalMemoryCapabilities = 1
- // KhrExternalMemoryCapabilitiesSpecVersion as defined in vulkan/vulkan_core.h:5278
+ // KhrExternalMemoryCapabilitiesSpecVersion as defined in vulkan/vulkan_core.h:8476
KhrExternalMemoryCapabilitiesSpecVersion = 1
- // KhrExternalMemoryCapabilitiesExtensionName as defined in vulkan/vulkan_core.h:5279
+ // KhrExternalMemoryCapabilitiesExtensionName as defined in vulkan/vulkan_core.h:8477
KhrExternalMemoryCapabilitiesExtensionName = "VK_KHR_external_memory_capabilities"
- // KhrExternalMemory as defined in vulkan/vulkan_core.h:5313
+ // KhrExternalMemory as defined in vulkan/vulkan_core.h:8509
KhrExternalMemory = 1
- // KhrExternalMemorySpecVersion as defined in vulkan/vulkan_core.h:5314
+ // KhrExternalMemorySpecVersion as defined in vulkan/vulkan_core.h:8510
KhrExternalMemorySpecVersion = 1
- // KhrExternalMemoryExtensionName as defined in vulkan/vulkan_core.h:5315
+ // KhrExternalMemoryExtensionName as defined in vulkan/vulkan_core.h:8511
KhrExternalMemoryExtensionName = "VK_KHR_external_memory"
- // KhrExternalMemoryFd as defined in vulkan/vulkan_core.h:5326
+ // KhrExternalMemoryFd as defined in vulkan/vulkan_core.h:8521
KhrExternalMemoryFd = 1
- // KhrExternalMemoryFdSpecVersion as defined in vulkan/vulkan_core.h:5327
+ // KhrExternalMemoryFdSpecVersion as defined in vulkan/vulkan_core.h:8522
KhrExternalMemoryFdSpecVersion = 1
- // KhrExternalMemoryFdExtensionName as defined in vulkan/vulkan_core.h:5328
+ // KhrExternalMemoryFdExtensionName as defined in vulkan/vulkan_core.h:8523
KhrExternalMemoryFdExtensionName = "VK_KHR_external_memory_fd"
- // KhrExternalSemaphoreCapabilities as defined in vulkan/vulkan_core.h:5367
+ // KhrExternalSemaphoreCapabilities as defined in vulkan/vulkan_core.h:8561
KhrExternalSemaphoreCapabilities = 1
- // KhrExternalSemaphoreCapabilitiesSpecVersion as defined in vulkan/vulkan_core.h:5368
+ // KhrExternalSemaphoreCapabilitiesSpecVersion as defined in vulkan/vulkan_core.h:8562
KhrExternalSemaphoreCapabilitiesSpecVersion = 1
- // KhrExternalSemaphoreCapabilitiesExtensionName as defined in vulkan/vulkan_core.h:5369
+ // KhrExternalSemaphoreCapabilitiesExtensionName as defined in vulkan/vulkan_core.h:8563
KhrExternalSemaphoreCapabilitiesExtensionName = "VK_KHR_external_semaphore_capabilities"
- // KhrExternalSemaphore as defined in vulkan/vulkan_core.h:5394
+ // KhrExternalSemaphore as defined in vulkan/vulkan_core.h:8586
KhrExternalSemaphore = 1
- // KhrExternalSemaphoreSpecVersion as defined in vulkan/vulkan_core.h:5395
+ // KhrExternalSemaphoreSpecVersion as defined in vulkan/vulkan_core.h:8587
KhrExternalSemaphoreSpecVersion = 1
- // KhrExternalSemaphoreExtensionName as defined in vulkan/vulkan_core.h:5396
+ // KhrExternalSemaphoreExtensionName as defined in vulkan/vulkan_core.h:8588
KhrExternalSemaphoreExtensionName = "VK_KHR_external_semaphore"
- // KhrExternalSemaphoreFd as defined in vulkan/vulkan_core.h:5407
+ // KhrExternalSemaphoreFd as defined in vulkan/vulkan_core.h:8597
KhrExternalSemaphoreFd = 1
- // KhrExternalSemaphoreFdSpecVersion as defined in vulkan/vulkan_core.h:5408
+ // KhrExternalSemaphoreFdSpecVersion as defined in vulkan/vulkan_core.h:8598
KhrExternalSemaphoreFdSpecVersion = 1
- // KhrExternalSemaphoreFdExtensionName as defined in vulkan/vulkan_core.h:5409
+ // KhrExternalSemaphoreFdExtensionName as defined in vulkan/vulkan_core.h:8599
KhrExternalSemaphoreFdExtensionName = "VK_KHR_external_semaphore_fd"
- // KhrPushDescriptor as defined in vulkan/vulkan_core.h:5442
+ // KhrPushDescriptor as defined in vulkan/vulkan_core.h:8631
KhrPushDescriptor = 1
- // KhrPushDescriptorSpecVersion as defined in vulkan/vulkan_core.h:5443
+ // KhrPushDescriptorSpecVersion as defined in vulkan/vulkan_core.h:8632
KhrPushDescriptorSpecVersion = 2
- // KhrPushDescriptorExtensionName as defined in vulkan/vulkan_core.h:5444
+ // KhrPushDescriptorExtensionName as defined in vulkan/vulkan_core.h:8633
KhrPushDescriptorExtensionName = "VK_KHR_push_descriptor"
- // Khr16bitStorage as defined in vulkan/vulkan_core.h:5473
+ // KhrShaderFloat16Int8 as defined in vulkan/vulkan_core.h:8661
+ KhrShaderFloat16Int8 = 1
+ // KhrShaderFloat16Int8SpecVersion as defined in vulkan/vulkan_core.h:8662
+ KhrShaderFloat16Int8SpecVersion = 1
+ // KhrShaderFloat16Int8ExtensionName as defined in vulkan/vulkan_core.h:8663
+ KhrShaderFloat16Int8ExtensionName = "VK_KHR_shader_float16_int8"
+ // Khr16bitStorage as defined in vulkan/vulkan_core.h:8670
Khr16bitStorage = 1
- // Khr16bitStorageSpecVersion as defined in vulkan/vulkan_core.h:5474
+ // Khr16bitStorageSpecVersion as defined in vulkan/vulkan_core.h:8671
Khr16bitStorageSpecVersion = 1
- // Khr16bitStorageExtensionName as defined in vulkan/vulkan_core.h:5475
+ // Khr16bitStorageExtensionName as defined in vulkan/vulkan_core.h:8672
Khr16bitStorageExtensionName = "VK_KHR_16bit_storage"
- // KhrIncrementalPresent as defined in vulkan/vulkan_core.h:5481
+ // KhrIncrementalPresent as defined in vulkan/vulkan_core.h:8677
KhrIncrementalPresent = 1
- // KhrIncrementalPresentSpecVersion as defined in vulkan/vulkan_core.h:5482
- KhrIncrementalPresentSpecVersion = 1
- // KhrIncrementalPresentExtensionName as defined in vulkan/vulkan_core.h:5483
+ // KhrIncrementalPresentSpecVersion as defined in vulkan/vulkan_core.h:8678
+ KhrIncrementalPresentSpecVersion = 2
+ // KhrIncrementalPresentExtensionName as defined in vulkan/vulkan_core.h:8679
KhrIncrementalPresentExtensionName = "VK_KHR_incremental_present"
- // KhrDescriptorUpdateTemplate as defined in vulkan/vulkan_core.h:5505
+ // KhrDescriptorUpdateTemplate as defined in vulkan/vulkan_core.h:8700
KhrDescriptorUpdateTemplate = 1
- // KhrDescriptorUpdateTemplateSpecVersion as defined in vulkan/vulkan_core.h:5509
+ // KhrDescriptorUpdateTemplateSpecVersion as defined in vulkan/vulkan_core.h:8703
KhrDescriptorUpdateTemplateSpecVersion = 1
- // KhrDescriptorUpdateTemplateExtensionName as defined in vulkan/vulkan_core.h:5510
+ // KhrDescriptorUpdateTemplateExtensionName as defined in vulkan/vulkan_core.h:8704
KhrDescriptorUpdateTemplateExtensionName = "VK_KHR_descriptor_update_template"
- // KhrCreateRenderpass2 as defined in vulkan/vulkan_core.h:5546
+ // KhrImagelessFramebuffer as defined in vulkan/vulkan_core.h:8737
+ KhrImagelessFramebuffer = 1
+ // KhrImagelessFramebufferSpecVersion as defined in vulkan/vulkan_core.h:8738
+ KhrImagelessFramebufferSpecVersion = 1
+ // KhrImagelessFramebufferExtensionName as defined in vulkan/vulkan_core.h:8739
+ KhrImagelessFramebufferExtensionName = "VK_KHR_imageless_framebuffer"
+ // KhrCreateRenderpass2 as defined in vulkan/vulkan_core.h:8750
KhrCreateRenderpass2 = 1
- // KhrCreateRenderpass2SpecVersion as defined in vulkan/vulkan_core.h:5547
+ // KhrCreateRenderpass2SpecVersion as defined in vulkan/vulkan_core.h:8751
KhrCreateRenderpass2SpecVersion = 1
- // KhrCreateRenderpass2ExtensionName as defined in vulkan/vulkan_core.h:5548
+ // KhrCreateRenderpass2ExtensionName as defined in vulkan/vulkan_core.h:8752
KhrCreateRenderpass2ExtensionName = "VK_KHR_create_renderpass2"
- // KhrSharedPresentableImage as defined in vulkan/vulkan_core.h:5654
+ // KhrSharedPresentableImage as defined in vulkan/vulkan_core.h:8795
KhrSharedPresentableImage = 1
- // KhrSharedPresentableImageSpecVersion as defined in vulkan/vulkan_core.h:5655
+ // KhrSharedPresentableImageSpecVersion as defined in vulkan/vulkan_core.h:8796
KhrSharedPresentableImageSpecVersion = 1
- // KhrSharedPresentableImageExtensionName as defined in vulkan/vulkan_core.h:5656
+ // KhrSharedPresentableImageExtensionName as defined in vulkan/vulkan_core.h:8797
KhrSharedPresentableImageExtensionName = "VK_KHR_shared_presentable_image"
- // KhrExternalFenceCapabilities as defined in vulkan/vulkan_core.h:5673
+ // KhrExternalFenceCapabilities as defined in vulkan/vulkan_core.h:8813
KhrExternalFenceCapabilities = 1
- // KhrExternalFenceCapabilitiesSpecVersion as defined in vulkan/vulkan_core.h:5674
+ // KhrExternalFenceCapabilitiesSpecVersion as defined in vulkan/vulkan_core.h:8814
KhrExternalFenceCapabilitiesSpecVersion = 1
- // KhrExternalFenceCapabilitiesExtensionName as defined in vulkan/vulkan_core.h:5675
+ // KhrExternalFenceCapabilitiesExtensionName as defined in vulkan/vulkan_core.h:8815
KhrExternalFenceCapabilitiesExtensionName = "VK_KHR_external_fence_capabilities"
- // KhrExternalFence as defined in vulkan/vulkan_core.h:5700
+ // KhrExternalFence as defined in vulkan/vulkan_core.h:8838
KhrExternalFence = 1
- // KhrExternalFenceSpecVersion as defined in vulkan/vulkan_core.h:5701
+ // KhrExternalFenceSpecVersion as defined in vulkan/vulkan_core.h:8839
KhrExternalFenceSpecVersion = 1
- // KhrExternalFenceExtensionName as defined in vulkan/vulkan_core.h:5702
+ // KhrExternalFenceExtensionName as defined in vulkan/vulkan_core.h:8840
KhrExternalFenceExtensionName = "VK_KHR_external_fence"
- // KhrExternalFenceFd as defined in vulkan/vulkan_core.h:5713
+ // KhrExternalFenceFd as defined in vulkan/vulkan_core.h:8849
KhrExternalFenceFd = 1
- // KhrExternalFenceFdSpecVersion as defined in vulkan/vulkan_core.h:5714
+ // KhrExternalFenceFdSpecVersion as defined in vulkan/vulkan_core.h:8850
KhrExternalFenceFdSpecVersion = 1
- // KhrExternalFenceFdExtensionName as defined in vulkan/vulkan_core.h:5715
+ // KhrExternalFenceFdExtensionName as defined in vulkan/vulkan_core.h:8851
KhrExternalFenceFdExtensionName = "VK_KHR_external_fence_fd"
- // KhrMaintenance2 as defined in vulkan/vulkan_core.h:5748
+ // KhrPerformanceQuery as defined in vulkan/vulkan_core.h:8883
+ KhrPerformanceQuery = 1
+ // KhrPerformanceQuerySpecVersion as defined in vulkan/vulkan_core.h:8884
+ KhrPerformanceQuerySpecVersion = 1
+ // KhrPerformanceQueryExtensionName as defined in vulkan/vulkan_core.h:8885
+ KhrPerformanceQueryExtensionName = "VK_KHR_performance_query"
+ // KhrMaintenance2 as defined in vulkan/vulkan_core.h:9023
KhrMaintenance2 = 1
- // KhrMaintenance2SpecVersion as defined in vulkan/vulkan_core.h:5749
+ // KhrMaintenance2SpecVersion as defined in vulkan/vulkan_core.h:9024
KhrMaintenance2SpecVersion = 1
- // KhrMaintenance2ExtensionName as defined in vulkan/vulkan_core.h:5750
+ // KhrMaintenance2ExtensionName as defined in vulkan/vulkan_core.h:9025
KhrMaintenance2ExtensionName = "VK_KHR_maintenance2"
- // KhrGetSurfaceCapabilities2 as defined in vulkan/vulkan_core.h:5769
+ // KhrGetSurfaceCapabilities2 as defined in vulkan/vulkan_core.h:9044
KhrGetSurfaceCapabilities2 = 1
- // KhrGetSurfaceCapabilities2SpecVersion as defined in vulkan/vulkan_core.h:5770
+ // KhrGetSurfaceCapabilities2SpecVersion as defined in vulkan/vulkan_core.h:9045
KhrGetSurfaceCapabilities2SpecVersion = 1
- // KhrGetSurfaceCapabilities2ExtensionName as defined in vulkan/vulkan_core.h:5771
+ // KhrGetSurfaceCapabilities2ExtensionName as defined in vulkan/vulkan_core.h:9046
KhrGetSurfaceCapabilities2ExtensionName = "VK_KHR_get_surface_capabilities2"
- // KhrVariablePointers as defined in vulkan/vulkan_core.h:5808
+ // KhrVariablePointers as defined in vulkan/vulkan_core.h:9082
KhrVariablePointers = 1
- // KhrVariablePointersSpecVersion as defined in vulkan/vulkan_core.h:5809
+ // KhrVariablePointersSpecVersion as defined in vulkan/vulkan_core.h:9083
KhrVariablePointersSpecVersion = 1
- // KhrVariablePointersExtensionName as defined in vulkan/vulkan_core.h:5810
+ // KhrVariablePointersExtensionName as defined in vulkan/vulkan_core.h:9084
KhrVariablePointersExtensionName = "VK_KHR_variable_pointers"
- // KhrGetDisplayProperties2 as defined in vulkan/vulkan_core.h:5816
+ // KhrGetDisplayProperties2 as defined in vulkan/vulkan_core.h:9091
KhrGetDisplayProperties2 = 1
- // KhrGetDisplayProperties2SpecVersion as defined in vulkan/vulkan_core.h:5817
+ // KhrGetDisplayProperties2SpecVersion as defined in vulkan/vulkan_core.h:9092
KhrGetDisplayProperties2SpecVersion = 1
- // KhrGetDisplayProperties2ExtensionName as defined in vulkan/vulkan_core.h:5818
+ // KhrGetDisplayProperties2ExtensionName as defined in vulkan/vulkan_core.h:9093
KhrGetDisplayProperties2ExtensionName = "VK_KHR_get_display_properties2"
- // KhrDedicatedAllocation as defined in vulkan/vulkan_core.h:5880
+ // KhrDedicatedAllocation as defined in vulkan/vulkan_core.h:9154
KhrDedicatedAllocation = 1
- // KhrDedicatedAllocationSpecVersion as defined in vulkan/vulkan_core.h:5881
+ // KhrDedicatedAllocationSpecVersion as defined in vulkan/vulkan_core.h:9155
KhrDedicatedAllocationSpecVersion = 3
- // KhrDedicatedAllocationExtensionName as defined in vulkan/vulkan_core.h:5882
+ // KhrDedicatedAllocationExtensionName as defined in vulkan/vulkan_core.h:9156
KhrDedicatedAllocationExtensionName = "VK_KHR_dedicated_allocation"
- // KhrStorageBufferStorageClass as defined in vulkan/vulkan_core.h:5890
+ // KhrStorageBufferStorageClass as defined in vulkan/vulkan_core.h:9163
KhrStorageBufferStorageClass = 1
- // KhrStorageBufferStorageClassSpecVersion as defined in vulkan/vulkan_core.h:5891
+ // KhrStorageBufferStorageClassSpecVersion as defined in vulkan/vulkan_core.h:9164
KhrStorageBufferStorageClassSpecVersion = 1
- // KhrStorageBufferStorageClassExtensionName as defined in vulkan/vulkan_core.h:5892
+ // KhrStorageBufferStorageClassExtensionName as defined in vulkan/vulkan_core.h:9165
KhrStorageBufferStorageClassExtensionName = "VK_KHR_storage_buffer_storage_class"
- // KhrRelaxedBlockLayout as defined in vulkan/vulkan_core.h:5895
+ // KhrRelaxedBlockLayout as defined in vulkan/vulkan_core.h:9168
KhrRelaxedBlockLayout = 1
- // KhrRelaxedBlockLayoutSpecVersion as defined in vulkan/vulkan_core.h:5896
+ // KhrRelaxedBlockLayoutSpecVersion as defined in vulkan/vulkan_core.h:9169
KhrRelaxedBlockLayoutSpecVersion = 1
- // KhrRelaxedBlockLayoutExtensionName as defined in vulkan/vulkan_core.h:5897
+ // KhrRelaxedBlockLayoutExtensionName as defined in vulkan/vulkan_core.h:9170
KhrRelaxedBlockLayoutExtensionName = "VK_KHR_relaxed_block_layout"
- // KhrGetMemoryRequirements2 as defined in vulkan/vulkan_core.h:5900
+ // KhrGetMemoryRequirements2 as defined in vulkan/vulkan_core.h:9173
KhrGetMemoryRequirements2 = 1
- // KhrGetMemoryRequirements2SpecVersion as defined in vulkan/vulkan_core.h:5901
+ // KhrGetMemoryRequirements2SpecVersion as defined in vulkan/vulkan_core.h:9174
KhrGetMemoryRequirements2SpecVersion = 1
- // KhrGetMemoryRequirements2ExtensionName as defined in vulkan/vulkan_core.h:5902
+ // KhrGetMemoryRequirements2ExtensionName as defined in vulkan/vulkan_core.h:9175
KhrGetMemoryRequirements2ExtensionName = "VK_KHR_get_memory_requirements2"
- // KhrImageFormatList as defined in vulkan/vulkan_core.h:5935
+ // KhrImageFormatList as defined in vulkan/vulkan_core.h:9209
KhrImageFormatList = 1
- // KhrImageFormatListSpecVersion as defined in vulkan/vulkan_core.h:5936
+ // KhrImageFormatListSpecVersion as defined in vulkan/vulkan_core.h:9210
KhrImageFormatListSpecVersion = 1
- // KhrImageFormatListExtensionName as defined in vulkan/vulkan_core.h:5937
+ // KhrImageFormatListExtensionName as defined in vulkan/vulkan_core.h:9211
KhrImageFormatListExtensionName = "VK_KHR_image_format_list"
- // KhrSamplerYcbcrConversion as defined in vulkan/vulkan_core.h:5948
+ // KhrSamplerYcbcrConversion as defined in vulkan/vulkan_core.h:9216
KhrSamplerYcbcrConversion = 1
- // KhrSamplerYcbcrConversionSpecVersion as defined in vulkan/vulkan_core.h:5952
- KhrSamplerYcbcrConversionSpecVersion = 1
- // KhrSamplerYcbcrConversionExtensionName as defined in vulkan/vulkan_core.h:5953
+ // KhrSamplerYcbcrConversionSpecVersion as defined in vulkan/vulkan_core.h:9219
+ KhrSamplerYcbcrConversionSpecVersion = 14
+ // KhrSamplerYcbcrConversionExtensionName as defined in vulkan/vulkan_core.h:9220
KhrSamplerYcbcrConversionExtensionName = "VK_KHR_sampler_ycbcr_conversion"
- // KhrBindMemory2 as defined in vulkan/vulkan_core.h:5991
+ // KhrBindMemory2 as defined in vulkan/vulkan_core.h:9256
KhrBindMemory2 = 1
- // KhrBindMemory2SpecVersion as defined in vulkan/vulkan_core.h:5992
+ // KhrBindMemory2SpecVersion as defined in vulkan/vulkan_core.h:9257
KhrBindMemory2SpecVersion = 1
- // KhrBindMemory2ExtensionName as defined in vulkan/vulkan_core.h:5993
+ // KhrBindMemory2ExtensionName as defined in vulkan/vulkan_core.h:9258
KhrBindMemory2ExtensionName = "VK_KHR_bind_memory2"
- // KhrMaintenance3 as defined in vulkan/vulkan_core.h:6015
+ // KhrMaintenance3 as defined in vulkan/vulkan_core.h:9279
KhrMaintenance3 = 1
- // KhrMaintenance3SpecVersion as defined in vulkan/vulkan_core.h:6016
+ // KhrMaintenance3SpecVersion as defined in vulkan/vulkan_core.h:9280
KhrMaintenance3SpecVersion = 1
- // KhrMaintenance3ExtensionName as defined in vulkan/vulkan_core.h:6017
+ // KhrMaintenance3ExtensionName as defined in vulkan/vulkan_core.h:9281
KhrMaintenance3ExtensionName = "VK_KHR_maintenance3"
- // KhrDrawIndirectCount as defined in vulkan/vulkan_core.h:6033
+ // KhrDrawIndirectCount as defined in vulkan/vulkan_core.h:9298
KhrDrawIndirectCount = 1
- // KhrDrawIndirectCountSpecVersion as defined in vulkan/vulkan_core.h:6034
+ // KhrDrawIndirectCountSpecVersion as defined in vulkan/vulkan_core.h:9299
KhrDrawIndirectCountSpecVersion = 1
- // KhrDrawIndirectCountExtensionName as defined in vulkan/vulkan_core.h:6035
+ // KhrDrawIndirectCountExtensionName as defined in vulkan/vulkan_core.h:9300
KhrDrawIndirectCountExtensionName = "VK_KHR_draw_indirect_count"
- // Khr8bitStorage as defined in vulkan/vulkan_core.h:6060
+ // KhrShaderSubgroupExtendedTypes as defined in vulkan/vulkan_core.h:9325
+ KhrShaderSubgroupExtendedTypes = 1
+ // KhrShaderSubgroupExtendedTypesSpecVersion as defined in vulkan/vulkan_core.h:9326
+ KhrShaderSubgroupExtendedTypesSpecVersion = 1
+ // KhrShaderSubgroupExtendedTypesExtensionName as defined in vulkan/vulkan_core.h:9327
+ KhrShaderSubgroupExtendedTypesExtensionName = "VK_KHR_shader_subgroup_extended_types"
+ // Khr8bitStorage as defined in vulkan/vulkan_core.h:9332
Khr8bitStorage = 1
- // Khr8bitStorageSpecVersion as defined in vulkan/vulkan_core.h:6061
+ // Khr8bitStorageSpecVersion as defined in vulkan/vulkan_core.h:9333
Khr8bitStorageSpecVersion = 1
- // Khr8bitStorageExtensionName as defined in vulkan/vulkan_core.h:6062
+ // Khr8bitStorageExtensionName as defined in vulkan/vulkan_core.h:9334
Khr8bitStorageExtensionName = "VK_KHR_8bit_storage"
- // KhrShaderAtomicInt64 as defined in vulkan/vulkan_core.h:6074
+ // KhrShaderAtomicInt64 as defined in vulkan/vulkan_core.h:9339
KhrShaderAtomicInt64 = 1
- // KhrShaderAtomicInt64SpecVersion as defined in vulkan/vulkan_core.h:6075
+ // KhrShaderAtomicInt64SpecVersion as defined in vulkan/vulkan_core.h:9340
KhrShaderAtomicInt64SpecVersion = 1
- // KhrShaderAtomicInt64ExtensionName as defined in vulkan/vulkan_core.h:6076
+ // KhrShaderAtomicInt64ExtensionName as defined in vulkan/vulkan_core.h:9341
KhrShaderAtomicInt64ExtensionName = "VK_KHR_shader_atomic_int64"
- // KhrDriverProperties as defined in vulkan/vulkan_core.h:6087
+ // KhrShaderClock as defined in vulkan/vulkan_core.h:9346
+ KhrShaderClock = 1
+ // KhrShaderClockSpecVersion as defined in vulkan/vulkan_core.h:9347
+ KhrShaderClockSpecVersion = 1
+ // KhrShaderClockExtensionName as defined in vulkan/vulkan_core.h:9348
+ KhrShaderClockExtensionName = "VK_KHR_shader_clock"
+ // KhrGlobalPriority as defined in vulkan/vulkan_core.h:9412
+ KhrGlobalPriority = 1
+ // MaxGlobalPrioritySize as defined in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVK_MAX_GLOBAL_PRIORITY_SIZE_KHR
+ MaxGlobalPrioritySize = uint32(16)
+ // KhrGlobalPrioritySpecVersion as defined in vulkan/vulkan_core.h:9414
+ KhrGlobalPrioritySpecVersion = 1
+ // KhrGlobalPriorityExtensionName as defined in vulkan/vulkan_core.h:9415
+ KhrGlobalPriorityExtensionName = "VK_KHR_global_priority"
+ // KhrDriverProperties as defined in vulkan/vulkan_core.h:9449
KhrDriverProperties = 1
- // MaxDriverNameSize as defined in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVK_MAX_DRIVER_NAME_SIZE_KHR
- MaxDriverNameSize = 256
- // MaxDriverInfoSize as defined in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVK_MAX_DRIVER_INFO_SIZE_KHR
- MaxDriverInfoSize = 256
- // KhrDriverPropertiesSpecVersion as defined in vulkan/vulkan_core.h:6090
+ // KhrDriverPropertiesSpecVersion as defined in vulkan/vulkan_core.h:9450
KhrDriverPropertiesSpecVersion = 1
- // KhrDriverPropertiesExtensionName as defined in vulkan/vulkan_core.h:6091
+ // KhrDriverPropertiesExtensionName as defined in vulkan/vulkan_core.h:9451
KhrDriverPropertiesExtensionName = "VK_KHR_driver_properties"
- // KhrVulkanMemoryModel as defined in vulkan/vulkan_core.h:6128
+ // KhrShaderFloatControls as defined in vulkan/vulkan_core.h:9462
+ KhrShaderFloatControls = 1
+ // KhrShaderFloatControlsSpecVersion as defined in vulkan/vulkan_core.h:9463
+ KhrShaderFloatControlsSpecVersion = 4
+ // KhrShaderFloatControlsExtensionName as defined in vulkan/vulkan_core.h:9464
+ KhrShaderFloatControlsExtensionName = "VK_KHR_shader_float_controls"
+ // KhrDepthStencilResolve as defined in vulkan/vulkan_core.h:9471
+ KhrDepthStencilResolve = 1
+ // KhrDepthStencilResolveSpecVersion as defined in vulkan/vulkan_core.h:9472
+ KhrDepthStencilResolveSpecVersion = 1
+ // KhrDepthStencilResolveExtensionName as defined in vulkan/vulkan_core.h:9473
+ KhrDepthStencilResolveExtensionName = "VK_KHR_depth_stencil_resolve"
+ // KhrSwapchainMutableFormat as defined in vulkan/vulkan_core.h:9484
+ KhrSwapchainMutableFormat = 1
+ // KhrSwapchainMutableFormatSpecVersion as defined in vulkan/vulkan_core.h:9485
+ KhrSwapchainMutableFormatSpecVersion = 1
+ // KhrSwapchainMutableFormatExtensionName as defined in vulkan/vulkan_core.h:9486
+ KhrSwapchainMutableFormatExtensionName = "VK_KHR_swapchain_mutable_format"
+ // KhrTimelineSemaphore as defined in vulkan/vulkan_core.h:9489
+ KhrTimelineSemaphore = 1
+ // KhrTimelineSemaphoreSpecVersion as defined in vulkan/vulkan_core.h:9490
+ KhrTimelineSemaphoreSpecVersion = 2
+ // KhrTimelineSemaphoreExtensionName as defined in vulkan/vulkan_core.h:9491
+ KhrTimelineSemaphoreExtensionName = "VK_KHR_timeline_semaphore"
+ // KhrVulkanMemoryModel as defined in vulkan/vulkan_core.h:9531
KhrVulkanMemoryModel = 1
- // KhrVulkanMemoryModelSpecVersion as defined in vulkan/vulkan_core.h:6129
- KhrVulkanMemoryModelSpecVersion = 2
- // KhrVulkanMemoryModelExtensionName as defined in vulkan/vulkan_core.h:6130
+ // KhrVulkanMemoryModelSpecVersion as defined in vulkan/vulkan_core.h:9532
+ KhrVulkanMemoryModelSpecVersion = 3
+ // KhrVulkanMemoryModelExtensionName as defined in vulkan/vulkan_core.h:9533
KhrVulkanMemoryModelExtensionName = "VK_KHR_vulkan_memory_model"
- // ExtDebugReport as defined in vulkan/vulkan_core.h:6141
+ // KhrShaderTerminateInvocation as defined in vulkan/vulkan_core.h:9538
+ KhrShaderTerminateInvocation = 1
+ // KhrShaderTerminateInvocationSpecVersion as defined in vulkan/vulkan_core.h:9539
+ KhrShaderTerminateInvocationSpecVersion = 1
+ // KhrShaderTerminateInvocationExtensionName as defined in vulkan/vulkan_core.h:9540
+ KhrShaderTerminateInvocationExtensionName = "VK_KHR_shader_terminate_invocation"
+ // KhrFragmentShadingRate as defined in vulkan/vulkan_core.h:9545
+ KhrFragmentShadingRate = 1
+ // KhrFragmentShadingRateSpecVersion as defined in vulkan/vulkan_core.h:9546
+ KhrFragmentShadingRateSpecVersion = 2
+ // KhrFragmentShadingRateExtensionName as defined in vulkan/vulkan_core.h:9547
+ KhrFragmentShadingRateExtensionName = "VK_KHR_fragment_shading_rate"
+ // KhrSpirv14 as defined in vulkan/vulkan_core.h:9624
+ KhrSpirv14 = 1
+ // KhrSpirv14SpecVersion as defined in vulkan/vulkan_core.h:9625
+ KhrSpirv14SpecVersion = 1
+ // KhrSpirv14ExtensionName as defined in vulkan/vulkan_core.h:9626
+ KhrSpirv14ExtensionName = "VK_KHR_spirv_1_4"
+ // KhrSurfaceProtectedCapabilities as defined in vulkan/vulkan_core.h:9629
+ KhrSurfaceProtectedCapabilities = 1
+ // KhrSurfaceProtectedCapabilitiesSpecVersion as defined in vulkan/vulkan_core.h:9630
+ KhrSurfaceProtectedCapabilitiesSpecVersion = 1
+ // KhrSurfaceProtectedCapabilitiesExtensionName as defined in vulkan/vulkan_core.h:9631
+ KhrSurfaceProtectedCapabilitiesExtensionName = "VK_KHR_surface_protected_capabilities"
+ // KhrSeparateDepthStencilLayouts as defined in vulkan/vulkan_core.h:9640
+ KhrSeparateDepthStencilLayouts = 1
+ // KhrSeparateDepthStencilLayoutsSpecVersion as defined in vulkan/vulkan_core.h:9641
+ KhrSeparateDepthStencilLayoutsSpecVersion = 1
+ // KhrSeparateDepthStencilLayoutsExtensionName as defined in vulkan/vulkan_core.h:9642
+ KhrSeparateDepthStencilLayoutsExtensionName = "VK_KHR_separate_depth_stencil_layouts"
+ // KhrPresentWait as defined in vulkan/vulkan_core.h:9651
+ KhrPresentWait = 1
+ // KhrPresentWaitSpecVersion as defined in vulkan/vulkan_core.h:9652
+ KhrPresentWaitSpecVersion = 1
+ // KhrPresentWaitExtensionName as defined in vulkan/vulkan_core.h:9653
+ KhrPresentWaitExtensionName = "VK_KHR_present_wait"
+ // KhrUniformBufferStandardLayout as defined in vulkan/vulkan_core.h:9671
+ KhrUniformBufferStandardLayout = 1
+ // KhrUniformBufferStandardLayoutSpecVersion as defined in vulkan/vulkan_core.h:9672
+ KhrUniformBufferStandardLayoutSpecVersion = 1
+ // KhrUniformBufferStandardLayoutExtensionName as defined in vulkan/vulkan_core.h:9673
+ KhrUniformBufferStandardLayoutExtensionName = "VK_KHR_uniform_buffer_standard_layout"
+ // KhrBufferDeviceAddress as defined in vulkan/vulkan_core.h:9678
+ KhrBufferDeviceAddress = 1
+ // KhrBufferDeviceAddressSpecVersion as defined in vulkan/vulkan_core.h:9679
+ KhrBufferDeviceAddressSpecVersion = 1
+ // KhrBufferDeviceAddressExtensionName as defined in vulkan/vulkan_core.h:9680
+ KhrBufferDeviceAddressExtensionName = "VK_KHR_buffer_device_address"
+ // KhrDeferredHostOperations as defined in vulkan/vulkan_core.h:9710
+ KhrDeferredHostOperations = 1
+ // KhrDeferredHostOperationsSpecVersion as defined in vulkan/vulkan_core.h:9712
+ KhrDeferredHostOperationsSpecVersion = 4
+ // KhrDeferredHostOperationsExtensionName as defined in vulkan/vulkan_core.h:9713
+ KhrDeferredHostOperationsExtensionName = "VK_KHR_deferred_host_operations"
+ // KhrPipelineExecutableProperties as defined in vulkan/vulkan_core.h:9745
+ KhrPipelineExecutableProperties = 1
+ // KhrPipelineExecutablePropertiesSpecVersion as defined in vulkan/vulkan_core.h:9746
+ KhrPipelineExecutablePropertiesSpecVersion = 1
+ // KhrPipelineExecutablePropertiesExtensionName as defined in vulkan/vulkan_core.h:9747
+ KhrPipelineExecutablePropertiesExtensionName = "VK_KHR_pipeline_executable_properties"
+ // KhrShaderIntegerDotProduct as defined in vulkan/vulkan_core.h:9835
+ KhrShaderIntegerDotProduct = 1
+ // KhrShaderIntegerDotProductSpecVersion as defined in vulkan/vulkan_core.h:9836
+ KhrShaderIntegerDotProductSpecVersion = 1
+ // KhrShaderIntegerDotProductExtensionName as defined in vulkan/vulkan_core.h:9837
+ KhrShaderIntegerDotProductExtensionName = "VK_KHR_shader_integer_dot_product"
+ // KhrPipelineLibrary as defined in vulkan/vulkan_core.h:9844
+ KhrPipelineLibrary = 1
+ // KhrPipelineLibrarySpecVersion as defined in vulkan/vulkan_core.h:9845
+ KhrPipelineLibrarySpecVersion = 1
+ // KhrPipelineLibraryExtensionName as defined in vulkan/vulkan_core.h:9846
+ KhrPipelineLibraryExtensionName = "VK_KHR_pipeline_library"
+ // KhrShaderNonSemanticInfo as defined in vulkan/vulkan_core.h:9856
+ KhrShaderNonSemanticInfo = 1
+ // KhrShaderNonSemanticInfoSpecVersion as defined in vulkan/vulkan_core.h:9857
+ KhrShaderNonSemanticInfoSpecVersion = 1
+ // KhrShaderNonSemanticInfoExtensionName as defined in vulkan/vulkan_core.h:9858
+ KhrShaderNonSemanticInfoExtensionName = "VK_KHR_shader_non_semantic_info"
+ // KhrPresentId as defined in vulkan/vulkan_core.h:9861
+ KhrPresentId = 1
+ // KhrPresentIdSpecVersion as defined in vulkan/vulkan_core.h:9862
+ KhrPresentIdSpecVersion = 1
+ // KhrPresentIdExtensionName as defined in vulkan/vulkan_core.h:9863
+ KhrPresentIdExtensionName = "VK_KHR_present_id"
+ // KhrSynchronization2 as defined in vulkan/vulkan_core.h:9879
+ KhrSynchronization2 = 1
+ // KhrSynchronization2SpecVersion as defined in vulkan/vulkan_core.h:9880
+ KhrSynchronization2SpecVersion = 1
+ // KhrSynchronization2ExtensionName as defined in vulkan/vulkan_core.h:9881
+ KhrSynchronization2ExtensionName = "VK_KHR_synchronization2"
+ // KhrFragmentShaderBarycentric as defined in vulkan/vulkan_core.h:9979
+ KhrFragmentShaderBarycentric = 1
+ // KhrFragmentShaderBarycentricSpecVersion as defined in vulkan/vulkan_core.h:9980
+ KhrFragmentShaderBarycentricSpecVersion = 1
+ // KhrFragmentShaderBarycentricExtensionName as defined in vulkan/vulkan_core.h:9981
+ KhrFragmentShaderBarycentricExtensionName = "VK_KHR_fragment_shader_barycentric"
+ // KhrShaderSubgroupUniformControlFlow as defined in vulkan/vulkan_core.h:9996
+ KhrShaderSubgroupUniformControlFlow = 1
+ // KhrShaderSubgroupUniformControlFlowSpecVersion as defined in vulkan/vulkan_core.h:9997
+ KhrShaderSubgroupUniformControlFlowSpecVersion = 1
+ // KhrShaderSubgroupUniformControlFlowExtensionName as defined in vulkan/vulkan_core.h:9998
+ KhrShaderSubgroupUniformControlFlowExtensionName = "VK_KHR_shader_subgroup_uniform_control_flow"
+ // KhrZeroInitializeWorkgroupMemory as defined in vulkan/vulkan_core.h:10007
+ KhrZeroInitializeWorkgroupMemory = 1
+ // KhrZeroInitializeWorkgroupMemorySpecVersion as defined in vulkan/vulkan_core.h:10008
+ KhrZeroInitializeWorkgroupMemorySpecVersion = 1
+ // KhrZeroInitializeWorkgroupMemoryExtensionName as defined in vulkan/vulkan_core.h:10009
+ KhrZeroInitializeWorkgroupMemoryExtensionName = "VK_KHR_zero_initialize_workgroup_memory"
+ // KhrWorkgroupMemoryExplicitLayout as defined in vulkan/vulkan_core.h:10014
+ KhrWorkgroupMemoryExplicitLayout = 1
+ // KhrWorkgroupMemoryExplicitLayoutSpecVersion as defined in vulkan/vulkan_core.h:10015
+ KhrWorkgroupMemoryExplicitLayoutSpecVersion = 1
+ // KhrWorkgroupMemoryExplicitLayoutExtensionName as defined in vulkan/vulkan_core.h:10016
+ KhrWorkgroupMemoryExplicitLayoutExtensionName = "VK_KHR_workgroup_memory_explicit_layout"
+ // KhrCopyCommands2 as defined in vulkan/vulkan_core.h:10028
+ KhrCopyCommands2 = 1
+ // KhrCopyCommands2SpecVersion as defined in vulkan/vulkan_core.h:10029
+ KhrCopyCommands2SpecVersion = 1
+ // KhrCopyCommands2ExtensionName as defined in vulkan/vulkan_core.h:10030
+ KhrCopyCommands2ExtensionName = "VK_KHR_copy_commands2"
+ // KhrFormatFeatureFlags2 as defined in vulkan/vulkan_core.h:10087
+ KhrFormatFeatureFlags2 = 1
+ // KhrFormatFeatureFlags2SpecVersion as defined in vulkan/vulkan_core.h:10088
+ KhrFormatFeatureFlags2SpecVersion = 2
+ // KhrFormatFeatureFlags2ExtensionName as defined in vulkan/vulkan_core.h:10089
+ KhrFormatFeatureFlags2ExtensionName = "VK_KHR_format_feature_flags2"
+ // KhrRayTracingMaintenance1 as defined in vulkan/vulkan_core.h:10098
+ KhrRayTracingMaintenance1 = 1
+ // KhrRayTracingMaintenance1SpecVersion as defined in vulkan/vulkan_core.h:10099
+ KhrRayTracingMaintenance1SpecVersion = 1
+ // KhrRayTracingMaintenance1ExtensionName as defined in vulkan/vulkan_core.h:10100
+ KhrRayTracingMaintenance1ExtensionName = "VK_KHR_ray_tracing_maintenance1"
+ // KhrPortabilityEnumeration as defined in vulkan/vulkan_core.h:10134
+ KhrPortabilityEnumeration = 1
+ // KhrPortabilityEnumerationSpecVersion as defined in vulkan/vulkan_core.h:10135
+ KhrPortabilityEnumerationSpecVersion = 1
+ // KhrPortabilityEnumerationExtensionName as defined in vulkan/vulkan_core.h:10136
+ KhrPortabilityEnumerationExtensionName = "VK_KHR_portability_enumeration"
+ // KhrMaintenance4 as defined in vulkan/vulkan_core.h:10139
+ KhrMaintenance4 = 1
+ // KhrMaintenance4SpecVersion as defined in vulkan/vulkan_core.h:10140
+ KhrMaintenance4SpecVersion = 2
+ // KhrMaintenance4ExtensionName as defined in vulkan/vulkan_core.h:10141
+ KhrMaintenance4ExtensionName = "VK_KHR_maintenance4"
+ // ExtDebugReport as defined in vulkan/vulkan_core.h:10173
ExtDebugReport = 1
- // ExtDebugReportSpecVersion as defined in vulkan/vulkan_core.h:6144
- ExtDebugReportSpecVersion = 9
- // ExtDebugReportExtensionName as defined in vulkan/vulkan_core.h:6145
+ // ExtDebugReportSpecVersion as defined in vulkan/vulkan_core.h:10175
+ ExtDebugReportSpecVersion = 10
+ // ExtDebugReportExtensionName as defined in vulkan/vulkan_core.h:10176
ExtDebugReportExtensionName = "VK_EXT_debug_report"
- // NvGlslShader as defined in vulkan/vulkan_core.h:6253
+ // NvGlslShader as defined in vulkan/vulkan_core.h:10280
NvGlslShader = 1
- // NvGlslShaderSpecVersion as defined in vulkan/vulkan_core.h:6254
+ // NvGlslShaderSpecVersion as defined in vulkan/vulkan_core.h:10281
NvGlslShaderSpecVersion = 1
- // NvGlslShaderExtensionName as defined in vulkan/vulkan_core.h:6255
+ // NvGlslShaderExtensionName as defined in vulkan/vulkan_core.h:10282
NvGlslShaderExtensionName = "VK_NV_glsl_shader"
- // ExtDepthRangeUnrestricted as defined in vulkan/vulkan_core.h:6258
+ // ExtDepthRangeUnrestricted as defined in vulkan/vulkan_core.h:10285
ExtDepthRangeUnrestricted = 1
- // ExtDepthRangeUnrestrictedSpecVersion as defined in vulkan/vulkan_core.h:6259
+ // ExtDepthRangeUnrestrictedSpecVersion as defined in vulkan/vulkan_core.h:10286
ExtDepthRangeUnrestrictedSpecVersion = 1
- // ExtDepthRangeUnrestrictedExtensionName as defined in vulkan/vulkan_core.h:6260
+ // ExtDepthRangeUnrestrictedExtensionName as defined in vulkan/vulkan_core.h:10287
ExtDepthRangeUnrestrictedExtensionName = "VK_EXT_depth_range_unrestricted"
- // ImgFilterCubic as defined in vulkan/vulkan_core.h:6263
+ // ImgFilterCubic as defined in vulkan/vulkan_core.h:10290
ImgFilterCubic = 1
- // ImgFilterCubicSpecVersion as defined in vulkan/vulkan_core.h:6264
+ // ImgFilterCubicSpecVersion as defined in vulkan/vulkan_core.h:10291
ImgFilterCubicSpecVersion = 1
- // ImgFilterCubicExtensionName as defined in vulkan/vulkan_core.h:6265
+ // ImgFilterCubicExtensionName as defined in vulkan/vulkan_core.h:10292
ImgFilterCubicExtensionName = "VK_IMG_filter_cubic"
- // AmdRasterizationOrder as defined in vulkan/vulkan_core.h:6268
+ // AmdRasterizationOrder as defined in vulkan/vulkan_core.h:10295
AmdRasterizationOrder = 1
- // AmdRasterizationOrderSpecVersion as defined in vulkan/vulkan_core.h:6269
+ // AmdRasterizationOrderSpecVersion as defined in vulkan/vulkan_core.h:10296
AmdRasterizationOrderSpecVersion = 1
- // AmdRasterizationOrderExtensionName as defined in vulkan/vulkan_core.h:6270
+ // AmdRasterizationOrderExtensionName as defined in vulkan/vulkan_core.h:10297
AmdRasterizationOrderExtensionName = "VK_AMD_rasterization_order"
- // AmdShaderTrinaryMinmax as defined in vulkan/vulkan_core.h:6290
+ // AmdShaderTrinaryMinmax as defined in vulkan/vulkan_core.h:10312
AmdShaderTrinaryMinmax = 1
- // AmdShaderTrinaryMinmaxSpecVersion as defined in vulkan/vulkan_core.h:6291
+ // AmdShaderTrinaryMinmaxSpecVersion as defined in vulkan/vulkan_core.h:10313
AmdShaderTrinaryMinmaxSpecVersion = 1
- // AmdShaderTrinaryMinmaxExtensionName as defined in vulkan/vulkan_core.h:6292
+ // AmdShaderTrinaryMinmaxExtensionName as defined in vulkan/vulkan_core.h:10314
AmdShaderTrinaryMinmaxExtensionName = "VK_AMD_shader_trinary_minmax"
- // AmdShaderExplicitVertexParameter as defined in vulkan/vulkan_core.h:6295
+ // AmdShaderExplicitVertexParameter as defined in vulkan/vulkan_core.h:10317
AmdShaderExplicitVertexParameter = 1
- // AmdShaderExplicitVertexParameterSpecVersion as defined in vulkan/vulkan_core.h:6296
+ // AmdShaderExplicitVertexParameterSpecVersion as defined in vulkan/vulkan_core.h:10318
AmdShaderExplicitVertexParameterSpecVersion = 1
- // AmdShaderExplicitVertexParameterExtensionName as defined in vulkan/vulkan_core.h:6297
+ // AmdShaderExplicitVertexParameterExtensionName as defined in vulkan/vulkan_core.h:10319
AmdShaderExplicitVertexParameterExtensionName = "VK_AMD_shader_explicit_vertex_parameter"
- // ExtDebugMarker as defined in vulkan/vulkan_core.h:6300
+ // ExtDebugMarker as defined in vulkan/vulkan_core.h:10322
ExtDebugMarker = 1
- // ExtDebugMarkerSpecVersion as defined in vulkan/vulkan_core.h:6301
+ // ExtDebugMarkerSpecVersion as defined in vulkan/vulkan_core.h:10323
ExtDebugMarkerSpecVersion = 4
- // ExtDebugMarkerExtensionName as defined in vulkan/vulkan_core.h:6302
+ // ExtDebugMarkerExtensionName as defined in vulkan/vulkan_core.h:10324
ExtDebugMarkerExtensionName = "VK_EXT_debug_marker"
- // AmdGcnShader as defined in vulkan/vulkan_core.h:6357
+ // AmdGcnShader as defined in vulkan/vulkan_core.h:10378
AmdGcnShader = 1
- // AmdGcnShaderSpecVersion as defined in vulkan/vulkan_core.h:6358
+ // AmdGcnShaderSpecVersion as defined in vulkan/vulkan_core.h:10379
AmdGcnShaderSpecVersion = 1
- // AmdGcnShaderExtensionName as defined in vulkan/vulkan_core.h:6359
+ // AmdGcnShaderExtensionName as defined in vulkan/vulkan_core.h:10380
AmdGcnShaderExtensionName = "VK_AMD_gcn_shader"
- // NvDedicatedAllocation as defined in vulkan/vulkan_core.h:6362
+ // NvDedicatedAllocation as defined in vulkan/vulkan_core.h:10383
NvDedicatedAllocation = 1
- // NvDedicatedAllocationSpecVersion as defined in vulkan/vulkan_core.h:6363
+ // NvDedicatedAllocationSpecVersion as defined in vulkan/vulkan_core.h:10384
NvDedicatedAllocationSpecVersion = 1
- // NvDedicatedAllocationExtensionName as defined in vulkan/vulkan_core.h:6364
+ // NvDedicatedAllocationExtensionName as defined in vulkan/vulkan_core.h:10385
NvDedicatedAllocationExtensionName = "VK_NV_dedicated_allocation"
- // ExtTransformFeedback as defined in vulkan/vulkan_core.h:6387
+ // ExtTransformFeedback as defined in vulkan/vulkan_core.h:10407
ExtTransformFeedback = 1
- // ExtTransformFeedbackSpecVersion as defined in vulkan/vulkan_core.h:6388
+ // ExtTransformFeedbackSpecVersion as defined in vulkan/vulkan_core.h:10408
ExtTransformFeedbackSpecVersion = 1
- // ExtTransformFeedbackExtensionName as defined in vulkan/vulkan_core.h:6389
+ // ExtTransformFeedbackExtensionName as defined in vulkan/vulkan_core.h:10409
ExtTransformFeedbackExtensionName = "VK_EXT_transform_feedback"
- // AmdDrawIndirectCount as defined in vulkan/vulkan_core.h:6476
+ // NvxImageViewHandle as defined in vulkan/vulkan_core.h:10565
+ NvxImageViewHandle = 1
+ // NvxImageViewHandleSpecVersion as defined in vulkan/vulkan_core.h:10566
+ NvxImageViewHandleSpecVersion = 2
+ // NvxImageViewHandleExtensionName as defined in vulkan/vulkan_core.h:10567
+ NvxImageViewHandleExtensionName = "VK_NVX_image_view_handle"
+ // AmdDrawIndirectCount as defined in vulkan/vulkan_core.h:10598
AmdDrawIndirectCount = 1
- // AmdDrawIndirectCountSpecVersion as defined in vulkan/vulkan_core.h:6477
- AmdDrawIndirectCountSpecVersion = 1
- // AmdDrawIndirectCountExtensionName as defined in vulkan/vulkan_core.h:6478
+ // AmdDrawIndirectCountSpecVersion as defined in vulkan/vulkan_core.h:10599
+ AmdDrawIndirectCountSpecVersion = 2
+ // AmdDrawIndirectCountExtensionName as defined in vulkan/vulkan_core.h:10600
AmdDrawIndirectCountExtensionName = "VK_AMD_draw_indirect_count"
- // AmdNegativeViewportHeight as defined in vulkan/vulkan_core.h:6503
+ // AmdNegativeViewportHeight as defined in vulkan/vulkan_core.h:10625
AmdNegativeViewportHeight = 1
- // AmdNegativeViewportHeightSpecVersion as defined in vulkan/vulkan_core.h:6504
+ // AmdNegativeViewportHeightSpecVersion as defined in vulkan/vulkan_core.h:10626
AmdNegativeViewportHeightSpecVersion = 1
- // AmdNegativeViewportHeightExtensionName as defined in vulkan/vulkan_core.h:6505
+ // AmdNegativeViewportHeightExtensionName as defined in vulkan/vulkan_core.h:10627
AmdNegativeViewportHeightExtensionName = "VK_AMD_negative_viewport_height"
- // AmdGpuShaderHalfFloat as defined in vulkan/vulkan_core.h:6508
+ // AmdGpuShaderHalfFloat as defined in vulkan/vulkan_core.h:10630
AmdGpuShaderHalfFloat = 1
- // AmdGpuShaderHalfFloatSpecVersion as defined in vulkan/vulkan_core.h:6509
- AmdGpuShaderHalfFloatSpecVersion = 1
- // AmdGpuShaderHalfFloatExtensionName as defined in vulkan/vulkan_core.h:6510
+ // AmdGpuShaderHalfFloatSpecVersion as defined in vulkan/vulkan_core.h:10631
+ AmdGpuShaderHalfFloatSpecVersion = 2
+ // AmdGpuShaderHalfFloatExtensionName as defined in vulkan/vulkan_core.h:10632
AmdGpuShaderHalfFloatExtensionName = "VK_AMD_gpu_shader_half_float"
- // AmdShaderBallot as defined in vulkan/vulkan_core.h:6513
+ // AmdShaderBallot as defined in vulkan/vulkan_core.h:10635
AmdShaderBallot = 1
- // AmdShaderBallotSpecVersion as defined in vulkan/vulkan_core.h:6514
+ // AmdShaderBallotSpecVersion as defined in vulkan/vulkan_core.h:10636
AmdShaderBallotSpecVersion = 1
- // AmdShaderBallotExtensionName as defined in vulkan/vulkan_core.h:6515
+ // AmdShaderBallotExtensionName as defined in vulkan/vulkan_core.h:10637
AmdShaderBallotExtensionName = "VK_AMD_shader_ballot"
- // AmdTextureGatherBiasLod as defined in vulkan/vulkan_core.h:6518
+ // AmdTextureGatherBiasLod as defined in vulkan/vulkan_core.h:10640
AmdTextureGatherBiasLod = 1
- // AmdTextureGatherBiasLodSpecVersion as defined in vulkan/vulkan_core.h:6519
+ // AmdTextureGatherBiasLodSpecVersion as defined in vulkan/vulkan_core.h:10641
AmdTextureGatherBiasLodSpecVersion = 1
- // AmdTextureGatherBiasLodExtensionName as defined in vulkan/vulkan_core.h:6520
+ // AmdTextureGatherBiasLodExtensionName as defined in vulkan/vulkan_core.h:10642
AmdTextureGatherBiasLodExtensionName = "VK_AMD_texture_gather_bias_lod"
- // AmdShaderInfo as defined in vulkan/vulkan_core.h:6530
+ // AmdShaderInfo as defined in vulkan/vulkan_core.h:10651
AmdShaderInfo = 1
- // AmdShaderInfoSpecVersion as defined in vulkan/vulkan_core.h:6531
+ // AmdShaderInfoSpecVersion as defined in vulkan/vulkan_core.h:10652
AmdShaderInfoSpecVersion = 1
- // AmdShaderInfoExtensionName as defined in vulkan/vulkan_core.h:6532
+ // AmdShaderInfoExtensionName as defined in vulkan/vulkan_core.h:10653
AmdShaderInfoExtensionName = "VK_AMD_shader_info"
- // AmdShaderImageLoadStoreLod as defined in vulkan/vulkan_core.h:6576
+ // AmdShaderImageLoadStoreLod as defined in vulkan/vulkan_core.h:10692
AmdShaderImageLoadStoreLod = 1
- // AmdShaderImageLoadStoreLodSpecVersion as defined in vulkan/vulkan_core.h:6577
+ // AmdShaderImageLoadStoreLodSpecVersion as defined in vulkan/vulkan_core.h:10693
AmdShaderImageLoadStoreLodSpecVersion = 1
- // AmdShaderImageLoadStoreLodExtensionName as defined in vulkan/vulkan_core.h:6578
+ // AmdShaderImageLoadStoreLodExtensionName as defined in vulkan/vulkan_core.h:10694
AmdShaderImageLoadStoreLodExtensionName = "VK_AMD_shader_image_load_store_lod"
- // NvCornerSampledImage as defined in vulkan/vulkan_core.h:6581
+ // NvCornerSampledImage as defined in vulkan/vulkan_core.h:10697
NvCornerSampledImage = 1
- // NvCornerSampledImageSpecVersion as defined in vulkan/vulkan_core.h:6582
+ // NvCornerSampledImageSpecVersion as defined in vulkan/vulkan_core.h:10698
NvCornerSampledImageSpecVersion = 2
- // NvCornerSampledImageExtensionName as defined in vulkan/vulkan_core.h:6583
+ // NvCornerSampledImageExtensionName as defined in vulkan/vulkan_core.h:10699
NvCornerSampledImageExtensionName = "VK_NV_corner_sampled_image"
- // ImgFormatPvrtc as defined in vulkan/vulkan_core.h:6593
+ // ImgFormatPvrtc as defined in vulkan/vulkan_core.h:10708
ImgFormatPvrtc = 1
- // ImgFormatPvrtcSpecVersion as defined in vulkan/vulkan_core.h:6594
+ // ImgFormatPvrtcSpecVersion as defined in vulkan/vulkan_core.h:10709
ImgFormatPvrtcSpecVersion = 1
- // ImgFormatPvrtcExtensionName as defined in vulkan/vulkan_core.h:6595
+ // ImgFormatPvrtcExtensionName as defined in vulkan/vulkan_core.h:10710
ImgFormatPvrtcExtensionName = "VK_IMG_format_pvrtc"
- // NvExternalMemoryCapabilities as defined in vulkan/vulkan_core.h:6598
+ // NvExternalMemoryCapabilities as defined in vulkan/vulkan_core.h:10713
NvExternalMemoryCapabilities = 1
- // NvExternalMemoryCapabilitiesSpecVersion as defined in vulkan/vulkan_core.h:6599
+ // NvExternalMemoryCapabilitiesSpecVersion as defined in vulkan/vulkan_core.h:10714
NvExternalMemoryCapabilitiesSpecVersion = 1
- // NvExternalMemoryCapabilitiesExtensionName as defined in vulkan/vulkan_core.h:6600
+ // NvExternalMemoryCapabilitiesExtensionName as defined in vulkan/vulkan_core.h:10715
NvExternalMemoryCapabilitiesExtensionName = "VK_NV_external_memory_capabilities"
- // NvExternalMemory as defined in vulkan/vulkan_core.h:6642
+ // NvExternalMemory as defined in vulkan/vulkan_core.h:10755
NvExternalMemory = 1
- // NvExternalMemorySpecVersion as defined in vulkan/vulkan_core.h:6643
+ // NvExternalMemorySpecVersion as defined in vulkan/vulkan_core.h:10756
NvExternalMemorySpecVersion = 1
- // NvExternalMemoryExtensionName as defined in vulkan/vulkan_core.h:6644
+ // NvExternalMemoryExtensionName as defined in vulkan/vulkan_core.h:10757
NvExternalMemoryExtensionName = "VK_NV_external_memory"
- // ExtValidationFlags as defined in vulkan/vulkan_core.h:6660
+ // ExtValidationFlags as defined in vulkan/vulkan_core.h:10772
ExtValidationFlags = 1
- // ExtValidationFlagsSpecVersion as defined in vulkan/vulkan_core.h:6661
- ExtValidationFlagsSpecVersion = 1
- // ExtValidationFlagsExtensionName as defined in vulkan/vulkan_core.h:6662
+ // ExtValidationFlagsSpecVersion as defined in vulkan/vulkan_core.h:10773
+ ExtValidationFlagsSpecVersion = 2
+ // ExtValidationFlagsExtensionName as defined in vulkan/vulkan_core.h:10774
ExtValidationFlagsExtensionName = "VK_EXT_validation_flags"
- // ExtShaderSubgroupBallot as defined in vulkan/vulkan_core.h:6683
+ // ExtShaderSubgroupBallot as defined in vulkan/vulkan_core.h:10790
ExtShaderSubgroupBallot = 1
- // ExtShaderSubgroupBallotSpecVersion as defined in vulkan/vulkan_core.h:6684
+ // ExtShaderSubgroupBallotSpecVersion as defined in vulkan/vulkan_core.h:10791
ExtShaderSubgroupBallotSpecVersion = 1
- // ExtShaderSubgroupBallotExtensionName as defined in vulkan/vulkan_core.h:6685
+ // ExtShaderSubgroupBallotExtensionName as defined in vulkan/vulkan_core.h:10792
ExtShaderSubgroupBallotExtensionName = "VK_EXT_shader_subgroup_ballot"
- // ExtShaderSubgroupVote as defined in vulkan/vulkan_core.h:6688
+ // ExtShaderSubgroupVote as defined in vulkan/vulkan_core.h:10795
ExtShaderSubgroupVote = 1
- // ExtShaderSubgroupVoteSpecVersion as defined in vulkan/vulkan_core.h:6689
+ // ExtShaderSubgroupVoteSpecVersion as defined in vulkan/vulkan_core.h:10796
ExtShaderSubgroupVoteSpecVersion = 1
- // ExtShaderSubgroupVoteExtensionName as defined in vulkan/vulkan_core.h:6690
+ // ExtShaderSubgroupVoteExtensionName as defined in vulkan/vulkan_core.h:10797
ExtShaderSubgroupVoteExtensionName = "VK_EXT_shader_subgroup_vote"
- // ExtAstcDecodeMode as defined in vulkan/vulkan_core.h:6693
+ // ExtTextureCompressionAstcHdr as defined in vulkan/vulkan_core.h:10800
+ ExtTextureCompressionAstcHdr = 1
+ // ExtTextureCompressionAstcHdrSpecVersion as defined in vulkan/vulkan_core.h:10801
+ ExtTextureCompressionAstcHdrSpecVersion = 1
+ // ExtTextureCompressionAstcHdrExtensionName as defined in vulkan/vulkan_core.h:10802
+ ExtTextureCompressionAstcHdrExtensionName = "VK_EXT_texture_compression_astc_hdr"
+ // ExtAstcDecodeMode as defined in vulkan/vulkan_core.h:10807
ExtAstcDecodeMode = 1
- // ExtAstcDecodeModeSpecVersion as defined in vulkan/vulkan_core.h:6694
+ // ExtAstcDecodeModeSpecVersion as defined in vulkan/vulkan_core.h:10808
ExtAstcDecodeModeSpecVersion = 1
- // ExtAstcDecodeModeExtensionName as defined in vulkan/vulkan_core.h:6695
+ // ExtAstcDecodeModeExtensionName as defined in vulkan/vulkan_core.h:10809
ExtAstcDecodeModeExtensionName = "VK_EXT_astc_decode_mode"
- // ExtConditionalRendering as defined in vulkan/vulkan_core.h:6711
+ // ExtPipelineRobustness as defined in vulkan/vulkan_core.h:10824
+ ExtPipelineRobustness = 1
+ // ExtPipelineRobustnessSpecVersion as defined in vulkan/vulkan_core.h:10825
+ ExtPipelineRobustnessSpecVersion = 1
+ // ExtPipelineRobustnessExtensionName as defined in vulkan/vulkan_core.h:10826
+ ExtPipelineRobustnessExtensionName = "VK_EXT_pipeline_robustness"
+ // ExtConditionalRendering as defined in vulkan/vulkan_core.h:10869
ExtConditionalRendering = 1
- // ExtConditionalRenderingSpecVersion as defined in vulkan/vulkan_core.h:6712
- ExtConditionalRenderingSpecVersion = 1
- // ExtConditionalRenderingExtensionName as defined in vulkan/vulkan_core.h:6713
+ // ExtConditionalRenderingSpecVersion as defined in vulkan/vulkan_core.h:10870
+ ExtConditionalRenderingSpecVersion = 2
+ // ExtConditionalRenderingExtensionName as defined in vulkan/vulkan_core.h:10871
ExtConditionalRenderingExtensionName = "VK_EXT_conditional_rendering"
- // NvxDeviceGeneratedCommands as defined in vulkan/vulkan_core.h:6756
- NvxDeviceGeneratedCommands = 1
- // NvxDeviceGeneratedCommandsSpecVersion as defined in vulkan/vulkan_core.h:6760
- NvxDeviceGeneratedCommandsSpecVersion = 3
- // NvxDeviceGeneratedCommandsExtensionName as defined in vulkan/vulkan_core.h:6761
- NvxDeviceGeneratedCommandsExtensionName = "VK_NVX_device_generated_commands"
- // NvClipSpaceWScaling as defined in vulkan/vulkan_core.h:6983
+ // NvClipSpaceWScaling as defined in vulkan/vulkan_core.h:10912
NvClipSpaceWScaling = 1
- // NvClipSpaceWScalingSpecVersion as defined in vulkan/vulkan_core.h:6984
+ // NvClipSpaceWScalingSpecVersion as defined in vulkan/vulkan_core.h:10913
NvClipSpaceWScalingSpecVersion = 1
- // NvClipSpaceWScalingExtensionName as defined in vulkan/vulkan_core.h:6985
+ // NvClipSpaceWScalingExtensionName as defined in vulkan/vulkan_core.h:10914
NvClipSpaceWScalingExtensionName = "VK_NV_clip_space_w_scaling"
- // ExtDirectModeDisplay as defined in vulkan/vulkan_core.h:7011
+ // ExtDirectModeDisplay as defined in vulkan/vulkan_core.h:10939
ExtDirectModeDisplay = 1
- // ExtDirectModeDisplaySpecVersion as defined in vulkan/vulkan_core.h:7012
+ // ExtDirectModeDisplaySpecVersion as defined in vulkan/vulkan_core.h:10940
ExtDirectModeDisplaySpecVersion = 1
- // ExtDirectModeDisplayExtensionName as defined in vulkan/vulkan_core.h:7013
+ // ExtDirectModeDisplayExtensionName as defined in vulkan/vulkan_core.h:10941
ExtDirectModeDisplayExtensionName = "VK_EXT_direct_mode_display"
- // ExtDisplaySurfaceCounter as defined in vulkan/vulkan_core.h:7023
+ // ExtDisplaySurfaceCounter as defined in vulkan/vulkan_core.h:10951
ExtDisplaySurfaceCounter = 1
- // ExtDisplaySurfaceCounterSpecVersion as defined in vulkan/vulkan_core.h:7024
+ // ExtDisplaySurfaceCounterSpecVersion as defined in vulkan/vulkan_core.h:10952
ExtDisplaySurfaceCounterSpecVersion = 1
- // ExtDisplaySurfaceCounterExtensionName as defined in vulkan/vulkan_core.h:7025
+ // ExtDisplaySurfaceCounterExtensionName as defined in vulkan/vulkan_core.h:10953
ExtDisplaySurfaceCounterExtensionName = "VK_EXT_display_surface_counter"
- // ExtDisplayControl as defined in vulkan/vulkan_core.h:7060
+ // ExtDisplayControl as defined in vulkan/vulkan_core.h:10987
ExtDisplayControl = 1
- // ExtDisplayControlSpecVersion as defined in vulkan/vulkan_core.h:7061
+ // ExtDisplayControlSpecVersion as defined in vulkan/vulkan_core.h:10988
ExtDisplayControlSpecVersion = 1
- // ExtDisplayControlExtensionName as defined in vulkan/vulkan_core.h:7062
+ // ExtDisplayControlExtensionName as defined in vulkan/vulkan_core.h:10989
ExtDisplayControlExtensionName = "VK_EXT_display_control"
- // GoogleDisplayTiming as defined in vulkan/vulkan_core.h:7147
+ // GoogleDisplayTiming as defined in vulkan/vulkan_core.h:11063
GoogleDisplayTiming = 1
- // GoogleDisplayTimingSpecVersion as defined in vulkan/vulkan_core.h:7148
+ // GoogleDisplayTimingSpecVersion as defined in vulkan/vulkan_core.h:11064
GoogleDisplayTimingSpecVersion = 1
- // GoogleDisplayTimingExtensionName as defined in vulkan/vulkan_core.h:7149
+ // GoogleDisplayTimingExtensionName as defined in vulkan/vulkan_core.h:11065
GoogleDisplayTimingExtensionName = "VK_GOOGLE_display_timing"
- // NvSampleMaskOverrideCoverage as defined in vulkan/vulkan_core.h:7192
+ // NvSampleMaskOverrideCoverage as defined in vulkan/vulkan_core.h:11107
NvSampleMaskOverrideCoverage = 1
- // NvSampleMaskOverrideCoverageSpecVersion as defined in vulkan/vulkan_core.h:7193
+ // NvSampleMaskOverrideCoverageSpecVersion as defined in vulkan/vulkan_core.h:11108
NvSampleMaskOverrideCoverageSpecVersion = 1
- // NvSampleMaskOverrideCoverageExtensionName as defined in vulkan/vulkan_core.h:7194
+ // NvSampleMaskOverrideCoverageExtensionName as defined in vulkan/vulkan_core.h:11109
NvSampleMaskOverrideCoverageExtensionName = "VK_NV_sample_mask_override_coverage"
- // NvGeometryShaderPassthrough as defined in vulkan/vulkan_core.h:7197
+ // NvGeometryShaderPassthrough as defined in vulkan/vulkan_core.h:11112
NvGeometryShaderPassthrough = 1
- // NvGeometryShaderPassthroughSpecVersion as defined in vulkan/vulkan_core.h:7198
+ // NvGeometryShaderPassthroughSpecVersion as defined in vulkan/vulkan_core.h:11113
NvGeometryShaderPassthroughSpecVersion = 1
- // NvGeometryShaderPassthroughExtensionName as defined in vulkan/vulkan_core.h:7199
+ // NvGeometryShaderPassthroughExtensionName as defined in vulkan/vulkan_core.h:11114
NvGeometryShaderPassthroughExtensionName = "VK_NV_geometry_shader_passthrough"
- // NvViewportArray2 as defined in vulkan/vulkan_core.h:7202
+ // NvViewportArray2 as defined in vulkan/vulkan_core.h:11117
NvViewportArray2 = 1
- // NvViewportArray2SpecVersion as defined in vulkan/vulkan_core.h:7203
+ // NvViewportArray2SpecVersion as defined in vulkan/vulkan_core.h:11118
NvViewportArray2SpecVersion = 1
- // NvViewportArray2ExtensionName as defined in vulkan/vulkan_core.h:7204
+ // NvViewportArray2ExtensionName as defined in vulkan/vulkan_core.h:11119
NvViewportArray2ExtensionName = "VK_NV_viewport_array2"
- // NvxMultiviewPerViewAttributes as defined in vulkan/vulkan_core.h:7207
+ // NvxMultiviewPerViewAttributes as defined in vulkan/vulkan_core.h:11124
NvxMultiviewPerViewAttributes = 1
- // NvxMultiviewPerViewAttributesSpecVersion as defined in vulkan/vulkan_core.h:7208
+ // NvxMultiviewPerViewAttributesSpecVersion as defined in vulkan/vulkan_core.h:11125
NvxMultiviewPerViewAttributesSpecVersion = 1
- // NvxMultiviewPerViewAttributesExtensionName as defined in vulkan/vulkan_core.h:7209
+ // NvxMultiviewPerViewAttributesExtensionName as defined in vulkan/vulkan_core.h:11126
NvxMultiviewPerViewAttributesExtensionName = "VK_NVX_multiview_per_view_attributes"
- // NvViewportSwizzle as defined in vulkan/vulkan_core.h:7219
+ // NvViewportSwizzle as defined in vulkan/vulkan_core.h:11135
NvViewportSwizzle = 1
- // NvViewportSwizzleSpecVersion as defined in vulkan/vulkan_core.h:7220
+ // NvViewportSwizzleSpecVersion as defined in vulkan/vulkan_core.h:11136
NvViewportSwizzleSpecVersion = 1
- // NvViewportSwizzleExtensionName as defined in vulkan/vulkan_core.h:7221
+ // NvViewportSwizzleExtensionName as defined in vulkan/vulkan_core.h:11137
NvViewportSwizzleExtensionName = "VK_NV_viewport_swizzle"
- // ExtDiscardRectangles as defined in vulkan/vulkan_core.h:7258
+ // ExtDiscardRectangles as defined in vulkan/vulkan_core.h:11168
ExtDiscardRectangles = 1
- // ExtDiscardRectanglesSpecVersion as defined in vulkan/vulkan_core.h:7259
+ // ExtDiscardRectanglesSpecVersion as defined in vulkan/vulkan_core.h:11169
ExtDiscardRectanglesSpecVersion = 1
- // ExtDiscardRectanglesExtensionName as defined in vulkan/vulkan_core.h:7260
+ // ExtDiscardRectanglesExtensionName as defined in vulkan/vulkan_core.h:11170
ExtDiscardRectanglesExtensionName = "VK_EXT_discard_rectangles"
- // ExtConservativeRasterization as defined in vulkan/vulkan_core.h:7300
+ // ExtConservativeRasterization as defined in vulkan/vulkan_core.h:11204
ExtConservativeRasterization = 1
- // ExtConservativeRasterizationSpecVersion as defined in vulkan/vulkan_core.h:7301
+ // ExtConservativeRasterizationSpecVersion as defined in vulkan/vulkan_core.h:11205
ExtConservativeRasterizationSpecVersion = 1
- // ExtConservativeRasterizationExtensionName as defined in vulkan/vulkan_core.h:7302
+ // ExtConservativeRasterizationExtensionName as defined in vulkan/vulkan_core.h:11206
ExtConservativeRasterizationExtensionName = "VK_EXT_conservative_rasterization"
- // ExtSwapchainColorspace as defined in vulkan/vulkan_core.h:7341
+ // ExtDepthClipEnable as defined in vulkan/vulkan_core.h:11239
+ ExtDepthClipEnable = 1
+ // ExtDepthClipEnableSpecVersion as defined in vulkan/vulkan_core.h:11240
+ ExtDepthClipEnableSpecVersion = 1
+ // ExtDepthClipEnableExtensionName as defined in vulkan/vulkan_core.h:11241
+ ExtDepthClipEnableExtensionName = "VK_EXT_depth_clip_enable"
+ // ExtSwapchainColorspace as defined in vulkan/vulkan_core.h:11258
ExtSwapchainColorspace = 1
- // ExtSwapchainColorSpaceSpecVersion as defined in vulkan/vulkan_core.h:7342
- ExtSwapchainColorSpaceSpecVersion = 3
- // ExtSwapchainColorSpaceExtensionName as defined in vulkan/vulkan_core.h:7343
+ // ExtSwapchainColorSpaceSpecVersion as defined in vulkan/vulkan_core.h:11259
+ ExtSwapchainColorSpaceSpecVersion = 4
+ // ExtSwapchainColorSpaceExtensionName as defined in vulkan/vulkan_core.h:11260
ExtSwapchainColorSpaceExtensionName = "VK_EXT_swapchain_colorspace"
- // ExtHdrMetadata as defined in vulkan/vulkan_core.h:7346
+ // ExtHdrMetadata as defined in vulkan/vulkan_core.h:11263
ExtHdrMetadata = 1
- // ExtHdrMetadataSpecVersion as defined in vulkan/vulkan_core.h:7347
- ExtHdrMetadataSpecVersion = 1
- // ExtHdrMetadataExtensionName as defined in vulkan/vulkan_core.h:7348
+ // ExtHdrMetadataSpecVersion as defined in vulkan/vulkan_core.h:11264
+ ExtHdrMetadataSpecVersion = 2
+ // ExtHdrMetadataExtensionName as defined in vulkan/vulkan_core.h:11265
ExtHdrMetadataExtensionName = "VK_EXT_hdr_metadata"
- // ExtExternalMemoryDmaBuf as defined in vulkan/vulkan_core.h:7379
+ // ExtExternalMemoryDmaBuf as defined in vulkan/vulkan_core.h:11295
ExtExternalMemoryDmaBuf = 1
- // ExtExternalMemoryDmaBufSpecVersion as defined in vulkan/vulkan_core.h:7380
+ // ExtExternalMemoryDmaBufSpecVersion as defined in vulkan/vulkan_core.h:11296
ExtExternalMemoryDmaBufSpecVersion = 1
- // ExtExternalMemoryDmaBufExtensionName as defined in vulkan/vulkan_core.h:7381
+ // ExtExternalMemoryDmaBufExtensionName as defined in vulkan/vulkan_core.h:11297
ExtExternalMemoryDmaBufExtensionName = "VK_EXT_external_memory_dma_buf"
- // ExtQueueFamilyForeign as defined in vulkan/vulkan_core.h:7384
+ // ExtQueueFamilyForeign as defined in vulkan/vulkan_core.h:11300
ExtQueueFamilyForeign = 1
- // ExtQueueFamilyForeignSpecVersion as defined in vulkan/vulkan_core.h:7385
+ // ExtQueueFamilyForeignSpecVersion as defined in vulkan/vulkan_core.h:11301
ExtQueueFamilyForeignSpecVersion = 1
- // ExtQueueFamilyForeignExtensionName as defined in vulkan/vulkan_core.h:7386
+ // ExtQueueFamilyForeignExtensionName as defined in vulkan/vulkan_core.h:11302
ExtQueueFamilyForeignExtensionName = "VK_EXT_queue_family_foreign"
- // QueueFamilyForeign as defined in vulkan/vulkan_core.h:7387
- QueueFamilyForeign = (^uint32(0) - 2)
- // ExtDebugUtils as defined in vulkan/vulkan_core.h:7390
+ // QueueFamilyForeign as defined in vulkan/vulkan_core.h:11303
+ QueueFamilyForeign = (^uint32(2))
+ // ExtDebugUtils as defined in vulkan/vulkan_core.h:11306
ExtDebugUtils = 1
- // ExtDebugUtilsSpecVersion as defined in vulkan/vulkan_core.h:7393
- ExtDebugUtilsSpecVersion = 1
- // ExtDebugUtilsExtensionName as defined in vulkan/vulkan_core.h:7394
+ // ExtDebugUtilsSpecVersion as defined in vulkan/vulkan_core.h:11308
+ ExtDebugUtilsSpecVersion = 2
+ // ExtDebugUtilsExtensionName as defined in vulkan/vulkan_core.h:11309
ExtDebugUtilsExtensionName = "VK_EXT_debug_utils"
- // ExtSamplerFilterMinmax as defined in vulkan/vulkan_core.h:7534
+ // ExtSamplerFilterMinmax as defined in vulkan/vulkan_core.h:11448
ExtSamplerFilterMinmax = 1
- // ExtSamplerFilterMinmaxSpecVersion as defined in vulkan/vulkan_core.h:7535
- ExtSamplerFilterMinmaxSpecVersion = 1
- // ExtSamplerFilterMinmaxExtensionName as defined in vulkan/vulkan_core.h:7536
+ // ExtSamplerFilterMinmaxSpecVersion as defined in vulkan/vulkan_core.h:11449
+ ExtSamplerFilterMinmaxSpecVersion = 2
+ // ExtSamplerFilterMinmaxExtensionName as defined in vulkan/vulkan_core.h:11450
ExtSamplerFilterMinmaxExtensionName = "VK_EXT_sampler_filter_minmax"
- // AmdGpuShaderInt16 as defined in vulkan/vulkan_core.h:7564
+ // AmdGpuShaderInt16 as defined in vulkan/vulkan_core.h:11459
AmdGpuShaderInt16 = 1
- // AmdGpuShaderInt16SpecVersion as defined in vulkan/vulkan_core.h:7565
- AmdGpuShaderInt16SpecVersion = 1
- // AmdGpuShaderInt16ExtensionName as defined in vulkan/vulkan_core.h:7566
+ // AmdGpuShaderInt16SpecVersion as defined in vulkan/vulkan_core.h:11460
+ AmdGpuShaderInt16SpecVersion = 2
+ // AmdGpuShaderInt16ExtensionName as defined in vulkan/vulkan_core.h:11461
AmdGpuShaderInt16ExtensionName = "VK_AMD_gpu_shader_int16"
- // AmdMixedAttachmentSamples as defined in vulkan/vulkan_core.h:7569
+ // AmdMixedAttachmentSamples as defined in vulkan/vulkan_core.h:11464
AmdMixedAttachmentSamples = 1
- // AmdMixedAttachmentSamplesSpecVersion as defined in vulkan/vulkan_core.h:7570
+ // AmdMixedAttachmentSamplesSpecVersion as defined in vulkan/vulkan_core.h:11465
AmdMixedAttachmentSamplesSpecVersion = 1
- // AmdMixedAttachmentSamplesExtensionName as defined in vulkan/vulkan_core.h:7571
+ // AmdMixedAttachmentSamplesExtensionName as defined in vulkan/vulkan_core.h:11466
AmdMixedAttachmentSamplesExtensionName = "VK_AMD_mixed_attachment_samples"
- // AmdShaderFragmentMask as defined in vulkan/vulkan_core.h:7574
+ // AmdShaderFragmentMask as defined in vulkan/vulkan_core.h:11469
AmdShaderFragmentMask = 1
- // AmdShaderFragmentMaskSpecVersion as defined in vulkan/vulkan_core.h:7575
+ // AmdShaderFragmentMaskSpecVersion as defined in vulkan/vulkan_core.h:11470
AmdShaderFragmentMaskSpecVersion = 1
- // AmdShaderFragmentMaskExtensionName as defined in vulkan/vulkan_core.h:7576
+ // AmdShaderFragmentMaskExtensionName as defined in vulkan/vulkan_core.h:11471
AmdShaderFragmentMaskExtensionName = "VK_AMD_shader_fragment_mask"
- // ExtInlineUniformBlock as defined in vulkan/vulkan_core.h:7579
+ // ExtInlineUniformBlock as defined in vulkan/vulkan_core.h:11474
ExtInlineUniformBlock = 1
- // ExtInlineUniformBlockSpecVersion as defined in vulkan/vulkan_core.h:7580
+ // ExtInlineUniformBlockSpecVersion as defined in vulkan/vulkan_core.h:11475
ExtInlineUniformBlockSpecVersion = 1
- // ExtInlineUniformBlockExtensionName as defined in vulkan/vulkan_core.h:7581
+ // ExtInlineUniformBlockExtensionName as defined in vulkan/vulkan_core.h:11476
ExtInlineUniformBlockExtensionName = "VK_EXT_inline_uniform_block"
- // ExtShaderStencilExport as defined in vulkan/vulkan_core.h:7615
+ // ExtShaderStencilExport as defined in vulkan/vulkan_core.h:11487
ExtShaderStencilExport = 1
- // ExtShaderStencilExportSpecVersion as defined in vulkan/vulkan_core.h:7616
+ // ExtShaderStencilExportSpecVersion as defined in vulkan/vulkan_core.h:11488
ExtShaderStencilExportSpecVersion = 1
- // ExtShaderStencilExportExtensionName as defined in vulkan/vulkan_core.h:7617
+ // ExtShaderStencilExportExtensionName as defined in vulkan/vulkan_core.h:11489
ExtShaderStencilExportExtensionName = "VK_EXT_shader_stencil_export"
- // ExtSampleLocations as defined in vulkan/vulkan_core.h:7620
+ // ExtSampleLocations as defined in vulkan/vulkan_core.h:11492
ExtSampleLocations = 1
- // ExtSampleLocationsSpecVersion as defined in vulkan/vulkan_core.h:7621
+ // ExtSampleLocationsSpecVersion as defined in vulkan/vulkan_core.h:11493
ExtSampleLocationsSpecVersion = 1
- // ExtSampleLocationsExtensionName as defined in vulkan/vulkan_core.h:7622
+ // ExtSampleLocationsExtensionName as defined in vulkan/vulkan_core.h:11494
ExtSampleLocationsExtensionName = "VK_EXT_sample_locations"
- // ExtBlendOperationAdvanced as defined in vulkan/vulkan_core.h:7695
+ // ExtBlendOperationAdvanced as defined in vulkan/vulkan_core.h:11566
ExtBlendOperationAdvanced = 1
- // ExtBlendOperationAdvancedSpecVersion as defined in vulkan/vulkan_core.h:7696
+ // ExtBlendOperationAdvancedSpecVersion as defined in vulkan/vulkan_core.h:11567
ExtBlendOperationAdvancedSpecVersion = 2
- // ExtBlendOperationAdvancedExtensionName as defined in vulkan/vulkan_core.h:7697
+ // ExtBlendOperationAdvancedExtensionName as defined in vulkan/vulkan_core.h:11568
ExtBlendOperationAdvancedExtensionName = "VK_EXT_blend_operation_advanced"
- // NvFragmentCoverageToColor as defined in vulkan/vulkan_core.h:7737
+ // NvFragmentCoverageToColor as defined in vulkan/vulkan_core.h:11603
NvFragmentCoverageToColor = 1
- // NvFragmentCoverageToColorSpecVersion as defined in vulkan/vulkan_core.h:7738
+ // NvFragmentCoverageToColorSpecVersion as defined in vulkan/vulkan_core.h:11604
NvFragmentCoverageToColorSpecVersion = 1
- // NvFragmentCoverageToColorExtensionName as defined in vulkan/vulkan_core.h:7739
+ // NvFragmentCoverageToColorExtensionName as defined in vulkan/vulkan_core.h:11605
NvFragmentCoverageToColorExtensionName = "VK_NV_fragment_coverage_to_color"
- // NvFramebufferMixedSamples as defined in vulkan/vulkan_core.h:7753
+ // NvFramebufferMixedSamples as defined in vulkan/vulkan_core.h:11617
NvFramebufferMixedSamples = 1
- // NvFramebufferMixedSamplesSpecVersion as defined in vulkan/vulkan_core.h:7754
+ // NvFramebufferMixedSamplesSpecVersion as defined in vulkan/vulkan_core.h:11618
NvFramebufferMixedSamplesSpecVersion = 1
- // NvFramebufferMixedSamplesExtensionName as defined in vulkan/vulkan_core.h:7755
+ // NvFramebufferMixedSamplesExtensionName as defined in vulkan/vulkan_core.h:11619
NvFramebufferMixedSamplesExtensionName = "VK_NV_framebuffer_mixed_samples"
- // NvFillRectangle as defined in vulkan/vulkan_core.h:7783
+ // NvFillRectangle as defined in vulkan/vulkan_core.h:11641
NvFillRectangle = 1
- // NvFillRectangleSpecVersion as defined in vulkan/vulkan_core.h:7784
+ // NvFillRectangleSpecVersion as defined in vulkan/vulkan_core.h:11642
NvFillRectangleSpecVersion = 1
- // NvFillRectangleExtensionName as defined in vulkan/vulkan_core.h:7785
+ // NvFillRectangleExtensionName as defined in vulkan/vulkan_core.h:11643
NvFillRectangleExtensionName = "VK_NV_fill_rectangle"
- // ExtPostDepthCoverage as defined in vulkan/vulkan_core.h:7788
+ // NvShaderSmBuiltins as defined in vulkan/vulkan_core.h:11646
+ NvShaderSmBuiltins = 1
+ // NvShaderSmBuiltinsSpecVersion as defined in vulkan/vulkan_core.h:11647
+ NvShaderSmBuiltinsSpecVersion = 1
+ // NvShaderSmBuiltinsExtensionName as defined in vulkan/vulkan_core.h:11648
+ NvShaderSmBuiltinsExtensionName = "VK_NV_shader_sm_builtins"
+ // ExtPostDepthCoverage as defined in vulkan/vulkan_core.h:11664
ExtPostDepthCoverage = 1
- // ExtPostDepthCoverageSpecVersion as defined in vulkan/vulkan_core.h:7789
+ // ExtPostDepthCoverageSpecVersion as defined in vulkan/vulkan_core.h:11665
ExtPostDepthCoverageSpecVersion = 1
- // ExtPostDepthCoverageExtensionName as defined in vulkan/vulkan_core.h:7790
+ // ExtPostDepthCoverageExtensionName as defined in vulkan/vulkan_core.h:11666
ExtPostDepthCoverageExtensionName = "VK_EXT_post_depth_coverage"
- // ExtImageDrmFormatModifier as defined in vulkan/vulkan_core.h:7793
+ // ExtImageDrmFormatModifier as defined in vulkan/vulkan_core.h:11669
ExtImageDrmFormatModifier = 1
- // ExtExtension159SpecVersion as defined in vulkan/vulkan_core.h:7794
- ExtExtension159SpecVersion = 0
- // ExtExtension159ExtensionName as defined in vulkan/vulkan_core.h:7795
- ExtExtension159ExtensionName = "VK_EXT_extension_159"
- // ExtImageDrmFormatModifierSpecVersion as defined in vulkan/vulkan_core.h:7796
- ExtImageDrmFormatModifierSpecVersion = 1
- // ExtImageDrmFormatModifierExtensionName as defined in vulkan/vulkan_core.h:7797
+ // ExtImageDrmFormatModifierSpecVersion as defined in vulkan/vulkan_core.h:11670
+ ExtImageDrmFormatModifierSpecVersion = 2
+ // ExtImageDrmFormatModifierExtensionName as defined in vulkan/vulkan_core.h:11671
ExtImageDrmFormatModifierExtensionName = "VK_EXT_image_drm_format_modifier"
- // ExtValidationCache as defined in vulkan/vulkan_core.h:7852
+ // ExtValidationCache as defined in vulkan/vulkan_core.h:11738
ExtValidationCache = 1
- // ExtValidationCacheSpecVersion as defined in vulkan/vulkan_core.h:7855
+ // ExtValidationCacheSpecVersion as defined in vulkan/vulkan_core.h:11740
ExtValidationCacheSpecVersion = 1
- // ExtValidationCacheExtensionName as defined in vulkan/vulkan_core.h:7856
+ // ExtValidationCacheExtensionName as defined in vulkan/vulkan_core.h:11741
ExtValidationCacheExtensionName = "VK_EXT_validation_cache"
- // ExtDescriptorIndexing as defined in vulkan/vulkan_core.h:7914
+ // ExtDescriptorIndexing as defined in vulkan/vulkan_core.h:11793
ExtDescriptorIndexing = 1
- // ExtDescriptorIndexingSpecVersion as defined in vulkan/vulkan_core.h:7915
+ // ExtDescriptorIndexingSpecVersion as defined in vulkan/vulkan_core.h:11794
ExtDescriptorIndexingSpecVersion = 2
- // ExtDescriptorIndexingExtensionName as defined in vulkan/vulkan_core.h:7916
+ // ExtDescriptorIndexingExtensionName as defined in vulkan/vulkan_core.h:11795
ExtDescriptorIndexingExtensionName = "VK_EXT_descriptor_indexing"
- // ExtShaderViewportIndexLayer as defined in vulkan/vulkan_core.h:8003
+ // ExtShaderViewportIndexLayer as defined in vulkan/vulkan_core.h:11812
ExtShaderViewportIndexLayer = 1
- // ExtShaderViewportIndexLayerSpecVersion as defined in vulkan/vulkan_core.h:8004
+ // ExtShaderViewportIndexLayerSpecVersion as defined in vulkan/vulkan_core.h:11813
ExtShaderViewportIndexLayerSpecVersion = 1
- // ExtShaderViewportIndexLayerExtensionName as defined in vulkan/vulkan_core.h:8005
+ // ExtShaderViewportIndexLayerExtensionName as defined in vulkan/vulkan_core.h:11814
ExtShaderViewportIndexLayerExtensionName = "VK_EXT_shader_viewport_index_layer"
- // NvShadingRateImage as defined in vulkan/vulkan_core.h:8008
+ // NvShadingRateImage as defined in vulkan/vulkan_core.h:11817
NvShadingRateImage = 1
- // NvShadingRateImageSpecVersion as defined in vulkan/vulkan_core.h:8009
+ // NvShadingRateImageSpecVersion as defined in vulkan/vulkan_core.h:11818
NvShadingRateImageSpecVersion = 3
- // NvShadingRateImageExtensionName as defined in vulkan/vulkan_core.h:8010
+ // NvShadingRateImageExtensionName as defined in vulkan/vulkan_core.h:11819
NvShadingRateImageExtensionName = "VK_NV_shading_rate_image"
- // NvxRaytracing as defined in vulkan/vulkan_core.h:8116
- NvxRaytracing = 1
- // NvxRaytracingSpecVersion as defined in vulkan/vulkan_core.h:8119
- NvxRaytracingSpecVersion = 1
- // NvxRaytracingExtensionName as defined in vulkan/vulkan_core.h:8120
- NvxRaytracingExtensionName = "VK_NVX_raytracing"
- // NvRepresentativeFragmentTest as defined in vulkan/vulkan_core.h:8381
+ // NvRepresentativeFragmentTest as defined in vulkan/vulkan_core.h:12294
NvRepresentativeFragmentTest = 1
- // NvRepresentativeFragmentTestSpecVersion as defined in vulkan/vulkan_core.h:8382
- NvRepresentativeFragmentTestSpecVersion = 1
- // NvRepresentativeFragmentTestExtensionName as defined in vulkan/vulkan_core.h:8383
+ // NvRepresentativeFragmentTestSpecVersion as defined in vulkan/vulkan_core.h:12295
+ NvRepresentativeFragmentTestSpecVersion = 2
+ // NvRepresentativeFragmentTestExtensionName as defined in vulkan/vulkan_core.h:12296
NvRepresentativeFragmentTestExtensionName = "VK_NV_representative_fragment_test"
- // ExtGlobalPriority as defined in vulkan/vulkan_core.h:8399
+ // ExtFilterCubic as defined in vulkan/vulkan_core.h:12311
+ ExtFilterCubic = 1
+ // ExtFilterCubicSpecVersion as defined in vulkan/vulkan_core.h:12312
+ ExtFilterCubicSpecVersion = 3
+ // ExtFilterCubicExtensionName as defined in vulkan/vulkan_core.h:12313
+ ExtFilterCubicExtensionName = "VK_EXT_filter_cubic"
+ // QcomRenderPassShaderResolve as defined in vulkan/vulkan_core.h:12329
+ QcomRenderPassShaderResolve = 1
+ // QcomRenderPassShaderResolveSpecVersion as defined in vulkan/vulkan_core.h:12330
+ QcomRenderPassShaderResolveSpecVersion = 4
+ // QcomRenderPassShaderResolveExtensionName as defined in vulkan/vulkan_core.h:12331
+ QcomRenderPassShaderResolveExtensionName = "VK_QCOM_render_pass_shader_resolve"
+ // ExtGlobalPriority as defined in vulkan/vulkan_core.h:12334
ExtGlobalPriority = 1
- // ExtGlobalPrioritySpecVersion as defined in vulkan/vulkan_core.h:8400
+ // ExtGlobalPrioritySpecVersion as defined in vulkan/vulkan_core.h:12335
ExtGlobalPrioritySpecVersion = 2
- // ExtGlobalPriorityExtensionName as defined in vulkan/vulkan_core.h:8401
+ // ExtGlobalPriorityExtensionName as defined in vulkan/vulkan_core.h:12336
ExtGlobalPriorityExtensionName = "VK_EXT_global_priority"
- // ExtExternalMemoryHost as defined in vulkan/vulkan_core.h:8423
+ // ExtExternalMemoryHost as defined in vulkan/vulkan_core.h:12343
ExtExternalMemoryHost = 1
- // ExtExternalMemoryHostSpecVersion as defined in vulkan/vulkan_core.h:8424
+ // ExtExternalMemoryHostSpecVersion as defined in vulkan/vulkan_core.h:12344
ExtExternalMemoryHostSpecVersion = 1
- // ExtExternalMemoryHostExtensionName as defined in vulkan/vulkan_core.h:8425
+ // ExtExternalMemoryHostExtensionName as defined in vulkan/vulkan_core.h:12345
ExtExternalMemoryHostExtensionName = "VK_EXT_external_memory_host"
- // AmdBufferMarker as defined in vulkan/vulkan_core.h:8457
+ // AmdBufferMarker as defined in vulkan/vulkan_core.h:12376
AmdBufferMarker = 1
- // AmdBufferMarkerSpecVersion as defined in vulkan/vulkan_core.h:8458
+ // AmdBufferMarkerSpecVersion as defined in vulkan/vulkan_core.h:12377
AmdBufferMarkerSpecVersion = 1
- // AmdBufferMarkerExtensionName as defined in vulkan/vulkan_core.h:8459
+ // AmdBufferMarkerExtensionName as defined in vulkan/vulkan_core.h:12378
AmdBufferMarkerExtensionName = "VK_AMD_buffer_marker"
- // ExtCalibratedTimestamps as defined in vulkan/vulkan_core.h:8472
+ // AmdPipelineCompilerControl as defined in vulkan/vulkan_core.h:12391
+ AmdPipelineCompilerControl = 1
+ // AmdPipelineCompilerControlSpecVersion as defined in vulkan/vulkan_core.h:12392
+ AmdPipelineCompilerControlSpecVersion = 1
+ // AmdPipelineCompilerControlExtensionName as defined in vulkan/vulkan_core.h:12393
+ AmdPipelineCompilerControlExtensionName = "VK_AMD_pipeline_compiler_control"
+ // ExtCalibratedTimestamps as defined in vulkan/vulkan_core.h:12407
ExtCalibratedTimestamps = 1
- // ExtCalibratedTimestampsSpecVersion as defined in vulkan/vulkan_core.h:8473
- ExtCalibratedTimestampsSpecVersion = 1
- // ExtCalibratedTimestampsExtensionName as defined in vulkan/vulkan_core.h:8474
+ // ExtCalibratedTimestampsSpecVersion as defined in vulkan/vulkan_core.h:12408
+ ExtCalibratedTimestampsSpecVersion = 2
+ // ExtCalibratedTimestampsExtensionName as defined in vulkan/vulkan_core.h:12409
ExtCalibratedTimestampsExtensionName = "VK_EXT_calibrated_timestamps"
- // AmdShaderCoreProperties as defined in vulkan/vulkan_core.h:8512
+ // AmdShaderCoreProperties as defined in vulkan/vulkan_core.h:12442
AmdShaderCoreProperties = 1
- // AmdShaderCorePropertiesSpecVersion as defined in vulkan/vulkan_core.h:8513
- AmdShaderCorePropertiesSpecVersion = 1
- // AmdShaderCorePropertiesExtensionName as defined in vulkan/vulkan_core.h:8514
+ // AmdShaderCorePropertiesSpecVersion as defined in vulkan/vulkan_core.h:12443
+ AmdShaderCorePropertiesSpecVersion = 2
+ // AmdShaderCorePropertiesExtensionName as defined in vulkan/vulkan_core.h:12444
AmdShaderCorePropertiesExtensionName = "VK_AMD_shader_core_properties"
- // ExtVertexAttributeDivisor as defined in vulkan/vulkan_core.h:8537
+ // AmdMemoryOverallocationBehavior as defined in vulkan/vulkan_core.h:12466
+ AmdMemoryOverallocationBehavior = 1
+ // AmdMemoryOverallocationBehaviorSpecVersion as defined in vulkan/vulkan_core.h:12467
+ AmdMemoryOverallocationBehaviorSpecVersion = 1
+ // AmdMemoryOverallocationBehaviorExtensionName as defined in vulkan/vulkan_core.h:12468
+ AmdMemoryOverallocationBehaviorExtensionName = "VK_AMD_memory_overallocation_behavior"
+ // ExtVertexAttributeDivisor as defined in vulkan/vulkan_core.h:12484
ExtVertexAttributeDivisor = 1
- // ExtVertexAttributeDivisorSpecVersion as defined in vulkan/vulkan_core.h:8538
+ // ExtVertexAttributeDivisorSpecVersion as defined in vulkan/vulkan_core.h:12485
ExtVertexAttributeDivisorSpecVersion = 3
- // ExtVertexAttributeDivisorExtensionName as defined in vulkan/vulkan_core.h:8539
+ // ExtVertexAttributeDivisorExtensionName as defined in vulkan/vulkan_core.h:12486
ExtVertexAttributeDivisorExtensionName = "VK_EXT_vertex_attribute_divisor"
- // NvShaderSubgroupPartitioned as defined in vulkan/vulkan_core.h:8568
+ // ExtPipelineCreationFeedback as defined in vulkan/vulkan_core.h:12514
+ ExtPipelineCreationFeedback = 1
+ // ExtPipelineCreationFeedbackSpecVersion as defined in vulkan/vulkan_core.h:12515
+ ExtPipelineCreationFeedbackSpecVersion = 1
+ // ExtPipelineCreationFeedbackExtensionName as defined in vulkan/vulkan_core.h:12516
+ ExtPipelineCreationFeedbackExtensionName = "VK_EXT_pipeline_creation_feedback"
+ // NvShaderSubgroupPartitioned as defined in vulkan/vulkan_core.h:12527
NvShaderSubgroupPartitioned = 1
- // NvShaderSubgroupPartitionedSpecVersion as defined in vulkan/vulkan_core.h:8569
+ // NvShaderSubgroupPartitionedSpecVersion as defined in vulkan/vulkan_core.h:12528
NvShaderSubgroupPartitionedSpecVersion = 1
- // NvShaderSubgroupPartitionedExtensionName as defined in vulkan/vulkan_core.h:8570
+ // NvShaderSubgroupPartitionedExtensionName as defined in vulkan/vulkan_core.h:12529
NvShaderSubgroupPartitionedExtensionName = "VK_NV_shader_subgroup_partitioned"
- // NvComputeShaderDerivatives as defined in vulkan/vulkan_core.h:8573
+ // NvComputeShaderDerivatives as defined in vulkan/vulkan_core.h:12532
NvComputeShaderDerivatives = 1
- // NvComputeShaderDerivativesSpecVersion as defined in vulkan/vulkan_core.h:8574
+ // NvComputeShaderDerivativesSpecVersion as defined in vulkan/vulkan_core.h:12533
NvComputeShaderDerivativesSpecVersion = 1
- // NvComputeShaderDerivativesExtensionName as defined in vulkan/vulkan_core.h:8575
+ // NvComputeShaderDerivativesExtensionName as defined in vulkan/vulkan_core.h:12534
NvComputeShaderDerivativesExtensionName = "VK_NV_compute_shader_derivatives"
- // NvMeshShader as defined in vulkan/vulkan_core.h:8586
+ // NvMeshShader as defined in vulkan/vulkan_core.h:12544
NvMeshShader = 1
- // NvMeshShaderSpecVersion as defined in vulkan/vulkan_core.h:8587
+ // NvMeshShaderSpecVersion as defined in vulkan/vulkan_core.h:12545
NvMeshShaderSpecVersion = 1
- // NvMeshShaderExtensionName as defined in vulkan/vulkan_core.h:8588
+ // NvMeshShaderExtensionName as defined in vulkan/vulkan_core.h:12546
NvMeshShaderExtensionName = "VK_NV_mesh_shader"
- // NvFragmentShaderBarycentric as defined in vulkan/vulkan_core.h:8648
+ // NvFragmentShaderBarycentric as defined in vulkan/vulkan_core.h:12605
NvFragmentShaderBarycentric = 1
- // NvFragmentShaderBarycentricSpecVersion as defined in vulkan/vulkan_core.h:8649
+ // NvFragmentShaderBarycentricSpecVersion as defined in vulkan/vulkan_core.h:12606
NvFragmentShaderBarycentricSpecVersion = 1
- // NvFragmentShaderBarycentricExtensionName as defined in vulkan/vulkan_core.h:8650
+ // NvFragmentShaderBarycentricExtensionName as defined in vulkan/vulkan_core.h:12607
NvFragmentShaderBarycentricExtensionName = "VK_NV_fragment_shader_barycentric"
- // NvShaderImageFootprint as defined in vulkan/vulkan_core.h:8660
+ // NvShaderImageFootprint as defined in vulkan/vulkan_core.h:12612
NvShaderImageFootprint = 1
- // NvShaderImageFootprintSpecVersion as defined in vulkan/vulkan_core.h:8661
- NvShaderImageFootprintSpecVersion = 1
- // NvShaderImageFootprintExtensionName as defined in vulkan/vulkan_core.h:8662
+ // NvShaderImageFootprintSpecVersion as defined in vulkan/vulkan_core.h:12613
+ NvShaderImageFootprintSpecVersion = 2
+ // NvShaderImageFootprintExtensionName as defined in vulkan/vulkan_core.h:12614
NvShaderImageFootprintExtensionName = "VK_NV_shader_image_footprint"
- // NvScissorExclusive as defined in vulkan/vulkan_core.h:8672
+ // NvScissorExclusive as defined in vulkan/vulkan_core.h:12623
NvScissorExclusive = 1
- // NvScissorExclusiveSpecVersion as defined in vulkan/vulkan_core.h:8673
+ // NvScissorExclusiveSpecVersion as defined in vulkan/vulkan_core.h:12624
NvScissorExclusiveSpecVersion = 1
- // NvScissorExclusiveExtensionName as defined in vulkan/vulkan_core.h:8674
+ // NvScissorExclusiveExtensionName as defined in vulkan/vulkan_core.h:12625
NvScissorExclusiveExtensionName = "VK_NV_scissor_exclusive"
- // NvDeviceDiagnosticCheckpoints as defined in vulkan/vulkan_core.h:8700
+ // NvDeviceDiagnosticCheckpoints as defined in vulkan/vulkan_core.h:12650
NvDeviceDiagnosticCheckpoints = 1
- // NvDeviceDiagnosticCheckpointsSpecVersion as defined in vulkan/vulkan_core.h:8701
+ // NvDeviceDiagnosticCheckpointsSpecVersion as defined in vulkan/vulkan_core.h:12651
NvDeviceDiagnosticCheckpointsSpecVersion = 2
- // NvDeviceDiagnosticCheckpointsExtensionName as defined in vulkan/vulkan_core.h:8702
+ // NvDeviceDiagnosticCheckpointsExtensionName as defined in vulkan/vulkan_core.h:12652
NvDeviceDiagnosticCheckpointsExtensionName = "VK_NV_device_diagnostic_checkpoints"
- // ExtPciBusInfo as defined in vulkan/vulkan_core.h:8732
+ // IntelShaderIntegerFunctions2 as defined in vulkan/vulkan_core.h:12681
+ IntelShaderIntegerFunctions2 = 1
+ // IntelShaderIntegerFunctions2SpecVersion as defined in vulkan/vulkan_core.h:12682
+ IntelShaderIntegerFunctions2SpecVersion = 1
+ // IntelShaderIntegerFunctions2ExtensionName as defined in vulkan/vulkan_core.h:12683
+ IntelShaderIntegerFunctions2ExtensionName = "VK_INTEL_shader_integer_functions2"
+ // IntelPerformanceQuery as defined in vulkan/vulkan_core.h:12692
+ IntelPerformanceQuery = 1
+ // IntelPerformanceQuerySpecVersion as defined in vulkan/vulkan_core.h:12694
+ IntelPerformanceQuerySpecVersion = 2
+ // IntelPerformanceQueryExtensionName as defined in vulkan/vulkan_core.h:12695
+ IntelPerformanceQueryExtensionName = "VK_INTEL_performance_query"
+ // ExtPciBusInfo as defined in vulkan/vulkan_core.h:12830
ExtPciBusInfo = 1
- // ExtPciBusInfoSpecVersion as defined in vulkan/vulkan_core.h:8733
- ExtPciBusInfoSpecVersion = 1
- // ExtPciBusInfoExtensionName as defined in vulkan/vulkan_core.h:8734
+ // ExtPciBusInfoSpecVersion as defined in vulkan/vulkan_core.h:12831
+ ExtPciBusInfoSpecVersion = 2
+ // ExtPciBusInfoExtensionName as defined in vulkan/vulkan_core.h:12832
ExtPciBusInfoExtensionName = "VK_EXT_pci_bus_info"
- // GoogleHlslFunctionality1 as defined in vulkan/vulkan_core.h:8747
+ // AmdDisplayNativeHdr as defined in vulkan/vulkan_core.h:12844
+ AmdDisplayNativeHdr = 1
+ // AmdDisplayNativeHdrSpecVersion as defined in vulkan/vulkan_core.h:12845
+ AmdDisplayNativeHdrSpecVersion = 1
+ // AmdDisplayNativeHdrExtensionName as defined in vulkan/vulkan_core.h:12846
+ AmdDisplayNativeHdrExtensionName = "VK_AMD_display_native_hdr"
+ // ExtFragmentDensityMap as defined in vulkan/vulkan_core.h:12869
+ ExtFragmentDensityMap = 1
+ // ExtFragmentDensityMapSpecVersion as defined in vulkan/vulkan_core.h:12870
+ ExtFragmentDensityMapSpecVersion = 2
+ // ExtFragmentDensityMapExtensionName as defined in vulkan/vulkan_core.h:12871
+ ExtFragmentDensityMapExtensionName = "VK_EXT_fragment_density_map"
+ // ExtScalarBlockLayout as defined in vulkan/vulkan_core.h:12896
+ ExtScalarBlockLayout = 1
+ // ExtScalarBlockLayoutSpecVersion as defined in vulkan/vulkan_core.h:12897
+ ExtScalarBlockLayoutSpecVersion = 1
+ // ExtScalarBlockLayoutExtensionName as defined in vulkan/vulkan_core.h:12898
+ ExtScalarBlockLayoutExtensionName = "VK_EXT_scalar_block_layout"
+ // GoogleHlslFunctionality1 as defined in vulkan/vulkan_core.h:12903
GoogleHlslFunctionality1 = 1
- // GoogleHlslFunctionality1SpecVersion as defined in vulkan/vulkan_core.h:8748
- GoogleHlslFunctionality1SpecVersion = 0
- // GoogleHlslFunctionality1ExtensionName as defined in vulkan/vulkan_core.h:8749
+ // GoogleHlslFunctionality1SpecVersion as defined in vulkan/vulkan_core.h:12904
+ GoogleHlslFunctionality1SpecVersion = 1
+ // GoogleHlslFunctionality1ExtensionName as defined in vulkan/vulkan_core.h:12905
GoogleHlslFunctionality1ExtensionName = "VK_GOOGLE_hlsl_functionality1"
- // GoogleDecorateString as defined in vulkan/vulkan_core.h:8752
+ // GoogleDecorateString as defined in vulkan/vulkan_core.h:12910
GoogleDecorateString = 1
- // GoogleDecorateStringSpecVersion as defined in vulkan/vulkan_core.h:8753
- GoogleDecorateStringSpecVersion = 0
- // GoogleDecorateStringExtensionName as defined in vulkan/vulkan_core.h:8754
+ // GoogleDecorateStringSpecVersion as defined in vulkan/vulkan_core.h:12911
+ GoogleDecorateStringSpecVersion = 1
+ // GoogleDecorateStringExtensionName as defined in vulkan/vulkan_core.h:12912
GoogleDecorateStringExtensionName = "VK_GOOGLE_decorate_string"
-)
-
-// PipelineCacheHeaderVersion as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCacheHeaderVersion.html
-type PipelineCacheHeaderVersion int32
-
-// PipelineCacheHeaderVersion enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCacheHeaderVersion.html
-const (
- PipelineCacheHeaderVersionOne PipelineCacheHeaderVersion = 1
- PipelineCacheHeaderVersionBeginRange PipelineCacheHeaderVersion = 1
- PipelineCacheHeaderVersionEndRange PipelineCacheHeaderVersion = 1
- PipelineCacheHeaderVersionRangeSize PipelineCacheHeaderVersion = 1
- PipelineCacheHeaderVersionMaxEnum PipelineCacheHeaderVersion = 2147483647
+ // ExtSubgroupSizeControl as defined in vulkan/vulkan_core.h:12915
+ ExtSubgroupSizeControl = 1
+ // ExtSubgroupSizeControlSpecVersion as defined in vulkan/vulkan_core.h:12916
+ ExtSubgroupSizeControlSpecVersion = 2
+ // ExtSubgroupSizeControlExtensionName as defined in vulkan/vulkan_core.h:12917
+ ExtSubgroupSizeControlExtensionName = "VK_EXT_subgroup_size_control"
+ // AmdShaderCoreProperties2 as defined in vulkan/vulkan_core.h:12926
+ AmdShaderCoreProperties2 = 1
+ // AmdShaderCoreProperties2SpecVersion as defined in vulkan/vulkan_core.h:12927
+ AmdShaderCoreProperties2SpecVersion = 1
+ // AmdShaderCoreProperties2ExtensionName as defined in vulkan/vulkan_core.h:12928
+ AmdShaderCoreProperties2ExtensionName = "VK_AMD_shader_core_properties2"
+ // AmdDeviceCoherentMemory as defined in vulkan/vulkan_core.h:12943
+ AmdDeviceCoherentMemory = 1
+ // AmdDeviceCoherentMemorySpecVersion as defined in vulkan/vulkan_core.h:12944
+ AmdDeviceCoherentMemorySpecVersion = 1
+ // AmdDeviceCoherentMemoryExtensionName as defined in vulkan/vulkan_core.h:12945
+ AmdDeviceCoherentMemoryExtensionName = "VK_AMD_device_coherent_memory"
+ // ExtShaderImageAtomicInt64 as defined in vulkan/vulkan_core.h:12954
+ ExtShaderImageAtomicInt64 = 1
+ // ExtShaderImageAtomicInt64SpecVersion as defined in vulkan/vulkan_core.h:12955
+ ExtShaderImageAtomicInt64SpecVersion = 1
+ // ExtShaderImageAtomicInt64ExtensionName as defined in vulkan/vulkan_core.h:12956
+ ExtShaderImageAtomicInt64ExtensionName = "VK_EXT_shader_image_atomic_int64"
+ // ExtMemoryBudget as defined in vulkan/vulkan_core.h:12966
+ ExtMemoryBudget = 1
+ // ExtMemoryBudgetSpecVersion as defined in vulkan/vulkan_core.h:12967
+ ExtMemoryBudgetSpecVersion = 1
+ // ExtMemoryBudgetExtensionName as defined in vulkan/vulkan_core.h:12968
+ ExtMemoryBudgetExtensionName = "VK_EXT_memory_budget"
+ // ExtMemoryPriority as defined in vulkan/vulkan_core.h:12978
+ ExtMemoryPriority = 1
+ // ExtMemoryPrioritySpecVersion as defined in vulkan/vulkan_core.h:12979
+ ExtMemoryPrioritySpecVersion = 1
+ // ExtMemoryPriorityExtensionName as defined in vulkan/vulkan_core.h:12980
+ ExtMemoryPriorityExtensionName = "VK_EXT_memory_priority"
+ // NvDedicatedAllocationImageAliasing as defined in vulkan/vulkan_core.h:12995
+ NvDedicatedAllocationImageAliasing = 1
+ // NvDedicatedAllocationImageAliasingSpecVersion as defined in vulkan/vulkan_core.h:12996
+ NvDedicatedAllocationImageAliasingSpecVersion = 1
+ // NvDedicatedAllocationImageAliasingExtensionName as defined in vulkan/vulkan_core.h:12997
+ NvDedicatedAllocationImageAliasingExtensionName = "VK_NV_dedicated_allocation_image_aliasing"
+ // ExtBufferDeviceAddress as defined in vulkan/vulkan_core.h:13006
+ ExtBufferDeviceAddress = 1
+ // ExtBufferDeviceAddressSpecVersion as defined in vulkan/vulkan_core.h:13007
+ ExtBufferDeviceAddressSpecVersion = 2
+ // ExtBufferDeviceAddressExtensionName as defined in vulkan/vulkan_core.h:13008
+ ExtBufferDeviceAddressExtensionName = "VK_EXT_buffer_device_address"
+ // ExtToolingInfo as defined in vulkan/vulkan_core.h:13036
+ ExtToolingInfo = 1
+ // ExtToolingInfoSpecVersion as defined in vulkan/vulkan_core.h:13037
+ ExtToolingInfoSpecVersion = 1
+ // ExtToolingInfoExtensionName as defined in vulkan/vulkan_core.h:13038
+ ExtToolingInfoExtensionName = "VK_EXT_tooling_info"
+ // ExtSeparateStencilUsage as defined in vulkan/vulkan_core.h:13055
+ ExtSeparateStencilUsage = 1
+ // ExtSeparateStencilUsageSpecVersion as defined in vulkan/vulkan_core.h:13056
+ ExtSeparateStencilUsageSpecVersion = 1
+ // ExtSeparateStencilUsageExtensionName as defined in vulkan/vulkan_core.h:13057
+ ExtSeparateStencilUsageExtensionName = "VK_EXT_separate_stencil_usage"
+ // ExtValidationFeatures as defined in vulkan/vulkan_core.h:13062
+ ExtValidationFeatures = 1
+ // ExtValidationFeaturesSpecVersion as defined in vulkan/vulkan_core.h:13063
+ ExtValidationFeaturesSpecVersion = 5
+ // ExtValidationFeaturesExtensionName as defined in vulkan/vulkan_core.h:13064
+ ExtValidationFeaturesExtensionName = "VK_EXT_validation_features"
+ // NvCooperativeMatrix as defined in vulkan/vulkan_core.h:13097
+ NvCooperativeMatrix = 1
+ // NvCooperativeMatrixSpecVersion as defined in vulkan/vulkan_core.h:13098
+ NvCooperativeMatrixSpecVersion = 1
+ // NvCooperativeMatrixExtensionName as defined in vulkan/vulkan_core.h:13099
+ NvCooperativeMatrixExtensionName = "VK_NV_cooperative_matrix"
+ // NvCoverageReductionMode as defined in vulkan/vulkan_core.h:13159
+ NvCoverageReductionMode = 1
+ // NvCoverageReductionModeSpecVersion as defined in vulkan/vulkan_core.h:13160
+ NvCoverageReductionModeSpecVersion = 1
+ // NvCoverageReductionModeExtensionName as defined in vulkan/vulkan_core.h:13161
+ NvCoverageReductionModeExtensionName = "VK_NV_coverage_reduction_mode"
+ // ExtFragmentShaderInterlock as defined in vulkan/vulkan_core.h:13201
+ ExtFragmentShaderInterlock = 1
+ // ExtFragmentShaderInterlockSpecVersion as defined in vulkan/vulkan_core.h:13202
+ ExtFragmentShaderInterlockSpecVersion = 1
+ // ExtFragmentShaderInterlockExtensionName as defined in vulkan/vulkan_core.h:13203
+ ExtFragmentShaderInterlockExtensionName = "VK_EXT_fragment_shader_interlock"
+ // ExtYcbcrImageArrays as defined in vulkan/vulkan_core.h:13214
+ ExtYcbcrImageArrays = 1
+ // ExtYcbcrImageArraysSpecVersion as defined in vulkan/vulkan_core.h:13215
+ ExtYcbcrImageArraysSpecVersion = 1
+ // ExtYcbcrImageArraysExtensionName as defined in vulkan/vulkan_core.h:13216
+ ExtYcbcrImageArraysExtensionName = "VK_EXT_ycbcr_image_arrays"
+ // ExtProvokingVertex as defined in vulkan/vulkan_core.h:13225
+ ExtProvokingVertex = 1
+ // ExtProvokingVertexSpecVersion as defined in vulkan/vulkan_core.h:13226
+ ExtProvokingVertexSpecVersion = 1
+ // ExtProvokingVertexExtensionName as defined in vulkan/vulkan_core.h:13227
+ ExtProvokingVertexExtensionName = "VK_EXT_provoking_vertex"
+ // ExtHeadlessSurface as defined in vulkan/vulkan_core.h:13256
+ ExtHeadlessSurface = 1
+ // ExtHeadlessSurfaceSpecVersion as defined in vulkan/vulkan_core.h:13257
+ ExtHeadlessSurfaceSpecVersion = 1
+ // ExtHeadlessSurfaceExtensionName as defined in vulkan/vulkan_core.h:13258
+ ExtHeadlessSurfaceExtensionName = "VK_EXT_headless_surface"
+ // ExtLineRasterization as defined in vulkan/vulkan_core.h:13277
+ ExtLineRasterization = 1
+ // ExtLineRasterizationSpecVersion as defined in vulkan/vulkan_core.h:13278
+ ExtLineRasterizationSpecVersion = 1
+ // ExtLineRasterizationExtensionName as defined in vulkan/vulkan_core.h:13279
+ ExtLineRasterizationExtensionName = "VK_EXT_line_rasterization"
+ // ExtShaderAtomicFloat as defined in vulkan/vulkan_core.h:13324
+ ExtShaderAtomicFloat = 1
+ // ExtShaderAtomicFloatSpecVersion as defined in vulkan/vulkan_core.h:13325
+ ExtShaderAtomicFloatSpecVersion = 1
+ // ExtShaderAtomicFloatExtensionName as defined in vulkan/vulkan_core.h:13326
+ ExtShaderAtomicFloatExtensionName = "VK_EXT_shader_atomic_float"
+ // ExtHostQueryReset as defined in vulkan/vulkan_core.h:13346
+ ExtHostQueryReset = 1
+ // ExtHostQueryResetSpecVersion as defined in vulkan/vulkan_core.h:13347
+ ExtHostQueryResetSpecVersion = 1
+ // ExtHostQueryResetExtensionName as defined in vulkan/vulkan_core.h:13348
+ ExtHostQueryResetExtensionName = "VK_EXT_host_query_reset"
+ // ExtIndexTypeUint8 as defined in vulkan/vulkan_core.h:13362
+ ExtIndexTypeUint8 = 1
+ // ExtIndexTypeUint8SpecVersion as defined in vulkan/vulkan_core.h:13363
+ ExtIndexTypeUint8SpecVersion = 1
+ // ExtIndexTypeUint8ExtensionName as defined in vulkan/vulkan_core.h:13364
+ ExtIndexTypeUint8ExtensionName = "VK_EXT_index_type_uint8"
+ // ExtExtendedDynamicState as defined in vulkan/vulkan_core.h:13373
+ ExtExtendedDynamicState = 1
+ // ExtExtendedDynamicStateSpecVersion as defined in vulkan/vulkan_core.h:13374
+ ExtExtendedDynamicStateSpecVersion = 1
+ // ExtExtendedDynamicStateExtensionName as defined in vulkan/vulkan_core.h:13375
+ ExtExtendedDynamicStateExtensionName = "VK_EXT_extended_dynamic_state"
+ // ExtShaderAtomicFloat2 as defined in vulkan/vulkan_core.h:13457
+ ExtShaderAtomicFloat2 = 1
+ // ExtShaderAtomicFloat2SpecVersion as defined in vulkan/vulkan_core.h:13458
+ ExtShaderAtomicFloat2SpecVersion = 1
+ // ExtShaderAtomicFloat2ExtensionName as defined in vulkan/vulkan_core.h:13459
+ ExtShaderAtomicFloat2ExtensionName = "VK_EXT_shader_atomic_float2"
+ // ExtSurfaceMaintenance1 as defined in vulkan/vulkan_core.h:13479
+ ExtSurfaceMaintenance1 = 1
+ // ExtSurfaceMaintenance1SpecVersion as defined in vulkan/vulkan_core.h:13480
+ ExtSurfaceMaintenance1SpecVersion = 1
+ // ExtSurfaceMaintenance1ExtensionName as defined in vulkan/vulkan_core.h:13481
+ ExtSurfaceMaintenance1ExtensionName = "VK_EXT_surface_maintenance1"
+ // ExtSwapchainMaintenance1 as defined in vulkan/vulkan_core.h:13523
+ ExtSwapchainMaintenance1 = 1
+ // ExtSwapchainMaintenance1SpecVersion as defined in vulkan/vulkan_core.h:13524
+ ExtSwapchainMaintenance1SpecVersion = 1
+ // ExtSwapchainMaintenance1ExtensionName as defined in vulkan/vulkan_core.h:13525
+ ExtSwapchainMaintenance1ExtensionName = "VK_EXT_swapchain_maintenance1"
+ // ExtShaderDemoteToHelperInvocation as defined in vulkan/vulkan_core.h:13578
+ ExtShaderDemoteToHelperInvocation = 1
+ // ExtShaderDemoteToHelperInvocationSpecVersion as defined in vulkan/vulkan_core.h:13579
+ ExtShaderDemoteToHelperInvocationSpecVersion = 1
+ // ExtShaderDemoteToHelperInvocationExtensionName as defined in vulkan/vulkan_core.h:13580
+ ExtShaderDemoteToHelperInvocationExtensionName = "VK_EXT_shader_demote_to_helper_invocation"
+ // NvDeviceGeneratedCommands as defined in vulkan/vulkan_core.h:13585
+ NvDeviceGeneratedCommands = 1
+ // NvDeviceGeneratedCommandsSpecVersion as defined in vulkan/vulkan_core.h:13587
+ NvDeviceGeneratedCommandsSpecVersion = 3
+ // NvDeviceGeneratedCommandsExtensionName as defined in vulkan/vulkan_core.h:13588
+ NvDeviceGeneratedCommandsExtensionName = "VK_NV_device_generated_commands"
+ // NvInheritedViewportScissor as defined in vulkan/vulkan_core.h:13776
+ NvInheritedViewportScissor = 1
+ // NvInheritedViewportScissorSpecVersion as defined in vulkan/vulkan_core.h:13777
+ NvInheritedViewportScissorSpecVersion = 1
+ // NvInheritedViewportScissorExtensionName as defined in vulkan/vulkan_core.h:13778
+ NvInheritedViewportScissorExtensionName = "VK_NV_inherited_viewport_scissor"
+ // ExtTexelBufferAlignment as defined in vulkan/vulkan_core.h:13795
+ ExtTexelBufferAlignment = 1
+ // ExtTexelBufferAlignmentSpecVersion as defined in vulkan/vulkan_core.h:13796
+ ExtTexelBufferAlignmentSpecVersion = 1
+ // ExtTexelBufferAlignmentExtensionName as defined in vulkan/vulkan_core.h:13797
+ ExtTexelBufferAlignmentExtensionName = "VK_EXT_texel_buffer_alignment"
+ // QcomRenderPassTransform as defined in vulkan/vulkan_core.h:13808
+ QcomRenderPassTransform = 1
+ // QcomRenderPassTransformSpecVersion as defined in vulkan/vulkan_core.h:13809
+ QcomRenderPassTransformSpecVersion = 3
+ // QcomRenderPassTransformExtensionName as defined in vulkan/vulkan_core.h:13810
+ QcomRenderPassTransformExtensionName = "VK_QCOM_render_pass_transform"
+ // ExtDeviceMemoryReport as defined in vulkan/vulkan_core.h:13826
+ ExtDeviceMemoryReport = 1
+ // ExtDeviceMemoryReportSpecVersion as defined in vulkan/vulkan_core.h:13827
+ ExtDeviceMemoryReportSpecVersion = 2
+ // ExtDeviceMemoryReportExtensionName as defined in vulkan/vulkan_core.h:13828
+ ExtDeviceMemoryReportExtensionName = "VK_EXT_device_memory_report"
+ // ExtAcquireDrmDisplay as defined in vulkan/vulkan_core.h:13871
+ ExtAcquireDrmDisplay = 1
+ // ExtAcquireDrmDisplaySpecVersion as defined in vulkan/vulkan_core.h:13872
+ ExtAcquireDrmDisplaySpecVersion = 1
+ // ExtAcquireDrmDisplayExtensionName as defined in vulkan/vulkan_core.h:13873
+ ExtAcquireDrmDisplayExtensionName = "VK_EXT_acquire_drm_display"
+ // ExtRobustness2 as defined in vulkan/vulkan_core.h:13891
+ ExtRobustness2 = 1
+ // ExtRobustness2SpecVersion as defined in vulkan/vulkan_core.h:13892
+ ExtRobustness2SpecVersion = 1
+ // ExtRobustness2ExtensionName as defined in vulkan/vulkan_core.h:13893
+ ExtRobustness2ExtensionName = "VK_EXT_robustness2"
+ // ExtCustomBorderColor as defined in vulkan/vulkan_core.h:13911
+ ExtCustomBorderColor = 1
+ // ExtCustomBorderColorSpecVersion as defined in vulkan/vulkan_core.h:13912
+ ExtCustomBorderColorSpecVersion = 12
+ // ExtCustomBorderColorExtensionName as defined in vulkan/vulkan_core.h:13913
+ ExtCustomBorderColorExtensionName = "VK_EXT_custom_border_color"
+ // GoogleUserType as defined in vulkan/vulkan_core.h:13936
+ GoogleUserType = 1
+ // GoogleUserTypeSpecVersion as defined in vulkan/vulkan_core.h:13937
+ GoogleUserTypeSpecVersion = 1
+ // GoogleUserTypeExtensionName as defined in vulkan/vulkan_core.h:13938
+ GoogleUserTypeExtensionName = "VK_GOOGLE_user_type"
+ // NvPresentBarrier as defined in vulkan/vulkan_core.h:13941
+ NvPresentBarrier = 1
+ // NvPresentBarrierSpecVersion as defined in vulkan/vulkan_core.h:13942
+ NvPresentBarrierSpecVersion = 1
+ // NvPresentBarrierExtensionName as defined in vulkan/vulkan_core.h:13943
+ NvPresentBarrierExtensionName = "VK_NV_present_barrier"
+ // ExtPrivateData as defined in vulkan/vulkan_core.h:13964
+ ExtPrivateData = 1
+ // ExtPrivateDataSpecVersion as defined in vulkan/vulkan_core.h:13967
+ ExtPrivateDataSpecVersion = 1
+ // ExtPrivateDataExtensionName as defined in vulkan/vulkan_core.h:13968
+ ExtPrivateDataExtensionName = "VK_EXT_private_data"
+ // ExtPipelineCreationCacheControl as defined in vulkan/vulkan_core.h:14010
+ ExtPipelineCreationCacheControl = 1
+ // ExtPipelineCreationCacheControlSpecVersion as defined in vulkan/vulkan_core.h:14011
+ ExtPipelineCreationCacheControlSpecVersion = 3
+ // ExtPipelineCreationCacheControlExtensionName as defined in vulkan/vulkan_core.h:14012
+ ExtPipelineCreationCacheControlExtensionName = "VK_EXT_pipeline_creation_cache_control"
+ // NvDeviceDiagnosticsConfig as defined in vulkan/vulkan_core.h:14017
+ NvDeviceDiagnosticsConfig = 1
+ // NvDeviceDiagnosticsConfigSpecVersion as defined in vulkan/vulkan_core.h:14018
+ NvDeviceDiagnosticsConfigSpecVersion = 2
+ // NvDeviceDiagnosticsConfigExtensionName as defined in vulkan/vulkan_core.h:14019
+ NvDeviceDiagnosticsConfigExtensionName = "VK_NV_device_diagnostics_config"
+ // QcomRenderPassStoreOps as defined in vulkan/vulkan_core.h:14043
+ QcomRenderPassStoreOps = 1
+ // QcomRenderPassStoreOpsSpecVersion as defined in vulkan/vulkan_core.h:14044
+ QcomRenderPassStoreOpsSpecVersion = 2
+ // QcomRenderPassStoreOpsExtensionName as defined in vulkan/vulkan_core.h:14045
+ QcomRenderPassStoreOpsExtensionName = "VK_QCOM_render_pass_store_ops"
+ // ExtDescriptorBuffer as defined in vulkan/vulkan_core.h:14048
+ ExtDescriptorBuffer = 1
+ // ExtDescriptorBufferSpecVersion as defined in vulkan/vulkan_core.h:14050
+ ExtDescriptorBufferSpecVersion = 1
+ // ExtDescriptorBufferExtensionName as defined in vulkan/vulkan_core.h:14051
+ ExtDescriptorBufferExtensionName = "VK_EXT_descriptor_buffer"
+ // ExtGraphicsPipelineLibrary as defined in vulkan/vulkan_core.h:14267
+ ExtGraphicsPipelineLibrary = 1
+ // ExtGraphicsPipelineLibrarySpecVersion as defined in vulkan/vulkan_core.h:14268
+ ExtGraphicsPipelineLibrarySpecVersion = 1
+ // ExtGraphicsPipelineLibraryExtensionName as defined in vulkan/vulkan_core.h:14269
+ ExtGraphicsPipelineLibraryExtensionName = "VK_EXT_graphics_pipeline_library"
+ // AmdShaderEarlyAndLateFragmentTests as defined in vulkan/vulkan_core.h:14300
+ AmdShaderEarlyAndLateFragmentTests = 1
+ // AmdShaderEarlyAndLateFragmentTestsSpecVersion as defined in vulkan/vulkan_core.h:14301
+ AmdShaderEarlyAndLateFragmentTestsSpecVersion = 1
+ // AmdShaderEarlyAndLateFragmentTestsExtensionName as defined in vulkan/vulkan_core.h:14302
+ AmdShaderEarlyAndLateFragmentTestsExtensionName = "VK_AMD_shader_early_and_late_fragment_tests"
+ // NvFragmentShadingRateEnums as defined in vulkan/vulkan_core.h:14311
+ NvFragmentShadingRateEnums = 1
+ // NvFragmentShadingRateEnumsSpecVersion as defined in vulkan/vulkan_core.h:14312
+ NvFragmentShadingRateEnumsSpecVersion = 1
+ // NvFragmentShadingRateEnumsExtensionName as defined in vulkan/vulkan_core.h:14313
+ NvFragmentShadingRateEnumsExtensionName = "VK_NV_fragment_shading_rate_enums"
+ // ExtYcbcr2plane444Formats as defined in vulkan/vulkan_core.h:14459
+ ExtYcbcr2plane444Formats = 1
+ // ExtYcbcr2plane444FormatsSpecVersion as defined in vulkan/vulkan_core.h:14460
+ ExtYcbcr2plane444FormatsSpecVersion = 1
+ // ExtYcbcr2plane444FormatsExtensionName as defined in vulkan/vulkan_core.h:14461
+ ExtYcbcr2plane444FormatsExtensionName = "VK_EXT_ycbcr_2plane_444_formats"
+ // ExtFragmentDensityMap2 as defined in vulkan/vulkan_core.h:14470
+ ExtFragmentDensityMap2 = 1
+ // ExtFragmentDensityMap2SpecVersion as defined in vulkan/vulkan_core.h:14471
+ ExtFragmentDensityMap2SpecVersion = 1
+ // ExtFragmentDensityMap2ExtensionName as defined in vulkan/vulkan_core.h:14472
+ ExtFragmentDensityMap2ExtensionName = "VK_EXT_fragment_density_map2"
+ // QcomRotatedCopyCommands as defined in vulkan/vulkan_core.h:14490
+ QcomRotatedCopyCommands = 1
+ // QcomRotatedCopyCommandsSpecVersion as defined in vulkan/vulkan_core.h:14491
+ QcomRotatedCopyCommandsSpecVersion = 1
+ // QcomRotatedCopyCommandsExtensionName as defined in vulkan/vulkan_core.h:14492
+ QcomRotatedCopyCommandsExtensionName = "VK_QCOM_rotated_copy_commands"
+ // ExtImageRobustness as defined in vulkan/vulkan_core.h:14501
+ ExtImageRobustness = 1
+ // ExtImageRobustnessSpecVersion as defined in vulkan/vulkan_core.h:14502
+ ExtImageRobustnessSpecVersion = 1
+ // ExtImageRobustnessExtensionName as defined in vulkan/vulkan_core.h:14503
+ ExtImageRobustnessExtensionName = "VK_EXT_image_robustness"
+ // ExtImageCompressionControl as defined in vulkan/vulkan_core.h:14508
+ ExtImageCompressionControl = 1
+ // ExtImageCompressionControlSpecVersion as defined in vulkan/vulkan_core.h:14509
+ ExtImageCompressionControlSpecVersion = 1
+ // ExtImageCompressionControlExtensionName as defined in vulkan/vulkan_core.h:14510
+ ExtImageCompressionControlExtensionName = "VK_EXT_image_compression_control"
+ // ExtAttachmentFeedbackLoopLayout as defined in vulkan/vulkan_core.h:14594
+ ExtAttachmentFeedbackLoopLayout = 1
+ // ExtAttachmentFeedbackLoopLayoutSpecVersion as defined in vulkan/vulkan_core.h:14595
+ ExtAttachmentFeedbackLoopLayoutSpecVersion = 2
+ // ExtAttachmentFeedbackLoopLayoutExtensionName as defined in vulkan/vulkan_core.h:14596
+ ExtAttachmentFeedbackLoopLayoutExtensionName = "VK_EXT_attachment_feedback_loop_layout"
+ // Ext4444Formats as defined in vulkan/vulkan_core.h:14605
+ Ext4444Formats = 1
+ // Ext4444FormatsSpecVersion as defined in vulkan/vulkan_core.h:14606
+ Ext4444FormatsSpecVersion = 1
+ // Ext4444FormatsExtensionName as defined in vulkan/vulkan_core.h:14607
+ Ext4444FormatsExtensionName = "VK_EXT_4444_formats"
+ // KhrPortabilitySubset as defined in vulkan/vulkan_beta.h:22
+ KhrPortabilitySubset = 1
+ // KhrPortabilitySubsetSpecVersion as defined in vulkan/vulkan_beta.h:23
+ KhrPortabilitySubsetSpecVersion = 1
+ // KhrPortabilitySubsetExtensionName as defined in vulkan/vulkan_beta.h:24
+ KhrPortabilitySubsetExtensionName = "VK_KHR_portability_subset"
)
// Result as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkResult.html
@@ -849,8 +1452,12 @@ const (
ErrorTooManyObjects Result = -10
ErrorFormatNotSupported Result = -11
ErrorFragmentedPool Result = -12
+ ErrorUnknown Result = -13
ErrorOutOfPoolMemory Result = -1000069000
ErrorInvalidExternalHandle Result = -1000072003
+ ErrorFragmentation Result = -1000161000
+ ErrorInvalidOpaqueCaptureAddress Result = -1000257000
+ PipelineCompileRequired Result = 1000297000
ErrorSurfaceLost Result = -1000000000
ErrorNativeWindowInUse Result = -1000000001
Suboptimal Result = 1000001003
@@ -858,12 +1465,22 @@ const (
ErrorIncompatibleDisplay Result = -1000003001
ErrorValidationFailed Result = -1000011001
ErrorInvalidShaderNv Result = -1000012000
+ ErrorImageUsageNotSupported Result = -1000023000
+ ErrorVideoPictureLayoutNotSupported Result = -1000023001
+ ErrorVideoProfileOperationNotSupported Result = -1000023002
+ ErrorVideoProfileFormatNotSupported Result = -1000023003
+ ErrorVideoProfileCodecNotSupported Result = -1000023004
+ ErrorVideoStdVersionNotSupported Result = -1000023005
ErrorInvalidDrmFormatModifierPlaneLayout Result = -1000158000
- ErrorFragmentation Result = -1000161000
ErrorNotPermitted Result = -1000174001
- ResultBeginRange Result = -12
- ResultEndRange Result = 5
- ResultRangeSize Result = 18
+ ErrorFullScreenExclusiveModeLost Result = -1000255000
+ ThreadIdle Result = 1000268000
+ ThreadDone Result = 1000268001
+ OperationDeferred Result = 1000268002
+ OperationNotDeferred Result = 1000268003
+ ErrorCompressionExhausted Result = -1000338000
+ ErrorInvalidDeviceAddress Result = -1000257000
+ ErrorPipelineCompileRequired Result = 1000297000
ResultMaxEnum Result = 2147483647
)
@@ -872,307 +1489,881 @@ type StructureType int32
// StructureType enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkStructureType.html
const (
- StructureTypeApplicationInfo StructureType = iota
- StructureTypeInstanceCreateInfo StructureType = 1
- StructureTypeDeviceQueueCreateInfo StructureType = 2
- StructureTypeDeviceCreateInfo StructureType = 3
- StructureTypeSubmitInfo StructureType = 4
- StructureTypeMemoryAllocateInfo StructureType = 5
- StructureTypeMappedMemoryRange StructureType = 6
- StructureTypeBindSparseInfo StructureType = 7
- StructureTypeFenceCreateInfo StructureType = 8
- StructureTypeSemaphoreCreateInfo StructureType = 9
- StructureTypeEventCreateInfo StructureType = 10
- StructureTypeQueryPoolCreateInfo StructureType = 11
- StructureTypeBufferCreateInfo StructureType = 12
- StructureTypeBufferViewCreateInfo StructureType = 13
- StructureTypeImageCreateInfo StructureType = 14
- StructureTypeImageViewCreateInfo StructureType = 15
- StructureTypeShaderModuleCreateInfo StructureType = 16
- StructureTypePipelineCacheCreateInfo StructureType = 17
- StructureTypePipelineShaderStageCreateInfo StructureType = 18
- StructureTypePipelineVertexInputStateCreateInfo StructureType = 19
- StructureTypePipelineInputAssemblyStateCreateInfo StructureType = 20
- StructureTypePipelineTessellationStateCreateInfo StructureType = 21
- StructureTypePipelineViewportStateCreateInfo StructureType = 22
- StructureTypePipelineRasterizationStateCreateInfo StructureType = 23
- StructureTypePipelineMultisampleStateCreateInfo StructureType = 24
- StructureTypePipelineDepthStencilStateCreateInfo StructureType = 25
- StructureTypePipelineColorBlendStateCreateInfo StructureType = 26
- StructureTypePipelineDynamicStateCreateInfo StructureType = 27
- StructureTypeGraphicsPipelineCreateInfo StructureType = 28
- StructureTypeComputePipelineCreateInfo StructureType = 29
- StructureTypePipelineLayoutCreateInfo StructureType = 30
- StructureTypeSamplerCreateInfo StructureType = 31
- StructureTypeDescriptorSetLayoutCreateInfo StructureType = 32
- StructureTypeDescriptorPoolCreateInfo StructureType = 33
- StructureTypeDescriptorSetAllocateInfo StructureType = 34
- StructureTypeWriteDescriptorSet StructureType = 35
- StructureTypeCopyDescriptorSet StructureType = 36
- StructureTypeFramebufferCreateInfo StructureType = 37
- StructureTypeRenderPassCreateInfo StructureType = 38
- StructureTypeCommandPoolCreateInfo StructureType = 39
- StructureTypeCommandBufferAllocateInfo StructureType = 40
- StructureTypeCommandBufferInheritanceInfo StructureType = 41
- StructureTypeCommandBufferBeginInfo StructureType = 42
- StructureTypeRenderPassBeginInfo StructureType = 43
- StructureTypeBufferMemoryBarrier StructureType = 44
- StructureTypeImageMemoryBarrier StructureType = 45
- StructureTypeMemoryBarrier StructureType = 46
- StructureTypeLoaderInstanceCreateInfo StructureType = 47
- StructureTypeLoaderDeviceCreateInfo StructureType = 48
- StructureTypePhysicalDeviceSubgroupProperties StructureType = 1000094000
- StructureTypeBindBufferMemoryInfo StructureType = 1000157000
- StructureTypeBindImageMemoryInfo StructureType = 1000157001
- StructureTypePhysicalDevice16bitStorageFeatures StructureType = 1000083000
- StructureTypeMemoryDedicatedRequirements StructureType = 1000127000
- StructureTypeMemoryDedicatedAllocateInfo StructureType = 1000127001
- StructureTypeMemoryAllocateFlagsInfo StructureType = 1000060000
- StructureTypeDeviceGroupRenderPassBeginInfo StructureType = 1000060003
- StructureTypeDeviceGroupCommandBufferBeginInfo StructureType = 1000060004
- StructureTypeDeviceGroupSubmitInfo StructureType = 1000060005
- StructureTypeDeviceGroupBindSparseInfo StructureType = 1000060006
- StructureTypeBindBufferMemoryDeviceGroupInfo StructureType = 1000060013
- StructureTypeBindImageMemoryDeviceGroupInfo StructureType = 1000060014
- StructureTypePhysicalDeviceGroupProperties StructureType = 1000070000
- StructureTypeDeviceGroupDeviceCreateInfo StructureType = 1000070001
- StructureTypeBufferMemoryRequirementsInfo2 StructureType = 1000146000
- StructureTypeImageMemoryRequirementsInfo2 StructureType = 1000146001
- StructureTypeImageSparseMemoryRequirementsInfo2 StructureType = 1000146002
- StructureTypeMemoryRequirements2 StructureType = 1000146003
- StructureTypeSparseImageMemoryRequirements2 StructureType = 1000146004
- StructureTypePhysicalDeviceFeatures2 StructureType = 1000059000
- StructureTypePhysicalDeviceProperties2 StructureType = 1000059001
- StructureTypeFormatProperties2 StructureType = 1000059002
- StructureTypeImageFormatProperties2 StructureType = 1000059003
- StructureTypePhysicalDeviceImageFormatInfo2 StructureType = 1000059004
- StructureTypeQueueFamilyProperties2 StructureType = 1000059005
- StructureTypePhysicalDeviceMemoryProperties2 StructureType = 1000059006
- StructureTypeSparseImageFormatProperties2 StructureType = 1000059007
- StructureTypePhysicalDeviceSparseImageFormatInfo2 StructureType = 1000059008
- StructureTypePhysicalDevicePointClippingProperties StructureType = 1000117000
- StructureTypeRenderPassInputAttachmentAspectCreateInfo StructureType = 1000117001
- StructureTypeImageViewUsageCreateInfo StructureType = 1000117002
- StructureTypePipelineTessellationDomainOriginStateCreateInfo StructureType = 1000117003
- StructureTypeRenderPassMultiviewCreateInfo StructureType = 1000053000
- StructureTypePhysicalDeviceMultiviewFeatures StructureType = 1000053001
- StructureTypePhysicalDeviceMultiviewProperties StructureType = 1000053002
- StructureTypePhysicalDeviceVariablePointerFeatures StructureType = 1000120000
- StructureTypeProtectedSubmitInfo StructureType = 1000145000
- StructureTypePhysicalDeviceProtectedMemoryFeatures StructureType = 1000145001
- StructureTypePhysicalDeviceProtectedMemoryProperties StructureType = 1000145002
- StructureTypeDeviceQueueInfo2 StructureType = 1000145003
- StructureTypeSamplerYcbcrConversionCreateInfo StructureType = 1000156000
- StructureTypeSamplerYcbcrConversionInfo StructureType = 1000156001
- StructureTypeBindImagePlaneMemoryInfo StructureType = 1000156002
- StructureTypeImagePlaneMemoryRequirementsInfo StructureType = 1000156003
- StructureTypePhysicalDeviceSamplerYcbcrConversionFeatures StructureType = 1000156004
- StructureTypeSamplerYcbcrConversionImageFormatProperties StructureType = 1000156005
- StructureTypeDescriptorUpdateTemplateCreateInfo StructureType = 1000085000
- StructureTypePhysicalDeviceExternalImageFormatInfo StructureType = 1000071000
- StructureTypeExternalImageFormatProperties StructureType = 1000071001
- StructureTypePhysicalDeviceExternalBufferInfo StructureType = 1000071002
- StructureTypeExternalBufferProperties StructureType = 1000071003
- StructureTypePhysicalDeviceIdProperties StructureType = 1000071004
- StructureTypeExternalMemoryBufferCreateInfo StructureType = 1000072000
- StructureTypeExternalMemoryImageCreateInfo StructureType = 1000072001
- StructureTypeExportMemoryAllocateInfo StructureType = 1000072002
- StructureTypePhysicalDeviceExternalFenceInfo StructureType = 1000112000
- StructureTypeExternalFenceProperties StructureType = 1000112001
- StructureTypeExportFenceCreateInfo StructureType = 1000113000
- StructureTypeExportSemaphoreCreateInfo StructureType = 1000077000
- StructureTypePhysicalDeviceExternalSemaphoreInfo StructureType = 1000076000
- StructureTypeExternalSemaphoreProperties StructureType = 1000076001
- StructureTypePhysicalDeviceMaintenance3Properties StructureType = 1000168000
- StructureTypeDescriptorSetLayoutSupport StructureType = 1000168001
- StructureTypePhysicalDeviceShaderDrawParameterFeatures StructureType = 1000063000
- StructureTypeSwapchainCreateInfo StructureType = 1000001000
- StructureTypePresentInfo StructureType = 1000001001
- StructureTypeDeviceGroupPresentCapabilities StructureType = 1000060007
- StructureTypeImageSwapchainCreateInfo StructureType = 1000060008
- StructureTypeBindImageMemorySwapchainInfo StructureType = 1000060009
- StructureTypeAcquireNextImageInfo StructureType = 1000060010
- StructureTypeDeviceGroupPresentInfo StructureType = 1000060011
- StructureTypeDeviceGroupSwapchainCreateInfo StructureType = 1000060012
- StructureTypeDisplayModeCreateInfo StructureType = 1000002000
- StructureTypeDisplaySurfaceCreateInfo StructureType = 1000002001
- StructureTypeDisplayPresentInfo StructureType = 1000003000
- StructureTypeXlibSurfaceCreateInfo StructureType = 1000004000
- StructureTypeXcbSurfaceCreateInfo StructureType = 1000005000
- StructureTypeWaylandSurfaceCreateInfo StructureType = 1000006000
- StructureTypeMirSurfaceCreateInfo StructureType = 1000007000
- StructureTypeAndroidSurfaceCreateInfo StructureType = 1000008000
- StructureTypeWin32SurfaceCreateInfo StructureType = 1000009000
- StructureTypeDebugReportCallbackCreateInfo StructureType = 1000011000
- StructureTypePipelineRasterizationStateRasterizationOrderAmd StructureType = 1000018000
- StructureTypeDebugMarkerObjectNameInfo StructureType = 1000022000
- StructureTypeDebugMarkerObjectTagInfo StructureType = 1000022001
- StructureTypeDebugMarkerMarkerInfo StructureType = 1000022002
- StructureTypeDedicatedAllocationImageCreateInfoNv StructureType = 1000026000
- StructureTypeDedicatedAllocationBufferCreateInfoNv StructureType = 1000026001
- StructureTypeDedicatedAllocationMemoryAllocateInfoNv StructureType = 1000026002
- StructureTypePhysicalDeviceTransformFeedbackFeatures StructureType = 1000028000
- StructureTypePhysicalDeviceTransformFeedbackProperties StructureType = 1000028001
- StructureTypePipelineRasterizationStateStreamCreateInfo StructureType = 1000028002
- StructureTypeTextureLodGatherFormatPropertiesAmd StructureType = 1000041000
- StructureTypePhysicalDeviceCornerSampledImageFeaturesNv StructureType = 1000050000
- StructureTypeExternalMemoryImageCreateInfoNv StructureType = 1000056000
- StructureTypeExportMemoryAllocateInfoNv StructureType = 1000056001
- StructureTypeImportMemoryWin32HandleInfoNv StructureType = 1000057000
- StructureTypeExportMemoryWin32HandleInfoNv StructureType = 1000057001
- StructureTypeWin32KeyedMutexAcquireReleaseInfoNv StructureType = 1000058000
- StructureTypeValidationFlags StructureType = 1000061000
- StructureTypeViSurfaceCreateInfoNn StructureType = 1000062000
- StructureTypeImageViewAstcDecodeMode StructureType = 1000067000
- StructureTypePhysicalDeviceAstcDecodeFeatures StructureType = 1000067001
- StructureTypeImportMemoryWin32HandleInfo StructureType = 1000073000
- StructureTypeExportMemoryWin32HandleInfo StructureType = 1000073001
- StructureTypeMemoryWin32HandleProperties StructureType = 1000073002
- StructureTypeMemoryGetWin32HandleInfo StructureType = 1000073003
- StructureTypeImportMemoryFdInfo StructureType = 1000074000
- StructureTypeMemoryFdProperties StructureType = 1000074001
- StructureTypeMemoryGetFdInfo StructureType = 1000074002
- StructureTypeWin32KeyedMutexAcquireReleaseInfo StructureType = 1000075000
- StructureTypeImportSemaphoreWin32HandleInfo StructureType = 1000078000
- StructureTypeExportSemaphoreWin32HandleInfo StructureType = 1000078001
- StructureTypeD3d12FenceSubmitInfo StructureType = 1000078002
- StructureTypeSemaphoreGetWin32HandleInfo StructureType = 1000078003
- StructureTypeImportSemaphoreFdInfo StructureType = 1000079000
- StructureTypeSemaphoreGetFdInfo StructureType = 1000079001
- StructureTypePhysicalDevicePushDescriptorProperties StructureType = 1000080000
- StructureTypeCommandBufferInheritanceConditionalRenderingInfo StructureType = 1000081000
- StructureTypePhysicalDeviceConditionalRenderingFeatures StructureType = 1000081001
- StructureTypeConditionalRenderingBeginInfo StructureType = 1000081002
- StructureTypePresentRegions StructureType = 1000084000
- StructureTypeObjectTableCreateInfoNvx StructureType = 1000086000
- StructureTypeIndirectCommandsLayoutCreateInfoNvx StructureType = 1000086001
- StructureTypeCmdProcessCommandsInfoNvx StructureType = 1000086002
- StructureTypeCmdReserveSpaceForCommandsInfoNvx StructureType = 1000086003
- StructureTypeDeviceGeneratedCommandsLimitsNvx StructureType = 1000086004
- StructureTypeDeviceGeneratedCommandsFeaturesNvx StructureType = 1000086005
- StructureTypePipelineViewportWScalingStateCreateInfoNv StructureType = 1000087000
- StructureTypeSurfaceCapabilities2 StructureType = 1000090000
- StructureTypeDisplayPowerInfo StructureType = 1000091000
- StructureTypeDeviceEventInfo StructureType = 1000091001
- StructureTypeDisplayEventInfo StructureType = 1000091002
- StructureTypeSwapchainCounterCreateInfo StructureType = 1000091003
- StructureTypePresentTimesInfoGoogle StructureType = 1000092000
- StructureTypePhysicalDeviceMultiviewPerViewAttributesPropertiesNvx StructureType = 1000097000
- StructureTypePipelineViewportSwizzleStateCreateInfoNv StructureType = 1000098000
- StructureTypePhysicalDeviceDiscardRectangleProperties StructureType = 1000099000
- StructureTypePipelineDiscardRectangleStateCreateInfo StructureType = 1000099001
- StructureTypePhysicalDeviceConservativeRasterizationProperties StructureType = 1000101000
- StructureTypePipelineRasterizationConservativeStateCreateInfo StructureType = 1000101001
- StructureTypeHdrMetadata StructureType = 1000105000
- StructureTypeAttachmentDescription2 StructureType = 1000109000
- StructureTypeAttachmentReference2 StructureType = 1000109001
- StructureTypeSubpassDescription2 StructureType = 1000109002
- StructureTypeSubpassDependency2 StructureType = 1000109003
- StructureTypeRenderPassCreateInfo2 StructureType = 1000109004
- StructureTypeSubpassBeginInfo StructureType = 1000109005
- StructureTypeSubpassEndInfo StructureType = 1000109006
- StructureTypeSharedPresentSurfaceCapabilities StructureType = 1000111000
- StructureTypeImportFenceWin32HandleInfo StructureType = 1000114000
- StructureTypeExportFenceWin32HandleInfo StructureType = 1000114001
- StructureTypeFenceGetWin32HandleInfo StructureType = 1000114002
- StructureTypeImportFenceFdInfo StructureType = 1000115000
- StructureTypeFenceGetFdInfo StructureType = 1000115001
- StructureTypePhysicalDeviceSurfaceInfo2 StructureType = 1000119000
- StructureTypeSurfaceFormat2 StructureType = 1000119002
- StructureTypeDisplayProperties2 StructureType = 1000121000
- StructureTypeDisplayPlaneProperties2 StructureType = 1000121001
- StructureTypeDisplayModeProperties2 StructureType = 1000121002
- StructureTypeDisplayPlaneInfo2 StructureType = 1000121003
- StructureTypeDisplayPlaneCapabilities2 StructureType = 1000121004
- StructureTypeIosSurfaceCreateInfoMvk StructureType = 1000122000
- StructureTypeMacosSurfaceCreateInfoMvk StructureType = 1000123000
- StructureTypeDebugUtilsObjectNameInfo StructureType = 1000128000
- StructureTypeDebugUtilsObjectTagInfo StructureType = 1000128001
- StructureTypeDebugUtilsLabel StructureType = 1000128002
- StructureTypeDebugUtilsMessengerCallbackData StructureType = 1000128003
- StructureTypeDebugUtilsMessengerCreateInfo StructureType = 1000128004
- StructureTypeAndroidHardwareBufferUsageAndroid StructureType = 1000129000
- StructureTypeAndroidHardwareBufferPropertiesAndroid StructureType = 1000129001
- StructureTypeAndroidHardwareBufferFormatPropertiesAndroid StructureType = 1000129002
- StructureTypeImportAndroidHardwareBufferInfoAndroid StructureType = 1000129003
- StructureTypeMemoryGetAndroidHardwareBufferInfoAndroid StructureType = 1000129004
- StructureTypeExternalFormatAndroid StructureType = 1000129005
- StructureTypePhysicalDeviceSamplerFilterMinmaxProperties StructureType = 1000130000
- StructureTypeSamplerReductionModeCreateInfo StructureType = 1000130001
- StructureTypePhysicalDeviceInlineUniformBlockFeatures StructureType = 1000138000
- StructureTypePhysicalDeviceInlineUniformBlockProperties StructureType = 1000138001
- StructureTypeWriteDescriptorSetInlineUniformBlock StructureType = 1000138002
- StructureTypeDescriptorPoolInlineUniformBlockCreateInfo StructureType = 1000138003
- StructureTypeSampleLocationsInfo StructureType = 1000143000
- StructureTypeRenderPassSampleLocationsBeginInfo StructureType = 1000143001
- StructureTypePipelineSampleLocationsStateCreateInfo StructureType = 1000143002
- StructureTypePhysicalDeviceSampleLocationsProperties StructureType = 1000143003
- StructureTypeMultisampleProperties StructureType = 1000143004
- StructureTypeImageFormatListCreateInfo StructureType = 1000147000
- StructureTypePhysicalDeviceBlendOperationAdvancedFeatures StructureType = 1000148000
- StructureTypePhysicalDeviceBlendOperationAdvancedProperties StructureType = 1000148001
- StructureTypePipelineColorBlendAdvancedStateCreateInfo StructureType = 1000148002
- StructureTypePipelineCoverageToColorStateCreateInfoNv StructureType = 1000149000
- StructureTypePipelineCoverageModulationStateCreateInfoNv StructureType = 1000152000
- StructureTypeDrmFormatModifierPropertiesList StructureType = 1000158000
- StructureTypeDrmFormatModifierProperties StructureType = 1000158001
- StructureTypePhysicalDeviceImageDrmFormatModifierInfo StructureType = 1000158002
- StructureTypeImageDrmFormatModifierListCreateInfo StructureType = 1000158003
- StructureTypeImageExcplicitDrmFormatModifierCreateInfo StructureType = 1000158004
- StructureTypeImageDrmFormatModifierProperties StructureType = 1000158005
- StructureTypeValidationCacheCreateInfo StructureType = 1000160000
- StructureTypeShaderModuleValidationCacheCreateInfo StructureType = 1000160001
- StructureTypeDescriptorSetLayoutBindingFlagsCreateInfo StructureType = 1000161000
- StructureTypePhysicalDeviceDescriptorIndexingFeatures StructureType = 1000161001
- StructureTypePhysicalDeviceDescriptorIndexingProperties StructureType = 1000161002
- StructureTypeDescriptorSetVariableDescriptorCountAllocateInfo StructureType = 1000161003
- StructureTypeDescriptorSetVariableDescriptorCountLayoutSupport StructureType = 1000161004
- StructureTypePipelineViewportShadingRateImageStateCreateInfoNv StructureType = 1000164000
- StructureTypePhysicalDeviceShadingRateImageFeaturesNv StructureType = 1000164001
- StructureTypePhysicalDeviceShadingRateImagePropertiesNv StructureType = 1000164002
- StructureTypePipelineViewportCoarseSampleOrderStateCreateInfoNv StructureType = 1000164005
- StructureTypeRaytracingPipelineCreateInfoNvx StructureType = 1000165000
- StructureTypeAccelerationStructureCreateInfoNvx StructureType = 1000165001
- StructureTypeGeometryInstanceNvx StructureType = 1000165002
- StructureTypeGeometryNvx StructureType = 1000165003
- StructureTypeGeometryTrianglesNvx StructureType = 1000165004
- StructureTypeGeometryAabbNvx StructureType = 1000165005
- StructureTypeBindAccelerationStructureMemoryInfoNvx StructureType = 1000165006
- StructureTypeDescriptorAccelerationStructureInfoNvx StructureType = 1000165007
- StructureTypeAccelerationStructureMemoryRequirementsInfoNvx StructureType = 1000165008
- StructureTypePhysicalDeviceRaytracingPropertiesNvx StructureType = 1000165009
- StructureTypeHitShaderModuleCreateInfoNvx StructureType = 1000165010
- StructureTypePhysicalDeviceRepresentativeFragmentTestFeaturesNv StructureType = 1000166000
- StructureTypePipelineRepresentativeFragmentTestStateCreateInfoNv StructureType = 1000166001
- StructureTypeDeviceQueueGlobalPriorityCreateInfo StructureType = 1000174000
- StructureTypePhysicalDevice8bitStorageFeatures StructureType = 1000177000
- StructureTypeImportMemoryHostPointerInfo StructureType = 1000178000
- StructureTypeMemoryHostPointerProperties StructureType = 1000178001
- StructureTypePhysicalDeviceExternalMemoryHostProperties StructureType = 1000178002
- StructureTypePhysicalDeviceShaderAtomicInt64Features StructureType = 1000180000
- StructureTypeCalibratedTimestampInfo StructureType = 1000184000
- StructureTypePhysicalDeviceShaderCorePropertiesAmd StructureType = 1000185000
- StructureTypePhysicalDeviceVertexAttributeDivisorProperties StructureType = 1000190000
- StructureTypePipelineVertexInputDivisorStateCreateInfo StructureType = 1000190001
- StructureTypePhysicalDeviceVertexAttributeDivisorFeatures StructureType = 1000190002
- StructureTypePhysicalDeviceDriverProperties StructureType = 1000196000
- StructureTypePhysicalDeviceComputeShaderDerivativesFeaturesNv StructureType = 1000201000
- StructureTypePhysicalDeviceMeshShaderFeaturesNv StructureType = 1000202000
- StructureTypePhysicalDeviceMeshShaderPropertiesNv StructureType = 1000202001
- StructureTypePhysicalDeviceFragmentShaderBarycentricFeaturesNv StructureType = 1000203000
- StructureTypePhysicalDeviceShaderImageFootprintFeaturesNv StructureType = 1000204000
- StructureTypePipelineViewportExclusiveScissorStateCreateInfoNv StructureType = 1000205000
- StructureTypePhysicalDeviceExclusiveScissorFeaturesNv StructureType = 1000205002
- StructureTypeCheckpointDataNv StructureType = 1000206000
- StructureTypeQueueFamilyCheckpointPropertiesNv StructureType = 1000206001
- StructureTypePhysicalDeviceVulkanMemoryModelFeatures StructureType = 1000211000
- StructureTypePhysicalDevicePciBusInfoProperties StructureType = 1000212000
- StructureTypeImagepipeSurfaceCreateInfoFuchsia StructureType = 1000214000
- StructureTypeDebugReportCreateInfo StructureType = 1000011000
- StructureTypeBeginRange StructureType = 0
- StructureTypeEndRange StructureType = 48
- StructureTypeRangeSize StructureType = 49
- StructureTypeMaxEnum StructureType = 2147483647
+ StructureTypeApplicationInfo StructureType = iota
+ StructureTypeInstanceCreateInfo StructureType = 1
+ StructureTypeDeviceQueueCreateInfo StructureType = 2
+ StructureTypeDeviceCreateInfo StructureType = 3
+ StructureTypeSubmitInfo StructureType = 4
+ StructureTypeMemoryAllocateInfo StructureType = 5
+ StructureTypeMappedMemoryRange StructureType = 6
+ StructureTypeBindSparseInfo StructureType = 7
+ StructureTypeFenceCreateInfo StructureType = 8
+ StructureTypeSemaphoreCreateInfo StructureType = 9
+ StructureTypeEventCreateInfo StructureType = 10
+ StructureTypeQueryPoolCreateInfo StructureType = 11
+ StructureTypeBufferCreateInfo StructureType = 12
+ StructureTypeBufferViewCreateInfo StructureType = 13
+ StructureTypeImageCreateInfo StructureType = 14
+ StructureTypeImageViewCreateInfo StructureType = 15
+ StructureTypeShaderModuleCreateInfo StructureType = 16
+ StructureTypePipelineCacheCreateInfo StructureType = 17
+ StructureTypePipelineShaderStageCreateInfo StructureType = 18
+ StructureTypePipelineVertexInputStateCreateInfo StructureType = 19
+ StructureTypePipelineInputAssemblyStateCreateInfo StructureType = 20
+ StructureTypePipelineTessellationStateCreateInfo StructureType = 21
+ StructureTypePipelineViewportStateCreateInfo StructureType = 22
+ StructureTypePipelineRasterizationStateCreateInfo StructureType = 23
+ StructureTypePipelineMultisampleStateCreateInfo StructureType = 24
+ StructureTypePipelineDepthStencilStateCreateInfo StructureType = 25
+ StructureTypePipelineColorBlendStateCreateInfo StructureType = 26
+ StructureTypePipelineDynamicStateCreateInfo StructureType = 27
+ StructureTypeGraphicsPipelineCreateInfo StructureType = 28
+ StructureTypeComputePipelineCreateInfo StructureType = 29
+ StructureTypePipelineLayoutCreateInfo StructureType = 30
+ StructureTypeSamplerCreateInfo StructureType = 31
+ StructureTypeDescriptorSetLayoutCreateInfo StructureType = 32
+ StructureTypeDescriptorPoolCreateInfo StructureType = 33
+ StructureTypeDescriptorSetAllocateInfo StructureType = 34
+ StructureTypeWriteDescriptorSet StructureType = 35
+ StructureTypeCopyDescriptorSet StructureType = 36
+ StructureTypeFramebufferCreateInfo StructureType = 37
+ StructureTypeRenderPassCreateInfo StructureType = 38
+ StructureTypeCommandPoolCreateInfo StructureType = 39
+ StructureTypeCommandBufferAllocateInfo StructureType = 40
+ StructureTypeCommandBufferInheritanceInfo StructureType = 41
+ StructureTypeCommandBufferBeginInfo StructureType = 42
+ StructureTypeRenderPassBeginInfo StructureType = 43
+ StructureTypeBufferMemoryBarrier StructureType = 44
+ StructureTypeImageMemoryBarrier StructureType = 45
+ StructureTypeMemoryBarrier StructureType = 46
+ StructureTypeLoaderInstanceCreateInfo StructureType = 47
+ StructureTypeLoaderDeviceCreateInfo StructureType = 48
+ StructureTypePhysicalDeviceSubgroupProperties StructureType = 1000094000
+ StructureTypeBindBufferMemoryInfo StructureType = 1000157000
+ StructureTypeBindImageMemoryInfo StructureType = 1000157001
+ StructureTypePhysicalDevice16bitStorageFeatures StructureType = 1000083000
+ StructureTypeMemoryDedicatedRequirements StructureType = 1000127000
+ StructureTypeMemoryDedicatedAllocateInfo StructureType = 1000127001
+ StructureTypeMemoryAllocateFlagsInfo StructureType = 1000060000
+ StructureTypeDeviceGroupRenderPassBeginInfo StructureType = 1000060003
+ StructureTypeDeviceGroupCommandBufferBeginInfo StructureType = 1000060004
+ StructureTypeDeviceGroupSubmitInfo StructureType = 1000060005
+ StructureTypeDeviceGroupBindSparseInfo StructureType = 1000060006
+ StructureTypeBindBufferMemoryDeviceGroupInfo StructureType = 1000060013
+ StructureTypeBindImageMemoryDeviceGroupInfo StructureType = 1000060014
+ StructureTypePhysicalDeviceGroupProperties StructureType = 1000070000
+ StructureTypeDeviceGroupDeviceCreateInfo StructureType = 1000070001
+ StructureTypeBufferMemoryRequirementsInfo2 StructureType = 1000146000
+ StructureTypeImageMemoryRequirementsInfo2 StructureType = 1000146001
+ StructureTypeImageSparseMemoryRequirementsInfo2 StructureType = 1000146002
+ StructureTypeMemoryRequirements2 StructureType = 1000146003
+ StructureTypeSparseImageMemoryRequirements2 StructureType = 1000146004
+ StructureTypePhysicalDeviceFeatures2 StructureType = 1000059000
+ StructureTypePhysicalDeviceProperties2 StructureType = 1000059001
+ StructureTypeFormatProperties2 StructureType = 1000059002
+ StructureTypeImageFormatProperties2 StructureType = 1000059003
+ StructureTypePhysicalDeviceImageFormatInfo2 StructureType = 1000059004
+ StructureTypeQueueFamilyProperties2 StructureType = 1000059005
+ StructureTypePhysicalDeviceMemoryProperties2 StructureType = 1000059006
+ StructureTypeSparseImageFormatProperties2 StructureType = 1000059007
+ StructureTypePhysicalDeviceSparseImageFormatInfo2 StructureType = 1000059008
+ StructureTypePhysicalDevicePointClippingProperties StructureType = 1000117000
+ StructureTypeRenderPassInputAttachmentAspectCreateInfo StructureType = 1000117001
+ StructureTypeImageViewUsageCreateInfo StructureType = 1000117002
+ StructureTypePipelineTessellationDomainOriginStateCreateInfo StructureType = 1000117003
+ StructureTypeRenderPassMultiviewCreateInfo StructureType = 1000053000
+ StructureTypePhysicalDeviceMultiviewFeatures StructureType = 1000053001
+ StructureTypePhysicalDeviceMultiviewProperties StructureType = 1000053002
+ StructureTypePhysicalDeviceVariablePointersFeatures StructureType = 1000120000
+ StructureTypeProtectedSubmitInfo StructureType = 1000145000
+ StructureTypePhysicalDeviceProtectedMemoryFeatures StructureType = 1000145001
+ StructureTypePhysicalDeviceProtectedMemoryProperties StructureType = 1000145002
+ StructureTypeDeviceQueueInfo2 StructureType = 1000145003
+ StructureTypeSamplerYcbcrConversionCreateInfo StructureType = 1000156000
+ StructureTypeSamplerYcbcrConversionInfo StructureType = 1000156001
+ StructureTypeBindImagePlaneMemoryInfo StructureType = 1000156002
+ StructureTypeImagePlaneMemoryRequirementsInfo StructureType = 1000156003
+ StructureTypePhysicalDeviceSamplerYcbcrConversionFeatures StructureType = 1000156004
+ StructureTypeSamplerYcbcrConversionImageFormatProperties StructureType = 1000156005
+ StructureTypeDescriptorUpdateTemplateCreateInfo StructureType = 1000085000
+ StructureTypePhysicalDeviceExternalImageFormatInfo StructureType = 1000071000
+ StructureTypeExternalImageFormatProperties StructureType = 1000071001
+ StructureTypePhysicalDeviceExternalBufferInfo StructureType = 1000071002
+ StructureTypeExternalBufferProperties StructureType = 1000071003
+ StructureTypePhysicalDeviceIdProperties StructureType = 1000071004
+ StructureTypeExternalMemoryBufferCreateInfo StructureType = 1000072000
+ StructureTypeExternalMemoryImageCreateInfo StructureType = 1000072001
+ StructureTypeExportMemoryAllocateInfo StructureType = 1000072002
+ StructureTypePhysicalDeviceExternalFenceInfo StructureType = 1000112000
+ StructureTypeExternalFenceProperties StructureType = 1000112001
+ StructureTypeExportFenceCreateInfo StructureType = 1000113000
+ StructureTypeExportSemaphoreCreateInfo StructureType = 1000077000
+ StructureTypePhysicalDeviceExternalSemaphoreInfo StructureType = 1000076000
+ StructureTypeExternalSemaphoreProperties StructureType = 1000076001
+ StructureTypePhysicalDeviceMaintenance3Properties StructureType = 1000168000
+ StructureTypeDescriptorSetLayoutSupport StructureType = 1000168001
+ StructureTypePhysicalDeviceShaderDrawParametersFeatures StructureType = 1000063000
+ StructureTypePhysicalDeviceVulkan11Features StructureType = 49
+ StructureTypePhysicalDeviceVulkan11Properties StructureType = 50
+ StructureTypePhysicalDeviceVulkan12Features StructureType = 51
+ StructureTypePhysicalDeviceVulkan12Properties StructureType = 52
+ StructureTypeImageFormatListCreateInfo StructureType = 1000147000
+ StructureTypeAttachmentDescription2 StructureType = 1000109000
+ StructureTypeAttachmentReference2 StructureType = 1000109001
+ StructureTypeSubpassDescription2 StructureType = 1000109002
+ StructureTypeSubpassDependency2 StructureType = 1000109003
+ StructureTypeRenderPassCreateInfo2 StructureType = 1000109004
+ StructureTypeSubpassBeginInfo StructureType = 1000109005
+ StructureTypeSubpassEndInfo StructureType = 1000109006
+ StructureTypePhysicalDevice8bitStorageFeatures StructureType = 1000177000
+ StructureTypePhysicalDeviceDriverProperties StructureType = 1000196000
+ StructureTypePhysicalDeviceShaderAtomicInt64Features StructureType = 1000180000
+ StructureTypePhysicalDeviceShaderFloat16Int8Features StructureType = 1000082000
+ StructureTypePhysicalDeviceFloatControlsProperties StructureType = 1000197000
+ StructureTypeDescriptorSetLayoutBindingFlagsCreateInfo StructureType = 1000161000
+ StructureTypePhysicalDeviceDescriptorIndexingFeatures StructureType = 1000161001
+ StructureTypePhysicalDeviceDescriptorIndexingProperties StructureType = 1000161002
+ StructureTypeDescriptorSetVariableDescriptorCountAllocateInfo StructureType = 1000161003
+ StructureTypeDescriptorSetVariableDescriptorCountLayoutSupport StructureType = 1000161004
+ StructureTypePhysicalDeviceDepthStencilResolveProperties StructureType = 1000199000
+ StructureTypeSubpassDescriptionDepthStencilResolve StructureType = 1000199001
+ StructureTypePhysicalDeviceScalarBlockLayoutFeatures StructureType = 1000221000
+ StructureTypeImageStencilUsageCreateInfo StructureType = 1000246000
+ StructureTypePhysicalDeviceSamplerFilterMinmaxProperties StructureType = 1000130000
+ StructureTypeSamplerReductionModeCreateInfo StructureType = 1000130001
+ StructureTypePhysicalDeviceVulkanMemoryModelFeatures StructureType = 1000211000
+ StructureTypePhysicalDeviceImagelessFramebufferFeatures StructureType = 1000108000
+ StructureTypeFramebufferAttachmentsCreateInfo StructureType = 1000108001
+ StructureTypeFramebufferAttachmentImageInfo StructureType = 1000108002
+ StructureTypeRenderPassAttachmentBeginInfo StructureType = 1000108003
+ StructureTypePhysicalDeviceUniformBufferStandardLayoutFeatures StructureType = 1000253000
+ StructureTypePhysicalDeviceShaderSubgroupExtendedTypesFeatures StructureType = 1000175000
+ StructureTypePhysicalDeviceSeparateDepthStencilLayoutsFeatures StructureType = 1000241000
+ StructureTypeAttachmentReferenceStencilLayout StructureType = 1000241001
+ StructureTypeAttachmentDescriptionStencilLayout StructureType = 1000241002
+ StructureTypePhysicalDeviceHostQueryResetFeatures StructureType = 1000261000
+ StructureTypePhysicalDeviceTimelineSemaphoreFeatures StructureType = 1000207000
+ StructureTypePhysicalDeviceTimelineSemaphoreProperties StructureType = 1000207001
+ StructureTypeSemaphoreTypeCreateInfo StructureType = 1000207002
+ StructureTypeTimelineSemaphoreSubmitInfo StructureType = 1000207003
+ StructureTypeSemaphoreWaitInfo StructureType = 1000207004
+ StructureTypeSemaphoreSignalInfo StructureType = 1000207005
+ StructureTypePhysicalDeviceBufferDeviceAddressFeatures StructureType = 1000257000
+ StructureTypeBufferDeviceAddressInfo StructureType = 1000244001
+ StructureTypeBufferOpaqueCaptureAddressCreateInfo StructureType = 1000257002
+ StructureTypeMemoryOpaqueCaptureAddressAllocateInfo StructureType = 1000257003
+ StructureTypeDeviceMemoryOpaqueCaptureAddressInfo StructureType = 1000257004
+ StructureTypePhysicalDeviceVulkan13Features StructureType = 53
+ StructureTypePhysicalDeviceVulkan13Properties StructureType = 54
+ StructureTypePipelineCreationFeedbackCreateInfo StructureType = 1000192000
+ StructureTypePhysicalDeviceShaderTerminateInvocationFeatures StructureType = 1000215000
+ StructureTypePhysicalDeviceToolProperties StructureType = 1000245000
+ StructureTypePhysicalDeviceShaderDemoteToHelperInvocationFeatures StructureType = 1000276000
+ StructureTypePhysicalDevicePrivateDataFeatures StructureType = 1000295000
+ StructureTypeDevicePrivateDataCreateInfo StructureType = 1000295001
+ StructureTypePrivateDataSlotCreateInfo StructureType = 1000295002
+ StructureTypePhysicalDevicePipelineCreationCacheControlFeatures StructureType = 1000297000
+ StructureTypeMemoryBarrier2 StructureType = 1000314000
+ StructureTypeBufferMemoryBarrier2 StructureType = 1000314001
+ StructureTypeImageMemoryBarrier2 StructureType = 1000314002
+ StructureTypeDependencyInfo StructureType = 1000314003
+ StructureTypeSubmitInfo2 StructureType = 1000314004
+ StructureTypeSemaphoreSubmitInfo StructureType = 1000314005
+ StructureTypeCommandBufferSubmitInfo StructureType = 1000314006
+ StructureTypePhysicalDeviceSynchronization2Features StructureType = 1000314007
+ StructureTypePhysicalDeviceZeroInitializeWorkgroupMemoryFeatures StructureType = 1000325000
+ StructureTypePhysicalDeviceImageRobustnessFeatures StructureType = 1000335000
+ StructureTypeCopyBufferInfo2 StructureType = 1000337000
+ StructureTypeCopyImageInfo2 StructureType = 1000337001
+ StructureTypeCopyBufferToImageInfo2 StructureType = 1000337002
+ StructureTypeCopyImageToBufferInfo2 StructureType = 1000337003
+ StructureTypeBlitImageInfo2 StructureType = 1000337004
+ StructureTypeResolveImageInfo2 StructureType = 1000337005
+ StructureTypeBufferCopy2 StructureType = 1000337006
+ StructureTypeImageCopy2 StructureType = 1000337007
+ StructureTypeImageBlit2 StructureType = 1000337008
+ StructureTypeBufferImageCopy2 StructureType = 1000337009
+ StructureTypeImageResolve2 StructureType = 1000337010
+ StructureTypePhysicalDeviceSubgroupSizeControlProperties StructureType = 1000225000
+ StructureTypePipelineShaderStageRequiredSubgroupSizeCreateInfo StructureType = 1000225001
+ StructureTypePhysicalDeviceSubgroupSizeControlFeatures StructureType = 1000225002
+ StructureTypePhysicalDeviceInlineUniformBlockFeatures StructureType = 1000138000
+ StructureTypePhysicalDeviceInlineUniformBlockProperties StructureType = 1000138001
+ StructureTypeWriteDescriptorSetInlineUniformBlock StructureType = 1000138002
+ StructureTypeDescriptorPoolInlineUniformBlockCreateInfo StructureType = 1000138003
+ StructureTypePhysicalDeviceTextureCompressionAstcHdrFeatures StructureType = 1000066000
+ StructureTypeRenderingInfo StructureType = 1000044000
+ StructureTypeRenderingAttachmentInfo StructureType = 1000044001
+ StructureTypePipelineRenderingCreateInfo StructureType = 1000044002
+ StructureTypePhysicalDeviceDynamicRenderingFeatures StructureType = 1000044003
+ StructureTypeCommandBufferInheritanceRenderingInfo StructureType = 1000044004
+ StructureTypePhysicalDeviceShaderIntegerDotProductFeatures StructureType = 1000280000
+ StructureTypePhysicalDeviceShaderIntegerDotProductProperties StructureType = 1000280001
+ StructureTypePhysicalDeviceTexelBufferAlignmentProperties StructureType = 1000281001
+ StructureTypeFormatProperties3 StructureType = 1000360000
+ StructureTypePhysicalDeviceMaintenance4Features StructureType = 1000413000
+ StructureTypePhysicalDeviceMaintenance4Properties StructureType = 1000413001
+ StructureTypeDeviceBufferMemoryRequirements StructureType = 1000413002
+ StructureTypeDeviceImageMemoryRequirements StructureType = 1000413003
+ StructureTypeSwapchainCreateInfo StructureType = 1000001000
+ StructureTypePresentInfo StructureType = 1000001001
+ StructureTypeDeviceGroupPresentCapabilities StructureType = 1000060007
+ StructureTypeImageSwapchainCreateInfo StructureType = 1000060008
+ StructureTypeBindImageMemorySwapchainInfo StructureType = 1000060009
+ StructureTypeAcquireNextImageInfo StructureType = 1000060010
+ StructureTypeDeviceGroupPresentInfo StructureType = 1000060011
+ StructureTypeDeviceGroupSwapchainCreateInfo StructureType = 1000060012
+ StructureTypeDisplayModeCreateInfo StructureType = 1000002000
+ StructureTypeDisplaySurfaceCreateInfo StructureType = 1000002001
+ StructureTypeDisplayPresentInfo StructureType = 1000003000
+ StructureTypeXlibSurfaceCreateInfo StructureType = 1000004000
+ StructureTypeXcbSurfaceCreateInfo StructureType = 1000005000
+ StructureTypeWaylandSurfaceCreateInfo StructureType = 1000006000
+ StructureTypeAndroidSurfaceCreateInfo StructureType = 1000008000
+ StructureTypeWin32SurfaceCreateInfo StructureType = 1000009000
+ StructureTypeDebugReportCallbackCreateInfo StructureType = 1000011000
+ StructureTypePipelineRasterizationStateRasterizationOrderAmd StructureType = 1000018000
+ StructureTypeDebugMarkerObjectNameInfo StructureType = 1000022000
+ StructureTypeDebugMarkerObjectTagInfo StructureType = 1000022001
+ StructureTypeDebugMarkerMarkerInfo StructureType = 1000022002
+ StructureTypeVideoProfileInfo StructureType = 1000023000
+ StructureTypeVideoCapabilities StructureType = 1000023001
+ StructureTypeVideoPictureResourceInfo StructureType = 1000023002
+ StructureTypeVideoSessionMemoryRequirements StructureType = 1000023003
+ StructureTypeBindVideoSessionMemoryInfo StructureType = 1000023004
+ StructureTypeVideoSessionCreateInfo StructureType = 1000023005
+ StructureTypeVideoSessionParametersCreateInfo StructureType = 1000023006
+ StructureTypeVideoSessionParametersUpdateInfo StructureType = 1000023007
+ StructureTypeVideoBeginCodingInfo StructureType = 1000023008
+ StructureTypeVideoEndCodingInfo StructureType = 1000023009
+ StructureTypeVideoCodingControlInfo StructureType = 1000023010
+ StructureTypeVideoReferenceSlotInfo StructureType = 1000023011
+ StructureTypeQueueFamilyVideoProperties StructureType = 1000023012
+ StructureTypeVideoProfileListInfo StructureType = 1000023013
+ StructureTypePhysicalDeviceVideoFormatInfo StructureType = 1000023014
+ StructureTypeVideoFormatProperties StructureType = 1000023015
+ StructureTypeQueueFamilyQueryResultStatusProperties StructureType = 1000023016
+ StructureTypeVideoDecodeInfo StructureType = 1000024000
+ StructureTypeVideoDecodeCapabilities StructureType = 1000024001
+ StructureTypeVideoDecodeUsageInfo StructureType = 1000024002
+ StructureTypeDedicatedAllocationImageCreateInfoNv StructureType = 1000026000
+ StructureTypeDedicatedAllocationBufferCreateInfoNv StructureType = 1000026001
+ StructureTypeDedicatedAllocationMemoryAllocateInfoNv StructureType = 1000026002
+ StructureTypePhysicalDeviceTransformFeedbackFeatures StructureType = 1000028000
+ StructureTypePhysicalDeviceTransformFeedbackProperties StructureType = 1000028001
+ StructureTypePipelineRasterizationStateStreamCreateInfo StructureType = 1000028002
+ StructureTypeCuModuleCreateInfoNvx StructureType = 1000029000
+ StructureTypeCuFunctionCreateInfoNvx StructureType = 1000029001
+ StructureTypeCuLaunchInfoNvx StructureType = 1000029002
+ StructureTypeImageViewHandleInfoNvx StructureType = 1000030000
+ StructureTypeImageViewAddressPropertiesNvx StructureType = 1000030001
+ StructureTypeVideoEncodeH264Capabilities StructureType = 1000038000
+ StructureTypeVideoEncodeH264SessionParametersCreateInfo StructureType = 1000038001
+ StructureTypeVideoEncodeH264SessionParametersAddInfo StructureType = 1000038002
+ StructureTypeVideoEncodeH264VclFrameInfo StructureType = 1000038003
+ StructureTypeVideoEncodeH264DpbSlotInfo StructureType = 1000038004
+ StructureTypeVideoEncodeH264NaluSliceInfo StructureType = 1000038005
+ StructureTypeVideoEncodeH264EmitPictureParametersInfo StructureType = 1000038006
+ StructureTypeVideoEncodeH264ProfileInfo StructureType = 1000038007
+ StructureTypeVideoEncodeH264RateControlInfo StructureType = 1000038008
+ StructureTypeVideoEncodeH264RateControlLayerInfo StructureType = 1000038009
+ StructureTypeVideoEncodeH264ReferenceListsInfo StructureType = 1000038010
+ StructureTypeVideoEncodeH265Capabilities StructureType = 1000039000
+ StructureTypeVideoEncodeH265SessionParametersCreateInfo StructureType = 1000039001
+ StructureTypeVideoEncodeH265SessionParametersAddInfo StructureType = 1000039002
+ StructureTypeVideoEncodeH265VclFrameInfo StructureType = 1000039003
+ StructureTypeVideoEncodeH265DpbSlotInfo StructureType = 1000039004
+ StructureTypeVideoEncodeH265NaluSliceSegmentInfo StructureType = 1000039005
+ StructureTypeVideoEncodeH265EmitPictureParametersInfo StructureType = 1000039006
+ StructureTypeVideoEncodeH265ProfileInfo StructureType = 1000039007
+ StructureTypeVideoEncodeH265ReferenceListsInfo StructureType = 1000039008
+ StructureTypeVideoEncodeH265RateControlInfo StructureType = 1000039009
+ StructureTypeVideoEncodeH265RateControlLayerInfo StructureType = 1000039010
+ StructureTypeVideoDecodeH264Capabilities StructureType = 1000040000
+ StructureTypeVideoDecodeH264PictureInfo StructureType = 1000040001
+ StructureTypeVideoDecodeH264ProfileInfo StructureType = 1000040003
+ StructureTypeVideoDecodeH264SessionParametersCreateInfo StructureType = 1000040004
+ StructureTypeVideoDecodeH264SessionParametersAddInfo StructureType = 1000040005
+ StructureTypeVideoDecodeH264DpbSlotInfo StructureType = 1000040006
+ StructureTypeTextureLodGatherFormatPropertiesAmd StructureType = 1000041000
+ StructureTypeRenderingFragmentShadingRateAttachmentInfo StructureType = 1000044006
+ StructureTypeRenderingFragmentDensityMapAttachmentInfo StructureType = 1000044007
+ StructureTypeAttachmentSampleCountInfoAmd StructureType = 1000044008
+ StructureTypeMultiviewPerViewAttributesInfoNvx StructureType = 1000044009
+ StructureTypeStreamDescriptorSurfaceCreateInfoGgp StructureType = 1000049000
+ StructureTypePhysicalDeviceCornerSampledImageFeaturesNv StructureType = 1000050000
+ StructureTypeExternalMemoryImageCreateInfoNv StructureType = 1000056000
+ StructureTypeExportMemoryAllocateInfoNv StructureType = 1000056001
+ StructureTypeImportMemoryWin32HandleInfoNv StructureType = 1000057000
+ StructureTypeExportMemoryWin32HandleInfoNv StructureType = 1000057001
+ StructureTypeWin32KeyedMutexAcquireReleaseInfoNv StructureType = 1000058000
+ StructureTypeValidationFlags StructureType = 1000061000
+ StructureTypeViSurfaceCreateInfoNn StructureType = 1000062000
+ StructureTypeImageViewAstcDecodeMode StructureType = 1000067000
+ StructureTypePhysicalDeviceAstcDecodeFeatures StructureType = 1000067001
+ StructureTypePipelineRobustnessCreateInfo StructureType = 1000068000
+ StructureTypePhysicalDevicePipelineRobustnessFeatures StructureType = 1000068001
+ StructureTypePhysicalDevicePipelineRobustnessProperties StructureType = 1000068002
+ StructureTypeImportMemoryWin32HandleInfo StructureType = 1000073000
+ StructureTypeExportMemoryWin32HandleInfo StructureType = 1000073001
+ StructureTypeMemoryWin32HandleProperties StructureType = 1000073002
+ StructureTypeMemoryGetWin32HandleInfo StructureType = 1000073003
+ StructureTypeImportMemoryFdInfo StructureType = 1000074000
+ StructureTypeMemoryFdProperties StructureType = 1000074001
+ StructureTypeMemoryGetFdInfo StructureType = 1000074002
+ StructureTypeWin32KeyedMutexAcquireReleaseInfo StructureType = 1000075000
+ StructureTypeImportSemaphoreWin32HandleInfo StructureType = 1000078000
+ StructureTypeExportSemaphoreWin32HandleInfo StructureType = 1000078001
+ StructureTypeD3d12FenceSubmitInfo StructureType = 1000078002
+ StructureTypeSemaphoreGetWin32HandleInfo StructureType = 1000078003
+ StructureTypeImportSemaphoreFdInfo StructureType = 1000079000
+ StructureTypeSemaphoreGetFdInfo StructureType = 1000079001
+ StructureTypePhysicalDevicePushDescriptorProperties StructureType = 1000080000
+ StructureTypeCommandBufferInheritanceConditionalRenderingInfo StructureType = 1000081000
+ StructureTypePhysicalDeviceConditionalRenderingFeatures StructureType = 1000081001
+ StructureTypeConditionalRenderingBeginInfo StructureType = 1000081002
+ StructureTypePresentRegions StructureType = 1000084000
+ StructureTypePipelineViewportWScalingStateCreateInfoNv StructureType = 1000087000
+ StructureTypeSurfaceCapabilities2 StructureType = 1000090000
+ StructureTypeDisplayPowerInfo StructureType = 1000091000
+ StructureTypeDeviceEventInfo StructureType = 1000091001
+ StructureTypeDisplayEventInfo StructureType = 1000091002
+ StructureTypeSwapchainCounterCreateInfo StructureType = 1000091003
+ StructureTypePresentTimesInfoGoogle StructureType = 1000092000
+ StructureTypePhysicalDeviceMultiviewPerViewAttributesPropertiesNvx StructureType = 1000097000
+ StructureTypePipelineViewportSwizzleStateCreateInfoNv StructureType = 1000098000
+ StructureTypePhysicalDeviceDiscardRectangleProperties StructureType = 1000099000
+ StructureTypePipelineDiscardRectangleStateCreateInfo StructureType = 1000099001
+ StructureTypePhysicalDeviceConservativeRasterizationProperties StructureType = 1000101000
+ StructureTypePipelineRasterizationConservativeStateCreateInfo StructureType = 1000101001
+ StructureTypePhysicalDeviceDepthClipEnableFeatures StructureType = 1000102000
+ StructureTypePipelineRasterizationDepthClipStateCreateInfo StructureType = 1000102001
+ StructureTypeHdrMetadata StructureType = 1000105000
+ StructureTypeSharedPresentSurfaceCapabilities StructureType = 1000111000
+ StructureTypeImportFenceWin32HandleInfo StructureType = 1000114000
+ StructureTypeExportFenceWin32HandleInfo StructureType = 1000114001
+ StructureTypeFenceGetWin32HandleInfo StructureType = 1000114002
+ StructureTypeImportFenceFdInfo StructureType = 1000115000
+ StructureTypeFenceGetFdInfo StructureType = 1000115001
+ StructureTypePhysicalDevicePerformanceQueryFeatures StructureType = 1000116000
+ StructureTypePhysicalDevicePerformanceQueryProperties StructureType = 1000116001
+ StructureTypeQueryPoolPerformanceCreateInfo StructureType = 1000116002
+ StructureTypePerformanceQuerySubmitInfo StructureType = 1000116003
+ StructureTypeAcquireProfilingLockInfo StructureType = 1000116004
+ StructureTypePerformanceCounter StructureType = 1000116005
+ StructureTypePerformanceCounterDescription StructureType = 1000116006
+ StructureTypePhysicalDeviceSurfaceInfo2 StructureType = 1000119000
+ StructureTypeSurfaceFormat2 StructureType = 1000119002
+ StructureTypeDisplayProperties2 StructureType = 1000121000
+ StructureTypeDisplayPlaneProperties2 StructureType = 1000121001
+ StructureTypeDisplayModeProperties2 StructureType = 1000121002
+ StructureTypeDisplayPlaneInfo2 StructureType = 1000121003
+ StructureTypeDisplayPlaneCapabilities2 StructureType = 1000121004
+ StructureTypeIosSurfaceCreateInfoMvk StructureType = 1000122000
+ StructureTypeMacosSurfaceCreateInfoMvk StructureType = 1000123000
+ StructureTypeDebugUtilsObjectNameInfo StructureType = 1000128000
+ StructureTypeDebugUtilsObjectTagInfo StructureType = 1000128001
+ StructureTypeDebugUtilsLabel StructureType = 1000128002
+ StructureTypeDebugUtilsMessengerCallbackData StructureType = 1000128003
+ StructureTypeDebugUtilsMessengerCreateInfo StructureType = 1000128004
+ StructureTypeAndroidHardwareBufferUsageAndroid StructureType = 1000129000
+ StructureTypeAndroidHardwareBufferPropertiesAndroid StructureType = 1000129001
+ StructureTypeAndroidHardwareBufferFormatPropertiesAndroid StructureType = 1000129002
+ StructureTypeImportAndroidHardwareBufferInfoAndroid StructureType = 1000129003
+ StructureTypeMemoryGetAndroidHardwareBufferInfoAndroid StructureType = 1000129004
+ StructureTypeExternalFormatAndroid StructureType = 1000129005
+ StructureTypeAndroidHardwareBufferFormatProperties2Android StructureType = 1000129006
+ StructureTypeSampleLocationsInfo StructureType = 1000143000
+ StructureTypeRenderPassSampleLocationsBeginInfo StructureType = 1000143001
+ StructureTypePipelineSampleLocationsStateCreateInfo StructureType = 1000143002
+ StructureTypePhysicalDeviceSampleLocationsProperties StructureType = 1000143003
+ StructureTypeMultisampleProperties StructureType = 1000143004
+ StructureTypePhysicalDeviceBlendOperationAdvancedFeatures StructureType = 1000148000
+ StructureTypePhysicalDeviceBlendOperationAdvancedProperties StructureType = 1000148001
+ StructureTypePipelineColorBlendAdvancedStateCreateInfo StructureType = 1000148002
+ StructureTypePipelineCoverageToColorStateCreateInfoNv StructureType = 1000149000
+ StructureTypeWriteDescriptorSetAccelerationStructure StructureType = 1000150007
+ StructureTypeAccelerationStructureBuildGeometryInfo StructureType = 1000150000
+ StructureTypeAccelerationStructureDeviceAddressInfo StructureType = 1000150002
+ StructureTypeAccelerationStructureGeometryAabbsData StructureType = 1000150003
+ StructureTypeAccelerationStructureGeometryInstancesData StructureType = 1000150004
+ StructureTypeAccelerationStructureGeometryTrianglesData StructureType = 1000150005
+ StructureTypeAccelerationStructureGeometry StructureType = 1000150006
+ StructureTypeAccelerationStructureVersionInfo StructureType = 1000150009
+ StructureTypeCopyAccelerationStructureInfo StructureType = 1000150010
+ StructureTypeCopyAccelerationStructureToMemoryInfo StructureType = 1000150011
+ StructureTypeCopyMemoryToAccelerationStructureInfo StructureType = 1000150012
+ StructureTypePhysicalDeviceAccelerationStructureFeatures StructureType = 1000150013
+ StructureTypePhysicalDeviceAccelerationStructureProperties StructureType = 1000150014
+ StructureTypeAccelerationStructureCreateInfo StructureType = 1000150017
+ StructureTypeAccelerationStructureBuildSizesInfo StructureType = 1000150020
+ StructureTypePhysicalDeviceRayTracingPipelineFeatures StructureType = 1000347000
+ StructureTypePhysicalDeviceRayTracingPipelineProperties StructureType = 1000347001
+ StructureTypeRayTracingPipelineCreateInfo StructureType = 1000150015
+ StructureTypeRayTracingShaderGroupCreateInfo StructureType = 1000150016
+ StructureTypeRayTracingPipelineInterfaceCreateInfo StructureType = 1000150018
+ StructureTypePhysicalDeviceRayQueryFeatures StructureType = 1000348013
+ StructureTypePipelineCoverageModulationStateCreateInfoNv StructureType = 1000152000
+ StructureTypePhysicalDeviceShaderSmBuiltinsFeaturesNv StructureType = 1000154000
+ StructureTypePhysicalDeviceShaderSmBuiltinsPropertiesNv StructureType = 1000154001
+ StructureTypeDrmFormatModifierPropertiesList StructureType = 1000158000
+ StructureTypePhysicalDeviceImageDrmFormatModifierInfo StructureType = 1000158002
+ StructureTypeImageDrmFormatModifierListCreateInfo StructureType = 1000158003
+ StructureTypeImageDrmFormatModifierExplicitCreateInfo StructureType = 1000158004
+ StructureTypeImageDrmFormatModifierProperties StructureType = 1000158005
+ StructureTypeDrmFormatModifierPropertiesList2 StructureType = 1000158006
+ StructureTypeValidationCacheCreateInfo StructureType = 1000160000
+ StructureTypeShaderModuleValidationCacheCreateInfo StructureType = 1000160001
+ StructureTypePhysicalDevicePortabilitySubsetFeatures StructureType = 1000163000
+ StructureTypePhysicalDevicePortabilitySubsetProperties StructureType = 1000163001
+ StructureTypePipelineViewportShadingRateImageStateCreateInfoNv StructureType = 1000164000
+ StructureTypePhysicalDeviceShadingRateImageFeaturesNv StructureType = 1000164001
+ StructureTypePhysicalDeviceShadingRateImagePropertiesNv StructureType = 1000164002
+ StructureTypePipelineViewportCoarseSampleOrderStateCreateInfoNv StructureType = 1000164005
+ StructureTypeRayTracingPipelineCreateInfoNv StructureType = 1000165000
+ StructureTypeAccelerationStructureCreateInfoNv StructureType = 1000165001
+ StructureTypeGeometryNv StructureType = 1000165003
+ StructureTypeGeometryTrianglesNv StructureType = 1000165004
+ StructureTypeGeometryAabbNv StructureType = 1000165005
+ StructureTypeBindAccelerationStructureMemoryInfoNv StructureType = 1000165006
+ StructureTypeWriteDescriptorSetAccelerationStructureNv StructureType = 1000165007
+ StructureTypeAccelerationStructureMemoryRequirementsInfoNv StructureType = 1000165008
+ StructureTypePhysicalDeviceRayTracingPropertiesNv StructureType = 1000165009
+ StructureTypeRayTracingShaderGroupCreateInfoNv StructureType = 1000165011
+ StructureTypeAccelerationStructureInfoNv StructureType = 1000165012
+ StructureTypePhysicalDeviceRepresentativeFragmentTestFeaturesNv StructureType = 1000166000
+ StructureTypePipelineRepresentativeFragmentTestStateCreateInfoNv StructureType = 1000166001
+ StructureTypePhysicalDeviceImageViewImageFormatInfo StructureType = 1000170000
+ StructureTypeFilterCubicImageViewImageFormatProperties StructureType = 1000170001
+ StructureTypeImportMemoryHostPointerInfo StructureType = 1000178000
+ StructureTypeMemoryHostPointerProperties StructureType = 1000178001
+ StructureTypePhysicalDeviceExternalMemoryHostProperties StructureType = 1000178002
+ StructureTypePhysicalDeviceShaderClockFeatures StructureType = 1000181000
+ StructureTypePipelineCompilerControlCreateInfoAmd StructureType = 1000183000
+ StructureTypeCalibratedTimestampInfo StructureType = 1000184000
+ StructureTypePhysicalDeviceShaderCorePropertiesAmd StructureType = 1000185000
+ StructureTypeVideoDecodeH265Capabilities StructureType = 1000187000
+ StructureTypeVideoDecodeH265SessionParametersCreateInfo StructureType = 1000187001
+ StructureTypeVideoDecodeH265SessionParametersAddInfo StructureType = 1000187002
+ StructureTypeVideoDecodeH265ProfileInfo StructureType = 1000187003
+ StructureTypeVideoDecodeH265PictureInfo StructureType = 1000187004
+ StructureTypeVideoDecodeH265DpbSlotInfo StructureType = 1000187005
+ StructureTypeDeviceQueueGlobalPriorityCreateInfo StructureType = 1000174000
+ StructureTypePhysicalDeviceGlobalPriorityQueryFeatures StructureType = 1000388000
+ StructureTypeQueueFamilyGlobalPriorityProperties StructureType = 1000388001
+ StructureTypeDeviceMemoryOverallocationCreateInfoAmd StructureType = 1000189000
+ StructureTypePhysicalDeviceVertexAttributeDivisorProperties StructureType = 1000190000
+ StructureTypePipelineVertexInputDivisorStateCreateInfo StructureType = 1000190001
+ StructureTypePhysicalDeviceVertexAttributeDivisorFeatures StructureType = 1000190002
+ StructureTypePresentFrameTokenGgp StructureType = 1000191000
+ StructureTypePhysicalDeviceComputeShaderDerivativesFeaturesNv StructureType = 1000201000
+ StructureTypePhysicalDeviceMeshShaderFeaturesNv StructureType = 1000202000
+ StructureTypePhysicalDeviceMeshShaderPropertiesNv StructureType = 1000202001
+ StructureTypePhysicalDeviceShaderImageFootprintFeaturesNv StructureType = 1000204000
+ StructureTypePipelineViewportExclusiveScissorStateCreateInfoNv StructureType = 1000205000
+ StructureTypePhysicalDeviceExclusiveScissorFeaturesNv StructureType = 1000205002
+ StructureTypeCheckpointDataNv StructureType = 1000206000
+ StructureTypeQueueFamilyCheckpointPropertiesNv StructureType = 1000206001
+ StructureTypePhysicalDeviceShaderIntegerFunctions2FeaturesIntel StructureType = 1000209000
+ StructureTypeQueryPoolPerformanceQueryCreateInfoIntel StructureType = 1000210000
+ StructureTypeInitializePerformanceApiInfoIntel StructureType = 1000210001
+ StructureTypePerformanceMarkerInfoIntel StructureType = 1000210002
+ StructureTypePerformanceStreamMarkerInfoIntel StructureType = 1000210003
+ StructureTypePerformanceOverrideInfoIntel StructureType = 1000210004
+ StructureTypePerformanceConfigurationAcquireInfoIntel StructureType = 1000210005
+ StructureTypePhysicalDevicePciBusInfoProperties StructureType = 1000212000
+ StructureTypeDisplayNativeHdrSurfaceCapabilitiesAmd StructureType = 1000213000
+ StructureTypeSwapchainDisplayNativeHdrCreateInfoAmd StructureType = 1000213001
+ StructureTypeImagepipeSurfaceCreateInfoFuchsia StructureType = 1000214000
+ StructureTypeMetalSurfaceCreateInfo StructureType = 1000217000
+ StructureTypePhysicalDeviceFragmentDensityMapFeatures StructureType = 1000218000
+ StructureTypePhysicalDeviceFragmentDensityMapProperties StructureType = 1000218001
+ StructureTypeRenderPassFragmentDensityMapCreateInfo StructureType = 1000218002
+ StructureTypeFragmentShadingRateAttachmentInfo StructureType = 1000226000
+ StructureTypePipelineFragmentShadingRateStateCreateInfo StructureType = 1000226001
+ StructureTypePhysicalDeviceFragmentShadingRateProperties StructureType = 1000226002
+ StructureTypePhysicalDeviceFragmentShadingRateFeatures StructureType = 1000226003
+ StructureTypePhysicalDeviceFragmentShadingRate StructureType = 1000226004
+ StructureTypePhysicalDeviceShaderCoreProperties2Amd StructureType = 1000227000
+ StructureTypePhysicalDeviceCoherentMemoryFeaturesAmd StructureType = 1000229000
+ StructureTypePhysicalDeviceShaderImageAtomicInt64Features StructureType = 1000234000
+ StructureTypePhysicalDeviceMemoryBudgetProperties StructureType = 1000237000
+ StructureTypePhysicalDeviceMemoryPriorityFeatures StructureType = 1000238000
+ StructureTypeMemoryPriorityAllocateInfo StructureType = 1000238001
+ StructureTypeSurfaceProtectedCapabilities StructureType = 1000239000
+ StructureTypePhysicalDeviceDedicatedAllocationImageAliasingFeaturesNv StructureType = 1000240000
+ StructureTypeBufferDeviceAddressCreateInfo StructureType = 1000244002
+ StructureTypeValidationFeatures StructureType = 1000247000
+ StructureTypePhysicalDevicePresentWaitFeatures StructureType = 1000248000
+ StructureTypePhysicalDeviceCooperativeMatrixFeaturesNv StructureType = 1000249000
+ StructureTypeCooperativeMatrixPropertiesNv StructureType = 1000249001
+ StructureTypePhysicalDeviceCooperativeMatrixPropertiesNv StructureType = 1000249002
+ StructureTypePhysicalDeviceCoverageReductionModeFeaturesNv StructureType = 1000250000
+ StructureTypePipelineCoverageReductionStateCreateInfoNv StructureType = 1000250001
+ StructureTypeFramebufferMixedSamplesCombinationNv StructureType = 1000250002
+ StructureTypePhysicalDeviceFragmentShaderInterlockFeatures StructureType = 1000251000
+ StructureTypePhysicalDeviceYcbcrImageArraysFeatures StructureType = 1000252000
+ StructureTypePhysicalDeviceProvokingVertexFeatures StructureType = 1000254000
+ StructureTypePipelineRasterizationProvokingVertexStateCreateInfo StructureType = 1000254001
+ StructureTypePhysicalDeviceProvokingVertexProperties StructureType = 1000254002
+ StructureTypeSurfaceFullScreenExclusiveInfo StructureType = 1000255000
+ StructureTypeSurfaceCapabilitiesFullScreenExclusive StructureType = 1000255002
+ StructureTypeSurfaceFullScreenExclusiveWin32Info StructureType = 1000255001
+ StructureTypeHeadlessSurfaceCreateInfo StructureType = 1000256000
+ StructureTypePhysicalDeviceLineRasterizationFeatures StructureType = 1000259000
+ StructureTypePipelineRasterizationLineStateCreateInfo StructureType = 1000259001
+ StructureTypePhysicalDeviceLineRasterizationProperties StructureType = 1000259002
+ StructureTypePhysicalDeviceShaderAtomicFloatFeatures StructureType = 1000260000
+ StructureTypePhysicalDeviceIndexTypeUint8Features StructureType = 1000265000
+ StructureTypePhysicalDeviceExtendedDynamicStateFeatures StructureType = 1000267000
+ StructureTypePhysicalDevicePipelineExecutablePropertiesFeatures StructureType = 1000269000
+ StructureTypePipelineInfo StructureType = 1000269001
+ StructureTypePipelineExecutableProperties StructureType = 1000269002
+ StructureTypePipelineExecutableInfo StructureType = 1000269003
+ StructureTypePipelineExecutableStatistic StructureType = 1000269004
+ StructureTypePipelineExecutableInternalRepresentation StructureType = 1000269005
+ StructureTypePhysicalDeviceShaderAtomicFloat2Features StructureType = 1000273000
+ StructureTypeSurfacePresentMode StructureType = 1000274000
+ StructureTypeSurfacePresentScalingCapabilities StructureType = 1000274001
+ StructureTypeSurfacePresentModeCompatibility StructureType = 1000274002
+ StructureTypePhysicalDeviceSwapchainMaintenance1Features StructureType = 1000275000
+ StructureTypeSwapchainPresentFenceInfo StructureType = 1000275001
+ StructureTypeSwapchainPresentModesCreateInfo StructureType = 1000275002
+ StructureTypeSwapchainPresentModeInfo StructureType = 1000275003
+ StructureTypeSwapchainPresentScalingCreateInfo StructureType = 1000275004
+ StructureTypeReleaseSwapchainImagesInfo StructureType = 1000275005
+ StructureTypePhysicalDeviceDeviceGeneratedCommandsPropertiesNv StructureType = 1000277000
+ StructureTypeGraphicsShaderGroupCreateInfoNv StructureType = 1000277001
+ StructureTypeGraphicsPipelineShaderGroupsCreateInfoNv StructureType = 1000277002
+ StructureTypeIndirectCommandsLayoutTokenNv StructureType = 1000277003
+ StructureTypeIndirectCommandsLayoutCreateInfoNv StructureType = 1000277004
+ StructureTypeGeneratedCommandsInfoNv StructureType = 1000277005
+ StructureTypeGeneratedCommandsMemoryRequirementsInfoNv StructureType = 1000277006
+ StructureTypePhysicalDeviceDeviceGeneratedCommandsFeaturesNv StructureType = 1000277007
+ StructureTypePhysicalDeviceInheritedViewportScissorFeaturesNv StructureType = 1000278000
+ StructureTypeCommandBufferInheritanceViewportScissorInfoNv StructureType = 1000278001
+ StructureTypePhysicalDeviceTexelBufferAlignmentFeatures StructureType = 1000281000
+ StructureTypeCommandBufferInheritanceRenderPassTransformInfoQcom StructureType = 1000282000
+ StructureTypeRenderPassTransformBeginInfoQcom StructureType = 1000282001
+ StructureTypePhysicalDeviceDeviceMemoryReportFeatures StructureType = 1000284000
+ StructureTypeDeviceDeviceMemoryReportCreateInfo StructureType = 1000284001
+ StructureTypeDeviceMemoryReportCallbackData StructureType = 1000284002
+ StructureTypePhysicalDeviceRobustness2Features StructureType = 1000286000
+ StructureTypePhysicalDeviceRobustness2Properties StructureType = 1000286001
+ StructureTypeSamplerCustomBorderColorCreateInfo StructureType = 1000287000
+ StructureTypePhysicalDeviceCustomBorderColorProperties StructureType = 1000287001
+ StructureTypePhysicalDeviceCustomBorderColorFeatures StructureType = 1000287002
+ StructureTypePipelineLibraryCreateInfo StructureType = 1000290000
+ StructureTypePhysicalDevicePresentBarrierFeaturesNv StructureType = 1000292000
+ StructureTypeSurfaceCapabilitiesPresentBarrierNv StructureType = 1000292001
+ StructureTypeSwapchainPresentBarrierCreateInfoNv StructureType = 1000292002
+ StructureTypePresentId StructureType = 1000294000
+ StructureTypePhysicalDevicePresentIdFeatures StructureType = 1000294001
+ StructureTypeVideoEncodeInfo StructureType = 1000299000
+ StructureTypeVideoEncodeRateControlInfo StructureType = 1000299001
+ StructureTypeVideoEncodeRateControlLayerInfo StructureType = 1000299002
+ StructureTypeVideoEncodeCapabilities StructureType = 1000299003
+ StructureTypeVideoEncodeUsageInfo StructureType = 1000299004
+ StructureTypePhysicalDeviceDiagnosticsConfigFeaturesNv StructureType = 1000300000
+ StructureTypeDeviceDiagnosticsConfigCreateInfoNv StructureType = 1000300001
+ StructureTypeExportMetalObjectCreateInfo StructureType = 1000311000
+ StructureTypeExportMetalObjectsInfo StructureType = 1000311001
+ StructureTypeExportMetalDeviceInfo StructureType = 1000311002
+ StructureTypeExportMetalCommandQueueInfo StructureType = 1000311003
+ StructureTypeExportMetalBufferInfo StructureType = 1000311004
+ StructureTypeImportMetalBufferInfo StructureType = 1000311005
+ StructureTypeExportMetalTextureInfo StructureType = 1000311006
+ StructureTypeImportMetalTextureInfo StructureType = 1000311007
+ StructureTypeExportMetalIoSurfaceInfo StructureType = 1000311008
+ StructureTypeImportMetalIoSurfaceInfo StructureType = 1000311009
+ StructureTypeExportMetalSharedEventInfo StructureType = 1000311010
+ StructureTypeImportMetalSharedEventInfo StructureType = 1000311011
+ StructureTypeQueueFamilyCheckpointProperties2Nv StructureType = 1000314008
+ StructureTypeCheckpointData2Nv StructureType = 1000314009
+ StructureTypePhysicalDeviceDescriptorBufferProperties StructureType = 1000316000
+ StructureTypePhysicalDeviceDescriptorBufferDensityMapProperties StructureType = 1000316001
+ StructureTypePhysicalDeviceDescriptorBufferFeatures StructureType = 1000316002
+ StructureTypeDescriptorAddressInfo StructureType = 1000316003
+ StructureTypeDescriptorGetInfo StructureType = 1000316004
+ StructureTypeBufferCaptureDescriptorDataInfo StructureType = 1000316005
+ StructureTypeImageCaptureDescriptorDataInfo StructureType = 1000316006
+ StructureTypeImageViewCaptureDescriptorDataInfo StructureType = 1000316007
+ StructureTypeSamplerCaptureDescriptorDataInfo StructureType = 1000316008
+ StructureTypeOpaqueCaptureDescriptorDataCreateInfo StructureType = 1000316010
+ StructureTypeDescriptorBufferBindingInfo StructureType = 1000316011
+ StructureTypeDescriptorBufferBindingPushDescriptorBufferHandle StructureType = 1000316012
+ StructureTypeAccelerationStructureCaptureDescriptorDataInfo StructureType = 1000316009
+ StructureTypePhysicalDeviceGraphicsPipelineLibraryFeatures StructureType = 1000320000
+ StructureTypePhysicalDeviceGraphicsPipelineLibraryProperties StructureType = 1000320001
+ StructureTypeGraphicsPipelineLibraryCreateInfo StructureType = 1000320002
+ StructureTypePhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAmd StructureType = 1000321000
+ StructureTypePhysicalDeviceFragmentShaderBarycentricFeatures StructureType = 1000203000
+ StructureTypePhysicalDeviceFragmentShaderBarycentricProperties StructureType = 1000322000
+ StructureTypePhysicalDeviceShaderSubgroupUniformControlFlowFeatures StructureType = 1000323000
+ StructureTypePhysicalDeviceFragmentShadingRateEnumsPropertiesNv StructureType = 1000326000
+ StructureTypePhysicalDeviceFragmentShadingRateEnumsFeaturesNv StructureType = 1000326001
+ StructureTypePipelineFragmentShadingRateEnumStateCreateInfoNv StructureType = 1000326002
+ StructureTypeAccelerationStructureGeometryMotionTrianglesDataNv StructureType = 1000327000
+ StructureTypePhysicalDeviceRayTracingMotionBlurFeaturesNv StructureType = 1000327001
+ StructureTypeAccelerationStructureMotionInfoNv StructureType = 1000327002
+ StructureTypePhysicalDeviceMeshShaderFeatures StructureType = 1000328000
+ StructureTypePhysicalDeviceMeshShaderProperties StructureType = 1000328001
+ StructureTypePhysicalDeviceYcbcr2Plane444FormatsFeatures StructureType = 1000330000
+ StructureTypePhysicalDeviceFragmentDensityMap2Features StructureType = 1000332000
+ StructureTypePhysicalDeviceFragmentDensityMap2Properties StructureType = 1000332001
+ StructureTypeCopyCommandTransformInfoQcom StructureType = 1000333000
+ StructureTypePhysicalDeviceWorkgroupMemoryExplicitLayoutFeatures StructureType = 1000336000
+ StructureTypePhysicalDeviceImageCompressionControlFeatures StructureType = 1000338000
+ StructureTypeImageCompressionControl StructureType = 1000338001
+ StructureTypeSubresourceLayout2 StructureType = 1000338002
+ StructureTypeImageSubresource2 StructureType = 1000338003
+ StructureTypeImageCompressionProperties StructureType = 1000338004
+ StructureTypePhysicalDeviceAttachmentFeedbackLoopLayoutFeatures StructureType = 1000339000
+ StructureTypePhysicalDevice4444FormatsFeatures StructureType = 1000340000
+ StructureTypePhysicalDeviceFaultFeatures StructureType = 1000341000
+ StructureTypeDeviceFaultCounts StructureType = 1000341001
+ StructureTypeDeviceFaultInfo StructureType = 1000341002
+ StructureTypePhysicalDeviceRgba10x6FormatsFeatures StructureType = 1000344000
+ StructureTypeDirectfbSurfaceCreateInfo StructureType = 1000346000
+ StructureTypePhysicalDeviceVertexInputDynamicStateFeatures StructureType = 1000352000
+ StructureTypeVertexInputBindingDescription2 StructureType = 1000352001
+ StructureTypeVertexInputAttributeDescription2 StructureType = 1000352002
+ StructureTypePhysicalDeviceDrmProperties StructureType = 1000353000
+ StructureTypePhysicalDeviceAddressBindingReportFeatures StructureType = 1000354000
+ StructureTypeDeviceAddressBindingCallbackData StructureType = 1000354001
+ StructureTypePhysicalDeviceDepthClipControlFeatures StructureType = 1000355000
+ StructureTypePipelineViewportDepthClipControlCreateInfo StructureType = 1000355001
+ StructureTypePhysicalDevicePrimitiveTopologyListRestartFeatures StructureType = 1000356000
+ StructureTypeImportMemoryZirconHandleInfoFuchsia StructureType = 1000364000
+ StructureTypeMemoryZirconHandlePropertiesFuchsia StructureType = 1000364001
+ StructureTypeMemoryGetZirconHandleInfoFuchsia StructureType = 1000364002
+ StructureTypeImportSemaphoreZirconHandleInfoFuchsia StructureType = 1000365000
+ StructureTypeSemaphoreGetZirconHandleInfoFuchsia StructureType = 1000365001
+ StructureTypeBufferCollectionCreateInfoFuchsia StructureType = 1000366000
+ StructureTypeImportMemoryBufferCollectionFuchsia StructureType = 1000366001
+ StructureTypeBufferCollectionImageCreateInfoFuchsia StructureType = 1000366002
+ StructureTypeBufferCollectionPropertiesFuchsia StructureType = 1000366003
+ StructureTypeBufferConstraintsInfoFuchsia StructureType = 1000366004
+ StructureTypeBufferCollectionBufferCreateInfoFuchsia StructureType = 1000366005
+ StructureTypeImageConstraintsInfoFuchsia StructureType = 1000366006
+ StructureTypeImageFormatConstraintsInfoFuchsia StructureType = 1000366007
+ StructureTypeSysmemColorSpaceFuchsia StructureType = 1000366008
+ StructureTypeBufferCollectionConstraintsInfoFuchsia StructureType = 1000366009
+ StructureTypeSubpassShadingPipelineCreateInfoHuawei StructureType = 1000369000
+ StructureTypePhysicalDeviceSubpassShadingFeaturesHuawei StructureType = 1000369001
+ StructureTypePhysicalDeviceSubpassShadingPropertiesHuawei StructureType = 1000369002
+ StructureTypePhysicalDeviceInvocationMaskFeaturesHuawei StructureType = 1000370000
+ StructureTypeMemoryGetRemoteAddressInfoNv StructureType = 1000371000
+ StructureTypePhysicalDeviceExternalMemoryRdmaFeaturesNv StructureType = 1000371001
+ StructureTypePipelinePropertiesIdentifier StructureType = 1000372000
+ StructureTypePhysicalDevicePipelinePropertiesFeatures StructureType = 1000372001
+ StructureTypePhysicalDeviceMultisampledRenderToSingleSampledFeatures StructureType = 1000376000
+ StructureTypeSubpassResolvePerformanceQuery StructureType = 1000376001
+ StructureTypeMultisampledRenderToSingleSampledInfo StructureType = 1000376002
+ StructureTypePhysicalDeviceExtendedDynamicState2Features StructureType = 1000377000
+ StructureTypeScreenSurfaceCreateInfoQnx StructureType = 1000378000
+ StructureTypePhysicalDeviceColorWriteEnableFeatures StructureType = 1000381000
+ StructureTypePipelineColorWriteCreateInfo StructureType = 1000381001
+ StructureTypePhysicalDevicePrimitivesGeneratedQueryFeatures StructureType = 1000382000
+ StructureTypePhysicalDeviceRayTracingMaintenance1Features StructureType = 1000386000
+ StructureTypePhysicalDeviceImageViewMinLodFeatures StructureType = 1000391000
+ StructureTypeImageViewMinLodCreateInfo StructureType = 1000391001
+ StructureTypePhysicalDeviceMultiDrawFeatures StructureType = 1000392000
+ StructureTypePhysicalDeviceMultiDrawProperties StructureType = 1000392001
+ StructureTypePhysicalDeviceImage2dViewOf3dFeatures StructureType = 1000393000
+ StructureTypeMicromapBuildInfo StructureType = 1000396000
+ StructureTypeMicromapVersionInfo StructureType = 1000396001
+ StructureTypeCopyMicromapInfo StructureType = 1000396002
+ StructureTypeCopyMicromapToMemoryInfo StructureType = 1000396003
+ StructureTypeCopyMemoryToMicromapInfo StructureType = 1000396004
+ StructureTypePhysicalDeviceOpacityMicromapFeatures StructureType = 1000396005
+ StructureTypePhysicalDeviceOpacityMicromapProperties StructureType = 1000396006
+ StructureTypeMicromapCreateInfo StructureType = 1000396007
+ StructureTypeMicromapBuildSizesInfo StructureType = 1000396008
+ StructureTypeAccelerationStructureTrianglesOpacityMicromap StructureType = 1000396009
+ StructureTypePhysicalDeviceClusterCullingShaderFeaturesHuawei StructureType = 1000404000
+ StructureTypePhysicalDeviceClusterCullingShaderPropertiesHuawei StructureType = 1000404001
+ StructureTypePhysicalDeviceBorderColorSwizzleFeatures StructureType = 1000411000
+ StructureTypeSamplerBorderColorComponentMappingCreateInfo StructureType = 1000411001
+ StructureTypePhysicalDevicePageableDeviceLocalMemoryFeatures StructureType = 1000412000
+ StructureTypePhysicalDeviceDescriptorSetHostMappingFeaturesValve StructureType = 1000420000
+ StructureTypeDescriptorSetBindingReferenceValve StructureType = 1000420001
+ StructureTypeDescriptorSetLayoutHostMappingInfoValve StructureType = 1000420002
+ StructureTypePhysicalDeviceDepthClampZeroOneFeatures StructureType = 1000421000
+ StructureTypePhysicalDeviceNonSeamlessCubeMapFeatures StructureType = 1000422000
+ StructureTypePhysicalDeviceFragmentDensityMapOffsetFeaturesQcom StructureType = 1000425000
+ StructureTypePhysicalDeviceFragmentDensityMapOffsetPropertiesQcom StructureType = 1000425001
+ StructureTypeSubpassFragmentDensityMapOffsetEndInfoQcom StructureType = 1000425002
+ StructureTypePhysicalDeviceCopyMemoryIndirectFeaturesNv StructureType = 1000426000
+ StructureTypePhysicalDeviceCopyMemoryIndirectPropertiesNv StructureType = 1000426001
+ StructureTypePhysicalDeviceMemoryDecompressionFeaturesNv StructureType = 1000427000
+ StructureTypePhysicalDeviceMemoryDecompressionPropertiesNv StructureType = 1000427001
+ StructureTypePhysicalDeviceLinearColorAttachmentFeaturesNv StructureType = 1000430000
+ StructureTypePhysicalDeviceImageCompressionControlSwapchainFeatures StructureType = 1000437000
+ StructureTypePhysicalDeviceImageProcessingFeaturesQcom StructureType = 1000440000
+ StructureTypePhysicalDeviceImageProcessingPropertiesQcom StructureType = 1000440001
+ StructureTypeImageViewSampleWeightCreateInfoQcom StructureType = 1000440002
+ StructureTypePhysicalDeviceExtendedDynamicState3Features StructureType = 1000455000
+ StructureTypePhysicalDeviceExtendedDynamicState3Properties StructureType = 1000455001
+ StructureTypePhysicalDeviceSubpassMergeFeedbackFeatures StructureType = 1000458000
+ StructureTypeRenderPassCreationControl StructureType = 1000458001
+ StructureTypeRenderPassCreationFeedbackCreateInfo StructureType = 1000458002
+ StructureTypeRenderPassSubpassFeedbackCreateInfo StructureType = 1000458003
+ StructureTypeDirectDriverLoadingInfoLunarg StructureType = 1000459000
+ StructureTypeDirectDriverLoadingListLunarg StructureType = 1000459001
+ StructureTypePhysicalDeviceShaderModuleIdentifierFeatures StructureType = 1000462000
+ StructureTypePhysicalDeviceShaderModuleIdentifierProperties StructureType = 1000462001
+ StructureTypePipelineShaderStageModuleIdentifierCreateInfo StructureType = 1000462002
+ StructureTypeShaderModuleIdentifier StructureType = 1000462003
+ StructureTypePhysicalDeviceRasterizationOrderAttachmentAccessFeatures StructureType = 1000342000
+ StructureTypePhysicalDeviceOpticalFlowFeaturesNv StructureType = 1000464000
+ StructureTypePhysicalDeviceOpticalFlowPropertiesNv StructureType = 1000464001
+ StructureTypeOpticalFlowImageFormatInfoNv StructureType = 1000464002
+ StructureTypeOpticalFlowImageFormatPropertiesNv StructureType = 1000464003
+ StructureTypeOpticalFlowSessionCreateInfoNv StructureType = 1000464004
+ StructureTypeOpticalFlowExecuteInfoNv StructureType = 1000464005
+ StructureTypeOpticalFlowSessionCreatePrivateDataInfoNv StructureType = 1000464010
+ StructureTypePhysicalDeviceLegacyDitheringFeatures StructureType = 1000465000
+ StructureTypePhysicalDevicePipelineProtectedAccessFeatures StructureType = 1000466000
+ StructureTypePhysicalDeviceTilePropertiesFeaturesQcom StructureType = 1000484000
+ StructureTypeTilePropertiesQcom StructureType = 1000484001
+ StructureTypePhysicalDeviceAmigoProfilingFeaturesSec StructureType = 1000485000
+ StructureTypeAmigoProfilingSubmitInfoSec StructureType = 1000485001
+ StructureTypePhysicalDeviceMultiviewPerViewViewportsFeaturesQcom StructureType = 1000488000
+ StructureTypePhysicalDeviceRayTracingInvocationReorderFeaturesNv StructureType = 1000490000
+ StructureTypePhysicalDeviceRayTracingInvocationReorderPropertiesNv StructureType = 1000490001
+ StructureTypePhysicalDeviceMutableDescriptorTypeFeatures StructureType = 1000351000
+ StructureTypeMutableDescriptorTypeCreateInfo StructureType = 1000351002
+ StructureTypePhysicalDeviceShaderCoreBuiltinsFeaturesArm StructureType = 1000497000
+ StructureTypePhysicalDeviceShaderCoreBuiltinsPropertiesArm StructureType = 1000497001
+ StructureTypePhysicalDeviceVariablePointerFeatures StructureType = 1000120000
+ StructureTypePhysicalDeviceShaderDrawParameterFeatures StructureType = 1000063000
+ StructureTypeDebugReportCreateInfo StructureType = 1000011000
+ StructureTypeAttachmentSampleCountInfoNv StructureType = 1000044008
+ StructureTypePhysicalDeviceFloat16Int8Features StructureType = 1000082000
+ StructureTypePhysicalDeviceFragmentShaderBarycentricFeaturesNv StructureType = 1000203000
+ StructureTypeQueryPoolCreateInfoIntel StructureType = 1000210000
+ StructureTypePhysicalDeviceBufferAddressFeatures StructureType = 1000244000
+ StructureTypePhysicalDeviceRasterizationOrderAttachmentAccessFeaturesArm StructureType = 1000342000
+ StructureTypePhysicalDeviceMutableDescriptorTypeFeaturesValve StructureType = 1000351000
+ StructureTypeMutableDescriptorTypeCreateInfoValve StructureType = 1000351002
+ StructureTypeMaxEnum StructureType = 2147483647
+)
+
+// PipelineCacheHeaderVersion as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCacheHeaderVersion.html
+type PipelineCacheHeaderVersion int32
+
+// PipelineCacheHeaderVersion enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCacheHeaderVersion.html
+const (
+ PipelineCacheHeaderVersion1 PipelineCacheHeaderVersion = 1
+ PipelineCacheHeaderVersionMaxEnum PipelineCacheHeaderVersion = 2147483647
+)
+
+// ImageLayout as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageLayout.html
+type ImageLayout int32
+
+// ImageLayout enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageLayout.html
+const (
+ ImageLayoutUndefined ImageLayout = iota
+ ImageLayoutGeneral ImageLayout = 1
+ ImageLayoutColorAttachmentOptimal ImageLayout = 2
+ ImageLayoutDepthStencilAttachmentOptimal ImageLayout = 3
+ ImageLayoutDepthStencilReadOnlyOptimal ImageLayout = 4
+ ImageLayoutShaderReadOnlyOptimal ImageLayout = 5
+ ImageLayoutTransferSrcOptimal ImageLayout = 6
+ ImageLayoutTransferDstOptimal ImageLayout = 7
+ ImageLayoutPreinitialized ImageLayout = 8
+ ImageLayoutDepthReadOnlyStencilAttachmentOptimal ImageLayout = 1000117000
+ ImageLayoutDepthAttachmentStencilReadOnlyOptimal ImageLayout = 1000117001
+ ImageLayoutDepthAttachmentOptimal ImageLayout = 1000241000
+ ImageLayoutDepthReadOnlyOptimal ImageLayout = 1000241001
+ ImageLayoutStencilAttachmentOptimal ImageLayout = 1000241002
+ ImageLayoutStencilReadOnlyOptimal ImageLayout = 1000241003
+ ImageLayoutReadOnlyOptimal ImageLayout = 1000314000
+ ImageLayoutAttachmentOptimal ImageLayout = 1000314001
+ ImageLayoutPresentSrc ImageLayout = 1000001002
+ ImageLayoutVideoDecodeDst ImageLayout = 1000024000
+ ImageLayoutVideoDecodeSrc ImageLayout = 1000024001
+ ImageLayoutVideoDecodeDpb ImageLayout = 1000024002
+ ImageLayoutSharedPresent ImageLayout = 1000111000
+ ImageLayoutFragmentDensityMapOptimal ImageLayout = 1000218000
+ ImageLayoutFragmentShadingRateAttachmentOptimal ImageLayout = 1000164003
+ ImageLayoutVideoEncodeDst ImageLayout = 1000299000
+ ImageLayoutVideoEncodeSrc ImageLayout = 1000299001
+ ImageLayoutVideoEncodeDpb ImageLayout = 1000299002
+ ImageLayoutAttachmentFeedbackLoopOptimal ImageLayout = 1000339000
+ ImageLayoutShadingRateOptimalNv ImageLayout = 1000164003
+ ImageLayoutMaxEnum ImageLayout = 2147483647
+)
+
+// ObjectType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkObjectType.html
+type ObjectType int32
+
+// ObjectType enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkObjectType.html
+const (
+ ObjectTypeUnknown ObjectType = iota
+ ObjectTypeInstance ObjectType = 1
+ ObjectTypePhysicalDevice ObjectType = 2
+ ObjectTypeDevice ObjectType = 3
+ ObjectTypeQueue ObjectType = 4
+ ObjectTypeSemaphore ObjectType = 5
+ ObjectTypeCommandBuffer ObjectType = 6
+ ObjectTypeFence ObjectType = 7
+ ObjectTypeDeviceMemory ObjectType = 8
+ ObjectTypeBuffer ObjectType = 9
+ ObjectTypeImage ObjectType = 10
+ ObjectTypeEvent ObjectType = 11
+ ObjectTypeQueryPool ObjectType = 12
+ ObjectTypeBufferView ObjectType = 13
+ ObjectTypeImageView ObjectType = 14
+ ObjectTypeShaderModule ObjectType = 15
+ ObjectTypePipelineCache ObjectType = 16
+ ObjectTypePipelineLayout ObjectType = 17
+ ObjectTypeRenderPass ObjectType = 18
+ ObjectTypePipeline ObjectType = 19
+ ObjectTypeDescriptorSetLayout ObjectType = 20
+ ObjectTypeSampler ObjectType = 21
+ ObjectTypeDescriptorPool ObjectType = 22
+ ObjectTypeDescriptorSet ObjectType = 23
+ ObjectTypeFramebuffer ObjectType = 24
+ ObjectTypeCommandPool ObjectType = 25
+ ObjectTypeSamplerYcbcrConversion ObjectType = 1000156000
+ ObjectTypeDescriptorUpdateTemplate ObjectType = 1000085000
+ ObjectTypePrivateDataSlot ObjectType = 1000295000
+ ObjectTypeSurface ObjectType = 1000000000
+ ObjectTypeSwapchain ObjectType = 1000001000
+ ObjectTypeDisplay ObjectType = 1000002000
+ ObjectTypeDisplayMode ObjectType = 1000002001
+ ObjectTypeDebugReportCallback ObjectType = 1000011000
+ ObjectTypeVideoSession ObjectType = 1000023000
+ ObjectTypeVideoSessionParameters ObjectType = 1000023001
+ ObjectTypeCuModuleNvx ObjectType = 1000029000
+ ObjectTypeCuFunctionNvx ObjectType = 1000029001
+ ObjectTypeDebugUtilsMessenger ObjectType = 1000128000
+ ObjectTypeAccelerationStructure ObjectType = 1000150000
+ ObjectTypeValidationCache ObjectType = 1000160000
+ ObjectTypeAccelerationStructureNv ObjectType = 1000165000
+ ObjectTypePerformanceConfigurationIntel ObjectType = 1000210000
+ ObjectTypeDeferredOperation ObjectType = 1000268000
+ ObjectTypeIndirectCommandsLayoutNv ObjectType = 1000277000
+ ObjectTypeBufferCollectionFuchsia ObjectType = 1000366000
+ ObjectTypeMicromap ObjectType = 1000396000
+ ObjectTypeOpticalFlowSessionNv ObjectType = 1000464000
+ ObjectTypeMaxEnum ObjectType = 2147483647
+)
+
+// VendorId as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkVendorId.html
+type VendorId int32
+
+// VendorId enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkVendorId.html
+const (
+ VendorIdViv VendorId = 65537
+ VendorIdVsi VendorId = 65538
+ VendorIdKazan VendorId = 65539
+ VendorIdCodeplay VendorId = 65540
+ VendorIdMesa VendorId = 65541
+ VendorIdPocl VendorId = 65542
+ VendorIdMaxEnum VendorId = 2147483647
)
// SystemAllocationScope as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSystemAllocationScope.html
@@ -1180,15 +2371,12 @@ type SystemAllocationScope int32
// SystemAllocationScope enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSystemAllocationScope.html
const (
- SystemAllocationScopeCommand SystemAllocationScope = iota
- SystemAllocationScopeObject SystemAllocationScope = 1
- SystemAllocationScopeCache SystemAllocationScope = 2
- SystemAllocationScopeDevice SystemAllocationScope = 3
- SystemAllocationScopeInstance SystemAllocationScope = 4
- SystemAllocationScopeBeginRange SystemAllocationScope = 0
- SystemAllocationScopeEndRange SystemAllocationScope = 4
- SystemAllocationScopeRangeSize SystemAllocationScope = 5
- SystemAllocationScopeMaxEnum SystemAllocationScope = 2147483647
+ SystemAllocationScopeCommand SystemAllocationScope = iota
+ SystemAllocationScopeObject SystemAllocationScope = 1
+ SystemAllocationScopeCache SystemAllocationScope = 2
+ SystemAllocationScopeDevice SystemAllocationScope = 3
+ SystemAllocationScopeInstance SystemAllocationScope = 4
+ SystemAllocationScopeMaxEnum SystemAllocationScope = 2147483647
)
// InternalAllocationType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkInternalAllocationType.html
@@ -1197,9 +2385,6 @@ type InternalAllocationType int32
// InternalAllocationType enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkInternalAllocationType.html
const (
InternalAllocationTypeExecutable InternalAllocationType = iota
- InternalAllocationTypeBeginRange InternalAllocationType = 0
- InternalAllocationTypeEndRange InternalAllocationType = 0
- InternalAllocationTypeRangeSize InternalAllocationType = 1
InternalAllocationTypeMaxEnum InternalAllocationType = 2147483647
)
@@ -1427,6 +2612,26 @@ const (
FormatG16B16R163plane422Unorm Format = 1000156031
FormatG16B16r162plane422Unorm Format = 1000156032
FormatG16B16R163plane444Unorm Format = 1000156033
+ FormatG8B8r82plane444Unorm Format = 1000330000
+ FormatG10x6B10x6r10x62plane444Unorm3pack16 Format = 1000330001
+ FormatG12x4B12x4r12x42plane444Unorm3pack16 Format = 1000330002
+ FormatG16B16r162plane444Unorm Format = 1000330003
+ FormatA4r4g4b4UnormPack16 Format = 1000340000
+ FormatA4b4g4r4UnormPack16 Format = 1000340001
+ FormatAstc4x4SfloatBlock Format = 1000066000
+ FormatAstc5x4SfloatBlock Format = 1000066001
+ FormatAstc5x5SfloatBlock Format = 1000066002
+ FormatAstc6x5SfloatBlock Format = 1000066003
+ FormatAstc6x6SfloatBlock Format = 1000066004
+ FormatAstc8x5SfloatBlock Format = 1000066005
+ FormatAstc8x6SfloatBlock Format = 1000066006
+ FormatAstc8x8SfloatBlock Format = 1000066007
+ FormatAstc10x5SfloatBlock Format = 1000066008
+ FormatAstc10x6SfloatBlock Format = 1000066009
+ FormatAstc10x8SfloatBlock Format = 1000066010
+ FormatAstc10x10SfloatBlock Format = 1000066011
+ FormatAstc12x10SfloatBlock Format = 1000066012
+ FormatAstc12x12SfloatBlock Format = 1000066013
FormatPvrtc12bppUnormBlockImg Format = 1000054000
FormatPvrtc14bppUnormBlockImg Format = 1000054001
FormatPvrtc22bppUnormBlockImg Format = 1000054002
@@ -1435,26 +2640,10 @@ const (
FormatPvrtc14bppSrgbBlockImg Format = 1000054005
FormatPvrtc22bppSrgbBlockImg Format = 1000054006
FormatPvrtc24bppSrgbBlockImg Format = 1000054007
- FormatBeginRange Format = 0
- FormatEndRange Format = 184
- FormatRangeSize Format = 185
+ FormatR16g16S105Nv Format = 1000464000
FormatMaxEnum Format = 2147483647
)
-// ImageType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageType.html
-type ImageType int32
-
-// ImageType enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageType.html
-const (
- ImageType1d ImageType = iota
- ImageType2d ImageType = 1
- ImageType3d ImageType = 2
- ImageTypeBeginRange ImageType = 0
- ImageTypeEndRange ImageType = 2
- ImageTypeRangeSize ImageType = 3
- ImageTypeMaxEnum ImageType = 2147483647
-)
-
// ImageTiling as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageTiling.html
type ImageTiling int32
@@ -1463,12 +2652,20 @@ const (
ImageTilingOptimal ImageTiling = iota
ImageTilingLinear ImageTiling = 1
ImageTilingDrmFormatModifier ImageTiling = 1000158000
- ImageTilingBeginRange ImageTiling = 0
- ImageTilingEndRange ImageTiling = 1
- ImageTilingRangeSize ImageTiling = 2
ImageTilingMaxEnum ImageTiling = 2147483647
)
+// ImageType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageType.html
+type ImageType int32
+
+// ImageType enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageType.html
+const (
+ ImageType1d ImageType = iota
+ ImageType2d ImageType = 1
+ ImageType3d ImageType = 2
+ ImageTypeMaxEnum ImageType = 2147483647
+)
+
// PhysicalDeviceType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceType.html
type PhysicalDeviceType int32
@@ -1479,9 +2676,6 @@ const (
PhysicalDeviceTypeDiscreteGpu PhysicalDeviceType = 2
PhysicalDeviceTypeVirtualGpu PhysicalDeviceType = 3
PhysicalDeviceTypeCpu PhysicalDeviceType = 4
- PhysicalDeviceTypeBeginRange PhysicalDeviceType = 0
- PhysicalDeviceTypeEndRange PhysicalDeviceType = 4
- PhysicalDeviceTypeRangeSize PhysicalDeviceType = 5
PhysicalDeviceTypeMaxEnum PhysicalDeviceType = 2147483647
)
@@ -1490,15 +2684,24 @@ type QueryType int32
// QueryType enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueryType.html
const (
- QueryTypeOcclusion QueryType = iota
- QueryTypePipelineStatistics QueryType = 1
- QueryTypeTimestamp QueryType = 2
- QueryTypeTransformFeedbackStream QueryType = 1000028004
- QueryTypeCompactedSizeNvx QueryType = 1000165000
- QueryTypeBeginRange QueryType = 0
- QueryTypeEndRange QueryType = 2
- QueryTypeRangeSize QueryType = 3
- QueryTypeMaxEnum QueryType = 2147483647
+ QueryTypeOcclusion QueryType = iota
+ QueryTypePipelineStatistics QueryType = 1
+ QueryTypeTimestamp QueryType = 2
+ QueryTypeResultStatusOnly QueryType = 1000023000
+ QueryTypeTransformFeedbackStream QueryType = 1000028004
+ QueryTypePerformanceQuery QueryType = 1000116000
+ QueryTypeAccelerationStructureCompactedSize QueryType = 1000150000
+ QueryTypeAccelerationStructureSerializationSize QueryType = 1000150001
+ QueryTypeAccelerationStructureCompactedSizeNv QueryType = 1000165000
+ QueryTypePerformanceQueryIntel QueryType = 1000210000
+ QueryTypeVideoEncodeBitstreamBufferRange QueryType = 1000299000
+ QueryTypeMeshPrimitivesGenerated QueryType = 1000328000
+ QueryTypePrimitivesGenerated QueryType = 1000382000
+ QueryTypeAccelerationStructureSerializationBottomLevelPointers QueryType = 1000386000
+ QueryTypeAccelerationStructureSize QueryType = 1000386001
+ QueryTypeMicromapSerializationSize QueryType = 1000396000
+ QueryTypeMicromapCompactedSize QueryType = 1000396001
+ QueryTypeMaxEnum QueryType = 2147483647
)
// SharingMode as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSharingMode.html
@@ -1508,199 +2711,37 @@ type SharingMode int32
const (
SharingModeExclusive SharingMode = iota
SharingModeConcurrent SharingMode = 1
- SharingModeBeginRange SharingMode = 0
- SharingModeEndRange SharingMode = 1
- SharingModeRangeSize SharingMode = 2
SharingModeMaxEnum SharingMode = 2147483647
)
-// ImageLayout as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageLayout.html
-type ImageLayout int32
-
-// ImageLayout enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageLayout.html
-const (
- ImageLayoutUndefined ImageLayout = iota
- ImageLayoutGeneral ImageLayout = 1
- ImageLayoutColorAttachmentOptimal ImageLayout = 2
- ImageLayoutDepthStencilAttachmentOptimal ImageLayout = 3
- ImageLayoutDepthStencilReadOnlyOptimal ImageLayout = 4
- ImageLayoutShaderReadOnlyOptimal ImageLayout = 5
- ImageLayoutTransferSrcOptimal ImageLayout = 6
- ImageLayoutTransferDstOptimal ImageLayout = 7
- ImageLayoutPreinitialized ImageLayout = 8
- ImageLayoutDepthReadOnlyStencilAttachmentOptimal ImageLayout = 1000117000
- ImageLayoutDepthAttachmentStencilReadOnlyOptimal ImageLayout = 1000117001
- ImageLayoutPresentSrc ImageLayout = 1000001002
- ImageLayoutSharedPresent ImageLayout = 1000111000
- ImageLayoutShadingRateOptimalNv ImageLayout = 1000164003
- ImageLayoutBeginRange ImageLayout = 0
- ImageLayoutEndRange ImageLayout = 8
- ImageLayoutRangeSize ImageLayout = 9
- ImageLayoutMaxEnum ImageLayout = 2147483647
-)
-
-// ImageViewType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageViewType.html
-type ImageViewType int32
-
-// ImageViewType enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageViewType.html
-const (
- ImageViewType1d ImageViewType = iota
- ImageViewType2d ImageViewType = 1
- ImageViewType3d ImageViewType = 2
- ImageViewTypeCube ImageViewType = 3
- ImageViewType1dArray ImageViewType = 4
- ImageViewType2dArray ImageViewType = 5
- ImageViewTypeCubeArray ImageViewType = 6
- ImageViewTypeBeginRange ImageViewType = 0
- ImageViewTypeEndRange ImageViewType = 6
- ImageViewTypeRangeSize ImageViewType = 7
- ImageViewTypeMaxEnum ImageViewType = 2147483647
-)
-
// ComponentSwizzle as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkComponentSwizzle.html
type ComponentSwizzle int32
// ComponentSwizzle enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkComponentSwizzle.html
const (
- ComponentSwizzleIdentity ComponentSwizzle = iota
- ComponentSwizzleZero ComponentSwizzle = 1
- ComponentSwizzleOne ComponentSwizzle = 2
- ComponentSwizzleR ComponentSwizzle = 3
- ComponentSwizzleG ComponentSwizzle = 4
- ComponentSwizzleB ComponentSwizzle = 5
- ComponentSwizzleA ComponentSwizzle = 6
- ComponentSwizzleBeginRange ComponentSwizzle = 0
- ComponentSwizzleEndRange ComponentSwizzle = 6
- ComponentSwizzleRangeSize ComponentSwizzle = 7
- ComponentSwizzleMaxEnum ComponentSwizzle = 2147483647
-)
-
-// VertexInputRate as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkVertexInputRate.html
-type VertexInputRate int32
-
-// VertexInputRate enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkVertexInputRate.html
-const (
- VertexInputRateVertex VertexInputRate = iota
- VertexInputRateInstance VertexInputRate = 1
- VertexInputRateBeginRange VertexInputRate = 0
- VertexInputRateEndRange VertexInputRate = 1
- VertexInputRateRangeSize VertexInputRate = 2
- VertexInputRateMaxEnum VertexInputRate = 2147483647
-)
-
-// PrimitiveTopology as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPrimitiveTopology.html
-type PrimitiveTopology int32
-
-// PrimitiveTopology enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPrimitiveTopology.html
-const (
- PrimitiveTopologyPointList PrimitiveTopology = iota
- PrimitiveTopologyLineList PrimitiveTopology = 1
- PrimitiveTopologyLineStrip PrimitiveTopology = 2
- PrimitiveTopologyTriangleList PrimitiveTopology = 3
- PrimitiveTopologyTriangleStrip PrimitiveTopology = 4
- PrimitiveTopologyTriangleFan PrimitiveTopology = 5
- PrimitiveTopologyLineListWithAdjacency PrimitiveTopology = 6
- PrimitiveTopologyLineStripWithAdjacency PrimitiveTopology = 7
- PrimitiveTopologyTriangleListWithAdjacency PrimitiveTopology = 8
- PrimitiveTopologyTriangleStripWithAdjacency PrimitiveTopology = 9
- PrimitiveTopologyPatchList PrimitiveTopology = 10
- PrimitiveTopologyBeginRange PrimitiveTopology = 0
- PrimitiveTopologyEndRange PrimitiveTopology = 10
- PrimitiveTopologyRangeSize PrimitiveTopology = 11
- PrimitiveTopologyMaxEnum PrimitiveTopology = 2147483647
-)
-
-// PolygonMode as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPolygonMode.html
-type PolygonMode int32
-
-// PolygonMode enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPolygonMode.html
-const (
- PolygonModeFill PolygonMode = iota
- PolygonModeLine PolygonMode = 1
- PolygonModePoint PolygonMode = 2
- PolygonModeFillRectangleNv PolygonMode = 1000153000
- PolygonModeBeginRange PolygonMode = 0
- PolygonModeEndRange PolygonMode = 2
- PolygonModeRangeSize PolygonMode = 3
- PolygonModeMaxEnum PolygonMode = 2147483647
-)
-
-// FrontFace as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFrontFace.html
-type FrontFace int32
-
-// FrontFace enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFrontFace.html
-const (
- FrontFaceCounterClockwise FrontFace = iota
- FrontFaceClockwise FrontFace = 1
- FrontFaceBeginRange FrontFace = 0
- FrontFaceEndRange FrontFace = 1
- FrontFaceRangeSize FrontFace = 2
- FrontFaceMaxEnum FrontFace = 2147483647
-)
-
-// CompareOp as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCompareOp.html
-type CompareOp int32
-
-// CompareOp enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCompareOp.html
-const (
- CompareOpNever CompareOp = iota
- CompareOpLess CompareOp = 1
- CompareOpEqual CompareOp = 2
- CompareOpLessOrEqual CompareOp = 3
- CompareOpGreater CompareOp = 4
- CompareOpNotEqual CompareOp = 5
- CompareOpGreaterOrEqual CompareOp = 6
- CompareOpAlways CompareOp = 7
- CompareOpBeginRange CompareOp = 0
- CompareOpEndRange CompareOp = 7
- CompareOpRangeSize CompareOp = 8
- CompareOpMaxEnum CompareOp = 2147483647
-)
-
-// StencilOp as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkStencilOp.html
-type StencilOp int32
-
-// StencilOp enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkStencilOp.html
-const (
- StencilOpKeep StencilOp = iota
- StencilOpZero StencilOp = 1
- StencilOpReplace StencilOp = 2
- StencilOpIncrementAndClamp StencilOp = 3
- StencilOpDecrementAndClamp StencilOp = 4
- StencilOpInvert StencilOp = 5
- StencilOpIncrementAndWrap StencilOp = 6
- StencilOpDecrementAndWrap StencilOp = 7
- StencilOpBeginRange StencilOp = 0
- StencilOpEndRange StencilOp = 7
- StencilOpRangeSize StencilOp = 8
- StencilOpMaxEnum StencilOp = 2147483647
+ ComponentSwizzleIdentity ComponentSwizzle = iota
+ ComponentSwizzleZero ComponentSwizzle = 1
+ ComponentSwizzleOne ComponentSwizzle = 2
+ ComponentSwizzleR ComponentSwizzle = 3
+ ComponentSwizzleG ComponentSwizzle = 4
+ ComponentSwizzleB ComponentSwizzle = 5
+ ComponentSwizzleA ComponentSwizzle = 6
+ ComponentSwizzleMaxEnum ComponentSwizzle = 2147483647
)
-// LogicOp as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkLogicOp.html
-type LogicOp int32
+// ImageViewType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageViewType.html
+type ImageViewType int32
-// LogicOp enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkLogicOp.html
+// ImageViewType enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageViewType.html
const (
- LogicOpClear LogicOp = iota
- LogicOpAnd LogicOp = 1
- LogicOpAndReverse LogicOp = 2
- LogicOpCopy LogicOp = 3
- LogicOpAndInverted LogicOp = 4
- LogicOpNoOp LogicOp = 5
- LogicOpXor LogicOp = 6
- LogicOpOr LogicOp = 7
- LogicOpNor LogicOp = 8
- LogicOpEquivalent LogicOp = 9
- LogicOpInvert LogicOp = 10
- LogicOpOrReverse LogicOp = 11
- LogicOpCopyInverted LogicOp = 12
- LogicOpOrInverted LogicOp = 13
- LogicOpNand LogicOp = 14
- LogicOpSet LogicOp = 15
- LogicOpBeginRange LogicOp = 0
- LogicOpEndRange LogicOp = 15
- LogicOpRangeSize LogicOp = 16
- LogicOpMaxEnum LogicOp = 2147483647
+ ImageViewType1d ImageViewType = iota
+ ImageViewType2d ImageViewType = 1
+ ImageViewType3d ImageViewType = 2
+ ImageViewTypeCube ImageViewType = 3
+ ImageViewType1dArray ImageViewType = 4
+ ImageViewType2dArray ImageViewType = 5
+ ImageViewTypeCubeArray ImageViewType = 6
+ ImageViewTypeMaxEnum ImageViewType = 2147483647
)
// BlendFactor as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBlendFactor.html
@@ -1727,9 +2768,6 @@ const (
BlendFactorOneMinusSrc1Color BlendFactor = 16
BlendFactorSrc1Alpha BlendFactor = 17
BlendFactorOneMinusSrc1Alpha BlendFactor = 18
- BlendFactorBeginRange BlendFactor = 0
- BlendFactorEndRange BlendFactor = 18
- BlendFactorRangeSize BlendFactor = 19
BlendFactorMaxEnum BlendFactor = 2147483647
)
@@ -1789,85 +2827,196 @@ const (
BlendOpRed BlendOp = 1000148043
BlendOpGreen BlendOp = 1000148044
BlendOpBlue BlendOp = 1000148045
- BlendOpBeginRange BlendOp = 0
- BlendOpEndRange BlendOp = 4
- BlendOpRangeSize BlendOp = 5
BlendOpMaxEnum BlendOp = 2147483647
)
-// DynamicState as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDynamicState.html
-type DynamicState int32
+// CompareOp as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCompareOp.html
+type CompareOp int32
-// DynamicState enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDynamicState.html
+// CompareOp enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCompareOp.html
const (
- DynamicStateViewport DynamicState = iota
- DynamicStateScissor DynamicState = 1
- DynamicStateLineWidth DynamicState = 2
- DynamicStateDepthBias DynamicState = 3
- DynamicStateBlendConstants DynamicState = 4
- DynamicStateDepthBounds DynamicState = 5
- DynamicStateStencilCompareMask DynamicState = 6
- DynamicStateStencilWriteMask DynamicState = 7
- DynamicStateStencilReference DynamicState = 8
- DynamicStateViewportWScalingNv DynamicState = 1000087000
- DynamicStateDiscardRectangle DynamicState = 1000099000
- DynamicStateSampleLocations DynamicState = 1000143000
- DynamicStateViewportShadingRatePaletteNv DynamicState = 1000164004
- DynamicStateViewportCoarseSampleOrderNv DynamicState = 1000164006
- DynamicStateExclusiveScissorNv DynamicState = 1000205001
- DynamicStateBeginRange DynamicState = 0
- DynamicStateEndRange DynamicState = 8
- DynamicStateRangeSize DynamicState = 9
- DynamicStateMaxEnum DynamicState = 2147483647
+ CompareOpNever CompareOp = iota
+ CompareOpLess CompareOp = 1
+ CompareOpEqual CompareOp = 2
+ CompareOpLessOrEqual CompareOp = 3
+ CompareOpGreater CompareOp = 4
+ CompareOpNotEqual CompareOp = 5
+ CompareOpGreaterOrEqual CompareOp = 6
+ CompareOpAlways CompareOp = 7
+ CompareOpMaxEnum CompareOp = 2147483647
)
-// Filter as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFilter.html
-type Filter int32
+// DynamicState as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDynamicState.html
+type DynamicState int32
-// Filter enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFilter.html
+// DynamicState enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDynamicState.html
const (
- FilterNearest Filter = iota
- FilterLinear Filter = 1
- FilterCubicImg Filter = 1000015000
- FilterBeginRange Filter = 0
- FilterEndRange Filter = 1
- FilterRangeSize Filter = 2
- FilterMaxEnum Filter = 2147483647
+ DynamicStateViewport DynamicState = iota
+ DynamicStateScissor DynamicState = 1
+ DynamicStateLineWidth DynamicState = 2
+ DynamicStateDepthBias DynamicState = 3
+ DynamicStateBlendConstants DynamicState = 4
+ DynamicStateDepthBounds DynamicState = 5
+ DynamicStateStencilCompareMask DynamicState = 6
+ DynamicStateStencilWriteMask DynamicState = 7
+ DynamicStateStencilReference DynamicState = 8
+ DynamicStateCullMode DynamicState = 1000267000
+ DynamicStateFrontFace DynamicState = 1000267001
+ DynamicStatePrimitiveTopology DynamicState = 1000267002
+ DynamicStateViewportWithCount DynamicState = 1000267003
+ DynamicStateScissorWithCount DynamicState = 1000267004
+ DynamicStateVertexInputBindingStride DynamicState = 1000267005
+ DynamicStateDepthTestEnable DynamicState = 1000267006
+ DynamicStateDepthWriteEnable DynamicState = 1000267007
+ DynamicStateDepthCompareOp DynamicState = 1000267008
+ DynamicStateDepthBoundsTestEnable DynamicState = 1000267009
+ DynamicStateStencilTestEnable DynamicState = 1000267010
+ DynamicStateStencilOp DynamicState = 1000267011
+ DynamicStateRasterizerDiscardEnable DynamicState = 1000377001
+ DynamicStateDepthBiasEnable DynamicState = 1000377002
+ DynamicStatePrimitiveRestartEnable DynamicState = 1000377004
+ DynamicStateViewportWScalingNv DynamicState = 1000087000
+ DynamicStateDiscardRectangle DynamicState = 1000099000
+ DynamicStateSampleLocations DynamicState = 1000143000
+ DynamicStateRayTracingPipelineStackSize DynamicState = 1000347000
+ DynamicStateViewportShadingRatePaletteNv DynamicState = 1000164004
+ DynamicStateViewportCoarseSampleOrderNv DynamicState = 1000164006
+ DynamicStateExclusiveScissorNv DynamicState = 1000205001
+ DynamicStateFragmentShadingRate DynamicState = 1000226000
+ DynamicStateLineStipple DynamicState = 1000259000
+ DynamicStateVertexInput DynamicState = 1000352000
+ DynamicStatePatchControlPoints DynamicState = 1000377000
+ DynamicStateLogicOp DynamicState = 1000377003
+ DynamicStateColorWriteEnable DynamicState = 1000381000
+ DynamicStateTessellationDomainOrigin DynamicState = 1000455002
+ DynamicStateDepthClampEnable DynamicState = 1000455003
+ DynamicStatePolygonMode DynamicState = 1000455004
+ DynamicStateRasterizationSamples DynamicState = 1000455005
+ DynamicStateSampleMask DynamicState = 1000455006
+ DynamicStateAlphaToCoverageEnable DynamicState = 1000455007
+ DynamicStateAlphaToOneEnable DynamicState = 1000455008
+ DynamicStateLogicOpEnable DynamicState = 1000455009
+ DynamicStateColorBlendEnable DynamicState = 1000455010
+ DynamicStateColorBlendEquation DynamicState = 1000455011
+ DynamicStateColorWriteMask DynamicState = 1000455012
+ DynamicStateRasterizationStream DynamicState = 1000455013
+ DynamicStateConservativeRasterizationMode DynamicState = 1000455014
+ DynamicStateExtraPrimitiveOverestimationSize DynamicState = 1000455015
+ DynamicStateDepthClipEnable DynamicState = 1000455016
+ DynamicStateSampleLocationsEnable DynamicState = 1000455017
+ DynamicStateColorBlendAdvanced DynamicState = 1000455018
+ DynamicStateProvokingVertexMode DynamicState = 1000455019
+ DynamicStateLineRasterizationMode DynamicState = 1000455020
+ DynamicStateLineStippleEnable DynamicState = 1000455021
+ DynamicStateDepthClipNegativeOneToOne DynamicState = 1000455022
+ DynamicStateViewportWScalingEnableNv DynamicState = 1000455023
+ DynamicStateViewportSwizzleNv DynamicState = 1000455024
+ DynamicStateCoverageToColorEnableNv DynamicState = 1000455025
+ DynamicStateCoverageToColorLocationNv DynamicState = 1000455026
+ DynamicStateCoverageModulationModeNv DynamicState = 1000455027
+ DynamicStateCoverageModulationTableEnableNv DynamicState = 1000455028
+ DynamicStateCoverageModulationTableNv DynamicState = 1000455029
+ DynamicStateShadingRateImageEnableNv DynamicState = 1000455030
+ DynamicStateRepresentativeFragmentTestEnableNv DynamicState = 1000455031
+ DynamicStateCoverageReductionModeNv DynamicState = 1000455032
+ DynamicStateMaxEnum DynamicState = 2147483647
)
-// SamplerMipmapMode as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerMipmapMode.html
-type SamplerMipmapMode int32
+// FrontFace as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFrontFace.html
+type FrontFace int32
-// SamplerMipmapMode enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerMipmapMode.html
+// FrontFace enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFrontFace.html
const (
- SamplerMipmapModeNearest SamplerMipmapMode = iota
- SamplerMipmapModeLinear SamplerMipmapMode = 1
- SamplerMipmapModeBeginRange SamplerMipmapMode = 0
- SamplerMipmapModeEndRange SamplerMipmapMode = 1
- SamplerMipmapModeRangeSize SamplerMipmapMode = 2
- SamplerMipmapModeMaxEnum SamplerMipmapMode = 2147483647
+ FrontFaceCounterClockwise FrontFace = iota
+ FrontFaceClockwise FrontFace = 1
+ FrontFaceMaxEnum FrontFace = 2147483647
)
-// SamplerAddressMode as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerAddressMode.html
-type SamplerAddressMode int32
+// VertexInputRate as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkVertexInputRate.html
+type VertexInputRate int32
-// SamplerAddressMode enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerAddressMode.html
+// VertexInputRate enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkVertexInputRate.html
const (
- SamplerAddressModeRepeat SamplerAddressMode = iota
- SamplerAddressModeMirroredRepeat SamplerAddressMode = 1
- SamplerAddressModeClampToEdge SamplerAddressMode = 2
- SamplerAddressModeClampToBorder SamplerAddressMode = 3
- SamplerAddressModeMirrorClampToEdge SamplerAddressMode = 4
- SamplerAddressModeBeginRange SamplerAddressMode = 0
- SamplerAddressModeEndRange SamplerAddressMode = 3
- SamplerAddressModeRangeSize SamplerAddressMode = 4
- SamplerAddressModeMaxEnum SamplerAddressMode = 2147483647
+ VertexInputRateVertex VertexInputRate = iota
+ VertexInputRateInstance VertexInputRate = 1
+ VertexInputRateMaxEnum VertexInputRate = 2147483647
)
-// BorderColor as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBorderColor.html
-type BorderColor int32
+// PrimitiveTopology as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPrimitiveTopology.html
+type PrimitiveTopology int32
-// BorderColor enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBorderColor.html
+// PrimitiveTopology enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPrimitiveTopology.html
+const (
+ PrimitiveTopologyPointList PrimitiveTopology = iota
+ PrimitiveTopologyLineList PrimitiveTopology = 1
+ PrimitiveTopologyLineStrip PrimitiveTopology = 2
+ PrimitiveTopologyTriangleList PrimitiveTopology = 3
+ PrimitiveTopologyTriangleStrip PrimitiveTopology = 4
+ PrimitiveTopologyTriangleFan PrimitiveTopology = 5
+ PrimitiveTopologyLineListWithAdjacency PrimitiveTopology = 6
+ PrimitiveTopologyLineStripWithAdjacency PrimitiveTopology = 7
+ PrimitiveTopologyTriangleListWithAdjacency PrimitiveTopology = 8
+ PrimitiveTopologyTriangleStripWithAdjacency PrimitiveTopology = 9
+ PrimitiveTopologyPatchList PrimitiveTopology = 10
+ PrimitiveTopologyMaxEnum PrimitiveTopology = 2147483647
+)
+
+// PolygonMode as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPolygonMode.html
+type PolygonMode int32
+
+// PolygonMode enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPolygonMode.html
+const (
+ PolygonModeFill PolygonMode = iota
+ PolygonModeLine PolygonMode = 1
+ PolygonModePoint PolygonMode = 2
+ PolygonModeFillRectangleNv PolygonMode = 1000153000
+ PolygonModeMaxEnum PolygonMode = 2147483647
+)
+
+// StencilOp as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkStencilOp.html
+type StencilOp int32
+
+// StencilOp enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkStencilOp.html
+const (
+ StencilOpKeep StencilOp = iota
+ StencilOpZero StencilOp = 1
+ StencilOpReplace StencilOp = 2
+ StencilOpIncrementAndClamp StencilOp = 3
+ StencilOpDecrementAndClamp StencilOp = 4
+ StencilOpInvert StencilOp = 5
+ StencilOpIncrementAndWrap StencilOp = 6
+ StencilOpDecrementAndWrap StencilOp = 7
+ StencilOpMaxEnum StencilOp = 2147483647
+)
+
+// LogicOp as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkLogicOp.html
+type LogicOp int32
+
+// LogicOp enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkLogicOp.html
+const (
+ LogicOpClear LogicOp = iota
+ LogicOpAnd LogicOp = 1
+ LogicOpAndReverse LogicOp = 2
+ LogicOpCopy LogicOp = 3
+ LogicOpAndInverted LogicOp = 4
+ LogicOpNoOp LogicOp = 5
+ LogicOpXor LogicOp = 6
+ LogicOpOr LogicOp = 7
+ LogicOpNor LogicOp = 8
+ LogicOpEquivalent LogicOp = 9
+ LogicOpInvert LogicOp = 10
+ LogicOpOrReverse LogicOp = 11
+ LogicOpCopyInverted LogicOp = 12
+ LogicOpOrInverted LogicOp = 13
+ LogicOpNand LogicOp = 14
+ LogicOpSet LogicOp = 15
+ LogicOpMaxEnum LogicOp = 2147483647
+)
+
+// BorderColor as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBorderColor.html
+type BorderColor int32
+
+// BorderColor enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBorderColor.html
const (
BorderColorFloatTransparentBlack BorderColor = iota
BorderColorIntTransparentBlack BorderColor = 1
@@ -1875,34 +3024,70 @@ const (
BorderColorIntOpaqueBlack BorderColor = 3
BorderColorFloatOpaqueWhite BorderColor = 4
BorderColorIntOpaqueWhite BorderColor = 5
- BorderColorBeginRange BorderColor = 0
- BorderColorEndRange BorderColor = 5
- BorderColorRangeSize BorderColor = 6
+ BorderColorFloatCustom BorderColor = 1000287003
+ BorderColorIntCustom BorderColor = 1000287004
BorderColorMaxEnum BorderColor = 2147483647
)
+// Filter as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFilter.html
+type Filter int32
+
+// Filter enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFilter.html
+const (
+ FilterNearest Filter = iota
+ FilterLinear Filter = 1
+ FilterCubic Filter = 1000015000
+ FilterCubicImg Filter = 1000015000
+ FilterMaxEnum Filter = 2147483647
+)
+
+// SamplerAddressMode as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerAddressMode.html
+type SamplerAddressMode int32
+
+// SamplerAddressMode enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerAddressMode.html
+const (
+ SamplerAddressModeRepeat SamplerAddressMode = iota
+ SamplerAddressModeMirroredRepeat SamplerAddressMode = 1
+ SamplerAddressModeClampToEdge SamplerAddressMode = 2
+ SamplerAddressModeClampToBorder SamplerAddressMode = 3
+ SamplerAddressModeMirrorClampToEdge SamplerAddressMode = 4
+ SamplerAddressModeMaxEnum SamplerAddressMode = 2147483647
+)
+
+// SamplerMipmapMode as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerMipmapMode.html
+type SamplerMipmapMode int32
+
+// SamplerMipmapMode enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerMipmapMode.html
+const (
+ SamplerMipmapModeNearest SamplerMipmapMode = iota
+ SamplerMipmapModeLinear SamplerMipmapMode = 1
+ SamplerMipmapModeMaxEnum SamplerMipmapMode = 2147483647
+)
+
// DescriptorType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorType.html
type DescriptorType int32
// DescriptorType enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorType.html
const (
- DescriptorTypeSampler DescriptorType = iota
- DescriptorTypeCombinedImageSampler DescriptorType = 1
- DescriptorTypeSampledImage DescriptorType = 2
- DescriptorTypeStorageImage DescriptorType = 3
- DescriptorTypeUniformTexelBuffer DescriptorType = 4
- DescriptorTypeStorageTexelBuffer DescriptorType = 5
- DescriptorTypeUniformBuffer DescriptorType = 6
- DescriptorTypeStorageBuffer DescriptorType = 7
- DescriptorTypeUniformBufferDynamic DescriptorType = 8
- DescriptorTypeStorageBufferDynamic DescriptorType = 9
- DescriptorTypeInputAttachment DescriptorType = 10
- DescriptorTypeInlineUniformBlock DescriptorType = 1000138000
- DescriptorTypeAccelerationStructureNvx DescriptorType = 1000165000
- DescriptorTypeBeginRange DescriptorType = 0
- DescriptorTypeEndRange DescriptorType = 10
- DescriptorTypeRangeSize DescriptorType = 11
- DescriptorTypeMaxEnum DescriptorType = 2147483647
+ DescriptorTypeSampler DescriptorType = iota
+ DescriptorTypeCombinedImageSampler DescriptorType = 1
+ DescriptorTypeSampledImage DescriptorType = 2
+ DescriptorTypeStorageImage DescriptorType = 3
+ DescriptorTypeUniformTexelBuffer DescriptorType = 4
+ DescriptorTypeStorageTexelBuffer DescriptorType = 5
+ DescriptorTypeUniformBuffer DescriptorType = 6
+ DescriptorTypeStorageBuffer DescriptorType = 7
+ DescriptorTypeUniformBufferDynamic DescriptorType = 8
+ DescriptorTypeStorageBufferDynamic DescriptorType = 9
+ DescriptorTypeInputAttachment DescriptorType = 10
+ DescriptorTypeInlineUniformBlock DescriptorType = 1000138000
+ DescriptorTypeAccelerationStructure DescriptorType = 1000150000
+ DescriptorTypeAccelerationStructureNv DescriptorType = 1000165000
+ DescriptorTypeSampleWeightImageQcom DescriptorType = 1000440000
+ DescriptorTypeBlockMatchImageQcom DescriptorType = 1000440001
+ DescriptorTypeMutable DescriptorType = 1000351000
+ DescriptorTypeMutableValve DescriptorType = 1000351000
+ DescriptorTypeMaxEnum DescriptorType = 2147483647
)
// AttachmentLoadOp as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAttachmentLoadOp.html
@@ -1910,13 +3095,11 @@ type AttachmentLoadOp int32
// AttachmentLoadOp enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAttachmentLoadOp.html
const (
- AttachmentLoadOpLoad AttachmentLoadOp = iota
- AttachmentLoadOpClear AttachmentLoadOp = 1
- AttachmentLoadOpDontCare AttachmentLoadOp = 2
- AttachmentLoadOpBeginRange AttachmentLoadOp = 0
- AttachmentLoadOpEndRange AttachmentLoadOp = 2
- AttachmentLoadOpRangeSize AttachmentLoadOp = 3
- AttachmentLoadOpMaxEnum AttachmentLoadOp = 2147483647
+ AttachmentLoadOpLoad AttachmentLoadOp = iota
+ AttachmentLoadOpClear AttachmentLoadOp = 1
+ AttachmentLoadOpDontCare AttachmentLoadOp = 2
+ AttachmentLoadOpNone AttachmentLoadOp = 1000400000
+ AttachmentLoadOpMaxEnum AttachmentLoadOp = 2147483647
)
// AttachmentStoreOp as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAttachmentStoreOp.html
@@ -1924,12 +3107,11 @@ type AttachmentStoreOp int32
// AttachmentStoreOp enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAttachmentStoreOp.html
const (
- AttachmentStoreOpStore AttachmentStoreOp = iota
- AttachmentStoreOpDontCare AttachmentStoreOp = 1
- AttachmentStoreOpBeginRange AttachmentStoreOp = 0
- AttachmentStoreOpEndRange AttachmentStoreOp = 1
- AttachmentStoreOpRangeSize AttachmentStoreOp = 2
- AttachmentStoreOpMaxEnum AttachmentStoreOp = 2147483647
+ AttachmentStoreOpStore AttachmentStoreOp = iota
+ AttachmentStoreOpDontCare AttachmentStoreOp = 1
+ AttachmentStoreOpNone AttachmentStoreOp = 1000301000
+ AttachmentStoreOpNoneQcom AttachmentStoreOp = 1000301000
+ AttachmentStoreOpMaxEnum AttachmentStoreOp = 2147483647
)
// PipelineBindPoint as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineBindPoint.html
@@ -1937,13 +3119,12 @@ type PipelineBindPoint int32
// PipelineBindPoint enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineBindPoint.html
const (
- PipelineBindPointGraphics PipelineBindPoint = iota
- PipelineBindPointCompute PipelineBindPoint = 1
- PipelineBindPointRaytracingNvx PipelineBindPoint = 1000165000
- PipelineBindPointBeginRange PipelineBindPoint = 0
- PipelineBindPointEndRange PipelineBindPoint = 1
- PipelineBindPointRangeSize PipelineBindPoint = 2
- PipelineBindPointMaxEnum PipelineBindPoint = 2147483647
+ PipelineBindPointGraphics PipelineBindPoint = iota
+ PipelineBindPointCompute PipelineBindPoint = 1
+ PipelineBindPointRayTracing PipelineBindPoint = 1000165000
+ PipelineBindPointSubpassShadingHuawei PipelineBindPoint = 1000369003
+ PipelineBindPointRayTracingNv PipelineBindPoint = 1000165000
+ PipelineBindPointMaxEnum PipelineBindPoint = 2147483647
)
// CommandBufferLevel as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandBufferLevel.html
@@ -1951,12 +3132,9 @@ type CommandBufferLevel int32
// CommandBufferLevel enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandBufferLevel.html
const (
- CommandBufferLevelPrimary CommandBufferLevel = iota
- CommandBufferLevelSecondary CommandBufferLevel = 1
- CommandBufferLevelBeginRange CommandBufferLevel = 0
- CommandBufferLevelEndRange CommandBufferLevel = 1
- CommandBufferLevelRangeSize CommandBufferLevel = 2
- CommandBufferLevelMaxEnum CommandBufferLevel = 2147483647
+ CommandBufferLevelPrimary CommandBufferLevel = iota
+ CommandBufferLevelSecondary CommandBufferLevel = 1
+ CommandBufferLevelMaxEnum CommandBufferLevel = 2147483647
)
// IndexType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkIndexType.html
@@ -1964,12 +3142,12 @@ type IndexType int32
// IndexType enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkIndexType.html
const (
- IndexTypeUint16 IndexType = iota
- IndexTypeUint32 IndexType = 1
- IndexTypeBeginRange IndexType = 0
- IndexTypeEndRange IndexType = 1
- IndexTypeRangeSize IndexType = 2
- IndexTypeMaxEnum IndexType = 2147483647
+ IndexTypeUint16 IndexType = iota
+ IndexTypeUint32 IndexType = 1
+ IndexTypeNone IndexType = 1000165000
+ IndexTypeUint8 IndexType = 1000265000
+ IndexTypeNoneNv IndexType = 1000165000
+ IndexTypeMaxEnum IndexType = 2147483647
)
// SubpassContents as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubpassContents.html
@@ -1979,73 +3157,67 @@ type SubpassContents int32
const (
SubpassContentsInline SubpassContents = iota
SubpassContentsSecondaryCommandBuffers SubpassContents = 1
- SubpassContentsBeginRange SubpassContents = 0
- SubpassContentsEndRange SubpassContents = 1
- SubpassContentsRangeSize SubpassContents = 2
SubpassContentsMaxEnum SubpassContents = 2147483647
)
-// ObjectType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkObjectType.html
-type ObjectType int32
+// AccessFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAccessFlagBits.html
+type AccessFlagBits int32
-// ObjectType enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkObjectType.html
+// AccessFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAccessFlagBits.html
const (
- ObjectTypeUnknown ObjectType = iota
- ObjectTypeInstance ObjectType = 1
- ObjectTypePhysicalDevice ObjectType = 2
- ObjectTypeDevice ObjectType = 3
- ObjectTypeQueue ObjectType = 4
- ObjectTypeSemaphore ObjectType = 5
- ObjectTypeCommandBuffer ObjectType = 6
- ObjectTypeFence ObjectType = 7
- ObjectTypeDeviceMemory ObjectType = 8
- ObjectTypeBuffer ObjectType = 9
- ObjectTypeImage ObjectType = 10
- ObjectTypeEvent ObjectType = 11
- ObjectTypeQueryPool ObjectType = 12
- ObjectTypeBufferView ObjectType = 13
- ObjectTypeImageView ObjectType = 14
- ObjectTypeShaderModule ObjectType = 15
- ObjectTypePipelineCache ObjectType = 16
- ObjectTypePipelineLayout ObjectType = 17
- ObjectTypeRenderPass ObjectType = 18
- ObjectTypePipeline ObjectType = 19
- ObjectTypeDescriptorSetLayout ObjectType = 20
- ObjectTypeSampler ObjectType = 21
- ObjectTypeDescriptorPool ObjectType = 22
- ObjectTypeDescriptorSet ObjectType = 23
- ObjectTypeFramebuffer ObjectType = 24
- ObjectTypeCommandPool ObjectType = 25
- ObjectTypeSamplerYcbcrConversion ObjectType = 1000156000
- ObjectTypeDescriptorUpdateTemplate ObjectType = 1000085000
- ObjectTypeSurface ObjectType = 1000000000
- ObjectTypeSwapchain ObjectType = 1000001000
- ObjectTypeDisplay ObjectType = 1000002000
- ObjectTypeDisplayMode ObjectType = 1000002001
- ObjectTypeDebugReportCallback ObjectType = 1000011000
- ObjectTypeObjectTableNvx ObjectType = 1000086000
- ObjectTypeIndirectCommandsLayoutNvx ObjectType = 1000086001
- ObjectTypeDebugUtilsMessenger ObjectType = 1000128000
- ObjectTypeValidationCache ObjectType = 1000160000
- ObjectTypeAccelerationStructureNvx ObjectType = 1000165000
- ObjectTypeBeginRange ObjectType = 0
- ObjectTypeEndRange ObjectType = 25
- ObjectTypeRangeSize ObjectType = 26
- ObjectTypeMaxEnum ObjectType = 2147483647
+ AccessIndirectCommandReadBit AccessFlagBits = 1
+ AccessIndexReadBit AccessFlagBits = 2
+ AccessVertexAttributeReadBit AccessFlagBits = 4
+ AccessUniformReadBit AccessFlagBits = 8
+ AccessInputAttachmentReadBit AccessFlagBits = 16
+ AccessShaderReadBit AccessFlagBits = 32
+ AccessShaderWriteBit AccessFlagBits = 64
+ AccessColorAttachmentReadBit AccessFlagBits = 128
+ AccessColorAttachmentWriteBit AccessFlagBits = 256
+ AccessDepthStencilAttachmentReadBit AccessFlagBits = 512
+ AccessDepthStencilAttachmentWriteBit AccessFlagBits = 1024
+ AccessTransferReadBit AccessFlagBits = 2048
+ AccessTransferWriteBit AccessFlagBits = 4096
+ AccessHostReadBit AccessFlagBits = 8192
+ AccessHostWriteBit AccessFlagBits = 16384
+ AccessMemoryReadBit AccessFlagBits = 32768
+ AccessMemoryWriteBit AccessFlagBits = 65536
+ AccessNone AccessFlagBits = 0
+ AccessTransformFeedbackWriteBit AccessFlagBits = 33554432
+ AccessTransformFeedbackCounterReadBit AccessFlagBits = 67108864
+ AccessTransformFeedbackCounterWriteBit AccessFlagBits = 134217728
+ AccessConditionalRenderingReadBit AccessFlagBits = 1048576
+ AccessColorAttachmentReadNoncoherentBit AccessFlagBits = 524288
+ AccessAccelerationStructureReadBit AccessFlagBits = 2097152
+ AccessAccelerationStructureWriteBit AccessFlagBits = 4194304
+ AccessFragmentDensityMapReadBit AccessFlagBits = 16777216
+ AccessFragmentShadingRateAttachmentReadBit AccessFlagBits = 8388608
+ AccessCommandPreprocessReadBitNv AccessFlagBits = 131072
+ AccessCommandPreprocessWriteBitNv AccessFlagBits = 262144
+ AccessShadingRateImageReadBitNv AccessFlagBits = 8388608
+ AccessAccelerationStructureReadBitNv AccessFlagBits = 2097152
+ AccessAccelerationStructureWriteBitNv AccessFlagBits = 4194304
+ AccessFlagBitsMaxEnum AccessFlagBits = 2147483647
)
-// VendorId as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkVendorId.html
-type VendorId int32
+// ImageAspectFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageAspectFlagBits.html
+type ImageAspectFlagBits int32
-// VendorId enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkVendorId.html
+// ImageAspectFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageAspectFlagBits.html
const (
- VendorIdViv VendorId = 65537
- VendorIdVsi VendorId = 65538
- VendorIdKazan VendorId = 65539
- VendorIdBeginRange VendorId = 65537
- VendorIdEndRange VendorId = 65539
- VendorIdRangeSize VendorId = 3
- VendorIdMaxEnum VendorId = 2147483647
+ ImageAspectColorBit ImageAspectFlagBits = 1
+ ImageAspectDepthBit ImageAspectFlagBits = 2
+ ImageAspectStencilBit ImageAspectFlagBits = 4
+ ImageAspectMetadataBit ImageAspectFlagBits = 8
+ ImageAspectPlane0Bit ImageAspectFlagBits = 16
+ ImageAspectPlane1Bit ImageAspectFlagBits = 32
+ ImageAspectPlane2Bit ImageAspectFlagBits = 64
+ ImageAspectNone ImageAspectFlagBits = 0
+ ImageAspectMemoryPlane0Bit ImageAspectFlagBits = 128
+ ImageAspectMemoryPlane1Bit ImageAspectFlagBits = 256
+ ImageAspectMemoryPlane2Bit ImageAspectFlagBits = 512
+ ImageAspectMemoryPlane3Bit ImageAspectFlagBits = 1024
+ ImageAspectFlagBitsMaxEnum ImageAspectFlagBits = 2147483647
)
// FormatFeatureFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFormatFeatureFlagBits.html
@@ -2075,48 +3247,44 @@ const (
FormatFeatureSampledImageYcbcrConversionChromaReconstructionExplicitForceableBit FormatFeatureFlagBits = 2097152
FormatFeatureDisjointBit FormatFeatureFlagBits = 4194304
FormatFeatureCositedChromaSamplesBit FormatFeatureFlagBits = 8388608
- FormatFeatureSampledImageFilterCubicBitImg FormatFeatureFlagBits = 8192
FormatFeatureSampledImageFilterMinmaxBit FormatFeatureFlagBits = 65536
+ FormatFeatureVideoDecodeOutputBit FormatFeatureFlagBits = 33554432
+ FormatFeatureVideoDecodeDpbBit FormatFeatureFlagBits = 67108864
+ FormatFeatureAccelerationStructureVertexBufferBit FormatFeatureFlagBits = 536870912
+ FormatFeatureSampledImageFilterCubicBit FormatFeatureFlagBits = 8192
+ FormatFeatureFragmentDensityMapBit FormatFeatureFlagBits = 16777216
+ FormatFeatureFragmentShadingRateAttachmentBit FormatFeatureFlagBits = 1073741824
+ FormatFeatureVideoEncodeInputBit FormatFeatureFlagBits = 134217728
+ FormatFeatureVideoEncodeDpbBit FormatFeatureFlagBits = 268435456
+ FormatFeatureSampledImageFilterCubicBitImg FormatFeatureFlagBits = 8192
FormatFeatureFlagBitsMaxEnum FormatFeatureFlagBits = 2147483647
)
-// ImageUsageFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageUsageFlagBits.html
-type ImageUsageFlagBits int32
-
-// ImageUsageFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageUsageFlagBits.html
-const (
- ImageUsageTransferSrcBit ImageUsageFlagBits = 1
- ImageUsageTransferDstBit ImageUsageFlagBits = 2
- ImageUsageSampledBit ImageUsageFlagBits = 4
- ImageUsageStorageBit ImageUsageFlagBits = 8
- ImageUsageColorAttachmentBit ImageUsageFlagBits = 16
- ImageUsageDepthStencilAttachmentBit ImageUsageFlagBits = 32
- ImageUsageTransientAttachmentBit ImageUsageFlagBits = 64
- ImageUsageInputAttachmentBit ImageUsageFlagBits = 128
- ImageUsageShadingRateImageBitNv ImageUsageFlagBits = 256
- ImageUsageFlagBitsMaxEnum ImageUsageFlagBits = 2147483647
-)
-
// ImageCreateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageCreateFlagBits.html
type ImageCreateFlagBits int32
// ImageCreateFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageCreateFlagBits.html
const (
- ImageCreateSparseBindingBit ImageCreateFlagBits = 1
- ImageCreateSparseResidencyBit ImageCreateFlagBits = 2
- ImageCreateSparseAliasedBit ImageCreateFlagBits = 4
- ImageCreateMutableFormatBit ImageCreateFlagBits = 8
- ImageCreateCubeCompatibleBit ImageCreateFlagBits = 16
- ImageCreateAliasBit ImageCreateFlagBits = 1024
- ImageCreateSplitInstanceBindRegionsBit ImageCreateFlagBits = 64
- ImageCreate2dArrayCompatibleBit ImageCreateFlagBits = 32
- ImageCreateBlockTexelViewCompatibleBit ImageCreateFlagBits = 128
- ImageCreateExtendedUsageBit ImageCreateFlagBits = 256
- ImageCreateProtectedBit ImageCreateFlagBits = 2048
- ImageCreateDisjointBit ImageCreateFlagBits = 512
- ImageCreateCornerSampledBitNv ImageCreateFlagBits = 8192
- ImageCreateSampleLocationsCompatibleDepthBit ImageCreateFlagBits = 4096
- ImageCreateFlagBitsMaxEnum ImageCreateFlagBits = 2147483647
+ ImageCreateSparseBindingBit ImageCreateFlagBits = 1
+ ImageCreateSparseResidencyBit ImageCreateFlagBits = 2
+ ImageCreateSparseAliasedBit ImageCreateFlagBits = 4
+ ImageCreateMutableFormatBit ImageCreateFlagBits = 8
+ ImageCreateCubeCompatibleBit ImageCreateFlagBits = 16
+ ImageCreateAliasBit ImageCreateFlagBits = 1024
+ ImageCreateSplitInstanceBindRegionsBit ImageCreateFlagBits = 64
+ ImageCreate2dArrayCompatibleBit ImageCreateFlagBits = 32
+ ImageCreateBlockTexelViewCompatibleBit ImageCreateFlagBits = 128
+ ImageCreateExtendedUsageBit ImageCreateFlagBits = 256
+ ImageCreateProtectedBit ImageCreateFlagBits = 2048
+ ImageCreateDisjointBit ImageCreateFlagBits = 512
+ ImageCreateCornerSampledBitNv ImageCreateFlagBits = 8192
+ ImageCreateSampleLocationsCompatibleDepthBit ImageCreateFlagBits = 4096
+ ImageCreateSubsampledBit ImageCreateFlagBits = 16384
+ ImageCreateDescriptorBufferCaptureReplayBit ImageCreateFlagBits = 65536
+ ImageCreateMultisampledRenderToSingleSampledBit ImageCreateFlagBits = 262144
+ ImageCreate2dViewCompatibleBit ImageCreateFlagBits = 131072
+ ImageCreateFragmentDensityMapOffsetBitQcom ImageCreateFlagBits = 32768
+ ImageCreateFlagBitsMaxEnum ImageCreateFlagBits = 2147483647
)
// SampleCountFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSampleCountFlagBits.html
@@ -2134,17 +3302,52 @@ const (
SampleCountFlagBitsMaxEnum SampleCountFlagBits = 2147483647
)
-// QueueFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueueFlagBits.html
-type QueueFlagBits int32
+// ImageUsageFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageUsageFlagBits.html
+type ImageUsageFlagBits int32
-// QueueFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueueFlagBits.html
+// ImageUsageFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageUsageFlagBits.html
const (
- QueueGraphicsBit QueueFlagBits = 1
- QueueComputeBit QueueFlagBits = 2
- QueueTransferBit QueueFlagBits = 4
- QueueSparseBindingBit QueueFlagBits = 8
- QueueProtectedBit QueueFlagBits = 16
- QueueFlagBitsMaxEnum QueueFlagBits = 2147483647
+ ImageUsageTransferSrcBit ImageUsageFlagBits = 1
+ ImageUsageTransferDstBit ImageUsageFlagBits = 2
+ ImageUsageSampledBit ImageUsageFlagBits = 4
+ ImageUsageStorageBit ImageUsageFlagBits = 8
+ ImageUsageColorAttachmentBit ImageUsageFlagBits = 16
+ ImageUsageDepthStencilAttachmentBit ImageUsageFlagBits = 32
+ ImageUsageTransientAttachmentBit ImageUsageFlagBits = 64
+ ImageUsageInputAttachmentBit ImageUsageFlagBits = 128
+ ImageUsageVideoDecodeDstBit ImageUsageFlagBits = 1024
+ ImageUsageVideoDecodeSrcBit ImageUsageFlagBits = 2048
+ ImageUsageVideoDecodeDpbBit ImageUsageFlagBits = 4096
+ ImageUsageFragmentDensityMapBit ImageUsageFlagBits = 512
+ ImageUsageFragmentShadingRateAttachmentBit ImageUsageFlagBits = 256
+ ImageUsageVideoEncodeDstBit ImageUsageFlagBits = 8192
+ ImageUsageVideoEncodeSrcBit ImageUsageFlagBits = 16384
+ ImageUsageVideoEncodeDpbBit ImageUsageFlagBits = 32768
+ ImageUsageAttachmentFeedbackLoopBit ImageUsageFlagBits = 524288
+ ImageUsageInvocationMaskBitHuawei ImageUsageFlagBits = 262144
+ ImageUsageSampleWeightBitQcom ImageUsageFlagBits = 1048576
+ ImageUsageSampleBlockMatchBitQcom ImageUsageFlagBits = 2097152
+ ImageUsageShadingRateImageBitNv ImageUsageFlagBits = 256
+ ImageUsageFlagBitsMaxEnum ImageUsageFlagBits = 2147483647
+)
+
+// InstanceCreateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkInstanceCreateFlagBits.html
+type InstanceCreateFlagBits int32
+
+// InstanceCreateFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkInstanceCreateFlagBits.html
+const (
+ InstanceCreateEnumeratePortabilityBit InstanceCreateFlagBits = 1
+ InstanceCreateFlagBitsMaxEnum InstanceCreateFlagBits = 2147483647
+)
+
+// MemoryHeapFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryHeapFlagBits.html
+type MemoryHeapFlagBits int32
+
+// MemoryHeapFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryHeapFlagBits.html
+const (
+ MemoryHeapDeviceLocalBit MemoryHeapFlagBits = 1
+ MemoryHeapMultiInstanceBit MemoryHeapFlagBits = 2
+ MemoryHeapFlagBitsMaxEnum MemoryHeapFlagBits = 2147483647
)
// MemoryPropertyFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryPropertyFlagBits.html
@@ -2152,23 +3355,32 @@ type MemoryPropertyFlagBits int32
// MemoryPropertyFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryPropertyFlagBits.html
const (
- MemoryPropertyDeviceLocalBit MemoryPropertyFlagBits = 1
- MemoryPropertyHostVisibleBit MemoryPropertyFlagBits = 2
- MemoryPropertyHostCoherentBit MemoryPropertyFlagBits = 4
- MemoryPropertyHostCachedBit MemoryPropertyFlagBits = 8
- MemoryPropertyLazilyAllocatedBit MemoryPropertyFlagBits = 16
- MemoryPropertyProtectedBit MemoryPropertyFlagBits = 32
- MemoryPropertyFlagBitsMaxEnum MemoryPropertyFlagBits = 2147483647
+ MemoryPropertyDeviceLocalBit MemoryPropertyFlagBits = 1
+ MemoryPropertyHostVisibleBit MemoryPropertyFlagBits = 2
+ MemoryPropertyHostCoherentBit MemoryPropertyFlagBits = 4
+ MemoryPropertyHostCachedBit MemoryPropertyFlagBits = 8
+ MemoryPropertyLazilyAllocatedBit MemoryPropertyFlagBits = 16
+ MemoryPropertyProtectedBit MemoryPropertyFlagBits = 32
+ MemoryPropertyDeviceCoherentBitAmd MemoryPropertyFlagBits = 64
+ MemoryPropertyDeviceUncachedBitAmd MemoryPropertyFlagBits = 128
+ MemoryPropertyRdmaCapableBitNv MemoryPropertyFlagBits = 256
+ MemoryPropertyFlagBitsMaxEnum MemoryPropertyFlagBits = 2147483647
)
-// MemoryHeapFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryHeapFlagBits.html
-type MemoryHeapFlagBits int32
+// QueueFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueueFlagBits.html
+type QueueFlagBits int32
-// MemoryHeapFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryHeapFlagBits.html
+// QueueFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueueFlagBits.html
const (
- MemoryHeapDeviceLocalBit MemoryHeapFlagBits = 1
- MemoryHeapMultiInstanceBit MemoryHeapFlagBits = 2
- MemoryHeapFlagBitsMaxEnum MemoryHeapFlagBits = 2147483647
+ QueueGraphicsBit QueueFlagBits = 1
+ QueueComputeBit QueueFlagBits = 2
+ QueueTransferBit QueueFlagBits = 4
+ QueueSparseBindingBit QueueFlagBits = 8
+ QueueProtectedBit QueueFlagBits = 16
+ QueueVideoDecodeBit QueueFlagBits = 32
+ QueueVideoEncodeBit QueueFlagBits = 64
+ QueueOpticalFlowBitNv QueueFlagBits = 256
+ QueueFlagBitsMaxEnum QueueFlagBits = 2147483647
)
// DeviceQueueCreateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceQueueCreateFlagBits.html
@@ -2185,50 +3397,48 @@ type PipelineStageFlagBits int32
// PipelineStageFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineStageFlagBits.html
const (
- PipelineStageTopOfPipeBit PipelineStageFlagBits = 1
- PipelineStageDrawIndirectBit PipelineStageFlagBits = 2
- PipelineStageVertexInputBit PipelineStageFlagBits = 4
- PipelineStageVertexShaderBit PipelineStageFlagBits = 8
- PipelineStageTessellationControlShaderBit PipelineStageFlagBits = 16
- PipelineStageTessellationEvaluationShaderBit PipelineStageFlagBits = 32
- PipelineStageGeometryShaderBit PipelineStageFlagBits = 64
- PipelineStageFragmentShaderBit PipelineStageFlagBits = 128
- PipelineStageEarlyFragmentTestsBit PipelineStageFlagBits = 256
- PipelineStageLateFragmentTestsBit PipelineStageFlagBits = 512
- PipelineStageColorAttachmentOutputBit PipelineStageFlagBits = 1024
- PipelineStageComputeShaderBit PipelineStageFlagBits = 2048
- PipelineStageTransferBit PipelineStageFlagBits = 4096
- PipelineStageBottomOfPipeBit PipelineStageFlagBits = 8192
- PipelineStageHostBit PipelineStageFlagBits = 16384
- PipelineStageAllGraphicsBit PipelineStageFlagBits = 32768
- PipelineStageAllCommandsBit PipelineStageFlagBits = 65536
- PipelineStageTransformFeedbackBit PipelineStageFlagBits = 16777216
- PipelineStageConditionalRenderingBit PipelineStageFlagBits = 262144
- PipelineStageCommandProcessBitNvx PipelineStageFlagBits = 131072
- PipelineStageShadingRateImageBitNv PipelineStageFlagBits = 4194304
- PipelineStageRaytracingBitNvx PipelineStageFlagBits = 2097152
- PipelineStageTaskShaderBitNv PipelineStageFlagBits = 524288
- PipelineStageMeshShaderBitNv PipelineStageFlagBits = 1048576
- PipelineStageFlagBitsMaxEnum PipelineStageFlagBits = 2147483647
+ PipelineStageTopOfPipeBit PipelineStageFlagBits = 1
+ PipelineStageDrawIndirectBit PipelineStageFlagBits = 2
+ PipelineStageVertexInputBit PipelineStageFlagBits = 4
+ PipelineStageVertexShaderBit PipelineStageFlagBits = 8
+ PipelineStageTessellationControlShaderBit PipelineStageFlagBits = 16
+ PipelineStageTessellationEvaluationShaderBit PipelineStageFlagBits = 32
+ PipelineStageGeometryShaderBit PipelineStageFlagBits = 64
+ PipelineStageFragmentShaderBit PipelineStageFlagBits = 128
+ PipelineStageEarlyFragmentTestsBit PipelineStageFlagBits = 256
+ PipelineStageLateFragmentTestsBit PipelineStageFlagBits = 512
+ PipelineStageColorAttachmentOutputBit PipelineStageFlagBits = 1024
+ PipelineStageComputeShaderBit PipelineStageFlagBits = 2048
+ PipelineStageTransferBit PipelineStageFlagBits = 4096
+ PipelineStageBottomOfPipeBit PipelineStageFlagBits = 8192
+ PipelineStageHostBit PipelineStageFlagBits = 16384
+ PipelineStageAllGraphicsBit PipelineStageFlagBits = 32768
+ PipelineStageAllCommandsBit PipelineStageFlagBits = 65536
+ PipelineStageNone PipelineStageFlagBits = 0
+ PipelineStageTransformFeedbackBit PipelineStageFlagBits = 16777216
+ PipelineStageConditionalRenderingBit PipelineStageFlagBits = 262144
+ PipelineStageAccelerationStructureBuildBit PipelineStageFlagBits = 33554432
+ PipelineStageRayTracingShaderBit PipelineStageFlagBits = 2097152
+ PipelineStageFragmentDensityProcessBit PipelineStageFlagBits = 8388608
+ PipelineStageFragmentShadingRateAttachmentBit PipelineStageFlagBits = 4194304
+ PipelineStageCommandPreprocessBitNv PipelineStageFlagBits = 131072
+ PipelineStageTaskShaderBit PipelineStageFlagBits = 524288
+ PipelineStageMeshShaderBit PipelineStageFlagBits = 1048576
+ PipelineStageShadingRateImageBitNv PipelineStageFlagBits = 4194304
+ PipelineStageRayTracingShaderBitNv PipelineStageFlagBits = 2097152
+ PipelineStageAccelerationStructureBuildBitNv PipelineStageFlagBits = 33554432
+ PipelineStageTaskShaderBitNv PipelineStageFlagBits = 524288
+ PipelineStageMeshShaderBitNv PipelineStageFlagBits = 1048576
+ PipelineStageFlagBitsMaxEnum PipelineStageFlagBits = 2147483647
)
-// ImageAspectFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageAspectFlagBits.html
-type ImageAspectFlagBits int32
+// SparseMemoryBindFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseMemoryBindFlagBits.html
+type SparseMemoryBindFlagBits int32
-// ImageAspectFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageAspectFlagBits.html
+// SparseMemoryBindFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseMemoryBindFlagBits.html
const (
- ImageAspectColorBit ImageAspectFlagBits = 1
- ImageAspectDepthBit ImageAspectFlagBits = 2
- ImageAspectStencilBit ImageAspectFlagBits = 4
- ImageAspectMetadataBit ImageAspectFlagBits = 8
- ImageAspectPlane0Bit ImageAspectFlagBits = 16
- ImageAspectPlane1Bit ImageAspectFlagBits = 32
- ImageAspectPlane2Bit ImageAspectFlagBits = 64
- ImageAspectMemoryPlane0Bit ImageAspectFlagBits = 128
- ImageAspectMemoryPlane1Bit ImageAspectFlagBits = 256
- ImageAspectMemoryPlane2Bit ImageAspectFlagBits = 512
- ImageAspectMemoryPlane3Bit ImageAspectFlagBits = 1024
- ImageAspectFlagBitsMaxEnum ImageAspectFlagBits = 2147483647
+ SparseMemoryBindMetadataBit SparseMemoryBindFlagBits = 1
+ SparseMemoryBindFlagBitsMaxEnum SparseMemoryBindFlagBits = 2147483647
)
// SparseImageFormatFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseImageFormatFlagBits.html
@@ -2242,15 +3452,6 @@ const (
SparseImageFormatFlagBitsMaxEnum SparseImageFormatFlagBits = 2147483647
)
-// SparseMemoryBindFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseMemoryBindFlagBits.html
-type SparseMemoryBindFlagBits int32
-
-// SparseMemoryBindFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseMemoryBindFlagBits.html
-const (
- SparseMemoryBindMetadataBit SparseMemoryBindFlagBits = 1
- SparseMemoryBindFlagBitsMaxEnum SparseMemoryBindFlagBits = 2147483647
-)
-
// FenceCreateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFenceCreateFlagBits.html
type FenceCreateFlagBits int32
@@ -2260,6 +3461,15 @@ const (
FenceCreateFlagBitsMaxEnum FenceCreateFlagBits = 2147483647
)
+// EventCreateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkEventCreateFlagBits.html
+type EventCreateFlagBits int32
+
+// EventCreateFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkEventCreateFlagBits.html
+const (
+ EventCreateDeviceOnlyBit EventCreateFlagBits = 1
+ EventCreateFlagBitsMaxEnum EventCreateFlagBits = 2147483647
+)
+
// QueryPipelineStatisticFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueryPipelineStatisticFlagBits.html
type QueryPipelineStatisticFlagBits int32
@@ -2276,6 +3486,9 @@ const (
QueryPipelineStatisticTessellationControlShaderPatchesBit QueryPipelineStatisticFlagBits = 256
QueryPipelineStatisticTessellationEvaluationShaderInvocationsBit QueryPipelineStatisticFlagBits = 512
QueryPipelineStatisticComputeShaderInvocationsBit QueryPipelineStatisticFlagBits = 1024
+ QueryPipelineStatisticTaskShaderInvocationsBit QueryPipelineStatisticFlagBits = 2048
+ QueryPipelineStatisticMeshShaderInvocationsBit QueryPipelineStatisticFlagBits = 4096
+ QueryPipelineStatisticClusterCullingShaderInvocationsBitHuawei QueryPipelineStatisticFlagBits = 8192
QueryPipelineStatisticFlagBitsMaxEnum QueryPipelineStatisticFlagBits = 2147483647
)
@@ -2288,6 +3501,7 @@ const (
QueryResultWaitBit QueryResultFlagBits = 2
QueryResultWithAvailabilityBit QueryResultFlagBits = 4
QueryResultPartialBit QueryResultFlagBits = 8
+ QueryResultWithStatusBit QueryResultFlagBits = 16
QueryResultFlagBitsMaxEnum QueryResultFlagBits = 2147483647
)
@@ -2296,11 +3510,13 @@ type BufferCreateFlagBits int32
// BufferCreateFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferCreateFlagBits.html
const (
- BufferCreateSparseBindingBit BufferCreateFlagBits = 1
- BufferCreateSparseResidencyBit BufferCreateFlagBits = 2
- BufferCreateSparseAliasedBit BufferCreateFlagBits = 4
- BufferCreateProtectedBit BufferCreateFlagBits = 8
- BufferCreateFlagBitsMaxEnum BufferCreateFlagBits = 2147483647
+ BufferCreateSparseBindingBit BufferCreateFlagBits = 1
+ BufferCreateSparseResidencyBit BufferCreateFlagBits = 2
+ BufferCreateSparseAliasedBit BufferCreateFlagBits = 4
+ BufferCreateProtectedBit BufferCreateFlagBits = 8
+ BufferCreateDeviceAddressCaptureReplayBit BufferCreateFlagBits = 16
+ BufferCreateDescriptorBufferCaptureReplayBit BufferCreateFlagBits = 32
+ BufferCreateFlagBitsMaxEnum BufferCreateFlagBits = 2147483647
)
// BufferUsageFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferUsageFlagBits.html
@@ -2308,20 +3524,65 @@ type BufferUsageFlagBits int32
// BufferUsageFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferUsageFlagBits.html
const (
- BufferUsageTransferSrcBit BufferUsageFlagBits = 1
- BufferUsageTransferDstBit BufferUsageFlagBits = 2
- BufferUsageUniformTexelBufferBit BufferUsageFlagBits = 4
- BufferUsageStorageTexelBufferBit BufferUsageFlagBits = 8
- BufferUsageUniformBufferBit BufferUsageFlagBits = 16
- BufferUsageStorageBufferBit BufferUsageFlagBits = 32
- BufferUsageIndexBufferBit BufferUsageFlagBits = 64
- BufferUsageVertexBufferBit BufferUsageFlagBits = 128
- BufferUsageIndirectBufferBit BufferUsageFlagBits = 256
- BufferUsageTransformFeedbackBufferBit BufferUsageFlagBits = 2048
- BufferUsageTransformFeedbackCounterBufferBit BufferUsageFlagBits = 4096
- BufferUsageConditionalRenderingBit BufferUsageFlagBits = 512
- BufferUsageRaytracingBitNvx BufferUsageFlagBits = 1024
- BufferUsageFlagBitsMaxEnum BufferUsageFlagBits = 2147483647
+ BufferUsageTransferSrcBit BufferUsageFlagBits = 1
+ BufferUsageTransferDstBit BufferUsageFlagBits = 2
+ BufferUsageUniformTexelBufferBit BufferUsageFlagBits = 4
+ BufferUsageStorageTexelBufferBit BufferUsageFlagBits = 8
+ BufferUsageUniformBufferBit BufferUsageFlagBits = 16
+ BufferUsageStorageBufferBit BufferUsageFlagBits = 32
+ BufferUsageIndexBufferBit BufferUsageFlagBits = 64
+ BufferUsageVertexBufferBit BufferUsageFlagBits = 128
+ BufferUsageIndirectBufferBit BufferUsageFlagBits = 256
+ BufferUsageShaderDeviceAddressBit BufferUsageFlagBits = 131072
+ BufferUsageVideoDecodeSrcBit BufferUsageFlagBits = 8192
+ BufferUsageVideoDecodeDstBit BufferUsageFlagBits = 16384
+ BufferUsageTransformFeedbackBufferBit BufferUsageFlagBits = 2048
+ BufferUsageTransformFeedbackCounterBufferBit BufferUsageFlagBits = 4096
+ BufferUsageConditionalRenderingBit BufferUsageFlagBits = 512
+ BufferUsageAccelerationStructureBuildInputReadOnlyBit BufferUsageFlagBits = 524288
+ BufferUsageAccelerationStructureStorageBit BufferUsageFlagBits = 1048576
+ BufferUsageShaderBindingTableBit BufferUsageFlagBits = 1024
+ BufferUsageVideoEncodeDstBit BufferUsageFlagBits = 32768
+ BufferUsageVideoEncodeSrcBit BufferUsageFlagBits = 65536
+ BufferUsageSamplerDescriptorBufferBit BufferUsageFlagBits = 2097152
+ BufferUsageResourceDescriptorBufferBit BufferUsageFlagBits = 4194304
+ BufferUsagePushDescriptorsDescriptorBufferBit BufferUsageFlagBits = 67108864
+ BufferUsageMicromapBuildInputReadOnlyBit BufferUsageFlagBits = 8388608
+ BufferUsageMicromapStorageBit BufferUsageFlagBits = 16777216
+ BufferUsageRayTracingBitNv BufferUsageFlagBits = 1024
+ BufferUsageFlagBitsMaxEnum BufferUsageFlagBits = 2147483647
+)
+
+// ImageViewCreateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageViewCreateFlagBits.html
+type ImageViewCreateFlagBits int32
+
+// ImageViewCreateFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageViewCreateFlagBits.html
+const (
+ ImageViewCreateFragmentDensityMapDynamicBit ImageViewCreateFlagBits = 1
+ ImageViewCreateDescriptorBufferCaptureReplayBit ImageViewCreateFlagBits = 4
+ ImageViewCreateFragmentDensityMapDeferredBit ImageViewCreateFlagBits = 2
+ ImageViewCreateFlagBitsMaxEnum ImageViewCreateFlagBits = 2147483647
+)
+
+// PipelineCacheCreateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCacheCreateFlagBits.html
+type PipelineCacheCreateFlagBits int32
+
+// PipelineCacheCreateFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCacheCreateFlagBits.html
+const (
+ PipelineCacheCreateExternallySynchronizedBit PipelineCacheCreateFlagBits = 1
+ PipelineCacheCreateFlagBitsMaxEnum PipelineCacheCreateFlagBits = 2147483647
+)
+
+// ColorComponentFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkColorComponentFlagBits.html
+type ColorComponentFlagBits int32
+
+// ColorComponentFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkColorComponentFlagBits.html
+const (
+ ColorComponentRBit ColorComponentFlagBits = 1
+ ColorComponentGBit ColorComponentFlagBits = 2
+ ColorComponentBBit ColorComponentFlagBits = 4
+ ColorComponentABit ColorComponentFlagBits = 8
+ ColorComponentFlagBitsMaxEnum ColorComponentFlagBits = 2147483647
)
// PipelineCreateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCreateFlagBits.html
@@ -2329,13 +3590,50 @@ type PipelineCreateFlagBits int32
// PipelineCreateFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCreateFlagBits.html
const (
- PipelineCreateDisableOptimizationBit PipelineCreateFlagBits = 1
- PipelineCreateAllowDerivativesBit PipelineCreateFlagBits = 2
- PipelineCreateDerivativeBit PipelineCreateFlagBits = 4
- PipelineCreateViewIndexFromDeviceIndexBit PipelineCreateFlagBits = 8
- PipelineCreateDispatchBase PipelineCreateFlagBits = 16
- PipelineCreateDeferCompileBitNvx PipelineCreateFlagBits = 32
- PipelineCreateFlagBitsMaxEnum PipelineCreateFlagBits = 2147483647
+ PipelineCreateDisableOptimizationBit PipelineCreateFlagBits = 1
+ PipelineCreateAllowDerivativesBit PipelineCreateFlagBits = 2
+ PipelineCreateDerivativeBit PipelineCreateFlagBits = 4
+ PipelineCreateViewIndexFromDeviceIndexBit PipelineCreateFlagBits = 8
+ PipelineCreateDispatchBaseBit PipelineCreateFlagBits = 16
+ PipelineCreateFailOnPipelineCompileRequiredBit PipelineCreateFlagBits = 256
+ PipelineCreateEarlyReturnOnFailureBit PipelineCreateFlagBits = 512
+ PipelineCreateRenderingFragmentShadingRateAttachmentBit PipelineCreateFlagBits = 2097152
+ PipelineCreateRenderingFragmentDensityMapAttachmentBit PipelineCreateFlagBits = 4194304
+ PipelineCreateRayTracingNoNullAnyHitShadersBit PipelineCreateFlagBits = 16384
+ PipelineCreateRayTracingNoNullClosestHitShadersBit PipelineCreateFlagBits = 32768
+ PipelineCreateRayTracingNoNullMissShadersBit PipelineCreateFlagBits = 65536
+ PipelineCreateRayTracingNoNullIntersectionShadersBit PipelineCreateFlagBits = 131072
+ PipelineCreateRayTracingSkipTrianglesBit PipelineCreateFlagBits = 4096
+ PipelineCreateRayTracingSkipAabbsBit PipelineCreateFlagBits = 8192
+ PipelineCreateRayTracingShaderGroupHandleCaptureReplayBit PipelineCreateFlagBits = 524288
+ PipelineCreateDeferCompileBitNv PipelineCreateFlagBits = 32
+ PipelineCreateCaptureStatisticsBit PipelineCreateFlagBits = 64
+ PipelineCreateCaptureInternalRepresentationsBit PipelineCreateFlagBits = 128
+ PipelineCreateIndirectBindableBitNv PipelineCreateFlagBits = 262144
+ PipelineCreateLibraryBit PipelineCreateFlagBits = 2048
+ PipelineCreateDescriptorBufferBit PipelineCreateFlagBits = 536870912
+ PipelineCreateRetainLinkTimeOptimizationInfoBit PipelineCreateFlagBits = 8388608
+ PipelineCreateLinkTimeOptimizationBit PipelineCreateFlagBits = 1024
+ PipelineCreateRayTracingAllowMotionBitNv PipelineCreateFlagBits = 1048576
+ PipelineCreateColorAttachmentFeedbackLoopBit PipelineCreateFlagBits = 33554432
+ PipelineCreateDepthStencilAttachmentFeedbackLoopBit PipelineCreateFlagBits = 67108864
+ PipelineCreateRayTracingOpacityMicromapBit PipelineCreateFlagBits = 16777216
+ PipelineCreateNoProtectedAccessBit PipelineCreateFlagBits = 134217728
+ PipelineCreateProtectedAccessOnlyBit PipelineCreateFlagBits = 1073741824
+ PipelineCreateDispatchBase PipelineCreateFlagBits = 16
+ PipelineRasterizationStateCreateFragmentShadingRateAttachmentBit PipelineCreateFlagBits = 2097152
+ PipelineRasterizationStateCreateFragmentDensityMapAttachmentBit PipelineCreateFlagBits = 4194304
+ PipelineCreateFlagBitsMaxEnum PipelineCreateFlagBits = 2147483647
+)
+
+// PipelineShaderStageCreateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineShaderStageCreateFlagBits.html
+type PipelineShaderStageCreateFlagBits int32
+
+// PipelineShaderStageCreateFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineShaderStageCreateFlagBits.html
+const (
+ PipelineShaderStageCreateAllowVaryingSubgroupSizeBit PipelineShaderStageCreateFlagBits = 1
+ PipelineShaderStageCreateRequireFullSubgroupsBit PipelineShaderStageCreateFlagBits = 2
+ PipelineShaderStageCreateFlagBitsMaxEnum PipelineShaderStageCreateFlagBits = 2147483647
)
// ShaderStageFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkShaderStageFlagBits.html
@@ -2351,12 +3649,22 @@ const (
ShaderStageComputeBit ShaderStageFlagBits = 32
ShaderStageAllGraphics ShaderStageFlagBits = 31
ShaderStageAll ShaderStageFlagBits = 2147483647
- ShaderStageRaygenBitNvx ShaderStageFlagBits = 256
- ShaderStageAnyHitBitNvx ShaderStageFlagBits = 512
- ShaderStageClosestHitBitNvx ShaderStageFlagBits = 1024
- ShaderStageMissBitNvx ShaderStageFlagBits = 2048
- ShaderStageIntersectionBitNvx ShaderStageFlagBits = 4096
- ShaderStageCallableBitNvx ShaderStageFlagBits = 8192
+ ShaderStageRaygenBit ShaderStageFlagBits = 256
+ ShaderStageAnyHitBit ShaderStageFlagBits = 512
+ ShaderStageClosestHitBit ShaderStageFlagBits = 1024
+ ShaderStageMissBit ShaderStageFlagBits = 2048
+ ShaderStageIntersectionBit ShaderStageFlagBits = 4096
+ ShaderStageCallableBit ShaderStageFlagBits = 8192
+ ShaderStageTaskBit ShaderStageFlagBits = 64
+ ShaderStageMeshBit ShaderStageFlagBits = 128
+ ShaderStageSubpassShadingBitHuawei ShaderStageFlagBits = 16384
+ ShaderStageClusterCullingBitHuawei ShaderStageFlagBits = 524288
+ ShaderStageRaygenBitNv ShaderStageFlagBits = 256
+ ShaderStageAnyHitBitNv ShaderStageFlagBits = 512
+ ShaderStageClosestHitBitNv ShaderStageFlagBits = 1024
+ ShaderStageMissBitNv ShaderStageFlagBits = 2048
+ ShaderStageIntersectionBitNv ShaderStageFlagBits = 4096
+ ShaderStageCallableBitNv ShaderStageFlagBits = 8192
ShaderStageTaskBitNv ShaderStageFlagBits = 64
ShaderStageMeshBitNv ShaderStageFlagBits = 128
ShaderStageFlagBitsMaxEnum ShaderStageFlagBits = 2147483647
@@ -2374,26 +3682,48 @@ const (
CullModeFlagBitsMaxEnum CullModeFlagBits = 2147483647
)
-// ColorComponentFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkColorComponentFlagBits.html
-type ColorComponentFlagBits int32
+// PipelineDepthStencilStateCreateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineDepthStencilStateCreateFlagBits.html
+type PipelineDepthStencilStateCreateFlagBits int32
-// ColorComponentFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkColorComponentFlagBits.html
+// PipelineDepthStencilStateCreateFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineDepthStencilStateCreateFlagBits.html
const (
- ColorComponentRBit ColorComponentFlagBits = 1
- ColorComponentGBit ColorComponentFlagBits = 2
- ColorComponentBBit ColorComponentFlagBits = 4
- ColorComponentABit ColorComponentFlagBits = 8
- ColorComponentFlagBitsMaxEnum ColorComponentFlagBits = 2147483647
+ PipelineDepthStencilStateCreateRasterizationOrderAttachmentDepthAccessBit PipelineDepthStencilStateCreateFlagBits = 1
+ PipelineDepthStencilStateCreateRasterizationOrderAttachmentStencilAccessBit PipelineDepthStencilStateCreateFlagBits = 2
+ PipelineDepthStencilStateCreateRasterizationOrderAttachmentDepthAccessBitArm PipelineDepthStencilStateCreateFlagBits = 1
+ PipelineDepthStencilStateCreateRasterizationOrderAttachmentStencilAccessBitArm PipelineDepthStencilStateCreateFlagBits = 2
+ PipelineDepthStencilStateCreateFlagBitsMaxEnum PipelineDepthStencilStateCreateFlagBits = 2147483647
)
-// DescriptorSetLayoutCreateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetLayoutCreateFlagBits.html
-type DescriptorSetLayoutCreateFlagBits int32
+// PipelineColorBlendStateCreateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineColorBlendStateCreateFlagBits.html
+type PipelineColorBlendStateCreateFlagBits int32
-// DescriptorSetLayoutCreateFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetLayoutCreateFlagBits.html
+// PipelineColorBlendStateCreateFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineColorBlendStateCreateFlagBits.html
+const (
+ PipelineColorBlendStateCreateRasterizationOrderAttachmentAccessBit PipelineColorBlendStateCreateFlagBits = 1
+ PipelineColorBlendStateCreateRasterizationOrderAttachmentAccessBitArm PipelineColorBlendStateCreateFlagBits = 1
+ PipelineColorBlendStateCreateFlagBitsMaxEnum PipelineColorBlendStateCreateFlagBits = 2147483647
+)
+
+// PipelineLayoutCreateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineLayoutCreateFlagBits.html
+type PipelineLayoutCreateFlagBits int32
+
+// PipelineLayoutCreateFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineLayoutCreateFlagBits.html
+const (
+ PipelineLayoutCreateIndependentSetsBit PipelineLayoutCreateFlagBits = 2
+ PipelineLayoutCreateFlagBitsMaxEnum PipelineLayoutCreateFlagBits = 2147483647
+)
+
+// SamplerCreateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerCreateFlagBits.html
+type SamplerCreateFlagBits int32
+
+// SamplerCreateFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerCreateFlagBits.html
const (
- DescriptorSetLayoutCreatePushDescriptorBit DescriptorSetLayoutCreateFlagBits = 1
- DescriptorSetLayoutCreateUpdateAfterBindPoolBit DescriptorSetLayoutCreateFlagBits = 2
- DescriptorSetLayoutCreateFlagBitsMaxEnum DescriptorSetLayoutCreateFlagBits = 2147483647
+ SamplerCreateSubsampledBit SamplerCreateFlagBits = 1
+ SamplerCreateSubsampledCoarseReconstructionBit SamplerCreateFlagBits = 2
+ SamplerCreateDescriptorBufferCaptureReplayBit SamplerCreateFlagBits = 8
+ SamplerCreateNonSeamlessCubeMapBit SamplerCreateFlagBits = 4
+ SamplerCreateImageProcessingBitQcom SamplerCreateFlagBits = 16
+ SamplerCreateFlagBitsMaxEnum SamplerCreateFlagBits = 2147483647
)
// DescriptorPoolCreateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorPoolCreateFlagBits.html
@@ -2403,9 +3733,25 @@ type DescriptorPoolCreateFlagBits int32
const (
DescriptorPoolCreateFreeDescriptorSetBit DescriptorPoolCreateFlagBits = 1
DescriptorPoolCreateUpdateAfterBindBit DescriptorPoolCreateFlagBits = 2
+ DescriptorPoolCreateHostOnlyBit DescriptorPoolCreateFlagBits = 4
+ DescriptorPoolCreateHostOnlyBitValve DescriptorPoolCreateFlagBits = 4
DescriptorPoolCreateFlagBitsMaxEnum DescriptorPoolCreateFlagBits = 2147483647
)
+// DescriptorSetLayoutCreateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetLayoutCreateFlagBits.html
+type DescriptorSetLayoutCreateFlagBits int32
+
+// DescriptorSetLayoutCreateFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetLayoutCreateFlagBits.html
+const (
+ DescriptorSetLayoutCreateUpdateAfterBindPoolBit DescriptorSetLayoutCreateFlagBits = 2
+ DescriptorSetLayoutCreatePushDescriptorBit DescriptorSetLayoutCreateFlagBits = 1
+ DescriptorSetLayoutCreateDescriptorBufferBit DescriptorSetLayoutCreateFlagBits = 16
+ DescriptorSetLayoutCreateEmbeddedImmutableSamplersBit DescriptorSetLayoutCreateFlagBits = 32
+ DescriptorSetLayoutCreateHostOnlyPoolBit DescriptorSetLayoutCreateFlagBits = 4
+ DescriptorSetLayoutCreateHostOnlyPoolBitValve DescriptorSetLayoutCreateFlagBits = 4
+ DescriptorSetLayoutCreateFlagBitsMaxEnum DescriptorSetLayoutCreateFlagBits = 2147483647
+)
+
// AttachmentDescriptionFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAttachmentDescriptionFlagBits.html
type AttachmentDescriptionFlagBits int32
@@ -2415,60 +3761,53 @@ const (
AttachmentDescriptionFlagBitsMaxEnum AttachmentDescriptionFlagBits = 2147483647
)
-// SubpassDescriptionFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubpassDescriptionFlagBits.html
-type SubpassDescriptionFlagBits int32
+// DependencyFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDependencyFlagBits.html
+type DependencyFlagBits int32
-// SubpassDescriptionFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubpassDescriptionFlagBits.html
+// DependencyFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDependencyFlagBits.html
const (
- SubpassDescriptionPerViewAttributesBitNvx SubpassDescriptionFlagBits = 1
- SubpassDescriptionPerViewPositionXOnlyBitNvx SubpassDescriptionFlagBits = 2
- SubpassDescriptionFlagBitsMaxEnum SubpassDescriptionFlagBits = 2147483647
+ DependencyByRegionBit DependencyFlagBits = 1
+ DependencyDeviceGroupBit DependencyFlagBits = 4
+ DependencyViewLocalBit DependencyFlagBits = 2
+ DependencyFeedbackLoopBit DependencyFlagBits = 8
+ DependencyFlagBitsMaxEnum DependencyFlagBits = 2147483647
)
-// AccessFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAccessFlagBits.html
-type AccessFlagBits int32
+// FramebufferCreateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFramebufferCreateFlagBits.html
+type FramebufferCreateFlagBits int32
-// AccessFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAccessFlagBits.html
+// FramebufferCreateFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFramebufferCreateFlagBits.html
const (
- AccessIndirectCommandReadBit AccessFlagBits = 1
- AccessIndexReadBit AccessFlagBits = 2
- AccessVertexAttributeReadBit AccessFlagBits = 4
- AccessUniformReadBit AccessFlagBits = 8
- AccessInputAttachmentReadBit AccessFlagBits = 16
- AccessShaderReadBit AccessFlagBits = 32
- AccessShaderWriteBit AccessFlagBits = 64
- AccessColorAttachmentReadBit AccessFlagBits = 128
- AccessColorAttachmentWriteBit AccessFlagBits = 256
- AccessDepthStencilAttachmentReadBit AccessFlagBits = 512
- AccessDepthStencilAttachmentWriteBit AccessFlagBits = 1024
- AccessTransferReadBit AccessFlagBits = 2048
- AccessTransferWriteBit AccessFlagBits = 4096
- AccessHostReadBit AccessFlagBits = 8192
- AccessHostWriteBit AccessFlagBits = 16384
- AccessMemoryReadBit AccessFlagBits = 32768
- AccessMemoryWriteBit AccessFlagBits = 65536
- AccessTransformFeedbackWriteBit AccessFlagBits = 33554432
- AccessTransformFeedbackCounterReadBit AccessFlagBits = 67108864
- AccessTransformFeedbackCounterWriteBit AccessFlagBits = 134217728
- AccessConditionalRenderingReadBit AccessFlagBits = 1048576
- AccessCommandProcessReadBitNvx AccessFlagBits = 131072
- AccessCommandProcessWriteBitNvx AccessFlagBits = 262144
- AccessColorAttachmentReadNoncoherentBit AccessFlagBits = 524288
- AccessShadingRateImageReadBitNv AccessFlagBits = 8388608
- AccessAccelerationStructureReadBitNvx AccessFlagBits = 2097152
- AccessAccelerationStructureWriteBitNvx AccessFlagBits = 4194304
- AccessFlagBitsMaxEnum AccessFlagBits = 2147483647
+ FramebufferCreateImagelessBit FramebufferCreateFlagBits = 1
+ FramebufferCreateFlagBitsMaxEnum FramebufferCreateFlagBits = 2147483647
)
-// DependencyFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDependencyFlagBits.html
-type DependencyFlagBits int32
+// RenderPassCreateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderPassCreateFlagBits.html
+type RenderPassCreateFlagBits int32
-// DependencyFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDependencyFlagBits.html
+// RenderPassCreateFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderPassCreateFlagBits.html
const (
- DependencyByRegionBit DependencyFlagBits = 1
- DependencyDeviceGroupBit DependencyFlagBits = 4
- DependencyViewLocalBit DependencyFlagBits = 2
- DependencyFlagBitsMaxEnum DependencyFlagBits = 2147483647
+ RenderPassCreateTransformBitQcom RenderPassCreateFlagBits = 2
+ RenderPassCreateFlagBitsMaxEnum RenderPassCreateFlagBits = 2147483647
+)
+
+// SubpassDescriptionFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubpassDescriptionFlagBits.html
+type SubpassDescriptionFlagBits int32
+
+// SubpassDescriptionFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubpassDescriptionFlagBits.html
+const (
+ SubpassDescriptionPerViewAttributesBitNvx SubpassDescriptionFlagBits = 1
+ SubpassDescriptionPerViewPositionXOnlyBitNvx SubpassDescriptionFlagBits = 2
+ SubpassDescriptionFragmentRegionBitQcom SubpassDescriptionFlagBits = 4
+ SubpassDescriptionShaderResolveBitQcom SubpassDescriptionFlagBits = 8
+ SubpassDescriptionRasterizationOrderAttachmentColorAccessBit SubpassDescriptionFlagBits = 16
+ SubpassDescriptionRasterizationOrderAttachmentDepthAccessBit SubpassDescriptionFlagBits = 32
+ SubpassDescriptionRasterizationOrderAttachmentStencilAccessBit SubpassDescriptionFlagBits = 64
+ SubpassDescriptionEnableLegacyDitheringBit SubpassDescriptionFlagBits = 128
+ SubpassDescriptionRasterizationOrderAttachmentColorAccessBitArm SubpassDescriptionFlagBits = 16
+ SubpassDescriptionRasterizationOrderAttachmentDepthAccessBitArm SubpassDescriptionFlagBits = 32
+ SubpassDescriptionRasterizationOrderAttachmentStencilAccessBitArm SubpassDescriptionFlagBits = 64
+ SubpassDescriptionFlagBitsMaxEnum SubpassDescriptionFlagBits = 2147483647
)
// CommandPoolCreateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandPoolCreateFlagBits.html
@@ -2527,6 +3866,7 @@ type StencilFaceFlagBits int32
const (
StencilFaceFrontBit StencilFaceFlagBits = 1
StencilFaceBackBit StencilFaceFlagBits = 2
+ StencilFaceFrontAndBack StencilFaceFlagBits = 3
StencilFrontAndBack StencilFaceFlagBits = 3
StencilFaceFlagBitsMaxEnum StencilFaceFlagBits = 2147483647
)
@@ -2538,9 +3878,6 @@ type PointClippingBehavior int32
const (
PointClippingBehaviorAllClipPlanes PointClippingBehavior = iota
PointClippingBehaviorUserClipPlanesOnly PointClippingBehavior = 1
- PointClippingBehaviorBeginRange PointClippingBehavior = 0
- PointClippingBehaviorEndRange PointClippingBehavior = 1
- PointClippingBehaviorRangeSize PointClippingBehavior = 2
PointClippingBehaviorMaxEnum PointClippingBehavior = 2147483647
)
@@ -2549,12 +3886,9 @@ type TessellationDomainOrigin int32
// TessellationDomainOrigin enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkTessellationDomainOrigin.html
const (
- TessellationDomainOriginUpperLeft TessellationDomainOrigin = iota
- TessellationDomainOriginLowerLeft TessellationDomainOrigin = 1
- TessellationDomainOriginBeginRange TessellationDomainOrigin = 0
- TessellationDomainOriginEndRange TessellationDomainOrigin = 1
- TessellationDomainOriginRangeSize TessellationDomainOrigin = 2
- TessellationDomainOriginMaxEnum TessellationDomainOrigin = 2147483647
+ TessellationDomainOriginUpperLeft TessellationDomainOrigin = iota
+ TessellationDomainOriginLowerLeft TessellationDomainOrigin = 1
+ TessellationDomainOriginMaxEnum TessellationDomainOrigin = 2147483647
)
// SamplerYcbcrModelConversion as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerYcbcrModelConversion.html
@@ -2567,9 +3901,6 @@ const (
SamplerYcbcrModelConversionYcbcr709 SamplerYcbcrModelConversion = 2
SamplerYcbcrModelConversionYcbcr601 SamplerYcbcrModelConversion = 3
SamplerYcbcrModelConversionYcbcr2020 SamplerYcbcrModelConversion = 4
- SamplerYcbcrModelConversionBeginRange SamplerYcbcrModelConversion = 0
- SamplerYcbcrModelConversionEndRange SamplerYcbcrModelConversion = 4
- SamplerYcbcrModelConversionRangeSize SamplerYcbcrModelConversion = 5
SamplerYcbcrModelConversionMaxEnum SamplerYcbcrModelConversion = 2147483647
)
@@ -2578,12 +3909,9 @@ type SamplerYcbcrRange int32
// SamplerYcbcrRange enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerYcbcrRange.html
const (
- SamplerYcbcrRangeItuFull SamplerYcbcrRange = iota
- SamplerYcbcrRangeItuNarrow SamplerYcbcrRange = 1
- SamplerYcbcrRangeBeginRange SamplerYcbcrRange = 0
- SamplerYcbcrRangeEndRange SamplerYcbcrRange = 1
- SamplerYcbcrRangeRangeSize SamplerYcbcrRange = 2
- SamplerYcbcrRangeMaxEnum SamplerYcbcrRange = 2147483647
+ SamplerYcbcrRangeItuFull SamplerYcbcrRange = iota
+ SamplerYcbcrRangeItuNarrow SamplerYcbcrRange = 1
+ SamplerYcbcrRangeMaxEnum SamplerYcbcrRange = 2147483647
)
// ChromaLocation as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkChromaLocation.html
@@ -2593,9 +3921,6 @@ type ChromaLocation int32
const (
ChromaLocationCositedEven ChromaLocation = iota
ChromaLocationMidpoint ChromaLocation = 1
- ChromaLocationBeginRange ChromaLocation = 0
- ChromaLocationEndRange ChromaLocation = 1
- ChromaLocationRangeSize ChromaLocation = 2
ChromaLocationMaxEnum ChromaLocation = 2147483647
)
@@ -2606,9 +3931,6 @@ type DescriptorUpdateTemplateType int32
const (
DescriptorUpdateTemplateTypeDescriptorSet DescriptorUpdateTemplateType = iota
DescriptorUpdateTemplateTypePushDescriptors DescriptorUpdateTemplateType = 1
- DescriptorUpdateTemplateTypeBeginRange DescriptorUpdateTemplateType = 0
- DescriptorUpdateTemplateTypeEndRange DescriptorUpdateTemplateType = 0
- DescriptorUpdateTemplateTypeRangeSize DescriptorUpdateTemplateType = 1
DescriptorUpdateTemplateTypeMaxEnum DescriptorUpdateTemplateType = 2147483647
)
@@ -2646,8 +3968,10 @@ type MemoryAllocateFlagBits int32
// MemoryAllocateFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryAllocateFlagBits.html
const (
- MemoryAllocateDeviceMaskBit MemoryAllocateFlagBits = 1
- MemoryAllocateFlagBitsMaxEnum MemoryAllocateFlagBits = 2147483647
+ MemoryAllocateDeviceMaskBit MemoryAllocateFlagBits = 1
+ MemoryAllocateDeviceAddressBit MemoryAllocateFlagBits = 2
+ MemoryAllocateDeviceAddressCaptureReplayBit MemoryAllocateFlagBits = 4
+ MemoryAllocateFlagBitsMaxEnum MemoryAllocateFlagBits = 2147483647
)
// ExternalMemoryHandleTypeFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryHandleTypeFlagBits.html
@@ -2666,6 +3990,8 @@ const (
ExternalMemoryHandleTypeAndroidHardwareBufferBitAndroid ExternalMemoryHandleTypeFlagBits = 1024
ExternalMemoryHandleTypeHostAllocationBit ExternalMemoryHandleTypeFlagBits = 128
ExternalMemoryHandleTypeHostMappedForeignMemoryBit ExternalMemoryHandleTypeFlagBits = 256
+ ExternalMemoryHandleTypeZirconVmoBitFuchsia ExternalMemoryHandleTypeFlagBits = 2048
+ ExternalMemoryHandleTypeRdmaAddressBitNv ExternalMemoryHandleTypeFlagBits = 4096
ExternalMemoryHandleTypeFlagBitsMaxEnum ExternalMemoryHandleTypeFlagBits = 2147483647
)
@@ -2685,62 +4011,224 @@ type ExternalFenceHandleTypeFlagBits int32
// ExternalFenceHandleTypeFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalFenceHandleTypeFlagBits.html
const (
- ExternalFenceHandleTypeOpaqueFdBit ExternalFenceHandleTypeFlagBits = 1
- ExternalFenceHandleTypeOpaqueWin32Bit ExternalFenceHandleTypeFlagBits = 2
- ExternalFenceHandleTypeOpaqueWin32KmtBit ExternalFenceHandleTypeFlagBits = 4
- ExternalFenceHandleTypeSyncFdBit ExternalFenceHandleTypeFlagBits = 8
- ExternalFenceHandleTypeFlagBitsMaxEnum ExternalFenceHandleTypeFlagBits = 2147483647
+ ExternalFenceHandleTypeOpaqueFdBit ExternalFenceHandleTypeFlagBits = 1
+ ExternalFenceHandleTypeOpaqueWin32Bit ExternalFenceHandleTypeFlagBits = 2
+ ExternalFenceHandleTypeOpaqueWin32KmtBit ExternalFenceHandleTypeFlagBits = 4
+ ExternalFenceHandleTypeSyncFdBit ExternalFenceHandleTypeFlagBits = 8
+ ExternalFenceHandleTypeFlagBitsMaxEnum ExternalFenceHandleTypeFlagBits = 2147483647
+)
+
+// ExternalFenceFeatureFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalFenceFeatureFlagBits.html
+type ExternalFenceFeatureFlagBits int32
+
+// ExternalFenceFeatureFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalFenceFeatureFlagBits.html
+const (
+ ExternalFenceFeatureExportableBit ExternalFenceFeatureFlagBits = 1
+ ExternalFenceFeatureImportableBit ExternalFenceFeatureFlagBits = 2
+ ExternalFenceFeatureFlagBitsMaxEnum ExternalFenceFeatureFlagBits = 2147483647
+)
+
+// FenceImportFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFenceImportFlagBits.html
+type FenceImportFlagBits int32
+
+// FenceImportFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFenceImportFlagBits.html
+const (
+ FenceImportTemporaryBit FenceImportFlagBits = 1
+ FenceImportFlagBitsMaxEnum FenceImportFlagBits = 2147483647
+)
+
+// SemaphoreImportFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSemaphoreImportFlagBits.html
+type SemaphoreImportFlagBits int32
+
+// SemaphoreImportFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSemaphoreImportFlagBits.html
+const (
+ SemaphoreImportTemporaryBit SemaphoreImportFlagBits = 1
+ SemaphoreImportFlagBitsMaxEnum SemaphoreImportFlagBits = 2147483647
+)
+
+// ExternalSemaphoreHandleTypeFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalSemaphoreHandleTypeFlagBits.html
+type ExternalSemaphoreHandleTypeFlagBits int32
+
+// ExternalSemaphoreHandleTypeFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalSemaphoreHandleTypeFlagBits.html
+const (
+ ExternalSemaphoreHandleTypeOpaqueFdBit ExternalSemaphoreHandleTypeFlagBits = 1
+ ExternalSemaphoreHandleTypeOpaqueWin32Bit ExternalSemaphoreHandleTypeFlagBits = 2
+ ExternalSemaphoreHandleTypeOpaqueWin32KmtBit ExternalSemaphoreHandleTypeFlagBits = 4
+ ExternalSemaphoreHandleTypeD3d12FenceBit ExternalSemaphoreHandleTypeFlagBits = 8
+ ExternalSemaphoreHandleTypeSyncFdBit ExternalSemaphoreHandleTypeFlagBits = 16
+ ExternalSemaphoreHandleTypeZirconEventBitFuchsia ExternalSemaphoreHandleTypeFlagBits = 128
+ ExternalSemaphoreHandleTypeD3d11FenceBit ExternalSemaphoreHandleTypeFlagBits = 8
+ ExternalSemaphoreHandleTypeFlagBitsMaxEnum ExternalSemaphoreHandleTypeFlagBits = 2147483647
+)
+
+// ExternalSemaphoreFeatureFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalSemaphoreFeatureFlagBits.html
+type ExternalSemaphoreFeatureFlagBits int32
+
+// ExternalSemaphoreFeatureFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalSemaphoreFeatureFlagBits.html
+const (
+ ExternalSemaphoreFeatureExportableBit ExternalSemaphoreFeatureFlagBits = 1
+ ExternalSemaphoreFeatureImportableBit ExternalSemaphoreFeatureFlagBits = 2
+ ExternalSemaphoreFeatureFlagBitsMaxEnum ExternalSemaphoreFeatureFlagBits = 2147483647
+)
+
+// DriverId as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDriverId.html
+type DriverId int32
+
+// DriverId enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDriverId.html
+const (
+ DriverIdAmdProprietary DriverId = 1
+ DriverIdAmdOpenSource DriverId = 2
+ DriverIdMesaRadv DriverId = 3
+ DriverIdNvidiaProprietary DriverId = 4
+ DriverIdIntelProprietaryWindows DriverId = 5
+ DriverIdIntelOpenSourceMesa DriverId = 6
+ DriverIdImaginationProprietary DriverId = 7
+ DriverIdQualcommProprietary DriverId = 8
+ DriverIdArmProprietary DriverId = 9
+ DriverIdGoogleSwiftshader DriverId = 10
+ DriverIdGgpProprietary DriverId = 11
+ DriverIdBroadcomProprietary DriverId = 12
+ DriverIdMesaLlvmpipe DriverId = 13
+ DriverIdMoltenvk DriverId = 14
+ DriverIdCoreaviProprietary DriverId = 15
+ DriverIdJuiceProprietary DriverId = 16
+ DriverIdVerisiliconProprietary DriverId = 17
+ DriverIdMesaTurnip DriverId = 18
+ DriverIdMesaV3dv DriverId = 19
+ DriverIdMesaPanvk DriverId = 20
+ DriverIdSamsungProprietary DriverId = 21
+ DriverIdMesaVenus DriverId = 22
+ DriverIdMesaDozen DriverId = 23
+ DriverIdMesaNvk DriverId = 24
+ DriverIdImaginationOpenSourceMesa DriverId = 25
+ DriverIdMaxEnum DriverId = 2147483647
+)
+
+// ShaderFloatControlsIndependence as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkShaderFloatControlsIndependence.html
+type ShaderFloatControlsIndependence int32
+
+// ShaderFloatControlsIndependence enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkShaderFloatControlsIndependence.html
+const (
+ ShaderFloatControlsIndependence32BitOnly ShaderFloatControlsIndependence = iota
+ ShaderFloatControlsIndependenceAll ShaderFloatControlsIndependence = 1
+ ShaderFloatControlsIndependenceNone ShaderFloatControlsIndependence = 2
+ ShaderFloatControlsIndependenceMaxEnum ShaderFloatControlsIndependence = 2147483647
+)
+
+// SamplerReductionMode as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerReductionMode.html
+type SamplerReductionMode int32
+
+// SamplerReductionMode enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerReductionMode.html
+const (
+ SamplerReductionModeWeightedAverage SamplerReductionMode = iota
+ SamplerReductionModeMin SamplerReductionMode = 1
+ SamplerReductionModeMax SamplerReductionMode = 2
+ SamplerReductionModeMaxEnum SamplerReductionMode = 2147483647
+)
+
+// SemaphoreType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSemaphoreType.html
+type SemaphoreType int32
+
+// SemaphoreType enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSemaphoreType.html
+const (
+ SemaphoreTypeBinary SemaphoreType = iota
+ SemaphoreTypeTimeline SemaphoreType = 1
+ SemaphoreTypeMaxEnum SemaphoreType = 2147483647
+)
+
+// ResolveModeFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkResolveModeFlagBits.html
+type ResolveModeFlagBits int32
+
+// ResolveModeFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkResolveModeFlagBits.html
+const (
+ ResolveModeNone ResolveModeFlagBits = iota
+ ResolveModeSampleZeroBit ResolveModeFlagBits = 1
+ ResolveModeAverageBit ResolveModeFlagBits = 2
+ ResolveModeMinBit ResolveModeFlagBits = 4
+ ResolveModeMaxBit ResolveModeFlagBits = 8
+ ResolveModeFlagBitsMaxEnum ResolveModeFlagBits = 2147483647
+)
+
+// DescriptorBindingFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorBindingFlagBits.html
+type DescriptorBindingFlagBits int32
+
+// DescriptorBindingFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorBindingFlagBits.html
+const (
+ DescriptorBindingUpdateAfterBindBit DescriptorBindingFlagBits = 1
+ DescriptorBindingUpdateUnusedWhilePendingBit DescriptorBindingFlagBits = 2
+ DescriptorBindingPartiallyBoundBit DescriptorBindingFlagBits = 4
+ DescriptorBindingVariableDescriptorCountBit DescriptorBindingFlagBits = 8
+ DescriptorBindingFlagBitsMaxEnum DescriptorBindingFlagBits = 2147483647
+)
+
+// SemaphoreWaitFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSemaphoreWaitFlagBits.html
+type SemaphoreWaitFlagBits int32
+
+// SemaphoreWaitFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSemaphoreWaitFlagBits.html
+const (
+ SemaphoreWaitAnyBit SemaphoreWaitFlagBits = 1
+ SemaphoreWaitFlagBitsMaxEnum SemaphoreWaitFlagBits = 2147483647
)
-// ExternalFenceFeatureFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalFenceFeatureFlagBits.html
-type ExternalFenceFeatureFlagBits int32
+// PipelineCreationFeedbackFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCreationFeedbackFlagBits.html
+type PipelineCreationFeedbackFlagBits int32
-// ExternalFenceFeatureFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalFenceFeatureFlagBits.html
+// PipelineCreationFeedbackFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCreationFeedbackFlagBits.html
const (
- ExternalFenceFeatureExportableBit ExternalFenceFeatureFlagBits = 1
- ExternalFenceFeatureImportableBit ExternalFenceFeatureFlagBits = 2
- ExternalFenceFeatureFlagBitsMaxEnum ExternalFenceFeatureFlagBits = 2147483647
+ PipelineCreationFeedbackValidBit PipelineCreationFeedbackFlagBits = 1
+ PipelineCreationFeedbackApplicationPipelineCacheHitBit PipelineCreationFeedbackFlagBits = 2
+ PipelineCreationFeedbackBasePipelineAccelerationBit PipelineCreationFeedbackFlagBits = 4
+ PipelineCreationFeedbackFlagBitsMaxEnum PipelineCreationFeedbackFlagBits = 2147483647
)
-// FenceImportFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFenceImportFlagBits.html
-type FenceImportFlagBits int32
+// ToolPurposeFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkToolPurposeFlagBits.html
+type ToolPurposeFlagBits int32
-// FenceImportFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFenceImportFlagBits.html
+// ToolPurposeFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkToolPurposeFlagBits.html
const (
- FenceImportTemporaryBit FenceImportFlagBits = 1
- FenceImportFlagBitsMaxEnum FenceImportFlagBits = 2147483647
+ ToolPurposeValidationBit ToolPurposeFlagBits = 1
+ ToolPurposeProfilingBit ToolPurposeFlagBits = 2
+ ToolPurposeTracingBit ToolPurposeFlagBits = 4
+ ToolPurposeAdditionalFeaturesBit ToolPurposeFlagBits = 8
+ ToolPurposeModifyingFeaturesBit ToolPurposeFlagBits = 16
+ ToolPurposeDebugReportingBit ToolPurposeFlagBits = 32
+ ToolPurposeDebugMarkersBit ToolPurposeFlagBits = 64
+ ToolPurposeFlagBitsMaxEnum ToolPurposeFlagBits = 2147483647
)
-// SemaphoreImportFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSemaphoreImportFlagBits.html
-type SemaphoreImportFlagBits int32
+// SubmitFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubmitFlagBits.html
+type SubmitFlagBits int32
-// SemaphoreImportFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSemaphoreImportFlagBits.html
+// SubmitFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubmitFlagBits.html
const (
- SemaphoreImportTemporaryBit SemaphoreImportFlagBits = 1
- SemaphoreImportFlagBitsMaxEnum SemaphoreImportFlagBits = 2147483647
+ SubmitProtectedBit SubmitFlagBits = 1
+ SubmitFlagBitsMaxEnum SubmitFlagBits = 2147483647
)
-// ExternalSemaphoreHandleTypeFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalSemaphoreHandleTypeFlagBits.html
-type ExternalSemaphoreHandleTypeFlagBits int32
+// RenderingFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderingFlagBits.html
+type RenderingFlagBits int32
-// ExternalSemaphoreHandleTypeFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalSemaphoreHandleTypeFlagBits.html
+// RenderingFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderingFlagBits.html
const (
- ExternalSemaphoreHandleTypeOpaqueFdBit ExternalSemaphoreHandleTypeFlagBits = 1
- ExternalSemaphoreHandleTypeOpaqueWin32Bit ExternalSemaphoreHandleTypeFlagBits = 2
- ExternalSemaphoreHandleTypeOpaqueWin32KmtBit ExternalSemaphoreHandleTypeFlagBits = 4
- ExternalSemaphoreHandleTypeD3d12FenceBit ExternalSemaphoreHandleTypeFlagBits = 8
- ExternalSemaphoreHandleTypeSyncFdBit ExternalSemaphoreHandleTypeFlagBits = 16
- ExternalSemaphoreHandleTypeFlagBitsMaxEnum ExternalSemaphoreHandleTypeFlagBits = 2147483647
+ RenderingContentsSecondaryCommandBuffersBit RenderingFlagBits = 1
+ RenderingSuspendingBit RenderingFlagBits = 2
+ RenderingResumingBit RenderingFlagBits = 4
+ RenderingEnableLegacyDitheringBit RenderingFlagBits = 8
+ RenderingFlagBitsMaxEnum RenderingFlagBits = 2147483647
)
-// ExternalSemaphoreFeatureFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalSemaphoreFeatureFlagBits.html
-type ExternalSemaphoreFeatureFlagBits int32
+// PresentMode as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPresentModeKHR
+type PresentMode int32
-// ExternalSemaphoreFeatureFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalSemaphoreFeatureFlagBits.html
+// PresentMode enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPresentModeKHR
const (
- ExternalSemaphoreFeatureExportableBit ExternalSemaphoreFeatureFlagBits = 1
- ExternalSemaphoreFeatureImportableBit ExternalSemaphoreFeatureFlagBits = 2
- ExternalSemaphoreFeatureFlagBitsMaxEnum ExternalSemaphoreFeatureFlagBits = 2147483647
+ PresentModeImmediate PresentMode = iota
+ PresentModeMailbox PresentMode = 1
+ PresentModeFifo PresentMode = 2
+ PresentModeFifoRelaxed PresentMode = 3
+ PresentModeSharedDemandRefresh PresentMode = 1000111000
+ PresentModeSharedContinuousRefresh PresentMode = 1000111001
+ PresentModeMaxEnum PresentMode = 2147483647
)
// ColorSpace as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkColorSpaceKHR
@@ -2751,7 +4239,7 @@ const (
ColorSpaceSrgbNonlinear ColorSpace = iota
ColorSpaceDisplayP3Nonlinear ColorSpace = 1000104001
ColorSpaceExtendedSrgbLinear ColorSpace = 1000104002
- ColorSpaceDciP3Linear ColorSpace = 1000104003
+ ColorSpaceDisplayP3Linear ColorSpace = 1000104003
ColorSpaceDciP3Nonlinear ColorSpace = 1000104004
ColorSpaceBt709Linear ColorSpace = 1000104005
ColorSpaceBt709Nonlinear ColorSpace = 1000104006
@@ -2763,30 +4251,12 @@ const (
ColorSpaceAdobergbNonlinear ColorSpace = 1000104012
ColorSpacePassThrough ColorSpace = 1000104013
ColorSpaceExtendedSrgbNonlinear ColorSpace = 1000104014
+ ColorSpaceDisplayNativeAmd ColorSpace = 1000213000
ColorspaceSrgbNonlinear ColorSpace = 0
- ColorSpaceBeginRange ColorSpace = 0
- ColorSpaceEndRange ColorSpace = 0
- ColorSpaceRangeSize ColorSpace = 1
+ ColorSpaceDciP3Linear ColorSpace = 1000104003
ColorSpaceMaxEnum ColorSpace = 2147483647
)
-// PresentMode as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPresentModeKHR
-type PresentMode int32
-
-// PresentMode enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPresentModeKHR
-const (
- PresentModeImmediate PresentMode = iota
- PresentModeMailbox PresentMode = 1
- PresentModeFifo PresentMode = 2
- PresentModeFifoRelaxed PresentMode = 3
- PresentModeSharedDemandRefresh PresentMode = 1000111000
- PresentModeSharedContinuousRefresh PresentMode = 1000111001
- PresentModeBeginRange PresentMode = 0
- PresentModeEndRange PresentMode = 3
- PresentModeRangeSize PresentMode = 4
- PresentModeMaxEnum PresentMode = 2147483647
-)
-
// SurfaceTransformFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSurfaceTransformFlagBitsKHR
type SurfaceTransformFlagBits int32
@@ -2823,6 +4293,8 @@ type SwapchainCreateFlagBits int32
const (
SwapchainCreateSplitInstanceBindRegionsBit SwapchainCreateFlagBits = 1
SwapchainCreateProtectedBit SwapchainCreateFlagBits = 2
+ SwapchainCreateMutableFormatBit SwapchainCreateFlagBits = 4
+ SwapchainCreateDeferredMemoryAllocationBit SwapchainCreateFlagBits = 8
SwapchainCreateFlagBitsMaxEnum SwapchainCreateFlagBits = 2147483647
)
@@ -2850,24 +4322,209 @@ const (
DisplayPlaneAlphaFlagBitsMaxEnum DisplayPlaneAlphaFlagBits = 2147483647
)
-// DriverId as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDriverIdKHR
-type DriverId int32
+// QueryResultStatus as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkQueryResultStatusKHR
+type QueryResultStatus int32
+
+// QueryResultStatus enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkQueryResultStatusKHR
+const (
+ QueryResultStatusError QueryResultStatus = -1
+ QueryResultStatusNotReady QueryResultStatus = 0
+ QueryResultStatusComplete QueryResultStatus = 1
+ QueryResultStatusMaxEnum QueryResultStatus = 2147483647
+)
+
+// VideoCodecOperationFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoCodecOperationFlagBitsKHR
+type VideoCodecOperationFlagBits int32
+
+// VideoCodecOperationFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoCodecOperationFlagBitsKHR
+const (
+ VideoCodecOperationNone VideoCodecOperationFlagBits = iota
+ VideoCodecOperationEncodeH264Bit VideoCodecOperationFlagBits = 65536
+ VideoCodecOperationEncodeH265Bit VideoCodecOperationFlagBits = 131072
+ VideoCodecOperationDecodeH264Bit VideoCodecOperationFlagBits = 1
+ VideoCodecOperationDecodeH265Bit VideoCodecOperationFlagBits = 2
+ VideoCodecOperationFlagBitsMaxEnum VideoCodecOperationFlagBits = 2147483647
+)
-// DriverId enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDriverIdKHR
+// VideoChromaSubsamplingFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoChromaSubsamplingFlagBitsKHR
+type VideoChromaSubsamplingFlagBits int32
+
+// VideoChromaSubsamplingFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoChromaSubsamplingFlagBitsKHR
+const (
+ VideoChromaSubsamplingInvalid VideoChromaSubsamplingFlagBits = iota
+ VideoChromaSubsamplingMonochromeBit VideoChromaSubsamplingFlagBits = 1
+ VideoChromaSubsampling420Bit VideoChromaSubsamplingFlagBits = 2
+ VideoChromaSubsampling422Bit VideoChromaSubsamplingFlagBits = 4
+ VideoChromaSubsampling444Bit VideoChromaSubsamplingFlagBits = 8
+ VideoChromaSubsamplingFlagBitsMaxEnum VideoChromaSubsamplingFlagBits = 2147483647
+)
+
+// VideoComponentBitDepthFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoComponentBitDepthFlagBitsKHR
+type VideoComponentBitDepthFlagBits int32
+
+// VideoComponentBitDepthFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoComponentBitDepthFlagBitsKHR
+const (
+ VideoComponentBitDepthInvalid VideoComponentBitDepthFlagBits = iota
+ VideoComponentBitDepth8Bit VideoComponentBitDepthFlagBits = 1
+ VideoComponentBitDepth10Bit VideoComponentBitDepthFlagBits = 4
+ VideoComponentBitDepth12Bit VideoComponentBitDepthFlagBits = 16
+ VideoComponentBitDepthFlagBitsMaxEnum VideoComponentBitDepthFlagBits = 2147483647
+)
+
+// VideoCapabilityFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoCapabilityFlagBitsKHR
+type VideoCapabilityFlagBits int32
+
+// VideoCapabilityFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoCapabilityFlagBitsKHR
+const (
+ VideoCapabilityProtectedContentBit VideoCapabilityFlagBits = 1
+ VideoCapabilitySeparateReferenceImagesBit VideoCapabilityFlagBits = 2
+ VideoCapabilityFlagBitsMaxEnum VideoCapabilityFlagBits = 2147483647
+)
+
+// VideoSessionCreateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoSessionCreateFlagBitsKHR
+type VideoSessionCreateFlagBits int32
+
+// VideoSessionCreateFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoSessionCreateFlagBitsKHR
+const (
+ VideoSessionCreateProtectedContentBit VideoSessionCreateFlagBits = 1
+ VideoSessionCreateFlagBitsMaxEnum VideoSessionCreateFlagBits = 2147483647
+)
+
+// VideoCodingControlFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoCodingControlFlagBitsKHR
+type VideoCodingControlFlagBits int32
+
+// VideoCodingControlFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoCodingControlFlagBitsKHR
+const (
+ VideoCodingControlResetBit VideoCodingControlFlagBits = 1
+ VideoCodingControlEncodeRateControlBit VideoCodingControlFlagBits = 2
+ VideoCodingControlEncodeRateControlLayerBit VideoCodingControlFlagBits = 4
+ VideoCodingControlFlagBitsMaxEnum VideoCodingControlFlagBits = 2147483647
+)
+
+// VideoDecodeCapabilityFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoDecodeCapabilityFlagBitsKHR
+type VideoDecodeCapabilityFlagBits int32
+
+// VideoDecodeCapabilityFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoDecodeCapabilityFlagBitsKHR
+const (
+ VideoDecodeCapabilityDpbAndOutputCoincideBit VideoDecodeCapabilityFlagBits = 1
+ VideoDecodeCapabilityDpbAndOutputDistinctBit VideoDecodeCapabilityFlagBits = 2
+ VideoDecodeCapabilityFlagBitsMaxEnum VideoDecodeCapabilityFlagBits = 2147483647
+)
+
+// VideoDecodeUsageFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoDecodeUsageFlagBitsKHR
+type VideoDecodeUsageFlagBits int32
+
+// VideoDecodeUsageFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoDecodeUsageFlagBitsKHR
+const (
+ VideoDecodeUsageDefault VideoDecodeUsageFlagBits = iota
+ VideoDecodeUsageTranscodingBit VideoDecodeUsageFlagBits = 1
+ VideoDecodeUsageOfflineBit VideoDecodeUsageFlagBits = 2
+ VideoDecodeUsageStreamingBit VideoDecodeUsageFlagBits = 4
+ VideoDecodeUsageFlagBitsMaxEnum VideoDecodeUsageFlagBits = 2147483647
+)
+
+// PerformanceCounterUnit as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPerformanceCounterUnitKHR
+type PerformanceCounterUnit int32
+
+// PerformanceCounterUnit enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPerformanceCounterUnitKHR
+const (
+ PerformanceCounterUnitGeneric PerformanceCounterUnit = iota
+ PerformanceCounterUnitPercentage PerformanceCounterUnit = 1
+ PerformanceCounterUnitNanoseconds PerformanceCounterUnit = 2
+ PerformanceCounterUnitBytes PerformanceCounterUnit = 3
+ PerformanceCounterUnitBytesPerSecond PerformanceCounterUnit = 4
+ PerformanceCounterUnitKelvin PerformanceCounterUnit = 5
+ PerformanceCounterUnitWatts PerformanceCounterUnit = 6
+ PerformanceCounterUnitVolts PerformanceCounterUnit = 7
+ PerformanceCounterUnitAmps PerformanceCounterUnit = 8
+ PerformanceCounterUnitHertz PerformanceCounterUnit = 9
+ PerformanceCounterUnitCycles PerformanceCounterUnit = 10
+ PerformanceCounterUnitMaxEnum PerformanceCounterUnit = 2147483647
+)
+
+// PerformanceCounterScope as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPerformanceCounterScopeKHR
+type PerformanceCounterScope int32
+
+// PerformanceCounterScope enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPerformanceCounterScopeKHR
+const (
+ PerformanceCounterScopeCommandBuffer PerformanceCounterScope = iota
+ PerformanceCounterScopeRenderPass PerformanceCounterScope = 1
+ PerformanceCounterScopeCommand PerformanceCounterScope = 2
+ QueryScopeCommandBuffer PerformanceCounterScope = 0
+ QueryScopeRenderPass PerformanceCounterScope = 1
+ QueryScopeCommand PerformanceCounterScope = 2
+ PerformanceCounterScopeMaxEnum PerformanceCounterScope = 2147483647
+)
+
+// PerformanceCounterStorage as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPerformanceCounterStorageKHR
+type PerformanceCounterStorage int32
+
+// PerformanceCounterStorage enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPerformanceCounterStorageKHR
+const (
+ PerformanceCounterStorageInt32 PerformanceCounterStorage = iota
+ PerformanceCounterStorageInt64 PerformanceCounterStorage = 1
+ PerformanceCounterStorageUint32 PerformanceCounterStorage = 2
+ PerformanceCounterStorageUint64 PerformanceCounterStorage = 3
+ PerformanceCounterStorageFloat32 PerformanceCounterStorage = 4
+ PerformanceCounterStorageFloat64 PerformanceCounterStorage = 5
+ PerformanceCounterStorageMaxEnum PerformanceCounterStorage = 2147483647
+)
+
+// PerformanceCounterDescriptionFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPerformanceCounterDescriptionFlagBitsKHR
+type PerformanceCounterDescriptionFlagBits int32
+
+// PerformanceCounterDescriptionFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPerformanceCounterDescriptionFlagBitsKHR
+const (
+ PerformanceCounterDescriptionPerformanceImpactingBit PerformanceCounterDescriptionFlagBits = 1
+ PerformanceCounterDescriptionConcurrentlyImpactedBit PerformanceCounterDescriptionFlagBits = 2
+ PerformanceCounterDescriptionPerformanceImpacting PerformanceCounterDescriptionFlagBits = 1
+ PerformanceCounterDescriptionConcurrentlyImpacted PerformanceCounterDescriptionFlagBits = 2
+ PerformanceCounterDescriptionFlagBitsMaxEnum PerformanceCounterDescriptionFlagBits = 2147483647
+)
+
+// AcquireProfilingLockFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkAcquireProfilingLockFlagBitsKHR
+type AcquireProfilingLockFlagBits int32
+
+// AcquireProfilingLockFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkAcquireProfilingLockFlagBitsKHR
+const (
+ AcquireProfilingLockFlagBitsMaxEnum AcquireProfilingLockFlagBits = 2147483647
+)
+
+// QueueGlobalPriority as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkQueueGlobalPriorityKHR
+type QueueGlobalPriority int32
+
+// QueueGlobalPriority enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkQueueGlobalPriorityKHR
+const (
+ QueueGlobalPriorityLow QueueGlobalPriority = 128
+ QueueGlobalPriorityMedium QueueGlobalPriority = 256
+ QueueGlobalPriorityHigh QueueGlobalPriority = 512
+ QueueGlobalPriorityRealtime QueueGlobalPriority = 1024
+ QueueGlobalPriorityMaxEnum QueueGlobalPriority = 2147483647
+)
+
+// FragmentShadingRateCombinerOp as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkFragmentShadingRateCombinerOpKHR
+type FragmentShadingRateCombinerOp int32
+
+// FragmentShadingRateCombinerOp enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkFragmentShadingRateCombinerOpKHR
+const (
+ FragmentShadingRateCombinerOpKeep FragmentShadingRateCombinerOp = iota
+ FragmentShadingRateCombinerOpReplace FragmentShadingRateCombinerOp = 1
+ FragmentShadingRateCombinerOpMin FragmentShadingRateCombinerOp = 2
+ FragmentShadingRateCombinerOpMax FragmentShadingRateCombinerOp = 3
+ FragmentShadingRateCombinerOpMul FragmentShadingRateCombinerOp = 4
+ FragmentShadingRateCombinerOpMaxEnum FragmentShadingRateCombinerOp = 2147483647
+)
+
+// PipelineExecutableStatisticFormat as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPipelineExecutableStatisticFormatKHR
+type PipelineExecutableStatisticFormat int32
+
+// PipelineExecutableStatisticFormat enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPipelineExecutableStatisticFormatKHR
const (
- DriverIdAmdProprietary DriverId = 1
- DriverIdAmdOpenSource DriverId = 2
- DriverIdMesaRadv DriverId = 3
- DriverIdNvidiaProprietary DriverId = 4
- DriverIdIntelProprietaryWindows DriverId = 5
- DriverIdIntelOpenSourceMesa DriverId = 6
- DriverIdImaginationProprietary DriverId = 7
- DriverIdQualcommProprietary DriverId = 8
- DriverIdArmProprietary DriverId = 9
- DriverIdBeginRange DriverId = 1
- DriverIdEndRange DriverId = 9
- DriverIdRangeSize DriverId = 9
- DriverIdMaxEnum DriverId = 2147483647
+ PipelineExecutableStatisticFormatBool32 PipelineExecutableStatisticFormat = iota
+ PipelineExecutableStatisticFormatInt64 PipelineExecutableStatisticFormat = 1
+ PipelineExecutableStatisticFormatUint64 PipelineExecutableStatisticFormat = 2
+ PipelineExecutableStatisticFormatFloat64 PipelineExecutableStatisticFormat = 3
+ PipelineExecutableStatisticFormatMaxEnum PipelineExecutableStatisticFormat = 2147483647
)
// DebugReportObjectType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugReportObjectTypeEXT.html
@@ -2906,19 +4563,18 @@ const (
DebugReportObjectTypeDebugReportCallbackExt DebugReportObjectType = 28
DebugReportObjectTypeDisplayKhr DebugReportObjectType = 29
DebugReportObjectTypeDisplayModeKhr DebugReportObjectType = 30
- DebugReportObjectTypeObjectTableNvx DebugReportObjectType = 31
- DebugReportObjectTypeIndirectCommandsLayoutNvx DebugReportObjectType = 32
DebugReportObjectTypeValidationCacheExt DebugReportObjectType = 33
DebugReportObjectTypeSamplerYcbcrConversion DebugReportObjectType = 1000156000
DebugReportObjectTypeDescriptorUpdateTemplate DebugReportObjectType = 1000085000
- DebugReportObjectTypeAccelerationStructureNvx DebugReportObjectType = 1000165000
+ DebugReportObjectTypeCuModuleNvx DebugReportObjectType = 1000029000
+ DebugReportObjectTypeCuFunctionNvx DebugReportObjectType = 1000029001
+ DebugReportObjectTypeAccelerationStructureKhr DebugReportObjectType = 1000150000
+ DebugReportObjectTypeAccelerationStructureNv DebugReportObjectType = 1000165000
+ DebugReportObjectTypeBufferCollectionFuchsia DebugReportObjectType = 1000366000
DebugReportObjectTypeDebugReport DebugReportObjectType = 28
DebugReportObjectTypeValidationCache DebugReportObjectType = 33
DebugReportObjectTypeDescriptorUpdateTemplateKhr DebugReportObjectType = 1000085000
DebugReportObjectTypeSamplerYcbcrConversionKhr DebugReportObjectType = 1000156000
- DebugReportObjectTypeBeginRange DebugReportObjectType = 0
- DebugReportObjectTypeEndRange DebugReportObjectType = 33
- DebugReportObjectTypeRangeSize DebugReportObjectType = 34
DebugReportObjectTypeMaxEnum DebugReportObjectType = 2147483647
)
@@ -2940,12 +4596,9 @@ type RasterizationOrderAMD int32
// RasterizationOrderAMD enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkRasterizationOrderAMD
const (
- RasterizationOrderStrictAmd RasterizationOrderAMD = iota
- RasterizationOrderRelaxedAmd RasterizationOrderAMD = 1
- RasterizationOrderBeginRangeAmd RasterizationOrderAMD = 0
- RasterizationOrderEndRangeAmd RasterizationOrderAMD = 1
- RasterizationOrderRangeSizeAmd RasterizationOrderAMD = 2
- RasterizationOrderMaxEnumAmd RasterizationOrderAMD = 2147483647
+ RasterizationOrderStrictAmd RasterizationOrderAMD = iota
+ RasterizationOrderRelaxedAmd RasterizationOrderAMD = 1
+ RasterizationOrderMaxEnumAmd RasterizationOrderAMD = 2147483647
)
// ShaderInfoTypeAMD as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkShaderInfoTypeAMD
@@ -2956,9 +4609,6 @@ const (
ShaderInfoTypeStatisticsAmd ShaderInfoTypeAMD = iota
ShaderInfoTypeBinaryAmd ShaderInfoTypeAMD = 1
ShaderInfoTypeDisassemblyAmd ShaderInfoTypeAMD = 2
- ShaderInfoTypeBeginRangeAmd ShaderInfoTypeAMD = 0
- ShaderInfoTypeEndRangeAmd ShaderInfoTypeAMD = 2
- ShaderInfoTypeRangeSizeAmd ShaderInfoTypeAMD = 3
ShaderInfoTypeMaxEnumAmd ShaderInfoTypeAMD = 2147483647
)
@@ -2990,78 +4640,42 @@ type ValidationCheck int32
// ValidationCheck enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkValidationCheckEXT.html
const (
- ValidationCheckAll ValidationCheck = iota
- ValidationCheckShaders ValidationCheck = 1
- ValidationCheckBeginRange ValidationCheck = 0
- ValidationCheckEndRange ValidationCheck = 1
- ValidationCheckRangeSize ValidationCheck = 2
- ValidationCheckMaxEnum ValidationCheck = 2147483647
-)
-
-// ConditionalRenderingFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkConditionalRenderingFlagBitsEXT.html
-type ConditionalRenderingFlagBits int32
-
-// ConditionalRenderingFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkConditionalRenderingFlagBitsEXT.html
-const (
- ConditionalRenderingInvertedBit ConditionalRenderingFlagBits = 1
- ConditionalRenderingFlagBitsMaxEnum ConditionalRenderingFlagBits = 2147483647
-)
-
-// IndirectCommandsTokenTypeNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkIndirectCommandsTokenTypeNVX
-type IndirectCommandsTokenTypeNVX int32
-
-// IndirectCommandsTokenTypeNVX enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkIndirectCommandsTokenTypeNVX
-const (
- IndirectCommandsTokenTypePipelineNvx IndirectCommandsTokenTypeNVX = iota
- IndirectCommandsTokenTypeDescriptorSetNvx IndirectCommandsTokenTypeNVX = 1
- IndirectCommandsTokenTypeIndexBufferNvx IndirectCommandsTokenTypeNVX = 2
- IndirectCommandsTokenTypeVertexBufferNvx IndirectCommandsTokenTypeNVX = 3
- IndirectCommandsTokenTypePushConstantNvx IndirectCommandsTokenTypeNVX = 4
- IndirectCommandsTokenTypeDrawIndexedNvx IndirectCommandsTokenTypeNVX = 5
- IndirectCommandsTokenTypeDrawNvx IndirectCommandsTokenTypeNVX = 6
- IndirectCommandsTokenTypeDispatchNvx IndirectCommandsTokenTypeNVX = 7
- IndirectCommandsTokenTypeBeginRangeNvx IndirectCommandsTokenTypeNVX = 0
- IndirectCommandsTokenTypeEndRangeNvx IndirectCommandsTokenTypeNVX = 7
- IndirectCommandsTokenTypeRangeSizeNvx IndirectCommandsTokenTypeNVX = 8
- IndirectCommandsTokenTypeMaxEnumNvx IndirectCommandsTokenTypeNVX = 2147483647
+ ValidationCheckAll ValidationCheck = iota
+ ValidationCheckShaders ValidationCheck = 1
+ ValidationCheckMaxEnum ValidationCheck = 2147483647
)
-// ObjectEntryTypeNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkObjectEntryTypeNVX
-type ObjectEntryTypeNVX int32
+// PipelineRobustnessBufferBehavior as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRobustnessBufferBehaviorEXT.html
+type PipelineRobustnessBufferBehavior int32
-// ObjectEntryTypeNVX enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkObjectEntryTypeNVX
+// PipelineRobustnessBufferBehavior enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRobustnessBufferBehaviorEXT.html
const (
- ObjectEntryTypeDescriptorSetNvx ObjectEntryTypeNVX = iota
- ObjectEntryTypePipelineNvx ObjectEntryTypeNVX = 1
- ObjectEntryTypeIndexBufferNvx ObjectEntryTypeNVX = 2
- ObjectEntryTypeVertexBufferNvx ObjectEntryTypeNVX = 3
- ObjectEntryTypePushConstantNvx ObjectEntryTypeNVX = 4
- ObjectEntryTypeBeginRangeNvx ObjectEntryTypeNVX = 0
- ObjectEntryTypeEndRangeNvx ObjectEntryTypeNVX = 4
- ObjectEntryTypeRangeSizeNvx ObjectEntryTypeNVX = 5
- ObjectEntryTypeMaxEnumNvx ObjectEntryTypeNVX = 2147483647
+ PipelineRobustnessBufferBehaviorDeviceDefault PipelineRobustnessBufferBehavior = iota
+ PipelineRobustnessBufferBehaviorDisabled PipelineRobustnessBufferBehavior = 1
+ PipelineRobustnessBufferBehaviorRobustBufferAccess PipelineRobustnessBufferBehavior = 2
+ PipelineRobustnessBufferBehaviorRobustBufferAccess2 PipelineRobustnessBufferBehavior = 3
+ PipelineRobustnessBufferBehaviorMaxEnum PipelineRobustnessBufferBehavior = 2147483647
)
-// IndirectCommandsLayoutUsageFlagBitsNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkIndirectCommandsLayoutUsageFlagBitsNVX
-type IndirectCommandsLayoutUsageFlagBitsNVX int32
+// PipelineRobustnessImageBehavior as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRobustnessImageBehaviorEXT.html
+type PipelineRobustnessImageBehavior int32
-// IndirectCommandsLayoutUsageFlagBitsNVX enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkIndirectCommandsLayoutUsageFlagBitsNVX
+// PipelineRobustnessImageBehavior enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRobustnessImageBehaviorEXT.html
const (
- IndirectCommandsLayoutUsageUnorderedSequencesBitNvx IndirectCommandsLayoutUsageFlagBitsNVX = 1
- IndirectCommandsLayoutUsageSparseSequencesBitNvx IndirectCommandsLayoutUsageFlagBitsNVX = 2
- IndirectCommandsLayoutUsageEmptyExecutionsBitNvx IndirectCommandsLayoutUsageFlagBitsNVX = 4
- IndirectCommandsLayoutUsageIndexedSequencesBitNvx IndirectCommandsLayoutUsageFlagBitsNVX = 8
- IndirectCommandsLayoutUsageFlagBitsMaxEnumNvx IndirectCommandsLayoutUsageFlagBitsNVX = 2147483647
+ PipelineRobustnessImageBehaviorDeviceDefault PipelineRobustnessImageBehavior = iota
+ PipelineRobustnessImageBehaviorDisabled PipelineRobustnessImageBehavior = 1
+ PipelineRobustnessImageBehaviorRobustImageAccess PipelineRobustnessImageBehavior = 2
+ PipelineRobustnessImageBehaviorRobustImageAccess2 PipelineRobustnessImageBehavior = 3
+ PipelineRobustnessImageBehaviorMaxEnum PipelineRobustnessImageBehavior = 2147483647
)
-// ObjectEntryUsageFlagBitsNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkObjectEntryUsageFlagBitsNVX
-type ObjectEntryUsageFlagBitsNVX int32
+// ConditionalRenderingFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkConditionalRenderingFlagBitsEXT.html
+type ConditionalRenderingFlagBits int32
-// ObjectEntryUsageFlagBitsNVX enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkObjectEntryUsageFlagBitsNVX
+// ConditionalRenderingFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkConditionalRenderingFlagBitsEXT.html
const (
- ObjectEntryUsageGraphicsBitNvx ObjectEntryUsageFlagBitsNVX = 1
- ObjectEntryUsageComputeBitNvx ObjectEntryUsageFlagBitsNVX = 2
- ObjectEntryUsageFlagBitsMaxEnumNvx ObjectEntryUsageFlagBitsNVX = 2147483647
+ ConditionalRenderingInvertedBit ConditionalRenderingFlagBits = 1
+ ConditionalRenderingFlagBitsMaxEnum ConditionalRenderingFlagBits = 2147483647
)
// SurfaceCounterFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSurfaceCounterFlagBitsEXT.html
@@ -3069,6 +4683,7 @@ type SurfaceCounterFlagBits int32
// SurfaceCounterFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSurfaceCounterFlagBitsEXT.html
const (
+ SurfaceCounterVblankBit SurfaceCounterFlagBits = 1
SurfaceCounterVblank SurfaceCounterFlagBits = 1
SurfaceCounterFlagBitsMaxEnum SurfaceCounterFlagBits = 2147483647
)
@@ -3078,13 +4693,10 @@ type DisplayPowerState int32
// DisplayPowerState enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDisplayPowerStateEXT.html
const (
- DisplayPowerStateOff DisplayPowerState = iota
- DisplayPowerStateSuspend DisplayPowerState = 1
- DisplayPowerStateOn DisplayPowerState = 2
- DisplayPowerStateBeginRange DisplayPowerState = 0
- DisplayPowerStateEndRange DisplayPowerState = 2
- DisplayPowerStateRangeSize DisplayPowerState = 3
- DisplayPowerStateMaxEnum DisplayPowerState = 2147483647
+ DisplayPowerStateOff DisplayPowerState = iota
+ DisplayPowerStateSuspend DisplayPowerState = 1
+ DisplayPowerStateOn DisplayPowerState = 2
+ DisplayPowerStateMaxEnum DisplayPowerState = 2147483647
)
// DeviceEventType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceEventTypeEXT.html
@@ -3093,9 +4705,6 @@ type DeviceEventType int32
// DeviceEventType enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceEventTypeEXT.html
const (
DeviceEventTypeDisplayHotplug DeviceEventType = iota
- DeviceEventTypeBeginRange DeviceEventType = 0
- DeviceEventTypeEndRange DeviceEventType = 0
- DeviceEventTypeRangeSize DeviceEventType = 1
DeviceEventTypeMaxEnum DeviceEventType = 2147483647
)
@@ -3105,9 +4714,6 @@ type DisplayEventType int32
// DisplayEventType enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDisplayEventTypeEXT.html
const (
DisplayEventTypeFirstPixelOut DisplayEventType = iota
- DisplayEventTypeBeginRange DisplayEventType = 0
- DisplayEventTypeEndRange DisplayEventType = 0
- DisplayEventTypeRangeSize DisplayEventType = 1
DisplayEventTypeMaxEnum DisplayEventType = 2147483647
)
@@ -3116,18 +4722,15 @@ type ViewportCoordinateSwizzleNV int32
// ViewportCoordinateSwizzleNV enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkViewportCoordinateSwizzleNV.html
const (
- ViewportCoordinateSwizzlePositiveXNv ViewportCoordinateSwizzleNV = iota
- ViewportCoordinateSwizzleNegativeXNv ViewportCoordinateSwizzleNV = 1
- ViewportCoordinateSwizzlePositiveYNv ViewportCoordinateSwizzleNV = 2
- ViewportCoordinateSwizzleNegativeYNv ViewportCoordinateSwizzleNV = 3
- ViewportCoordinateSwizzlePositiveZNv ViewportCoordinateSwizzleNV = 4
- ViewportCoordinateSwizzleNegativeZNv ViewportCoordinateSwizzleNV = 5
- ViewportCoordinateSwizzlePositiveWNv ViewportCoordinateSwizzleNV = 6
- ViewportCoordinateSwizzleNegativeWNv ViewportCoordinateSwizzleNV = 7
- ViewportCoordinateSwizzleBeginRangeNv ViewportCoordinateSwizzleNV = 0
- ViewportCoordinateSwizzleEndRangeNv ViewportCoordinateSwizzleNV = 7
- ViewportCoordinateSwizzleRangeSizeNv ViewportCoordinateSwizzleNV = 8
- ViewportCoordinateSwizzleMaxEnumNv ViewportCoordinateSwizzleNV = 2147483647
+ ViewportCoordinateSwizzlePositiveXNv ViewportCoordinateSwizzleNV = iota
+ ViewportCoordinateSwizzleNegativeXNv ViewportCoordinateSwizzleNV = 1
+ ViewportCoordinateSwizzlePositiveYNv ViewportCoordinateSwizzleNV = 2
+ ViewportCoordinateSwizzleNegativeYNv ViewportCoordinateSwizzleNV = 3
+ ViewportCoordinateSwizzlePositiveZNv ViewportCoordinateSwizzleNV = 4
+ ViewportCoordinateSwizzleNegativeZNv ViewportCoordinateSwizzleNV = 5
+ ViewportCoordinateSwizzlePositiveWNv ViewportCoordinateSwizzleNV = 6
+ ViewportCoordinateSwizzleNegativeWNv ViewportCoordinateSwizzleNV = 7
+ ViewportCoordinateSwizzleMaxEnumNv ViewportCoordinateSwizzleNV = 2147483647
)
// DiscardRectangleMode as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDiscardRectangleModeEXT.html
@@ -3135,12 +4738,9 @@ type DiscardRectangleMode int32
// DiscardRectangleMode enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDiscardRectangleModeEXT.html
const (
- DiscardRectangleModeInclusive DiscardRectangleMode = iota
- DiscardRectangleModeExclusive DiscardRectangleMode = 1
- DiscardRectangleModeBeginRange DiscardRectangleMode = 0
- DiscardRectangleModeEndRange DiscardRectangleMode = 1
- DiscardRectangleModeRangeSize DiscardRectangleMode = 2
- DiscardRectangleModeMaxEnum DiscardRectangleMode = 2147483647
+ DiscardRectangleModeInclusive DiscardRectangleMode = iota
+ DiscardRectangleModeExclusive DiscardRectangleMode = 1
+ DiscardRectangleModeMaxEnum DiscardRectangleMode = 2147483647
)
// ConservativeRasterizationMode as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkConservativeRasterizationModeEXT.html
@@ -3151,9 +4751,6 @@ const (
ConservativeRasterizationModeDisabled ConservativeRasterizationMode = iota
ConservativeRasterizationModeOverestimate ConservativeRasterizationMode = 1
ConservativeRasterizationModeUnderestimate ConservativeRasterizationMode = 2
- ConservativeRasterizationModeBeginRange ConservativeRasterizationMode = 0
- ConservativeRasterizationModeEndRange ConservativeRasterizationMode = 2
- ConservativeRasterizationModeRangeSize ConservativeRasterizationMode = 3
ConservativeRasterizationModeMaxEnum ConservativeRasterizationMode = 2147483647
)
@@ -3174,24 +4771,11 @@ type DebugUtilsMessageTypeFlagBits int32
// DebugUtilsMessageTypeFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugUtilsMessageTypeFlagBitsEXT.html
const (
- DebugUtilsMessageTypeGeneralBit DebugUtilsMessageTypeFlagBits = 1
- DebugUtilsMessageTypeValidationBit DebugUtilsMessageTypeFlagBits = 2
- DebugUtilsMessageTypePerformanceBit DebugUtilsMessageTypeFlagBits = 4
- DebugUtilsMessageTypeFlagBitsMaxEnum DebugUtilsMessageTypeFlagBits = 2147483647
-)
-
-// SamplerReductionMode as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerReductionModeEXT.html
-type SamplerReductionMode int32
-
-// SamplerReductionMode enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerReductionModeEXT.html
-const (
- SamplerReductionModeWeightedAverage SamplerReductionMode = iota
- SamplerReductionModeMin SamplerReductionMode = 1
- SamplerReductionModeMax SamplerReductionMode = 2
- SamplerReductionModeBeginRange SamplerReductionMode = 0
- SamplerReductionModeEndRange SamplerReductionMode = 2
- SamplerReductionModeRangeSize SamplerReductionMode = 3
- SamplerReductionModeMaxEnum SamplerReductionMode = 2147483647
+ DebugUtilsMessageTypeGeneralBit DebugUtilsMessageTypeFlagBits = 1
+ DebugUtilsMessageTypeValidationBit DebugUtilsMessageTypeFlagBits = 2
+ DebugUtilsMessageTypePerformanceBit DebugUtilsMessageTypeFlagBits = 4
+ DebugUtilsMessageTypeDeviceAddressBindingBit DebugUtilsMessageTypeFlagBits = 8
+ DebugUtilsMessageTypeFlagBitsMaxEnum DebugUtilsMessageTypeFlagBits = 2147483647
)
// BlendOverlap as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBlendOverlapEXT.html
@@ -3202,9 +4786,6 @@ const (
BlendOverlapUncorrelated BlendOverlap = iota
BlendOverlapDisjoint BlendOverlap = 1
BlendOverlapConjoint BlendOverlap = 2
- BlendOverlapBeginRange BlendOverlap = 0
- BlendOverlapEndRange BlendOverlap = 2
- BlendOverlapRangeSize BlendOverlap = 3
BlendOverlapMaxEnum BlendOverlap = 2147483647
)
@@ -3213,14 +4794,11 @@ type CoverageModulationModeNV int32
// CoverageModulationModeNV enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCoverageModulationModeNV.html
const (
- CoverageModulationModeNoneNv CoverageModulationModeNV = iota
- CoverageModulationModeRgbNv CoverageModulationModeNV = 1
- CoverageModulationModeAlphaNv CoverageModulationModeNV = 2
- CoverageModulationModeRgbaNv CoverageModulationModeNV = 3
- CoverageModulationModeBeginRangeNv CoverageModulationModeNV = 0
- CoverageModulationModeEndRangeNv CoverageModulationModeNV = 3
- CoverageModulationModeRangeSizeNv CoverageModulationModeNV = 4
- CoverageModulationModeMaxEnumNv CoverageModulationModeNV = 2147483647
+ CoverageModulationModeNoneNv CoverageModulationModeNV = iota
+ CoverageModulationModeRgbNv CoverageModulationModeNV = 1
+ CoverageModulationModeAlphaNv CoverageModulationModeNV = 2
+ CoverageModulationModeRgbaNv CoverageModulationModeNV = 3
+ CoverageModulationModeMaxEnumNv CoverageModulationModeNV = 2147483647
)
// ValidationCacheHeaderVersion as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkValidationCacheHeaderVersionEXT.html
@@ -3228,23 +4806,8 @@ type ValidationCacheHeaderVersion int32
// ValidationCacheHeaderVersion enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkValidationCacheHeaderVersionEXT.html
const (
- ValidationCacheHeaderVersionOne ValidationCacheHeaderVersion = 1
- ValidationCacheHeaderVersionBeginRange ValidationCacheHeaderVersion = 1
- ValidationCacheHeaderVersionEndRange ValidationCacheHeaderVersion = 1
- ValidationCacheHeaderVersionRangeSize ValidationCacheHeaderVersion = 1
- ValidationCacheHeaderVersionMaxEnum ValidationCacheHeaderVersion = 2147483647
-)
-
-// DescriptorBindingFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorBindingFlagBitsEXT.html
-type DescriptorBindingFlagBits int32
-
-// DescriptorBindingFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorBindingFlagBitsEXT.html
-const (
- DescriptorBindingUpdateAfterBindBit DescriptorBindingFlagBits = 1
- DescriptorBindingUpdateUnusedWhilePendingBit DescriptorBindingFlagBits = 2
- DescriptorBindingPartiallyBoundBit DescriptorBindingFlagBits = 4
- DescriptorBindingVariableDescriptorCountBit DescriptorBindingFlagBits = 8
- DescriptorBindingFlagBitsMaxEnum DescriptorBindingFlagBits = 2147483647
+ ValidationCacheHeaderVersionOne ValidationCacheHeaderVersion = 1
+ ValidationCacheHeaderVersionMaxEnum ValidationCacheHeaderVersion = 2147483647
)
// ShadingRatePaletteEntryNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkShadingRatePaletteEntryNV.html
@@ -3264,9 +4827,6 @@ const (
ShadingRatePaletteEntry1InvocationPer4x2PixelsNv ShadingRatePaletteEntryNV = 9
ShadingRatePaletteEntry1InvocationPer2x4PixelsNv ShadingRatePaletteEntryNV = 10
ShadingRatePaletteEntry1InvocationPer4x4PixelsNv ShadingRatePaletteEntryNV = 11
- ShadingRatePaletteEntryBeginRangeNv ShadingRatePaletteEntryNV = 0
- ShadingRatePaletteEntryEndRangeNv ShadingRatePaletteEntryNV = 11
- ShadingRatePaletteEntryRangeSizeNv ShadingRatePaletteEntryNV = 12
ShadingRatePaletteEntryMaxEnumNv ShadingRatePaletteEntryNV = 2147483647
)
@@ -3279,112 +4839,358 @@ const (
CoarseSampleOrderTypeCustomNv CoarseSampleOrderTypeNV = 1
CoarseSampleOrderTypePixelMajorNv CoarseSampleOrderTypeNV = 2
CoarseSampleOrderTypeSampleMajorNv CoarseSampleOrderTypeNV = 3
- CoarseSampleOrderTypeBeginRangeNv CoarseSampleOrderTypeNV = 0
- CoarseSampleOrderTypeEndRangeNv CoarseSampleOrderTypeNV = 3
- CoarseSampleOrderTypeRangeSizeNv CoarseSampleOrderTypeNV = 4
CoarseSampleOrderTypeMaxEnumNv CoarseSampleOrderTypeNV = 2147483647
)
-// GeometryTypeNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkGeometryTypeNVX
-type GeometryTypeNVX int32
+// PipelineCompilerControlFlagBitsAMD as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkPipelineCompilerControlFlagBitsAMD
+type PipelineCompilerControlFlagBitsAMD int32
+
+// PipelineCompilerControlFlagBitsAMD enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkPipelineCompilerControlFlagBitsAMD
+const (
+ PipelineCompilerControlFlagBitsMaxEnumAmd PipelineCompilerControlFlagBitsAMD = 2147483647
+)
+
+// TimeDomain as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkTimeDomainEXT.html
+type TimeDomain int32
-// GeometryTypeNVX enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkGeometryTypeNVX
+// TimeDomain enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkTimeDomainEXT.html
const (
- GeometryTypeTrianglesNvx GeometryTypeNVX = iota
- GeometryTypeAabbsNvx GeometryTypeNVX = 1
- GeometryTypeBeginRangeNvx GeometryTypeNVX = 0
- GeometryTypeEndRangeNvx GeometryTypeNVX = 1
- GeometryTypeRangeSizeNvx GeometryTypeNVX = 2
- GeometryTypeMaxEnumNvx GeometryTypeNVX = 2147483647
+ TimeDomainDevice TimeDomain = iota
+ TimeDomainClockMonotonic TimeDomain = 1
+ TimeDomainClockMonotonicRaw TimeDomain = 2
+ TimeDomainQueryPerformanceCounter TimeDomain = 3
+ TimeDomainMaxEnum TimeDomain = 2147483647
)
-// AccelerationStructureTypeNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkAccelerationStructureTypeNVX
-type AccelerationStructureTypeNVX int32
+// MemoryOverallocationBehaviorAMD as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkMemoryOverallocationBehaviorAMD
+type MemoryOverallocationBehaviorAMD int32
-// AccelerationStructureTypeNVX enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkAccelerationStructureTypeNVX
+// MemoryOverallocationBehaviorAMD enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkMemoryOverallocationBehaviorAMD
const (
- AccelerationStructureTypeTopLevelNvx AccelerationStructureTypeNVX = iota
- AccelerationStructureTypeBottomLevelNvx AccelerationStructureTypeNVX = 1
- AccelerationStructureTypeBeginRangeNvx AccelerationStructureTypeNVX = 0
- AccelerationStructureTypeEndRangeNvx AccelerationStructureTypeNVX = 1
- AccelerationStructureTypeRangeSizeNvx AccelerationStructureTypeNVX = 2
- AccelerationStructureTypeMaxEnumNvx AccelerationStructureTypeNVX = 2147483647
+ MemoryOverallocationBehaviorDefaultAmd MemoryOverallocationBehaviorAMD = iota
+ MemoryOverallocationBehaviorAllowedAmd MemoryOverallocationBehaviorAMD = 1
+ MemoryOverallocationBehaviorDisallowedAmd MemoryOverallocationBehaviorAMD = 2
+ MemoryOverallocationBehaviorMaxEnumAmd MemoryOverallocationBehaviorAMD = 2147483647
)
-// CopyAccelerationStructureModeNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkCopyAccelerationStructureModeNVX
-type CopyAccelerationStructureModeNVX int32
+// PerformanceConfigurationTypeINTEL as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPerformanceConfigurationTypeINTEL.html
+type PerformanceConfigurationTypeINTEL int32
-// CopyAccelerationStructureModeNVX enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkCopyAccelerationStructureModeNVX
+// PerformanceConfigurationTypeINTEL enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPerformanceConfigurationTypeINTEL.html
const (
- CopyAccelerationStructureModeCloneNvx CopyAccelerationStructureModeNVX = iota
- CopyAccelerationStructureModeCompactNvx CopyAccelerationStructureModeNVX = 1
- CopyAccelerationStructureModeBeginRangeNvx CopyAccelerationStructureModeNVX = 0
- CopyAccelerationStructureModeEndRangeNvx CopyAccelerationStructureModeNVX = 1
- CopyAccelerationStructureModeRangeSizeNvx CopyAccelerationStructureModeNVX = 2
- CopyAccelerationStructureModeMaxEnumNvx CopyAccelerationStructureModeNVX = 2147483647
+ PerformanceConfigurationTypeCommandQueueMetricsDiscoveryActivatedIntel PerformanceConfigurationTypeINTEL = iota
+ PerformanceConfigurationTypeMaxEnumIntel PerformanceConfigurationTypeINTEL = 2147483647
)
-// GeometryFlagBitsNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkGeometryFlagBitsNVX
-type GeometryFlagBitsNVX int32
+// QueryPoolSamplingModeINTEL as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueryPoolSamplingModeINTEL.html
+type QueryPoolSamplingModeINTEL int32
-// GeometryFlagBitsNVX enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkGeometryFlagBitsNVX
+// QueryPoolSamplingModeINTEL enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueryPoolSamplingModeINTEL.html
const (
- GeometryOpaqueBitNvx GeometryFlagBitsNVX = 1
- GeometryNoDuplicateAnyHitInvocationBitNvx GeometryFlagBitsNVX = 2
- GeometryFlagBitsMaxEnumNvx GeometryFlagBitsNVX = 2147483647
+ QueryPoolSamplingModeManualIntel QueryPoolSamplingModeINTEL = iota
+ QueryPoolSamplingModeMaxEnumIntel QueryPoolSamplingModeINTEL = 2147483647
)
-// GeometryInstanceFlagBitsNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkGeometryInstanceFlagBitsNVX
-type GeometryInstanceFlagBitsNVX int32
+// PerformanceOverrideTypeINTEL as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPerformanceOverrideTypeINTEL.html
+type PerformanceOverrideTypeINTEL int32
-// GeometryInstanceFlagBitsNVX enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkGeometryInstanceFlagBitsNVX
+// PerformanceOverrideTypeINTEL enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPerformanceOverrideTypeINTEL.html
const (
- GeometryInstanceTriangleCullDisableBitNvx GeometryInstanceFlagBitsNVX = 1
- GeometryInstanceTriangleCullFlipWindingBitNvx GeometryInstanceFlagBitsNVX = 2
- GeometryInstanceForceOpaqueBitNvx GeometryInstanceFlagBitsNVX = 4
- GeometryInstanceForceNoOpaqueBitNvx GeometryInstanceFlagBitsNVX = 8
- GeometryInstanceFlagBitsMaxEnumNvx GeometryInstanceFlagBitsNVX = 2147483647
+ PerformanceOverrideTypeNullHardwareIntel PerformanceOverrideTypeINTEL = iota
+ PerformanceOverrideTypeFlushGpuCachesIntel PerformanceOverrideTypeINTEL = 1
+ PerformanceOverrideTypeMaxEnumIntel PerformanceOverrideTypeINTEL = 2147483647
)
-// BuildAccelerationStructureFlagBitsNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkBuildAccelerationStructureFlagBitsNVX
-type BuildAccelerationStructureFlagBitsNVX int32
+// PerformanceParameterTypeINTEL as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPerformanceParameterTypeINTEL.html
+type PerformanceParameterTypeINTEL int32
-// BuildAccelerationStructureFlagBitsNVX enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkBuildAccelerationStructureFlagBitsNVX
+// PerformanceParameterTypeINTEL enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPerformanceParameterTypeINTEL.html
const (
- BuildAccelerationStructureAllowUpdateBitNvx BuildAccelerationStructureFlagBitsNVX = 1
- BuildAccelerationStructureAllowCompactionBitNvx BuildAccelerationStructureFlagBitsNVX = 2
- BuildAccelerationStructurePreferFastTraceBitNvx BuildAccelerationStructureFlagBitsNVX = 4
- BuildAccelerationStructurePreferFastBuildBitNvx BuildAccelerationStructureFlagBitsNVX = 8
- BuildAccelerationStructureLowMemoryBitNvx BuildAccelerationStructureFlagBitsNVX = 16
- BuildAccelerationStructureFlagBitsMaxEnumNvx BuildAccelerationStructureFlagBitsNVX = 2147483647
+ PerformanceParameterTypeHwCountersSupportedIntel PerformanceParameterTypeINTEL = iota
+ PerformanceParameterTypeStreamMarkerValidBitsIntel PerformanceParameterTypeINTEL = 1
+ PerformanceParameterTypeMaxEnumIntel PerformanceParameterTypeINTEL = 2147483647
)
-// QueueGlobalPriority as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueueGlobalPriorityEXT.html
-type QueueGlobalPriority int32
+// PerformanceValueTypeINTEL as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPerformanceValueTypeINTEL.html
+type PerformanceValueTypeINTEL int32
-// QueueGlobalPriority enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueueGlobalPriorityEXT.html
+// PerformanceValueTypeINTEL enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPerformanceValueTypeINTEL.html
const (
- QueueGlobalPriorityLow QueueGlobalPriority = 128
- QueueGlobalPriorityMedium QueueGlobalPriority = 256
- QueueGlobalPriorityHigh QueueGlobalPriority = 512
- QueueGlobalPriorityRealtime QueueGlobalPriority = 1024
- QueueGlobalPriorityBeginRange QueueGlobalPriority = 128
- QueueGlobalPriorityEndRange QueueGlobalPriority = 1024
- QueueGlobalPriorityRangeSize QueueGlobalPriority = 897
- QueueGlobalPriorityMaxEnum QueueGlobalPriority = 2147483647
+ PerformanceValueTypeUint32Intel PerformanceValueTypeINTEL = iota
+ PerformanceValueTypeUint64Intel PerformanceValueTypeINTEL = 1
+ PerformanceValueTypeFloatIntel PerformanceValueTypeINTEL = 2
+ PerformanceValueTypeBoolIntel PerformanceValueTypeINTEL = 3
+ PerformanceValueTypeStringIntel PerformanceValueTypeINTEL = 4
+ PerformanceValueTypeMaxEnumIntel PerformanceValueTypeINTEL = 2147483647
)
-// TimeDomain as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkTimeDomainEXT.html
-type TimeDomain int32
+// ShaderCorePropertiesFlagBitsAMD as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkShaderCorePropertiesFlagBitsAMD
+type ShaderCorePropertiesFlagBitsAMD int32
-// TimeDomain enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkTimeDomainEXT.html
+// ShaderCorePropertiesFlagBitsAMD enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkShaderCorePropertiesFlagBitsAMD
const (
- TimeDomainDevice TimeDomain = iota
- TimeDomainClockMonotonic TimeDomain = 1
- TimeDomainClockMonotonicRaw TimeDomain = 2
- TimeDomainQueryPerformanceCounter TimeDomain = 3
- TimeDomainBeginRange TimeDomain = 0
- TimeDomainEndRange TimeDomain = 3
- TimeDomainRangeSize TimeDomain = 4
- TimeDomainMaxEnum TimeDomain = 2147483647
+ ShaderCorePropertiesFlagBitsMaxEnumAmd ShaderCorePropertiesFlagBitsAMD = 2147483647
+)
+
+// ValidationFeatureEnable as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkValidationFeatureEnableEXT.html
+type ValidationFeatureEnable int32
+
+// ValidationFeatureEnable enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkValidationFeatureEnableEXT.html
+const (
+ ValidationFeatureEnableGpuAssisted ValidationFeatureEnable = iota
+ ValidationFeatureEnableGpuAssistedReserveBindingSlot ValidationFeatureEnable = 1
+ ValidationFeatureEnableBestPractices ValidationFeatureEnable = 2
+ ValidationFeatureEnableDebugPrintf ValidationFeatureEnable = 3
+ ValidationFeatureEnableSynchronizationValidation ValidationFeatureEnable = 4
+ ValidationFeatureEnableMaxEnum ValidationFeatureEnable = 2147483647
+)
+
+// ValidationFeatureDisable as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkValidationFeatureDisableEXT.html
+type ValidationFeatureDisable int32
+
+// ValidationFeatureDisable enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkValidationFeatureDisableEXT.html
+const (
+ ValidationFeatureDisableAll ValidationFeatureDisable = iota
+ ValidationFeatureDisableShaders ValidationFeatureDisable = 1
+ ValidationFeatureDisableThreadSafety ValidationFeatureDisable = 2
+ ValidationFeatureDisableApiParameters ValidationFeatureDisable = 3
+ ValidationFeatureDisableObjectLifetimes ValidationFeatureDisable = 4
+ ValidationFeatureDisableCoreChecks ValidationFeatureDisable = 5
+ ValidationFeatureDisableUniqueHandles ValidationFeatureDisable = 6
+ ValidationFeatureDisableShaderValidationCache ValidationFeatureDisable = 7
+ ValidationFeatureDisableMaxEnum ValidationFeatureDisable = 2147483647
+)
+
+// ComponentTypeNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkComponentTypeNV.html
+type ComponentTypeNV int32
+
+// ComponentTypeNV enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkComponentTypeNV.html
+const (
+ ComponentTypeFloat16Nv ComponentTypeNV = iota
+ ComponentTypeFloat32Nv ComponentTypeNV = 1
+ ComponentTypeFloat64Nv ComponentTypeNV = 2
+ ComponentTypeSint8Nv ComponentTypeNV = 3
+ ComponentTypeSint16Nv ComponentTypeNV = 4
+ ComponentTypeSint32Nv ComponentTypeNV = 5
+ ComponentTypeSint64Nv ComponentTypeNV = 6
+ ComponentTypeUint8Nv ComponentTypeNV = 7
+ ComponentTypeUint16Nv ComponentTypeNV = 8
+ ComponentTypeUint32Nv ComponentTypeNV = 9
+ ComponentTypeUint64Nv ComponentTypeNV = 10
+ ComponentTypeMaxEnumNv ComponentTypeNV = 2147483647
+)
+
+// ScopeNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkScopeNV.html
+type ScopeNV int32
+
+// ScopeNV enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkScopeNV.html
+const (
+ ScopeDeviceNv ScopeNV = 1
+ ScopeWorkgroupNv ScopeNV = 2
+ ScopeSubgroupNv ScopeNV = 3
+ ScopeQueueFamilyNv ScopeNV = 5
+ ScopeMaxEnumNv ScopeNV = 2147483647
+)
+
+// CoverageReductionModeNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCoverageReductionModeNV.html
+type CoverageReductionModeNV int32
+
+// CoverageReductionModeNV enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCoverageReductionModeNV.html
+const (
+ CoverageReductionModeMergeNv CoverageReductionModeNV = iota
+ CoverageReductionModeTruncateNv CoverageReductionModeNV = 1
+ CoverageReductionModeMaxEnumNv CoverageReductionModeNV = 2147483647
+)
+
+// ProvokingVertexMode as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkProvokingVertexModeEXT.html
+type ProvokingVertexMode int32
+
+// ProvokingVertexMode enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkProvokingVertexModeEXT.html
+const (
+ ProvokingVertexModeFirstVertex ProvokingVertexMode = iota
+ ProvokingVertexModeLastVertex ProvokingVertexMode = 1
+ ProvokingVertexModeMaxEnum ProvokingVertexMode = 2147483647
+)
+
+// LineRasterizationMode as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkLineRasterizationModeEXT.html
+type LineRasterizationMode int32
+
+// LineRasterizationMode enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkLineRasterizationModeEXT.html
+const (
+ LineRasterizationModeDefault LineRasterizationMode = iota
+ LineRasterizationModeRectangular LineRasterizationMode = 1
+ LineRasterizationModeBresenham LineRasterizationMode = 2
+ LineRasterizationModeRectangularSmooth LineRasterizationMode = 3
+ LineRasterizationModeMaxEnum LineRasterizationMode = 2147483647
+)
+
+// PresentScalingFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPresentScalingFlagBitsEXT.html
+type PresentScalingFlagBits int32
+
+// PresentScalingFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPresentScalingFlagBitsEXT.html
+const (
+ PresentScalingOneToOneBit PresentScalingFlagBits = 1
+ PresentScalingAspectRatioStretchBit PresentScalingFlagBits = 2
+ PresentScalingStretchBit PresentScalingFlagBits = 4
+ PresentScalingFlagBitsMaxEnum PresentScalingFlagBits = 2147483647
+)
+
+// PresentGravityFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPresentGravityFlagBitsEXT.html
+type PresentGravityFlagBits int32
+
+// PresentGravityFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPresentGravityFlagBitsEXT.html
+const (
+ PresentGravityMinBit PresentGravityFlagBits = 1
+ PresentGravityMaxBit PresentGravityFlagBits = 2
+ PresentGravityCenteredBit PresentGravityFlagBits = 4
+ PresentGravityFlagBitsMaxEnum PresentGravityFlagBits = 2147483647
+)
+
+// IndirectCommandsTokenTypeNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkIndirectCommandsTokenTypeNV.html
+type IndirectCommandsTokenTypeNV int32
+
+// IndirectCommandsTokenTypeNV enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkIndirectCommandsTokenTypeNV.html
+const (
+ IndirectCommandsTokenTypeShaderGroupNv IndirectCommandsTokenTypeNV = iota
+ IndirectCommandsTokenTypeStateFlagsNv IndirectCommandsTokenTypeNV = 1
+ IndirectCommandsTokenTypeIndexBufferNv IndirectCommandsTokenTypeNV = 2
+ IndirectCommandsTokenTypeVertexBufferNv IndirectCommandsTokenTypeNV = 3
+ IndirectCommandsTokenTypePushConstantNv IndirectCommandsTokenTypeNV = 4
+ IndirectCommandsTokenTypeDrawIndexedNv IndirectCommandsTokenTypeNV = 5
+ IndirectCommandsTokenTypeDrawNv IndirectCommandsTokenTypeNV = 6
+ IndirectCommandsTokenTypeDrawTasksNv IndirectCommandsTokenTypeNV = 7
+ IndirectCommandsTokenTypeDrawMeshTasksNv IndirectCommandsTokenTypeNV = 1000328000
+ IndirectCommandsTokenTypeMaxEnumNv IndirectCommandsTokenTypeNV = 2147483647
+)
+
+// IndirectStateFlagBitsNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkIndirectStateFlagBitsNV.html
+type IndirectStateFlagBitsNV int32
+
+// IndirectStateFlagBitsNV enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkIndirectStateFlagBitsNV.html
+const (
+ IndirectStateFlagFrontfaceBitNv IndirectStateFlagBitsNV = 1
+ IndirectStateFlagBitsMaxEnumNv IndirectStateFlagBitsNV = 2147483647
+)
+
+// IndirectCommandsLayoutUsageFlagBitsNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkIndirectCommandsLayoutUsageFlagBitsNV.html
+type IndirectCommandsLayoutUsageFlagBitsNV int32
+
+// IndirectCommandsLayoutUsageFlagBitsNV enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkIndirectCommandsLayoutUsageFlagBitsNV.html
+const (
+ IndirectCommandsLayoutUsageExplicitPreprocessBitNv IndirectCommandsLayoutUsageFlagBitsNV = 1
+ IndirectCommandsLayoutUsageIndexedSequencesBitNv IndirectCommandsLayoutUsageFlagBitsNV = 2
+ IndirectCommandsLayoutUsageUnorderedSequencesBitNv IndirectCommandsLayoutUsageFlagBitsNV = 4
+ IndirectCommandsLayoutUsageFlagBitsMaxEnumNv IndirectCommandsLayoutUsageFlagBitsNV = 2147483647
+)
+
+// DeviceMemoryReportEventType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceMemoryReportEventTypeEXT.html
+type DeviceMemoryReportEventType int32
+
+// DeviceMemoryReportEventType enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceMemoryReportEventTypeEXT.html
+const (
+ DeviceMemoryReportEventTypeAllocate DeviceMemoryReportEventType = iota
+ DeviceMemoryReportEventTypeFree DeviceMemoryReportEventType = 1
+ DeviceMemoryReportEventTypeImport DeviceMemoryReportEventType = 2
+ DeviceMemoryReportEventTypeUnimport DeviceMemoryReportEventType = 3
+ DeviceMemoryReportEventTypeAllocationFailed DeviceMemoryReportEventType = 4
+ DeviceMemoryReportEventTypeMaxEnum DeviceMemoryReportEventType = 2147483647
+)
+
+// DeviceDiagnosticsConfigFlagBitsNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceDiagnosticsConfigFlagBitsNV.html
+type DeviceDiagnosticsConfigFlagBitsNV int32
+
+// DeviceDiagnosticsConfigFlagBitsNV enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceDiagnosticsConfigFlagBitsNV.html
+const (
+ DeviceDiagnosticsConfigEnableShaderDebugInfoBitNv DeviceDiagnosticsConfigFlagBitsNV = 1
+ DeviceDiagnosticsConfigEnableResourceTrackingBitNv DeviceDiagnosticsConfigFlagBitsNV = 2
+ DeviceDiagnosticsConfigEnableAutomaticCheckpointsBitNv DeviceDiagnosticsConfigFlagBitsNV = 4
+ DeviceDiagnosticsConfigEnableShaderErrorReportingBitNv DeviceDiagnosticsConfigFlagBitsNV = 8
+ DeviceDiagnosticsConfigFlagBitsMaxEnumNv DeviceDiagnosticsConfigFlagBitsNV = 2147483647
+)
+
+// GraphicsPipelineLibraryFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkGraphicsPipelineLibraryFlagBitsEXT.html
+type GraphicsPipelineLibraryFlagBits int32
+
+// GraphicsPipelineLibraryFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkGraphicsPipelineLibraryFlagBitsEXT.html
+const (
+ GraphicsPipelineLibraryVertexInputInterfaceBit GraphicsPipelineLibraryFlagBits = 1
+ GraphicsPipelineLibraryPreRasterizationShadersBit GraphicsPipelineLibraryFlagBits = 2
+ GraphicsPipelineLibraryFragmentShaderBit GraphicsPipelineLibraryFlagBits = 4
+ GraphicsPipelineLibraryFragmentOutputInterfaceBit GraphicsPipelineLibraryFlagBits = 8
+ GraphicsPipelineLibraryFlagBitsMaxEnum GraphicsPipelineLibraryFlagBits = 2147483647
+)
+
+// FragmentShadingRateTypeNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFragmentShadingRateTypeNV.html
+type FragmentShadingRateTypeNV int32
+
+// FragmentShadingRateTypeNV enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFragmentShadingRateTypeNV.html
+const (
+ FragmentShadingRateTypeFragmentSizeNv FragmentShadingRateTypeNV = iota
+ FragmentShadingRateTypeEnumsNv FragmentShadingRateTypeNV = 1
+ FragmentShadingRateTypeMaxEnumNv FragmentShadingRateTypeNV = 2147483647
+)
+
+// FragmentShadingRateNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFragmentShadingRateNV.html
+type FragmentShadingRateNV int32
+
+// FragmentShadingRateNV enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFragmentShadingRateNV.html
+const (
+ FragmentShadingRate1InvocationPerPixelNv FragmentShadingRateNV = iota
+ FragmentShadingRate1InvocationPer1x2PixelsNv FragmentShadingRateNV = 1
+ FragmentShadingRate1InvocationPer2x1PixelsNv FragmentShadingRateNV = 4
+ FragmentShadingRate1InvocationPer2x2PixelsNv FragmentShadingRateNV = 5
+ FragmentShadingRate1InvocationPer2x4PixelsNv FragmentShadingRateNV = 6
+ FragmentShadingRate1InvocationPer4x2PixelsNv FragmentShadingRateNV = 9
+ FragmentShadingRate1InvocationPer4x4PixelsNv FragmentShadingRateNV = 10
+ FragmentShadingRate2InvocationsPerPixelNv FragmentShadingRateNV = 11
+ FragmentShadingRate4InvocationsPerPixelNv FragmentShadingRateNV = 12
+ FragmentShadingRate8InvocationsPerPixelNv FragmentShadingRateNV = 13
+ FragmentShadingRate16InvocationsPerPixelNv FragmentShadingRateNV = 14
+ FragmentShadingRateNoInvocationsNv FragmentShadingRateNV = 15
+ FragmentShadingRateMaxEnumNv FragmentShadingRateNV = 2147483647
+)
+
+// ImageCompressionFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageCompressionFlagBitsEXT.html
+type ImageCompressionFlagBits int32
+
+// ImageCompressionFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageCompressionFlagBitsEXT.html
+const (
+ ImageCompressionDefault ImageCompressionFlagBits = iota
+ ImageCompressionFixedRateDefault ImageCompressionFlagBits = 1
+ ImageCompressionFixedRateExplicit ImageCompressionFlagBits = 2
+ ImageCompressionDisabled ImageCompressionFlagBits = 4
+ ImageCompressionFlagBitsMaxEnum ImageCompressionFlagBits = 2147483647
+)
+
+// ImageCompressionFixedRateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageCompressionFixedRateFlagBitsEXT.html
+type ImageCompressionFixedRateFlagBits int32
+
+// ImageCompressionFixedRateFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageCompressionFixedRateFlagBitsEXT.html
+const (
+ ImageCompressionFixedRateNone ImageCompressionFixedRateFlagBits = iota
+ ImageCompressionFixedRate1bpcBit ImageCompressionFixedRateFlagBits = 1
+ ImageCompressionFixedRate2bpcBit ImageCompressionFixedRateFlagBits = 2
+ ImageCompressionFixedRate3bpcBit ImageCompressionFixedRateFlagBits = 4
+ ImageCompressionFixedRate4bpcBit ImageCompressionFixedRateFlagBits = 8
+ ImageCompressionFixedRate5bpcBit ImageCompressionFixedRateFlagBits = 16
+ ImageCompressionFixedRate6bpcBit ImageCompressionFixedRateFlagBits = 32
+ ImageCompressionFixedRate7bpcBit ImageCompressionFixedRateFlagBits = 64
+ ImageCompressionFixedRate8bpcBit ImageCompressionFixedRateFlagBits = 128
+ ImageCompressionFixedRate9bpcBit ImageCompressionFixedRateFlagBits = 256
+ ImageCompressionFixedRate10bpcBit ImageCompressionFixedRateFlagBits = 512
+ ImageCompressionFixedRate11bpcBit ImageCompressionFixedRateFlagBits = 1024
+ ImageCompressionFixedRate12bpcBit ImageCompressionFixedRateFlagBits = 2048
+ ImageCompressionFixedRate13bpcBit ImageCompressionFixedRateFlagBits = 4096
+ ImageCompressionFixedRate14bpcBit ImageCompressionFixedRateFlagBits = 8192
+ ImageCompressionFixedRate15bpcBit ImageCompressionFixedRateFlagBits = 16384
+ ImageCompressionFixedRate16bpcBit ImageCompressionFixedRateFlagBits = 32768
+ ImageCompressionFixedRate17bpcBit ImageCompressionFixedRateFlagBits = 65536
+ ImageCompressionFixedRate18bpcBit ImageCompressionFixedRateFlagBits = 131072
+ ImageCompressionFixedRate19bpcBit ImageCompressionFixedRateFlagBits = 262144
+ ImageCompressionFixedRate20bpcBit ImageCompressionFixedRateFlagBits = 524288
+ ImageCompressionFixedRate21bpcBit ImageCompressionFixedRateFlagBits = 1048576
+ ImageCompressionFixedRate22bpcBit ImageCompressionFixedRateFlagBits = 2097152
+ ImageCompressionFixedRate23bpcBit ImageCompressionFixedRateFlagBits = 4194304
+ ImageCompressionFixedRate24bpcBit ImageCompressionFixedRateFlagBits = 8388608
+ ImageCompressionFixedRateFlagBitsMaxEnum ImageCompressionFixedRateFlagBits = 2147483647
)
diff --git a/const_go.patch b/const_go.patch
new file mode 100644
index 0000000..10b4fcb
--- /dev/null
+++ b/const_go.patch
@@ -0,0 +1,57 @@
+--- const.go.orig 2023-02-09 22:33:10
++++ const.go 2023-02-09 22:35:41
+@@ -28,7 +28,7 @@
+ // AttachmentUnused as defined in vulkan/vulkan_core.h:123
+ AttachmentUnused = (^uint32(0))
+ // False as defined in vulkan/vulkan_core.h:124
+- False = uint32(0)
++ False = 0
+ // LodClampNone as defined in vulkan/vulkan_core.h:125
+ LodClampNone = 1000.0
+ // QueueFamilyIgnored as defined in vulkan/vulkan_core.h:126
+@@ -40,7 +40,7 @@
+ // SubpassExternal as defined in vulkan/vulkan_core.h:129
+ SubpassExternal = (^uint32(0))
+ // True as defined in vulkan/vulkan_core.h:130
+- True = uint32(1)
++ True = 1
+ // WholeSize as defined in vulkan/vulkan_core.h:131
+ WholeSize = (^uint64(0))
+ // MaxMemoryTypes as defined in vulkan/vulkan_core.h:132
+@@ -1432,11 +1432,11 @@
+ // Ext4444FormatsExtensionName as defined in vulkan/vulkan_core.h:14605
+ Ext4444FormatsExtensionName = "VK_EXT_4444_formats"
+ // StdVulkanVideoCodecH264DecodeSpecVersion as defined in vk_video/vulkan_video_codec_h264std_decode.h:27
+- StdVulkanVideoCodecH264DecodeSpecVersion = StdVulkanVideoCodecH264DecodeApiVersion100
++ // StdVulkanVideoCodecH264DecodeSpecVersion = StdVulkanVideoCodecH264DecodeApiVersion100
+ // StdVulkanVideoCodecH264DecodeExtensionName as defined in vk_video/vulkan_video_codec_h264std_decode.h:28
+ StdVulkanVideoCodecH264DecodeExtensionName = "VK_STD_vulkan_video_codec_h264_decode"
+ // StdVulkanVideoCodecH265DecodeSpecVersion as defined in vk_video/vulkan_video_codec_h265std_decode.h:27
+- StdVulkanVideoCodecH265DecodeSpecVersion = StdVulkanVideoCodecH265DecodeApiVersion100
++ // StdVulkanVideoCodecH265DecodeSpecVersion = StdVulkanVideoCodecH265DecodeApiVersion100
+ // StdVulkanVideoCodecH265DecodeExtensionName as defined in vk_video/vulkan_video_codec_h265std_decode.h:28
+ StdVulkanVideoCodecH265DecodeExtensionName = "VK_STD_vulkan_video_codec_h265_decode"
+ // KhrPortabilitySubset as defined in vulkan/vulkan_beta.h:22
+@@ -1464,11 +1464,11 @@
+ // ExtVideoEncodeH265ExtensionName as defined in vulkan/vulkan_beta.h:344
+ ExtVideoEncodeH265ExtensionName = "VK_EXT_video_encode_h265"
+ // StdVulkanVideoCodecH264EncodeSpecVersion as defined in vk_video/vulkan_video_codec_h264std_encode.h:26
+- StdVulkanVideoCodecH264EncodeSpecVersion = StdVulkanVideoCodecH264EncodeApiVersion098
++ // StdVulkanVideoCodecH264EncodeSpecVersion = StdVulkanVideoCodecH264EncodeApiVersion098
+ // StdVulkanVideoCodecH264EncodeExtensionName as defined in vk_video/vulkan_video_codec_h264std_encode.h:27
+ StdVulkanVideoCodecH264EncodeExtensionName = "VK_STD_vulkan_video_codec_h264_encode"
+ // StdVulkanVideoCodecH265EncodeSpecVersion as defined in vk_video/vulkan_video_codec_h265std_encode.h:26
+- StdVulkanVideoCodecH265EncodeSpecVersion = StdVulkanVideoCodecH265EncodeApiVersion099
++ // StdVulkanVideoCodecH265EncodeSpecVersion = StdVulkanVideoCodecH265EncodeApiVersion099
+ // StdVulkanVideoCodecH265EncodeExtensionName as defined in vk_video/vulkan_video_codec_h265std_encode.h:27
+ StdVulkanVideoCodecH265EncodeExtensionName = "VK_STD_vulkan_video_codec_h265_encode"
+ )
+@@ -2270,7 +2270,7 @@
+
+ // PipelineCacheHeaderVersion enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCacheHeaderVersion.html
+ const (
+- PipelineCacheHeaderVersionOne PipelineCacheHeaderVersion = 1
++ PipelineCacheHeaderVersion1 PipelineCacheHeaderVersion = 1
+ PipelineCacheHeaderVersionMaxEnum PipelineCacheHeaderVersion = 2147483647
+ )
+
diff --git a/doc.go b/doc.go
index 555e9be..9ef9476 100644
--- a/doc.go
+++ b/doc.go
@@ -1,6 +1,6 @@
// THE AUTOGENERATED LICENSE. ALL THE RIGHTS ARE RESERVED BY ROBOTS.
-// WARNING: This file has automatically been generated on Mon, 15 Oct 2018 01:04:16 +07.
+// WARNING: This file has automatically been generated on Fri, 10 Feb 2023 11:56:02 PST.
// Code generated by https://git.io/c-for-go. DO NOT EDIT.
/*
diff --git a/go.mod b/go.mod
index f16e06e..3d3e666 100644
--- a/go.mod
+++ b/go.mod
@@ -1,3 +1,3 @@
-module github.com/vulkan-go/vulkan
+module github.com/goki/vulkan
-go 1.16
+go 1.18
diff --git a/moltenVK/mvk_vulkan.h b/moltenVK/mvk_vulkan.h
new file mode 100644
index 0000000..3906a67
--- /dev/null
+++ b/moltenVK/mvk_vulkan.h
@@ -0,0 +1,50 @@
+/*
+ * mvk_vulkan.h
+ *
+ * Copyright (c) 2015-2023 The Brenwill Workshop Ltd. (http://www.brenwill.com)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
+/**
+ * This is a convenience header file that loads vulkan.h with the appropriate Vulkan platform extensions.
+ *
+ * This header automatically enables the VK_EXT_metal_surface Vulkan extension.
+ *
+ * When building for iOS, this header also automatically enables the obsolete VK_MVK_ios_surface Vulkan extension.
+ * When building for macOS, this header also automatically enables the obsolete VK_MVK_macos_surface Vulkan extension.
+ * Both of these extensions are obsolete. Consider using the portable VK_EXT_metal_surface extension instead.
+ */
+
+#ifndef __mvk_vulkan_h_
+#define __mvk_vulkan_h_ 1
+
+
+#include
+
+#define VK_USE_PLATFORM_METAL_EXT 1
+
+#define VK_ENABLE_BETA_EXTENSIONS 1 // VK_KHR_portability_subset
+
+#ifdef __IPHONE_OS_VERSION_MAX_ALLOWED
+# define VK_USE_PLATFORM_IOS_MVK 1
+#endif
+
+#ifdef __MAC_OS_X_VERSION_MAX_ALLOWED
+# define VK_USE_PLATFORM_MACOS_MVK 1
+#endif
+
+#include
+
+#endif
diff --git a/moltenVK/vk_mvk_moltenvk.h b/moltenVK/vk_mvk_moltenvk.h
index b240ca1..55d7476 100644
--- a/moltenVK/vk_mvk_moltenvk.h
+++ b/moltenVK/vk_mvk_moltenvk.h
@@ -1,15 +1,19 @@
/*
* vk_mvk_moltenvk.h
*
- * Copyright (c) 2014-2017 The Brenwill Workshop Ltd. All rights reserved.
- * http://www.brenwill.com
- *
- * Use of this document is governed by the Molten License Agreement, as included
- * in the Molten distribution package. CAREFULLY READ THAT LICENSE AGREEMENT BEFORE
- * READING AND USING THIS DOCUMENT. BY READING OR OTHERWISE USING THIS DOCUMENT,
- * YOU ACCEPT AND AGREE TO BE BOUND BY THE TERMS AND CONDITIONS OF THAT LICENSE
- * AGREEMENT. IF YOU DO NOT ACCEPT THE TERMS AND CONDITIONS OF THAT LICENSE AGREEMENT,
- * DO NOT READ OR USE THIS DOCUMENT.
+ * Copyright (c) 2015-2023 The Brenwill Workshop Ltd. (http://www.brenwill.com)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
*/
@@ -20,90 +24,1039 @@
#ifdef __cplusplus
extern "C" {
-#endif // __cplusplus
-
+#endif // __cplusplus
+
+#include "mvk_vulkan.h"
+#include
#ifdef __OBJC__
#import
-#import
+#else
+typedef unsigned long MTLLanguageVersion;
+typedef unsigned long MTLArgumentBuffersTier;
#endif
-#define VK_MVK_MOLTENVK_SPEC_VERSION 3
+/**
+ * The version number of MoltenVK is a single integer value, derived from the Major, Minor,
+ * and Patch version values, where each of the Major, Minor, and Patch components is allocated
+ * two decimal digits, in the format MjMnPt. This creates a version number that is both human
+ * readable and allows efficient computational comparisons to a single integer number.
+ *
+ * The following examples illustrate how the MoltenVK version number is built from its components:
+ * - 002000 (version 0.20.0)
+ * - 010000 (version 1.0.0)
+ * - 030104 (version 3.1.4)
+ * - 401215 (version 4.12.15)
+ */
+#define MVK_VERSION_MAJOR 1
+#define MVK_VERSION_MINOR 2
+#define MVK_VERSION_PATCH 3
+
+#define MVK_MAKE_VERSION(major, minor, patch) (((major) * 10000) + ((minor) * 100) + (patch))
+#define MVK_VERSION MVK_MAKE_VERSION(MVK_VERSION_MAJOR, MVK_VERSION_MINOR, MVK_VERSION_PATCH)
+
+#define VK_MVK_MOLTENVK_SPEC_VERSION 36
#define VK_MVK_MOLTENVK_EXTENSION_NAME "VK_MVK_moltenvk"
-/** MoltenVK configuration settings. */
+/** Identifies the level of logging MoltenVK should be limited to outputting. */
+typedef enum MVKConfigLogLevel {
+ MVK_CONFIG_LOG_LEVEL_NONE = 0, /**< No logging. */
+ MVK_CONFIG_LOG_LEVEL_ERROR = 1, /**< Log errors only. */
+ MVK_CONFIG_LOG_LEVEL_WARNING = 2, /**< Log errors and warning messages. */
+ MVK_CONFIG_LOG_LEVEL_INFO = 3, /**< Log errors, warnings and informational messages. */
+ MVK_CONFIG_LOG_LEVEL_DEBUG = 4, /**< Log errors, warnings, infos and debug messages. */
+ MVK_CONFIG_LOG_LEVEL_MAX_ENUM = 0x7FFFFFFF
+} MVKConfigLogLevel;
+
+/** Identifies the level of Vulkan call trace logging MoltenVK should perform. */
+typedef enum MVKConfigTraceVulkanCalls {
+ MVK_CONFIG_TRACE_VULKAN_CALLS_NONE = 0, /**< No Vulkan call logging. */
+ MVK_CONFIG_TRACE_VULKAN_CALLS_ENTER = 1, /**< Log the name of each Vulkan call when the call is entered. */
+ MVK_CONFIG_TRACE_VULKAN_CALLS_ENTER_EXIT = 2, /**< Log the name of each Vulkan call when the call is entered and exited. This effectively brackets any other logging activity within the scope of the Vulkan call. */
+ MVK_CONFIG_TRACE_VULKAN_CALLS_DURATION = 3, /**< Same as MVK_CONFIG_TRACE_VULKAN_CALLS_ENTER_EXIT, plus logs the time spent inside the Vulkan function. */
+ MVK_CONFIG_TRACE_VULKAN_CALLS_MAX_ENUM = 0x7FFFFFFF
+} MVKConfigTraceVulkanCalls;
+
+/** Identifies the scope for Metal to run an automatic GPU capture for diagnostic debugging purposes. */
+typedef enum MVKConfigAutoGPUCaptureScope {
+ MVK_CONFIG_AUTO_GPU_CAPTURE_SCOPE_NONE = 0, /**< No automatic GPU capture. */
+ MVK_CONFIG_AUTO_GPU_CAPTURE_SCOPE_DEVICE = 1, /**< Automatically capture all GPU activity during the lifetime of a VkDevice. */
+ MVK_CONFIG_AUTO_GPU_CAPTURE_SCOPE_FRAME = 2, /**< Automatically capture all GPU activity during the rendering and presentation of the first frame. */
+ MVK_CONFIG_AUTO_GPU_CAPTURE_SCOPE_MAX_ENUM = 0x7FFFFFFF
+} MVKConfigAutoGPUCaptureScope;
+
+/** Identifies extensions to advertise as part of MoltenVK configuration. */
+typedef enum MVKConfigAdvertiseExtensionBits {
+ MVK_CONFIG_ADVERTISE_EXTENSIONS_ALL = 0x00000001, /**< All supported extensions. */
+ MVK_CONFIG_ADVERTISE_EXTENSIONS_MOLTENVK = 0x00000002, /**< This VK_MVK_moltenvk extension. */
+ MVK_CONFIG_ADVERTISE_EXTENSIONS_WSI = 0x00000004, /**< WSI extensions supported on the platform. */
+ MVK_CONFIG_ADVERTISE_EXTENSIONS_PORTABILITY = 0x00000008, /**< Vulkan Portability Subset extensions. */
+ MVK_CONFIG_ADVERTISE_EXTENSIONS_MAX_ENUM = 0x7FFFFFFF
+} MVKConfigAdvertiseExtensionBits;
+typedef VkFlags MVKConfigAdvertiseExtensions;
+
+/** Identifies the use of Metal Argument Buffers. */
+typedef enum MVKUseMetalArgumentBuffers {
+ MVK_CONFIG_USE_METAL_ARGUMENT_BUFFERS_NEVER = 0, /**< Don't use Metal Argument Buffers. */
+ MVK_CONFIG_USE_METAL_ARGUMENT_BUFFERS_ALWAYS = 1, /**< Use Metal Argument Buffers for all pipelines. */
+ MVK_CONFIG_USE_METAL_ARGUMENT_BUFFERS_DESCRIPTOR_INDEXING = 2, /**< Use Metal Argument Buffers only if VK_EXT_descriptor_indexing extension is enabled. */
+ MVK_CONFIG_USE_METAL_ARGUMENT_BUFFERS_MAX_ENUM = 0x7FFFFFFF
+} MVKUseMetalArgumentBuffers;
+
+/** Identifies the Metal functionality used to support Vulkan semaphore functionality (VkSemaphore). */
+typedef enum MVKVkSemaphoreSupportStyle {
+ MVK_CONFIG_VK_SEMAPHORE_SUPPORT_STYLE_SINGLE_QUEUE = 0, /**< Limit Vulkan to a single queue, with no explicit semaphore synchronization, and use Metal's implicit guarantees that all operations submitted to a queue will give the same result as if they had been run in submission order. */
+ MVK_CONFIG_VK_SEMAPHORE_SUPPORT_STYLE_METAL_EVENTS_WHERE_SAFE = 1, /**< Use Metal events (MTLEvent) when available on the platform, and where safe. This will revert to same as MVK_CONFIG_VK_SEMAPHORE_USE_SINGLE_QUEUE on some NVIDIA GPUs and Rosetta2, due to potential challenges with MTLEvents on those platforms, or in older environments where MTLEvents are not supported. */
+ MVK_CONFIG_VK_SEMAPHORE_SUPPORT_STYLE_METAL_EVENTS = 2, /**< Always use Metal events (MTLEvent) when available on the platform. This will revert to same as MVK_CONFIG_VK_SEMAPHORE_USE_SINGLE_QUEUE in older environments where MTLEvents are not supported. */
+ MVK_CONFIG_VK_SEMAPHORE_SUPPORT_STYLE_CALLBACK = 3, /**< Use CPU callbacks upon GPU submission completion. This is the slowest technique, but allows multiple queues, compared to MVK_CONFIG_VK_SEMAPHORE_USE_SINGLE_QUEUE. */
+ MVK_CONFIG_VK_SEMAPHORE_SUPPORT_STYLE_MAX_ENUM = 0x7FFFFFFF
+} MVKVkSemaphoreSupportStyle;
+
+/** Identifies the style of Metal command buffer pre-filling to be used. */
+typedef enum MVKPrefillMetalCommandBuffersStyle {
+ MVK_CONFIG_PREFILL_METAL_COMMAND_BUFFERS_STYLE_NO_PREFILL = 0, /**< During Vulkan command buffer filling, do not prefill a Metal command buffer for each Vulkan command buffer. A single Metal command buffer is created and encoded for all the Vulkan command buffers included when vkQueueSubmit() is called. MoltenVK automatically creates and drains a single Metal object autorelease pool when vkQueueSubmit() is called. This is the fastest option, but potentially has the largest memory footprint. */
+ MVK_CONFIG_PREFILL_METAL_COMMAND_BUFFERS_STYLE_DEFERRED_ENCODING = 1, /**< During Vulkan command buffer filling, encode to the Metal command buffer when vkEndCommandBuffer() is called. MoltenVK automatically creates and drains a single Metal object autorelease pool when vkEndCommandBuffer() is called. This option has the fastest performance, and the largest memory footprint, of the prefilling options using autorelease pools. */
+ MVK_CONFIG_PREFILL_METAL_COMMAND_BUFFERS_STYLE_IMMEDIATE_ENCODING = 2, /**< During Vulkan command buffer filling, immediately encode to the Metal command buffer, as each command is submitted to the Vulkan command buffer, and do not retain any command content in the Vulkan command buffer. MoltenVK automatically creates and drains a Metal object autorelease pool for each and every command added to the Vulkan command buffer. This option has the smallest memory footprint, and the slowest performance, of the prefilling options using autorelease pools. */
+ MVK_CONFIG_PREFILL_METAL_COMMAND_BUFFERS_STYLE_IMMEDIATE_ENCODING_NO_AUTORELEASE = 3, /**< During Vulkan command buffer filling, immediately encode to the Metal command buffer, as each command is submitted to the Vulkan command buffer, do not retain any command content in the Vulkan command buffer, and assume the app will ensure that each thread that fills commands into a Vulkan command buffer has a Metal autorelease pool. MoltenVK will not create and drain any autorelease pools during encoding. This is the fastest prefilling option, and generally has a small memory footprint, depending on when the app-provided autorelease pool drains. */
+ MVK_CONFIG_PREFILL_METAL_COMMAND_BUFFERS_STYLE_MAX_ENUM = 0x7FFFFFFF
+} MVKPrefillMetalCommandBuffersStyle;
+
+/** Identifies when Metal shaders will be compiled with the fast math option. */
+typedef enum MVKConfigFastMath {
+ MVK_CONFIG_FAST_MATH_NEVER = 0, /**< Metal shaders will never be compiled with the fast math option. */
+ MVK_CONFIG_FAST_MATH_ALWAYS = 1, /**< Metal shaders will always be compiled with the fast math option. */
+ MVK_CONFIG_FAST_MATH_ON_DEMAND = 2, /**< Metal shaders will be compiled with the fast math option, unless the shader includes execution modes that require it to be compiled without fast math. */
+ MVK_CONFIG_FAST_MATH_MAX_ENUM = 0x7FFFFFFF
+} MVKConfigFastMath;
+
+/**
+ * MoltenVK configuration settings.
+ *
+ * To be active, some configuration settings must be set before a VkDevice is created.
+ * See the description of the individual configuration structure members for more information.
+ *
+ * There are three mechanisms for setting the values of the MoltenVK configuration parameters:
+ * - Runtime API via the vkGetMoltenVKConfigurationMVK()/vkSetMoltenVKConfigurationMVK() functions.
+ * - Application runtime environment variables.
+ * - Build settings at MoltenVK build time.
+ *
+ * To change the MoltenVK configuration settings at runtime using a programmatic API,
+ * use the vkGetMoltenVKConfigurationMVK() and vkSetMoltenVKConfigurationMVK() functions
+ * to retrieve, modify, and set a copy of the MVKConfiguration structure. To be active,
+ * some configuration settings must be set before a VkInstance or VkDevice is created.
+ * See the description of each member for more information.
+ *
+ * The initial value of each of the configuration settings can established at runtime
+ * by a corresponding environment variable, or if the environment variable is not set,
+ * by a corresponding build setting at the time MoltenVK is compiled. The environment
+ * variable and build setting for each configuration parameter share the same name.
+ *
+ * For example, the initial value of the shaderConversionFlipVertexY configuration setting
+ * is set by the MVK_CONFIG_SHADER_CONVERSION_FLIP_VERTEX_Y at runtime, or by the
+ * MVK_CONFIG_SHADER_CONVERSION_FLIP_VERTEX_Y build setting when MoltenVK is compiled.
+ *
+ * This structure may be extended as new features are added to MoltenVK. If you are linking to
+ * an implementation of MoltenVK that was compiled from a different VK_MVK_MOLTENVK_SPEC_VERSION
+ * than your app was, the size of this structure in your app may be larger or smaller than the
+ * struct in MoltenVK. See the description of the vkGetMoltenVKConfigurationMVK() and
+ * vkSetMoltenVKConfigurationMVK() functions for information about how to handle this.
+ *
+ * TO SUPPORT DYNAMIC LINKING TO THIS STRUCTURE AS DESCRIBED ABOVE, THIS STRUCTURE SHOULD NOT
+ * BE CHANGED EXCEPT TO ADD ADDITIONAL MEMBERS ON THE END. EXISTING MEMBERS, AND THEIR ORDER,
+ * SHOULD NOT BE CHANGED.
+ */
typedef struct {
- VkBool32 debugMode; /**< If enabled, several debugging capabilities will be enabled. Shader code will be logged during Runtime Shader Conversion. Improves support for Xcode GPU Frame Capture. Default is false. */
- VkBool32 shaderConversionFlipVertexY; /**< If enabled, MSL vertex shader code created during Runtime Shader Conversion will flip the Y-axis of each vertex, as Vulkan coordinate system is inverse of OpenGL. Default is true. */
- VkBool32 supportLargeQueryPools; /**< Metal allows only 8192 occlusion queries per MTLBuffer. If enabled, MoltenVK allocates a MTLBuffer for each query pool, allowing each query pool to support 8192 queries, which may slow performance or cause unexpected behaviour if the query pool is not established prior to a Metal renderpass, or if the query pool is changed within a Metal renderpass. If disabled, one MTLBuffer will be shared by all query pools, which improves performance, but limits the total device queries to 8192. Default is false. */
- VkBool32 performanceTracking; /**< If enabled, per-frame performance statistics are tracked, optionally logged, and can be retrieved via the vkGetSwapchainPerformanceMVK() function, and various shader compilation performance statistics are tracked, logged, and can be retrieved via the vkGetShaderCompilationPerformanceMVK() function. Default is false. */
- uint32_t performanceLoggingFrameCount; /**< If non-zero, performance statistics will be periodically logged to the console, on a repeating cycle of this many frames per swapchain. The performanceTracking capability must also be enabled. Default is zero, indicating no logging. */
-} MVKDeviceConfiguration;
-
-/** Features provided by the current implementation of Metal on the current device. */
+
+ /**
+ * If enabled, debugging capabilities will be enabled, including logging
+ * shader code during runtime shader conversion.
+ *
+ * The value of this parameter may be changed at any time during application runtime,
+ * and the changed value will immediately effect subsequent MoltenVK behaviour.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_DEBUG
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter is false if MoltenVK was
+ * built in Release mode, and true if MoltenVK was built in Debug mode.
+ */
+ VkBool32 debugMode;
+
+ /**
+ * If enabled, MSL vertex shader code created during runtime shader conversion will
+ * flip the Y-axis of each vertex, as the Vulkan Y-axis is the inverse of OpenGL.
+ *
+ * An alternate way to reverse the Y-axis is to employ a negative Y-axis value on
+ * the viewport, in which case this parameter can be disabled.
+ *
+ * The value of this parameter may be changed at any time during application runtime,
+ * and the changed value will immediately effect subsequent MoltenVK behaviour.
+ * Specifically, this parameter can be enabled when compiling some pipelines,
+ * and disabled when compiling others. Existing pipelines are not automatically
+ * re-compiled when this parameter is changed.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_SHADER_CONVERSION_FLIP_VERTEX_Y
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to true.
+ */
+ VkBool32 shaderConversionFlipVertexY;
+
+ /**
+ * If enabled, queue command submissions (vkQueueSubmit() & vkQueuePresentKHR()) will be
+ * processed on the thread that called the submission function. If disabled, processing
+ * will be dispatched to a GCD dispatch_queue whose priority is determined by
+ * VkDeviceQueueCreateInfo::pQueuePriorities during vkCreateDevice().
+ *
+ * The value of this parameter must be changed before creating a VkDevice,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_SYNCHRONOUS_QUEUE_SUBMITS
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to true for macOS 10.14
+ * and above or iOS 12 and above, and false otherwise. The reason for this distinction
+ * is that this feature should be disabled when emulation is required to support VkEvents
+ * because native support for events (MTLEvent) is not available.
+ */
+ VkBool32 synchronousQueueSubmits;
+
+ /**
+ * If set to MVK_CONFIG_PREFILL_METAL_COMMAND_BUFFERS_STYLE_NO_PREFILL, a single Metal
+ * command buffer will be created and filled when the Vulkan command buffers are submitted
+ * to the Vulkan queue. This allows a single Metal command buffer to be used for all of the
+ * Vulkan command buffers in a queue submission. The Metal command buffer is filled on the
+ * thread that processes the command queue submission.
+ *
+ * If set to any value other than MVK_CONFIG_PREFILL_METAL_COMMAND_BUFFERS_STYLE_NO_PREFILL,
+ * where possible, a Metal command buffer will be created and filled when each Vulkan
+ * command buffer is filled. For applications that parallelize the filling of Vulkan
+ * commmand buffers across multiple threads, this allows the Metal command buffers to also
+ * be filled on the same parallel thread. Because each command buffer is filled separately,
+ * this requires that each Vulkan command buffer have a dedicated Metal command buffer.
+ *
+ * See the definition of the MVKPrefillMetalCommandBuffersStyle enumeration above for
+ * descriptions of the various values that can be used for this setting. The differences
+ * are primarily distinguished by how memory recovery is handled for autoreleased Metal
+ * objects that are created under the covers as the commands added to the Vulkan command
+ * buffer are encoded into the corresponding Metal command buffer. You can decide whether
+ * your app will recover all autoreleased Metal objects, or how agressively MoltenVK should
+ * recover autoreleased Metal objects, based on your approach to command buffer filling.
+ *
+ * Depending on the nature of your application, you may find performance is improved by filling
+ * the Metal command buffers on parallel threads, or you may find that performance is improved by
+ * consolidating all Vulkan command buffers onto a single Metal command buffer during queue submission.
+ *
+ * When enabling this feature, be aware that one Metal command buffer is required for each Vulkan
+ * command buffer. Depending on the number of command buffers that you use, you may also need to
+ * change the value of the maxActiveMetalCommandBuffersPerQueue setting.
+ *
+ * If this feature is enabled, be aware that if you have recorded commands to a Vulkan command buffer,
+ * and then choose to reset that command buffer instead of submitting it, the corresponding prefilled
+ * Metal command buffer will still be submitted. This is because Metal command buffers do not support
+ * the concept of being reset after being filled. Depending on when and how often you do this,
+ * it may cause unexpected visual artifacts and unnecessary GPU load.
+ *
+ * Prefilling of a Metal command buffer will not occur during the filling of secondary command
+ * buffers (VK_COMMAND_BUFFER_LEVEL_SECONDARY), or for primary command buffers that are intended
+ * to be submitted to multiple queues concurrently (VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT).
+ *
+ * This feature is incompatible with updating descriptors after binding. If any of the
+ * *UpdateAfterBind feature flags of VkPhysicalDeviceDescriptorIndexingFeatures or
+ * VkPhysicalDeviceInlineUniformBlockFeatures have been enabled, the value of this
+ * setting will be ignored and treated as if it is false.
+ *
+ * The value of this parameter may be changed at any time during application runtime,
+ * and the changed value will immediately effect subsequent MoltenVK behaviour.
+ * Specifically, this parameter can be enabled when filling some command buffers,
+ * and disabled when later filling others.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_PREFILL_METAL_COMMAND_BUFFERS
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to
+ * MVK_CONFIG_PREFILL_METAL_COMMAND_BUFFERS_STYLE_NO_PREFILL.
+ */
+ MVKPrefillMetalCommandBuffersStyle prefillMetalCommandBuffers;
+
+ /**
+ * The maximum number of Metal command buffers that can be concurrently active per Vulkan queue.
+ * The number of active Metal command buffers required depends on the prefillMetalCommandBuffers
+ * setting. If prefillMetalCommandBuffers is enabled, one Metal command buffer is required per
+ * Vulkan command buffer. If prefillMetalCommandBuffers is disabled, one Metal command buffer
+ * is required per command buffer queue submission, which may be significantly less than the
+ * number of Vulkan command buffers.
+ *
+ * The value of this parameter must be changed before creating a VkDevice,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_MAX_ACTIVE_METAL_COMMAND_BUFFERS_PER_QUEUE
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to 64.
+ */
+ uint32_t maxActiveMetalCommandBuffersPerQueue;
+
+ /**
+ * Metal allows only 8192 occlusion queries per MTLBuffer. If enabled, MoltenVK
+ * allocates a MTLBuffer for each query pool, allowing each query pool to support
+ * 8192 queries, which may slow performance or cause unexpected behaviour if the query
+ * pool is not established prior to a Metal renderpass, or if the query pool is changed
+ * within a renderpass. If disabled, one MTLBuffer will be shared by all query pools,
+ * which improves performance, but limits the total device queries to 8192.
+ *
+ * The value of this parameter may be changed at any time during application runtime,
+ * and the changed value will immediately effect subsequent MoltenVK behaviour.
+ * Specifically, this parameter can be enabled when creating some query pools,
+ * and disabled when creating others.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_SUPPORT_LARGE_QUERY_POOLS
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to true.
+ */
+ VkBool32 supportLargeQueryPools;
+
+ /** Obsolete, ignored, and deprecated. All surface presentations are performed with a command buffer. */
+ VkBool32 presentWithCommandBuffer;
+
+ /**
+ * If enabled, swapchain images will use simple Nearest sampling when magnifying the
+ * swapchain image to fit a physical display surface. If disabled, swapchain images will
+ * use Linear sampling when magnifying the swapchain image to fit a physical display surface.
+ * Enabling this setting avoids smearing effects when swapchain images are simple interger
+ * multiples of display pixels (eg- macOS Retina, and typical of graphics apps and games),
+ * but may cause aliasing effects when using non-integer display scaling.
+ *
+ * The value of this parameter may be changed before creating a VkSwapchain,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_SWAPCHAIN_MAG_FILTER_USE_NEAREST
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to true.
+ */
+ VkBool32 swapchainMagFilterUseNearest;
+
+ /**
+ * The maximum amount of time, in nanoseconds, to wait for a Metal library, function, or
+ * pipeline state object to be compiled and created by the Metal compiler. An internal error
+ * within the Metal compiler can stall the thread for up to 30 seconds. Setting this value
+ * limits that delay to a specified amount of time, allowing shader compilations to fail fast.
+ *
+ * The value of this parameter may be changed at any time during application runtime,
+ * and the changed value will immediately effect subsequent MoltenVK behaviour.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_METAL_COMPILE_TIMEOUT
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to infinite.
+ */
+ uint64_t metalCompileTimeout;
+
+ /**
+ * If enabled, performance statistics, as defined by the MVKPerformanceStatistics structure,
+ * are collected, and can be retrieved via the vkGetPerformanceStatisticsMVK() function.
+ *
+ * You can also use the performanceLoggingFrameCount or logActivityPerformanceInline
+ * parameters to automatically log the performance statistics collected by this parameter.
+ *
+ * The value of this parameter must be changed before creating a VkDevice,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_PERFORMANCE_TRACKING
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to false.
+ */
+ VkBool32 performanceTracking;
+
+ /**
+ * If non-zero, performance statistics, frame-based statistics will be logged, on a
+ * repeating cycle, once per this many frames. The performanceTracking parameter must
+ * also be enabled. If this parameter is zero, or the performanceTracking parameter
+ * is disabled, no frame-based performance statistics will be logged.
+ *
+ * The value of this parameter may be changed at any time during application runtime,
+ * and the changed value will immediately effect subsequent MoltenVK behaviour.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_PERFORMANCE_LOGGING_FRAME_COUNT
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to zero.
+ */
+ uint32_t performanceLoggingFrameCount;
+
+ /**
+ * If enabled, a MoltenVK logo watermark will be rendered on top of the scene.
+ * This can be enabled for publicity during demos.
+ *
+ * The value of this parameter may be changed at any time during application runtime,
+ * and the changed value will immediately effect subsequent MoltenVK behaviour.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_DISPLAY_WATERMARK
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to false.
+ */
+ VkBool32 displayWatermark;
+
+ /**
+ * Metal does not distinguish functionality between queues, which would normally mean only
+ * a single general-purpose queue family with multiple queues is needed. However, Vulkan
+ * associates command buffers with a queue family, whereas Metal associates command buffers
+ * with a specific Metal queue. In order to allow a Metal command buffer to be prefilled
+ * before is is formally submitted to a Vulkan queue, each Vulkan queue family can support
+ * only a single Metal queue. As a result, in order to provide parallel queue operations,
+ * MoltenVK provides multiple queue families, each with a single queue.
+ *
+ * If this parameter is disabled, all queue families will be advertised as having general-purpose
+ * graphics + compute + transfer functionality, which is how the actual Metal queues behave.
+ *
+ * If this parameter is enabled, one queue family will be advertised as having general-purpose
+ * graphics + compute + transfer functionality, and the remaining queue families will be advertised
+ * as having specialized graphics OR compute OR transfer functionality, to make it easier for some
+ * apps to select a queue family with the appropriate requirements.
+ *
+ * The value of this parameter must be changed before creating a VkDevice, and before
+ * querying a VkPhysicalDevice for queue family properties, for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_SPECIALIZED_QUEUE_FAMILIES
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to false.
+ */
+ VkBool32 specializedQueueFamilies;
+
+ /**
+ * If enabled, when the app creates a VkDevice from a VkPhysicalDevice (GPU) that is neither
+ * headless nor low-power, and is different than the GPU used by the windowing system, the
+ * windowing system will be forced to switch to use the GPU selected by the Vulkan app.
+ * When the Vulkan app is ended, the windowing system will automatically switch back to
+ * using the previous GPU, depending on the usage requirements of other running apps.
+ *
+ * If disabled, the Vulkan app will render using its selected GPU, and if the windowing
+ * system uses a different GPU, the windowing system compositor will automatically copy
+ * framebuffer content from the app GPU to the windowing system GPU.
+ *
+ * The value of this parmeter has no effect on systems with a single GPU, or when the
+ * Vulkan app creates a VkDevice from a low-power or headless VkPhysicalDevice (GPU).
+ *
+ * Switching the windowing system GPU to match the Vulkan app GPU maximizes app performance,
+ * because it avoids the windowing system compositor from having to copy framebuffer content
+ * between GPUs on each rendered frame. However, doing so forces the entire system to
+ * potentially switch to using a GPU that may consume more power while the app is running.
+ *
+ * Some Vulkan apps may want to render using a high-power GPU, but leave it up to the
+ * system window compositor to determine how best to blend content with the windowing
+ * system, and as a result, may want to disable this parameter.
+ *
+ * The value of this parameter must be changed before creating a VkDevice,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_SWITCH_SYSTEM_GPU
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to true.
+ */
+ VkBool32 switchSystemGPU;
+
+ /**
+ * Older versions of Metal do not natively support per-texture swizzling. When running on
+ * such a system, and this parameter is enabled, arbitrary VkImageView component swizzles
+ * are supported, as defined in VkImageViewCreateInfo::components when creating a VkImageView.
+ *
+ * If disabled, and native Metal per-texture swizzling is not available on the platform,
+ * a very limited set of VkImageView component swizzles are supported via format substitutions.
+ *
+ * If Metal supports native per-texture swizzling, this parameter is ignored.
+ *
+ * When running on an older version of Metal that does not support native per-texture
+ * swizzling, if this parameter is enabled, both when a VkImageView is created, and
+ * when any pipeline that uses that VkImageView is compiled, VkImageView swizzling is
+ * automatically performed in the converted Metal shader code during all texture sampling
+ * and reading operations, regardless of whether a swizzle is required for the VkImageView
+ * associated with the Metal texture. This may result in reduced performance.
+ *
+ * The value of this parameter may be changed at any time during application runtime,
+ * and the changed value will immediately effect subsequent MoltenVK behaviour.
+ * Specifically, this parameter can be enabled when creating VkImageViews that need it,
+ * and compiling pipelines that use those VkImageViews, and can be disabled when creating
+ * VkImageViews that don't need it, and compiling pipelines that use those VkImageViews.
+ *
+ * Existing pipelines are not automatically re-compiled when this parameter is changed.
+ *
+ * An error is logged and returned during VkImageView creation if that VkImageView
+ * requires full image view swizzling and this feature is not enabled. An error is
+ * also logged when a pipeline that was not compiled with full image view swizzling
+ * is presented with a VkImageView that is expecting it.
+ *
+ * An error is also retuned and logged when a VkPhysicalDeviceImageFormatInfo2KHR is passed
+ * in a call to vkGetPhysicalDeviceImageFormatProperties2KHR() to query for an VkImageView
+ * format that will require full swizzling to be enabled, and this feature is not enabled.
+ *
+ * If this parameter is disabled, and native Metal per-texture swizzling is not available
+ * on the platform, the following limited set of VkImageView swizzles are supported by
+ * MoltenVK, via automatic format substitution:
+ *
+ * Texture format Swizzle
+ * -------------- -------
+ * VK_FORMAT_R8_UNORM ZERO, ANY, ANY, RED
+ * VK_FORMAT_A8_UNORM ALPHA, ANY, ANY, ZERO
+ * VK_FORMAT_R8G8B8A8_UNORM BLUE, GREEN, RED, ALPHA
+ * VK_FORMAT_R8G8B8A8_SRGB BLUE, GREEN, RED, ALPHA
+ * VK_FORMAT_B8G8R8A8_UNORM BLUE, GREEN, RED, ALPHA
+ * VK_FORMAT_B8G8R8A8_SRGB BLUE, GREEN, RED, ALPHA
+ * VK_FORMAT_D32_SFLOAT_S8_UINT RED, ANY, ANY, ANY (stencil only)
+ * VK_FORMAT_D24_UNORM_S8_UINT RED, ANY, ANY, ANY (stencil only)
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_FULL_IMAGE_VIEW_SWIZZLE
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to false.
+ */
+ VkBool32 fullImageViewSwizzle;
+
+ /**
+ * The index of the queue family whose presentation submissions will
+ * be used as the default GPU Capture Scope during debugging in Xcode.
+ *
+ * The value of this parameter must be changed before creating a VkDevice,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_DEFAULT_GPU_CAPTURE_SCOPE_QUEUE_FAMILY_INDEX
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to zero (the first queue family).
+ */
+ uint32_t defaultGPUCaptureScopeQueueFamilyIndex;
+
+ /**
+ * The index of the queue, within the queue family identified by the
+ * defaultGPUCaptureScopeQueueFamilyIndex parameter, whose presentation submissions
+ * will be used as the default GPU Capture Scope during debugging in Xcode.
+ *
+ * The value of this parameter must be changed before creating a VkDevice,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_DEFAULT_GPU_CAPTURE_SCOPE_QUEUE_INDEX
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to zero (the first queue).
+ */
+ uint32_t defaultGPUCaptureScopeQueueIndex;
+
+ /**
+ * Identifies when Metal shaders will be compiled with the Metal fastMathEnabled property
+ * enabled. For shaders compiled with the Metal fastMathEnabled property enabled, shader
+ * floating point math is significantly faster, but it may cause the Metal Compiler to
+ * optimize floating point operations in ways that may violate the IEEE 754 standard.
+ *
+ * Enabling Metal fast math can dramatically improve shader performance, and has little
+ * practical effect on the numerical accuracy of most shaders. As such, disabling fast
+ * math should be done carefully and deliberately. For most applications, always enabling
+ * fast math, by setting the value of this property to MVK_CONFIG_FAST_MATH_ALWAYS,
+ * is the preferred choice.
+ *
+ * Apps that have specific accuracy and handling needs for particular shaders, may elect to
+ * set the value of this property to MVK_CONFIG_FAST_MATH_ON_DEMAND, so that fast math will
+ * be disabled when compiling shaders that request capabilities such as SignedZeroInfNanPreserve.
+ *
+ * The value of this parameter may be changed at any time during application runtime,
+ * and the changed value will be applied to future Metal shader compilations.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_FAST_MATH_ENABLED
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to MVK_CONFIG_FAST_MATH_ALWAYS.
+ */
+ MVKConfigFastMath fastMathEnabled;
+
+ /**
+ * Controls the level of logging performned by MoltenVK.
+ *
+ * The value of this parameter may be changed at any time during application runtime,
+ * and the changed value will immediately effect subsequent MoltenVK behaviour.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_LOG_LEVEL
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, errors and informational messages are logged.
+ */
+ MVKConfigLogLevel logLevel;
+
+ /**
+ * Causes MoltenVK to log the name of each Vulkan call made by the application,
+ * along with the Mach thread ID, global system thread ID, and thread name.
+ *
+ * The value of this parameter may be changed at any time during application runtime,
+ * and the changed value will immediately effect subsequent MoltenVK behaviour.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_TRACE_VULKAN_CALLS
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, no Vulkan call logging will occur.
+ */
+ MVKConfigTraceVulkanCalls traceVulkanCalls;
+
+ /**
+ * Force MoltenVK to use a low-power GPU, if one is availble on the device.
+ *
+ * The value of this parameter must be changed before creating a VkInstance,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_FORCE_LOW_POWER_GPU
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, this setting is disabled by default, allowing both
+ * low-power and high-power GPU's to be used.
+ */
+ VkBool32 forceLowPowerGPU;
+
+ /** Deprecated. Vulkan sempphores using MTLFence are no longer supported. Use semaphoreSupportStyle instead. */
+ VkBool32 semaphoreUseMTLFence;
+
+ /**
+ * Determines the style used to implement Vulkan semaphore (VkSemaphore) functionality in Metal.
+ * See the documentation of the MVKVkSemaphoreSupportStyle for the options.
+ *
+ * In the special case of VK_SEMAPHORE_TYPE_TIMELINE semaphores, MoltenVK will always use
+ * MTLSharedEvent if it is available on the platform, regardless of the value of this parameter.
+ *
+ * The value of this parameter must be changed before creating a VkInstance,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_VK_SEMAPHORE_SUPPORT_STYLE
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, this setting is set to
+ * MVK_CONFIG_VK_SEMAPHORE_SUPPORT_STYLE_METAL_EVENTS_WHERE_SAFE by default,
+ * and MoltenVK will use MTLEvent, except on NVIDIA GPU and Rosetta2 environments,
+ * or where MTLEvents are not supported, where it will use a single queue with
+ * implicit synchronization (as if this parameter was set to
+ * MVK_CONFIG_VK_SEMAPHORE_SUPPORT_STYLE_SINGLE_QUEUE).
+ *
+ * This parameter interacts with the deprecated legacy parameters semaphoreUseMTLEvent
+ * and semaphoreUseMTLFence. If semaphoreUseMTLEvent is enabled, this parameter will be
+ * set to MVK_CONFIG_VK_SEMAPHORE_SUPPORT_STYLE_METAL_EVENTS_WHERE_SAFE.
+ * If semaphoreUseMTLEvent is disabled, this parameter will be set to
+ * MVK_CONFIG_VK_SEMAPHORE_SUPPORT_STYLE_SINGLE_QUEUE if semaphoreUseMTLFence is enabled,
+ * or MVK_CONFIG_VK_SEMAPHORE_SUPPORT_STYLE_CALLBACK if semaphoreUseMTLFence is disabled.
+ * Structurally, this parameter replaces, and is aliased by, semaphoreUseMTLEvent.
+ */
+ MVKVkSemaphoreSupportStyle semaphoreSupportStyle;
+#define semaphoreUseMTLEvent semaphoreSupportStyle
+
+ /**
+ * Controls whether Metal should run an automatic GPU capture without the user having to
+ * trigger it manually via the Xcode user interface, and controls the scope under which
+ * that GPU capture will occur. This is useful when trying to capture a one-shot GPU trace,
+ * such as when running a Vulkan CTS test case. For the automatic GPU capture to occur, the
+ * Xcode scheme under which the app is run must have the Metal GPU capture option enabled.
+ * This parameter should not be set to manually trigger a GPU capture via the Xcode user interface.
+ *
+ * When the value of this parameter is MVK_CONFIG_AUTO_GPU_CAPTURE_SCOPE_FRAME,
+ * the queue for which the GPU activity is captured is identifed by the values of
+ * the defaultGPUCaptureScopeQueueFamilyIndex and defaultGPUCaptureScopeQueueIndex
+ * configuration parameters.
+ *
+ * The value of this parameter must be changed before creating a VkDevice,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_AUTO_GPU_CAPTURE_SCOPE
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, no automatic GPU capture will occur.
+ */
+ MVKConfigAutoGPUCaptureScope autoGPUCaptureScope;
+
+ /**
+ * The path to a file where the automatic GPU capture should be saved, if autoGPUCaptureScope
+ * is enabled. In this case, the Xcode scheme need not have Metal GPU capture enabled, and in
+ * fact the app need not be run under Xcode's control at all. This is useful in case the app
+ * cannot be run under Xcode's control. A path starting with '~' can be used to place it in a
+ * user's home directory, as in the shell. This feature requires Metal 3.0 (macOS 10.15, iOS 13).
+ *
+ * If this parameter is NULL or an empty string, and autoGPUCaptureScope is enabled, automatic
+ * GPU capture will be handled by the Xcode user interface.
+ *
+ * The value of this parameter must be changed before creating a VkDevice,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_AUTO_GPU_CAPTURE_OUTPUT_FILE
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, automatic GPU capture will be handled by the Xcode user interface.
+ */
+ const char* autoGPUCaptureOutputFilepath;
+
+ /**
+ * Controls whether MoltenVK should use a Metal 2D texture with a height of 1 for a
+ * Vulkan 1D image, or use a native Metal 1D texture. Metal imposes significant restrictions
+ * on native 1D textures, including not being renderable, clearable, or permitting mipmaps.
+ * Using a Metal 2D texture allows Vulkan 1D textures to support this additional functionality.
+ *
+ * The value of this parameter should only be changed before creating the VkInstance.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_TEXTURE_1D_AS_2D
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, this setting is enabled by default, and MoltenVK will
+ * use a Metal 2D texture for each Vulkan 1D image.
+ */
+ VkBool32 texture1DAs2D;
+
+ /**
+ * Controls whether MoltenVK should preallocate memory in each VkDescriptorPool according
+ * to the values of the VkDescriptorPoolSize parameters. Doing so may improve descriptor set
+ * allocation performance and memory stability at a cost of preallocated application memory.
+ * If this setting is disabled, the descriptors required for a descriptor set will be individually
+ * dynamically allocated in application memory when the descriptor set itself is allocated.
+ *
+ * The value of this parameter may be changed at any time during application runtime, and the
+ * changed value will affect the behavior of VkDescriptorPools created after the value is changed.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_PREALLOCATE_DESCRIPTORS
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, this setting is enabled by default, and MoltenVK will
+ * allocate a pool of descriptors when a VkDescriptorPool is created.
+ */
+ VkBool32 preallocateDescriptors;
+
+ /**
+ * Controls whether MoltenVK should use pools to manage memory used when adding commands
+ * to command buffers. If this setting is enabled, MoltenVK will use a pool to hold command
+ * resources for reuse during command execution. If this setting is disabled, command memory
+ * is allocated and destroyed each time a command is executed. This is a classic time-space
+ * trade off. When command pooling is active, the memory in the pool can be cleared via a
+ * call to the vkTrimCommandPoolKHR() command.
+ *
+ * The value of this parameter may be changed at any time during application runtime,
+ * and the changed value will immediately effect behavior of VkCommandPools created
+ * after the setting is changed.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_USE_COMMAND_POOLING
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, this setting is enabled by default, and MoltenVK will pool command memory.
+ */
+ VkBool32 useCommandPooling;
+
+ /**
+ * Controls whether MoltenVK should use MTLHeaps for allocating textures and buffers
+ * from device memory. If this setting is enabled, and placement MTLHeaps are
+ * available on the platform, MoltenVK will allocate a placement MTLHeap for each VkDeviceMemory
+ * instance, and allocate textures and buffers from that placement heap. If this environment
+ * variable is disabled, MoltenVK will allocate textures and buffers from general device memory.
+ *
+ * Apple recommends that MTLHeaps should only be used for specific requirements such as aliasing
+ * or hazard tracking, and MoltenVK testing has shown that allocating multiple textures of
+ * different types or usages from one MTLHeap can occassionally cause corruption issues under
+ * certain circumstances.
+ *
+ * The value of this parameter must be changed before creating a VkInstance,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_USE_MTLHEAP
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, this setting is disabled by default, and MoltenVK
+ * will allocate texures and buffers from general device memory.
+ */
+ VkBool32 useMTLHeap;
+
+ /**
+ * Controls whether MoltenVK should log the performance of individual activities as they happen.
+ * If this setting is enabled, activity performance will be logged when each activity happens.
+ * If this setting is disabled, activity performance will be logged when frame peformance is
+ * logged as determined by the performanceLoggingFrameCount value.
+ *
+ * The value of this parameter must be changed before creating a VkDevice,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_PERFORMANCE_LOGGING_INLINE
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, this setting is disabled by default, and activity
+ * performance will be logged only when frame activity is logged.
+ */
+ VkBool32 logActivityPerformanceInline;
+
+ /**
+ * Controls the Vulkan API version that MoltenVK should advertise in vkEnumerateInstanceVersion().
+ * When reading this value, it will be one of the VK_API_VERSION_1_* values, including the latest
+ * VK_HEADER_VERSION component. When setting this value, it should be set to one of:
+ *
+ * VK_API_VERSION_1_2 (equivalent decimal number 4202496)
+ * VK_API_VERSION_1_1 (equivalent decimal number 4198400)
+ * VK_API_VERSION_1_0 (equivalent decimal number 4194304)
+ *
+ * MoltenVK will automatically add the VK_HEADER_VERSION component.
+ *
+ * The value of this parameter must be changed before creating a VkInstance,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_API_VERSION_TO_ADVERTISE
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to the highest API version
+ * currently supported by MoltenVK, including the latest VK_HEADER_VERSION component.
+ */
+ uint32_t apiVersionToAdvertise;
+
+ /**
+ * Controls which extensions MoltenVK should advertise it supports in
+ * vkEnumerateInstanceExtensionProperties() and vkEnumerateDeviceExtensionProperties().
+ * The value of this parameter is a bitwise OR of values from the MVKConfigAdvertiseExtensionBits
+ * enumeration. Any prerequisite extensions are also advertised.
+ * If the flag MVK_CONFIG_ADVERTISE_EXTENSIONS_ALL is included, all supported extensions
+ * will be advertised. A value of zero means no extensions will be advertised.
+ *
+ * The value of this parameter must be changed before creating a VkInstance,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_ADVERTISE_EXTENSIONS
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this setting defaults to
+ * MVK_CONFIG_ADVERTISE_EXTENSIONS_ALL, and all supported extensions will be advertised.
+ */
+ MVKConfigAdvertiseExtensions advertiseExtensions;
+
+ /**
+ * Controls whether MoltenVK should treat a lost VkDevice as resumable, unless the
+ * corresponding VkPhysicalDevice has also been lost. The VK_ERROR_DEVICE_LOST error has
+ * a broad definitional range, and can mean anything from a GPU hiccup on the current
+ * command buffer submission, to a physically removed GPU. In the case where this error does
+ * not impact the VkPhysicalDevice, Vulkan requires that the app destroy and re-create a new
+ * VkDevice. However, not all apps (including CTS) respect that requirement, leading to what
+ * might be a transient command submission failure causing an unexpected catastrophic app failure.
+ *
+ * If this setting is enabled, in the case of a VK_ERROR_DEVICE_LOST error that does NOT impact
+ * the VkPhysicalDevice, MoltenVK will log the error, but will not mark the VkDevice as lost,
+ * allowing the VkDevice to continue to be used. If this setting is disabled, MoltenVK will
+ * mark the VkDevice as lost, and subsequent use of that VkDevice will be reduced or prohibited.
+ *
+ * The value of this parameter may be changed at any time during application runtime,
+ * and the changed value will affect the error behavior of subsequent command submissions.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_RESUME_LOST_DEVICE
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, this setting is disabled by default, and MoltenVK
+ * will mark the VkDevice as lost when a command submission failure occurs.
+ */
+ VkBool32 resumeLostDevice;
+
+ /**
+ * Controls whether MoltenVK should use Metal argument buffers for resources defined in
+ * descriptor sets, if Metal argument buffers are supported on the platform. Using Metal
+ * argument buffers dramatically increases the number of buffers, textures and samplers
+ * that can be bound to a pipeline shader, and in most cases improves performance.
+ * This setting is an enumeration that specifies the conditions under which MoltenVK
+ * will use Metal argument buffers.
+ *
+ * NOTE: Currently, Metal argument buffer support is in beta stage, and is only supported
+ * on macOS 11.0 (Big Sur) or later, or on older versions of macOS using an Intel GPU.
+ * Metal argument buffers support is not available on iOS. Development to support iOS
+ * and a wider combination of GPU's on older macOS versions is under way.
+ *
+ * The value of this parameter must be changed before creating a VkDevice,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_USE_METAL_ARGUMENT_BUFFERS
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, this setting is set to
+ * MVK_CONFIG_USE_METAL_ARGUMENT_BUFFERS_NEVER by default,
+ * and MoltenVK will not use Metal argument buffers.
+ */
+ MVKUseMetalArgumentBuffers useMetalArgumentBuffers;
+
+} MVKConfiguration;
+
+/** Identifies the type of rounding Metal uses for float to integer conversions in particular calculatons. */
+typedef enum MVKFloatRounding {
+ MVK_FLOAT_ROUNDING_NEAREST = 0, /**< Metal rounds to nearest. */
+ MVK_FLOAT_ROUNDING_UP = 1, /**< Metal rounds towards positive infinity. */
+ MVK_FLOAT_ROUNDING_DOWN = 2, /**< Metal rounds towards negative infinity. */
+ MVK_FLOAT_ROUNDING_UP_MAX_ENUM = 0x7FFFFFFF
+} MVKFloatRounding;
+
+/** Identifies the pipeline points where GPU counter sampling can occur. Maps to MTLCounterSamplingPoint. */
+typedef enum MVKCounterSamplingBits {
+ MVK_COUNTER_SAMPLING_AT_DRAW = 0x00000001,
+ MVK_COUNTER_SAMPLING_AT_DISPATCH = 0x00000002,
+ MVK_COUNTER_SAMPLING_AT_BLIT = 0x00000004,
+ MVK_COUNTER_SAMPLING_AT_PIPELINE_STAGE = 0x00000008,
+ MVK_COUNTER_SAMPLING_MAX_ENUM = 0X7FFFFFFF
+} MVKCounterSamplingBits;
+typedef VkFlags MVKCounterSamplingFlags;
+
+/**
+ * Features provided by the current implementation of Metal on the current device. You can
+ * retrieve a copy of this structure using the vkGetPhysicalDeviceMetalFeaturesMVK() function.
+ *
+ * This structure may be extended as new features are added to MoltenVK. If you are linking to
+ * an implementation of MoltenVK that was compiled from a different VK_MVK_MOLTENVK_SPEC_VERSION
+ * than your app was, the size of this structure in your app may be larger or smaller than the
+ * struct in MoltenVK. See the description of the vkGetPhysicalDeviceMetalFeaturesMVK() function
+ * for information about how to handle this.
+ *
+ * TO SUPPORT DYNAMIC LINKING TO THIS STRUCTURE AS DESCRIBED ABOVE, THIS STRUCTURE SHOULD NOT
+ * BE CHANGED EXCEPT TO ADD ADDITIONAL MEMBERS ON THE END. EXISTING MEMBERS, AND THEIR ORDER,
+ * SHOULD NOT BE CHANGED.
+ */
typedef struct {
- float mslVersion; /**< The version of the Metal Shading Language available on this device. */
- VkBool32 indirectDrawing; /**< If true, draw calls support parameters held in a GPU buffer. */
- VkBool32 baseVertexInstanceDrawing; /**< If true, draw calls support specifiying the base vertex and instance. */
- VkBool32 dynamicMTLBuffers; /**< If true, dynamic MTLBuffers for setting vertex, fragment, and compute bytes are supported. */
- VkBool32 shaderSpecialization; /**< If true, shader specialization (aka Metal function constants) is supported. */
- VkBool32 ioSurfaces; /**< If true, VkImages can be underlaid by IOSurfaces via the vkUseIOSurfaceMVK() function, to support inter-process image transfers. */
- VkBool32 texelBuffers; /**< If true, texel buffers are supported, allowing the contents of a buffer to be interpreted as an image via a VkBufferView. */
- VkBool32 depthClipMode; /**< If true, the device supports both depth clipping and depth clamping per the depthClampEnable flag of VkPipelineRasterizationStateCreateInfo in VkGraphicsPipelineCreateInfo. */
- uint32_t maxPerStageBufferCount; /**< The total number of per-stage Metal buffers available for shader uniform content and attributes. */
- uint32_t maxPerStageTextureCount; /**< The total number of per-stage Metal textures available for shader uniform content. */
- uint32_t maxPerStageSamplerCount; /**< The total number of per-stage Metal samplers available for shader uniform content. */
- VkDeviceSize maxMTLBufferSize; /**< The max size of a MTLBuffer (in bytes). */
- VkDeviceSize mtlBufferAlignment; /**< The alignment used when allocating memory for MTLBuffers. Must be PoT. */
- VkDeviceSize maxQueryBufferSize; /**< The maximum size of an occlusion query buffer (in bytes). */
- VkSampleCountFlags supportedSampleCounts; /**< A bitmask identifying the sample counts supported by the device. */
+ uint32_t mslVersion; /**< The version of the Metal Shading Language available on this device. The format of the integer is MMmmpp, with two decimal digts each for Major, minor, and patch version values (eg. MSL 1.2 would appear as 010200). */
+ VkBool32 indirectDrawing; /**< If true, draw calls support parameters held in a GPU buffer. */
+ VkBool32 baseVertexInstanceDrawing; /**< If true, draw calls support specifiying the base vertex and instance. */
+ uint32_t dynamicMTLBufferSize; /**< If greater than zero, dynamic MTLBuffers for setting vertex, fragment, and compute bytes are supported, and their content must be below this value. */
+ VkBool32 shaderSpecialization; /**< If true, shader specialization (aka Metal function constants) is supported. */
+ VkBool32 ioSurfaces; /**< If true, VkImages can be underlaid by IOSurfaces via the vkUseIOSurfaceMVK() function, to support inter-process image transfers. */
+ VkBool32 texelBuffers; /**< If true, texel buffers are supported, allowing the contents of a buffer to be interpreted as an image via a VkBufferView. */
+ VkBool32 layeredRendering; /**< If true, layered rendering to multiple cube or texture array layers is supported. */
+ VkBool32 presentModeImmediate; /**< If true, immediate surface present mode (VK_PRESENT_MODE_IMMEDIATE_KHR), allowing a swapchain image to be presented immediately, without waiting for the vertical sync period of the display, is supported. */
+ VkBool32 stencilViews; /**< If true, stencil aspect views are supported through the MTLPixelFormatX24_Stencil8 and MTLPixelFormatX32_Stencil8 formats. */
+ VkBool32 multisampleArrayTextures; /**< If true, MTLTextureType2DMultisampleArray is supported. */
+ VkBool32 samplerClampToBorder; /**< If true, the border color set when creating a sampler will be respected. */
+ uint32_t maxTextureDimension; /**< The maximum size of each texture dimension (width, height, or depth). */
+ uint32_t maxPerStageBufferCount; /**< The total number of per-stage Metal buffers available for shader uniform content and attributes. */
+ uint32_t maxPerStageTextureCount; /**< The total number of per-stage Metal textures available for shader uniform content. */
+ uint32_t maxPerStageSamplerCount; /**< The total number of per-stage Metal samplers available for shader uniform content. */
+ VkDeviceSize maxMTLBufferSize; /**< The max size of a MTLBuffer (in bytes). */
+ VkDeviceSize mtlBufferAlignment; /**< The alignment used when allocating memory for MTLBuffers. Must be PoT. */
+ VkDeviceSize maxQueryBufferSize; /**< The maximum size of an occlusion query buffer (in bytes). */
+ VkDeviceSize mtlCopyBufferAlignment; /**< The alignment required during buffer copy operations (in bytes). */
+ VkSampleCountFlags supportedSampleCounts; /**< A bitmask identifying the sample counts supported by the device. */
+ uint32_t minSwapchainImageCount; /**< The minimum number of swapchain images that can be supported by a surface. */
+ uint32_t maxSwapchainImageCount; /**< The maximum number of swapchain images that can be supported by a surface. */
+ VkBool32 combinedStoreResolveAction; /**< If true, the device supports VK_ATTACHMENT_STORE_OP_STORE with a simultaneous resolve attachment. */
+ VkBool32 arrayOfTextures; /**< If true, arrays of textures is supported. */
+ VkBool32 arrayOfSamplers; /**< If true, arrays of texture samplers is supported. */
+ MTLLanguageVersion mslVersionEnum; /**< The version of the Metal Shading Language available on this device, as a Metal enumeration. */
+ VkBool32 depthSampleCompare; /**< If true, depth texture samplers support the comparison of the pixel value against a reference value. */
+ VkBool32 events; /**< If true, Metal synchronization events (MTLEvent) are supported. */
+ VkBool32 memoryBarriers; /**< If true, full memory barriers within Metal render passes are supported. */
+ VkBool32 multisampleLayeredRendering; /**< If true, layered rendering to multiple multi-sampled cube or texture array layers is supported. */
+ VkBool32 stencilFeedback; /**< If true, fragment shaders that write to [[stencil]] outputs are supported. */
+ VkBool32 textureBuffers; /**< If true, textures of type MTLTextureTypeBuffer are supported. */
+ VkBool32 postDepthCoverage; /**< If true, coverage masks in fragment shaders post-depth-test are supported. */
+ VkBool32 fences; /**< If true, Metal synchronization fences (MTLFence) are supported. */
+ VkBool32 rasterOrderGroups; /**< If true, Raster order groups in fragment shaders are supported. */
+ VkBool32 native3DCompressedTextures; /**< If true, 3D compressed images are supported natively, without manual decompression. */
+ VkBool32 nativeTextureSwizzle; /**< If true, component swizzle is supported natively, without manual swizzling in shaders. */
+ VkBool32 placementHeaps; /**< If true, MTLHeap objects support placement of resources. */
+ VkDeviceSize pushConstantSizeAlignment; /**< The alignment used internally when allocating memory for push constants. Must be PoT. */
+ uint32_t maxTextureLayers; /**< The maximum number of layers in an array texture. */
+ uint32_t maxSubgroupSize; /**< The maximum number of threads in a SIMD-group. */
+ VkDeviceSize vertexStrideAlignment; /**< The alignment used for the stride of vertex attribute bindings. */
+ VkBool32 indirectTessellationDrawing; /**< If true, tessellation draw calls support parameters held in a GPU buffer. */
+ VkBool32 nonUniformThreadgroups; /**< If true, the device supports arbitrary-sized grids in compute workloads. */
+ VkBool32 renderWithoutAttachments; /**< If true, we don't have to create a dummy attachment for a render pass if there isn't one. */
+ VkBool32 deferredStoreActions; /**< If true, render pass store actions can be specified after the render encoder is created. */
+ VkBool32 sharedLinearTextures; /**< If true, linear textures and texture buffers can be created from buffers in Shared storage. */
+ VkBool32 depthResolve; /**< If true, resolving depth textures with filters other than Sample0 is supported. */
+ VkBool32 stencilResolve; /**< If true, resolving stencil textures with filters other than Sample0 is supported. */
+ uint32_t maxPerStageDynamicMTLBufferCount; /**< The maximum number of inline buffers that can be set on a command buffer. */
+ uint32_t maxPerStageStorageTextureCount; /**< The total number of per-stage Metal textures with read-write access available for writing to from a shader. */
+ VkBool32 astcHDRTextures; /**< If true, ASTC HDR pixel formats are supported. */
+ VkBool32 renderLinearTextures; /**< If true, linear textures are renderable. */
+ VkBool32 pullModelInterpolation; /**< If true, explicit interpolation functions are supported. */
+ VkBool32 samplerMirrorClampToEdge; /**< If true, the mirrored clamp to edge address mode is supported in samplers. */
+ VkBool32 quadPermute; /**< If true, quadgroup permutation functions (vote, ballot, shuffle) are supported in shaders. */
+ VkBool32 simdPermute; /**< If true, SIMD-group permutation functions (vote, ballot, shuffle) are supported in shaders. */
+ VkBool32 simdReduction; /**< If true, SIMD-group reduction functions (arithmetic) are supported in shaders. */
+ uint32_t minSubgroupSize; /**< The minimum number of threads in a SIMD-group. */
+ VkBool32 textureBarriers; /**< If true, texture barriers are supported within Metal render passes. */
+ VkBool32 tileBasedDeferredRendering; /**< If true, this device uses tile-based deferred rendering. */
+ VkBool32 argumentBuffers; /**< If true, Metal argument buffers are supported. */
+ VkBool32 descriptorSetArgumentBuffers; /**< If true, a Metal argument buffer can be assigned to a descriptor set, and used on any pipeline and pipeline stage. If false, a different Metal argument buffer must be used for each pipeline-stage/descriptor-set combination. */
+ MVKFloatRounding clearColorFloatRounding; /**< Identifies the type of rounding Metal uses for MTLClearColor float to integer conversions. */
+ MVKCounterSamplingFlags counterSamplingPoints; /**< Identifies the points where pipeline GPU counter sampling may occur. */
+ VkBool32 programmableSamplePositions; /**< If true, programmable MSAA sample positions are supported. */
+ VkBool32 shaderBarycentricCoordinates; /**< If true, fragment shader barycentric coordinates are supported. */
+ MTLArgumentBuffersTier argumentBuffersTier; /**< The argument buffer tier available on this device, as a Metal enumeration. */
+ VkBool32 needsSampleDrefLodArrayWorkaround; /**< If true, sampling from arrayed depth images with explicit LoD is broken and needs a workaround. */
} MVKPhysicalDeviceMetalFeatures;
-/** MoltenVK swapchain performance statistics. */
+/** MoltenVK performance of a particular type of activity. */
typedef struct {
- double lastFrameInterval; /**< The time interval between this frame and the immediately previous frame, in seconds. */
- double averageFrameInterval; /**< The rolling average time interval between frames, in seconds. This value has less volatility than the lastFrameInterval value. The inverse of this value is the rolling average frames per second. */
- double averageFramesPerSecond; /**< The rolling average number of frames per second. This is simply the inverse of the averageFrameInterval value. */
-} MVKSwapchainPerformance;
+ uint32_t count; /**< The number of activities of this type. */
+ double latestDuration; /**< The latest (most recent) duration of the activity, in milliseconds. */
+ double averageDuration; /**< The average duration of the activity, in milliseconds. */
+ double minimumDuration; /**< The minimum duration of the activity, in milliseconds. */
+ double maximumDuration; /**< The maximum duration of the activity, in milliseconds. */
+} MVKPerformanceTracker;
-/** MoltenVK performance of a particular type of shader compilation event. */
+/** MoltenVK performance of shader compilation activities. */
typedef struct {
- uint32_t count; /**< The number of compilation events of this type. */
- double averageInterval; /**< The average time interval consumed by the compilation event, in seconds. */
- double minimumInterval; /**< The minimum time interval consumed by the compilation event, in seconds. */
- double maximumInterval; /**< The maximum time interval consumed by the compilation event, in seconds. */
-} MVKShaderCompilationEventPerformance;
+ MVKPerformanceTracker hashShaderCode; /** Create a hash from the incoming shader code. */
+ MVKPerformanceTracker spirvToMSL; /** Convert SPIR-V to MSL source code. */
+ MVKPerformanceTracker mslCompile; /** Compile MSL source code into a MTLLibrary. */
+ MVKPerformanceTracker mslLoad; /** Load pre-compiled MSL code into a MTLLibrary. */
+ MVKPerformanceTracker shaderLibraryFromCache; /** Retrieve a shader library from the cache, lazily creating it if needed. */
+ MVKPerformanceTracker functionRetrieval; /** Retrieve a MTLFunction from a MTLLibrary. */
+ MVKPerformanceTracker functionSpecialization; /** Specialize a retrieved MTLFunction. */
+ MVKPerformanceTracker pipelineCompile; /** Compile MTLFunctions into a pipeline. */
+ MVKPerformanceTracker glslToSPRIV; /** Convert GLSL to SPIR-V code. */
+} MVKShaderCompilationPerformance;
-/** MoltenVK performance of shader compilation events for a VkDevice. */
+/** MoltenVK performance of pipeline cache activities. */
typedef struct {
- MVKShaderCompilationEventPerformance spirvToMSL; /** Convert SPIR-V to MSL source code. */
- MVKShaderCompilationEventPerformance mslCompile; /** Compile MSL source code into a MTLLibrary. */
- MVKShaderCompilationEventPerformance mslLoad; /** Load pre-compiled MSL code into a MTLLibrary. */
- MVKShaderCompilationEventPerformance functionRetrieval; /** Retrieve a MTLFunction from a MTLLibrary. */
- MVKShaderCompilationEventPerformance functionSpecialization; /** Specialize a retrieved MTLFunction. */
- MVKShaderCompilationEventPerformance pipelineCompile; /** Compile MTLFunctions into a pipeline. */
-} MVKShaderCompilationPerformance;
+ MVKPerformanceTracker sizePipelineCache; /** Calculate the size of cache data required to write MSL to pipeline cache data stream. */
+ MVKPerformanceTracker writePipelineCache; /** Write MSL to pipeline cache data stream. */
+ MVKPerformanceTracker readPipelineCache; /** Read MSL from pipeline cache data stream. */
+} MVKPipelineCachePerformance;
+
+/** MoltenVK performance of queue activities. */
+typedef struct {
+ MVKPerformanceTracker mtlQueueAccess; /** Create an MTLCommandQueue or access an existing cached instance. */
+ MVKPerformanceTracker mtlCommandBufferCompletion; /** Completion of a MTLCommandBuffer on the GPU, from commit to completion callback. */
+ MVKPerformanceTracker nextCAMetalDrawable; /** Retrieve next CAMetalDrawable from CAMetalLayer during presentation. */
+ MVKPerformanceTracker frameInterval; /** Frame presentation interval (1000/FPS). */
+} MVKQueuePerformance;
+
+/**
+ * MoltenVK performance. You can retrieve a copy of this structure using the vkGetPerformanceStatisticsMVK() function.
+ *
+ * This structure may be extended as new features are added to MoltenVK. If you are linking to
+ * an implementation of MoltenVK that was compiled from a different VK_MVK_MOLTENVK_SPEC_VERSION
+ * than your app was, the size of this structure in your app may be larger or smaller than the
+ * struct in MoltenVK. See the description of the vkGetPerformanceStatisticsMVK() function for
+ * information about how to handle this.
+ *
+ * TO SUPPORT DYNAMIC LINKING TO THIS STRUCTURE AS DESCRIBED ABOVE, THIS STRUCTURE SHOULD NOT
+ * BE CHANGED EXCEPT TO ADD ADDITIONAL MEMBERS ON THE END. EXISTING MEMBERS, AND THEIR ORDER,
+ * SHOULD NOT BE CHANGED.
+ */
+typedef struct {
+ MVKShaderCompilationPerformance shaderCompilation; /** Shader compilations activities. */
+ MVKPipelineCachePerformance pipelineCache; /** Pipeline cache activities. */
+ MVKQueuePerformance queue; /** Queue activities. */
+} MVKPerformanceStatistics;
#pragma mark -
#pragma mark Function types
-typedef VkResult (VKAPI_PTR *PFN_vkActivateMoltenVKLicenseMVK)(const char* licenseID, const char* licenseKey, VkBool32 acceptLicenseTermsAndConditions);
-typedef VkResult (VKAPI_PTR *PFN_vkActivateMoltenVKLicensesMVK)();
-typedef void (VKAPI_PTR *PFN_vkGetMoltenVKDeviceConfigurationMVK)(VkDevice device, MVKDeviceConfiguration* pConfiguration);
-typedef VkResult (VKAPI_PTR *PFN_vkSetMoltenVKDeviceConfigurationMVK)(VkDevice device, MVKDeviceConfiguration* pConfiguration);
-typedef void (VKAPI_PTR *PFN_vkGetPhysicalDeviceMetalFeaturesMVK)(VkPhysicalDevice physicalDevice, MVKPhysicalDeviceMetalFeatures* pMetalFeatures);
-typedef void (VKAPI_PTR *PFN_vkGetSwapchainPerformanceMVK)(VkDevice device, VkSwapchainKHR swapchain, MVKSwapchainPerformance* pSwapchainPerf);
-typedef void (VKAPI_PTR *PFN_vkGetShaderCompilationPerformanceMVK)(VkDevice device, MVKShaderCompilationPerformance* pShaderCompPerf);
+typedef VkResult (VKAPI_PTR *PFN_vkGetMoltenVKConfigurationMVK)(VkInstance ignored, MVKConfiguration* pConfiguration, size_t* pConfigurationSize);
+typedef VkResult (VKAPI_PTR *PFN_vkSetMoltenVKConfigurationMVK)(VkInstance ignored, const MVKConfiguration* pConfiguration, size_t* pConfigurationSize);
+typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceMetalFeaturesMVK)(VkPhysicalDevice physicalDevice, MVKPhysicalDeviceMetalFeatures* pMetalFeatures, size_t* pMetalFeaturesSize);
+typedef VkResult (VKAPI_PTR *PFN_vkGetPerformanceStatisticsMVK)(VkDevice device, MVKPerformanceStatistics* pPerf, size_t* pPerfSize);
typedef void (VKAPI_PTR *PFN_vkGetVersionStringsMVK)(char* pMoltenVersionStringBuffer, uint32_t moltenVersionStringBufferLength, char* pVulkanVersionStringBuffer, uint32_t vulkanVersionStringBufferLength);
+typedef void (VKAPI_PTR *PFN_vkSetWorkgroupSizeMVK)(VkShaderModule shaderModule, uint32_t x, uint32_t y, uint32_t z);
+typedef VkResult (VKAPI_PTR *PFN_vkUseIOSurfaceMVK)(VkImage image, IOSurfaceRef ioSurface);
+typedef void (VKAPI_PTR *PFN_vkGetIOSurfaceMVK)(VkImage image, IOSurfaceRef* pIOSurface);
#ifdef __OBJC__
typedef void (VKAPI_PTR *PFN_vkGetMTLDeviceMVK)(VkPhysicalDevice physicalDevice, id* pMTLDevice);
typedef VkResult (VKAPI_PTR *PFN_vkSetMTLTextureMVK)(VkImage image, id mtlTexture);
typedef void (VKAPI_PTR *PFN_vkGetMTLTextureMVK)(VkImage image, id* pMTLTexture);
-typedef VkResult (VKAPI_PTR *PFN_vkUseIOSurfaceMVK)(VkImage image, IOSurfaceRef ioSurface);
-typedef void (VKAPI_PTR *PFN_vkGetIOSurfaceMVK)(VkImage image, IOSurfaceRef* pIOSurface);
+typedef void (VKAPI_PTR *PFN_vkGetMTLBufferMVK)(VkBuffer buffer, id* pMTLBuffer);
+typedef void (VKAPI_PTR *PFN_vkGetMTLCommandQueueMVK)(VkQueue queue, id* pMTLCommandQueue);
#endif // __OBJC__
@@ -112,155 +1065,147 @@ typedef void (VKAPI_PTR *PFN_vkGetIOSurfaceMVK)(VkImage image, IOSurfaceRef* pIO
#ifndef VK_NO_PROTOTYPES
-/**
- * Activates the specified license to enable MoltenVK features and functionality associated
- * with that license.
- *
- * The license consists of a pair of null-terminated strings, one containing the ID under
- * which the license was purchased, and the other containing the license key assigned to
- * the purchased license.
- *
- * In addition to the license ID and key, for any license activation to take place, you
- * must set the acceptLicenseTermsAndConditions parameter to true, to indicate that you
- * accept the terms and conditions of the MoltenVK license agreement.
- *
- * MoltenVK supports several levels of license scope. Depending on the license scope purchased,
- * a single MoltenVK license may be associated with one MoltenVK feature set, or it may be
- * associated with multiple MoltenVK feature sets. This function may be called multiple times
- * to accommodate licenses purchased for multiple individual feature sets.
- *
- * You can call this function at any time, but typically you will call this function during
- * application startup. You can call this function multiple times to accommodate licenses
- * purchased for multiple individual feature sets. Until a valid license is applied covering
- * each feature set used by your application, MoltenVK will operate in evaluation mode,
- * which may include displaying a MoltenVK watermark.
- *
- * Using this function is not the preferred method for activating licenses because, in a team
- * environment, it is more difficult to enter valid licenses for each developer from your
- * application code. Instead, consider using the vkActivateMoltenVKLicensesMVK() function,
- * which allows you to specify the license information through compiler build settings.
- * Using compiler build settings allows you to more easily specify the license information
- * for each developer.
- */
-VKAPI_ATTR VkResult VKAPI_CALL vkActivateMoltenVKLicenseMVK(
- const char* licenseID,
- const char* licenseKey,
- VkBool32 acceptLicenseTermsAndConditions);
-
-/**
- * This function allows you to enter up to four MoltenVK license ID and license key pairs
- * as compiler build settings. To use this function, configure one or more licenses using
- * the following pairs of build settings:
- *
- * - MLN_LICENSE_ID and MLN_LICENSE_KEY
- * - MLN_LICENSE_ID_1 and MLN_LICENSE_KEY_1
- * - MLN_LICENSE_ID_2 and MLN_LICENSE_KEY_2
- * - MLN_LICENSE_ID_3 and MLN_LICENSE_KEY_3
- *
- * Each element of each pair is a single string defined as a build setting, and should not
- * include quote marks. For example, you might configure the following build settings:
+/**
+ * Populates the pConfiguration structure with the current MoltenVK configuration settings.
*
- * MLN_LICENSE_ID=john.doe@example.com
- * MLN_LICENSE_KEY=NOVOT3NGPDZ6OQSCXX4VYLXGI3QLI6Z6
+ * To change a specific configuration value, call vkGetMoltenVKConfigurationMVK() to retrieve
+ * the current configuration, make changes, and call vkSetMoltenVKConfigurationMVK() to
+ * update all of the values.
*
- * and if you purchase an additional feature set on a separate license, you can add a
- * second pair of build settings:
+ * The VkInstance object you provide here is ignored, and a VK_NULL_HANDLE value can be provided.
+ * This function can be called before the VkInstance has been created. It is safe to call this function
+ * with a VkInstance retrieved from a different layer in the Vulkan SDK Loader and Layers framework.
*
- * MLN_LICENSE_ID_1=john.doe@example.com
- * MLN_LICENSE_KEY_1=MZ4T1Y2LDKBJHAL73JPTEJBHELZHEQJF
+ * To be active, some configuration settings must be set before a VkInstance or VkDevice
+ * is created. See the description of the MVKConfiguration members for more information.
*
- * In addition to the license ID and key, for any license activation to take place, you must
- * also set the following build setting to indicate that you accept the terms and conditions
- * of the MoltenVK license agreement:
+ * If you are linking to an implementation of MoltenVK that was compiled from a different
+ * VK_MVK_MOLTENVK_SPEC_VERSION than your app was, the size of the MVKConfiguration structure
+ * in your app may be larger or smaller than the same struct as expected by MoltenVK.
*
- * MLN_LICENSE_ACCEPT_TERMS_AND_CONDITIONS=1
+ * When calling this function, set the value of *pConfigurationSize to sizeof(MVKConfiguration),
+ * to tell MoltenVK the limit of the size of your MVKConfiguration structure. Upon return from
+ * this function, the value of *pConfigurationSize will hold the actual number of bytes copied
+ * into your passed MVKConfiguration structure, which will be the smaller of what your app
+ * thinks is the size of MVKConfiguration, and what MoltenVK thinks it is. This represents the
+ * safe access area within the structure for both MoltenVK and your app.
*
- * You can call this function at any time, but typically you will call this function during
- * application startup.
+ * If the size that MoltenVK expects for MVKConfiguration is different than the value passed in
+ * *pConfigurationSize, this function will return VK_INCOMPLETE, otherwise it will return VK_SUCCESS.
*
- * If you are unable to use compiler build settings to enter license information, you can use the
- * more general vkActivateMoltenVKLicenseMVK() function to enter each license ID/key pair directly.
+ * Although it is not necessary, you can use this function to determine in advance the value
+ * that MoltenVK expects the size of MVKConfiguration to be by setting the value of pConfiguration
+ * to NULL. In that case, this function will set *pConfigurationSize to the size that MoltenVK
+ * expects MVKConfiguration to be.
*/
-static inline void vkActivateMoltenVKLicensesMVK() {
-
- // General macros for using a build setting as a string
-# define MLN_QUOTE(name) #name
-# define MLN_STR(macro) MLN_QUOTE(macro)
-
-# ifndef MLN_LICENSE_ACCEPT_TERMS_AND_CONDITIONS
-# define MLN_LICENSE_ACCEPT_TERMS_AND_CONDITIONS 0
-# endif
-
-# if defined(MLN_LICENSE_ID) && defined(MLN_LICENSE_KEY)
- vkActivateMoltenVKLicenseMVK(MLN_STR(MLN_LICENSE_ID), MLN_STR(MLN_LICENSE_KEY), MLN_LICENSE_ACCEPT_TERMS_AND_CONDITIONS);
-# endif
-
-# if defined(MLN_LICENSE_ID_1) && defined(MLN_LICENSE_KEY_1)
- vkActivateMoltenVKLicenseMVK(MLN_STR(MLN_LICENSE_ID_1), MLN_STR(MLN_LICENSE_KEY_1), MLN_LICENSE_ACCEPT_TERMS_AND_CONDITIONS);
-# endif
-
-# if defined(MLN_LICENSE_ID_2) && defined(MLN_LICENSE_KEY_2)
- vkActivateMoltenVKLicenseMVK(MLN_STR(MLN_LICENSE_ID_2), MLN_STR(MLN_LICENSE_KEY_2), MLN_LICENSE_ACCEPT_TERMS_AND_CONDITIONS);
-# endif
-
-# if defined(MLN_LICENSE_ID_3) && defined(MLN_LICENSE_KEY_3)
- vkActivateMoltenVKLicenseMVK(MLN_STR(MLN_LICENSE_ID_3), MLN_STR(MLN_LICENSE_KEY_3), MLN_LICENSE_ACCEPT_TERMS_AND_CONDITIONS);
-# endif
-}
+VKAPI_ATTR VkResult VKAPI_CALL vkGetMoltenVKConfigurationMVK(
+ VkInstance ignored,
+ MVKConfiguration* pConfiguration,
+ size_t* pConfigurationSize);
/**
- * Populates the pConfiguration structure with the current MoltenVK configuration settings
- * of the specified device.
+ * Sets the MoltenVK configuration settings to those found in the pConfiguration structure.
*
- * To change a specific configuration value, call vkGetMoltenVKDeviceConfigurationMVK()
- * to retrieve the current configuration, make changes, and call
- * vkSetMoltenVKDeviceConfigurationMVK() to update all of the values.
- */
-VKAPI_ATTR void VKAPI_CALL vkGetMoltenVKDeviceConfigurationMVK(
- VkDevice device,
- MVKDeviceConfiguration* pConfiguration);
-
-/**
- * Sets the MoltenVK configuration settings of the specified device to those found in the
- * pConfiguration structure.
- *
- * To change a specific configuration value, call vkGetMoltenVKDeviceConfigurationMVK()
+ * To change a specific configuration value, call vkGetMoltenVKConfigurationMVK()
* to retrieve the current configuration, make changes, and call
- * vkSetMoltenVKDeviceConfigurationMVK() to update all of the values.
+ * vkSetMoltenVKConfigurationMVK() to update all of the values.
+ *
+ * The VkInstance object you provide here is ignored, and a VK_NULL_HANDLE value can be provided.
+ * This function can be called before the VkInstance has been created. It is safe to call this function
+ * with a VkInstance retrieved from a different layer in the Vulkan SDK Loader and Layers framework.
+ *
+ * To be active, some configuration settings must be set before a VkInstance or VkDevice
+ * is created. See the description of the MVKConfiguration members for more information.
+ *
+ * If you are linking to an implementation of MoltenVK that was compiled from a different
+ * VK_MVK_MOLTENVK_SPEC_VERSION than your app was, the size of the MVKConfiguration structure
+ * in your app may be larger or smaller than the same struct as expected by MoltenVK.
+ *
+ * When calling this function, set the value of *pConfigurationSize to sizeof(MVKConfiguration),
+ * to tell MoltenVK the limit of the size of your MVKConfiguration structure. Upon return from
+ * this function, the value of *pConfigurationSize will hold the actual number of bytes copied
+ * out of your passed MVKConfiguration structure, which will be the smaller of what your app
+ * thinks is the size of MVKConfiguration, and what MoltenVK thinks it is. This represents the
+ * safe access area within the structure for both MoltenVK and your app.
+ *
+ * If the size that MoltenVK expects for MVKConfiguration is different than the value passed in
+ * *pConfigurationSize, this function will return VK_INCOMPLETE, otherwise it will return VK_SUCCESS.
+ *
+ * Although it is not necessary, you can use this function to determine in advance the value
+ * that MoltenVK expects the size of MVKConfiguration to be by setting the value of pConfiguration
+ * to NULL. In that case, this function will set *pConfigurationSize to the size that MoltenVK
+ * expects MVKConfiguration to be.
*/
-VKAPI_ATTR VkResult VKAPI_CALL vkSetMoltenVKDeviceConfigurationMVK(
- VkDevice device,
- MVKDeviceConfiguration* pConfiguration);
+VKAPI_ATTR VkResult VKAPI_CALL vkSetMoltenVKConfigurationMVK(
+ VkInstance ignored,
+ const MVKConfiguration* pConfiguration,
+ size_t* pConfigurationSize);
/**
* Populates the pMetalFeatures structure with the Metal-specific features
* supported by the specified physical device.
+ *
+ * If you are linking to an implementation of MoltenVK that was compiled from a different
+ * VK_MVK_MOLTENVK_SPEC_VERSION than your app was, the size of the MVKPhysicalDeviceMetalFeatures
+ * structure in your app may be larger or smaller than the same struct as expected by MoltenVK.
+ *
+ * When calling this function, set the value of *pMetalFeaturesSize to sizeof(MVKPhysicalDeviceMetalFeatures),
+ * to tell MoltenVK the limit of the size of your MVKPhysicalDeviceMetalFeatures structure. Upon return from
+ * this function, the value of *pMetalFeaturesSize will hold the actual number of bytes copied into your
+ * passed MVKPhysicalDeviceMetalFeatures structure, which will be the smaller of what your app thinks is the
+ * size of MVKPhysicalDeviceMetalFeatures, and what MoltenVK thinks it is. This represents the safe access
+ * area within the structure for both MoltenVK and your app.
+ *
+ * If the size that MoltenVK expects for MVKPhysicalDeviceMetalFeatures is different than the value passed in
+ * *pMetalFeaturesSize, this function will return VK_INCOMPLETE, otherwise it will return VK_SUCCESS.
+ *
+ * Although it is not necessary, you can use this function to determine in advance the value that MoltenVK
+ * expects the size of MVKPhysicalDeviceMetalFeatures to be by setting the value of pMetalFeatures to NULL.
+ * In that case, this function will set *pMetalFeaturesSize to the size that MoltenVK expects
+ * MVKPhysicalDeviceMetalFeatures to be.
+ *
+ * This function is not supported by the Vulkan SDK Loader and Layers framework
+ * and is unavailable when using the Vulkan SDK Loader and Layers framework.
*/
-VKAPI_ATTR void VKAPI_CALL vkGetPhysicalDeviceMetalFeaturesMVK(
- VkPhysicalDevice physicalDevice,
- MVKPhysicalDeviceMetalFeatures* pMetalFeatures);
-
-/**
- * Populates the specified MVKSwapchainPerformance structure with
- * the current performance statistics for the specified swapchain.
- */
-VKAPI_ATTR void VKAPI_CALL vkGetSwapchainPerformanceMVK(
- VkDevice device,
- VkSwapchainKHR swapchain,
- MVKSwapchainPerformance* pSwapchainPerf);
+VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceMetalFeaturesMVK(
+ VkPhysicalDevice physicalDevice,
+ MVKPhysicalDeviceMetalFeatures* pMetalFeatures,
+ size_t* pMetalFeaturesSize);
/**
- * Populates the specified MVKShaderCompilationPerformance structure with the
- * current shader compilation performance statistics for the specified device.
+ * Populates the pPerf structure with the current performance statistics for the device.
+ *
+ * If you are linking to an implementation of MoltenVK that was compiled from a different
+ * VK_MVK_MOLTENVK_SPEC_VERSION than your app was, the size of the MVKPerformanceStatistics
+ * structure in your app may be larger or smaller than the same struct as expected by MoltenVK.
+ *
+ * When calling this function, set the value of *pPerfSize to sizeof(MVKPerformanceStatistics),
+ * to tell MoltenVK the limit of the size of your MVKPerformanceStatistics structure. Upon return
+ * from this function, the value of *pPerfSize will hold the actual number of bytes copied into
+ * your passed MVKPerformanceStatistics structure, which will be the smaller of what your app
+ * thinks is the size of MVKPerformanceStatistics, and what MoltenVK thinks it is. This
+ * represents the safe access area within the structure for both MoltenVK and your app.
+ *
+ * If the size that MoltenVK expects for MVKPerformanceStatistics is different than the value passed
+ * in *pPerfSize, this function will return VK_INCOMPLETE, otherwise it will return VK_SUCCESS.
+ *
+ * Although it is not necessary, you can use this function to determine in advance the value
+ * that MoltenVK expects the size of MVKPerformanceStatistics to be by setting the value of
+ * pPerf to NULL. In that case, this function will set *pPerfSize to the size that MoltenVK
+ * expects MVKPerformanceStatistics to be.
+ *
+ * This function is not supported by the Vulkan SDK Loader and Layers framework
+ * and is unavailable when using the Vulkan SDK Loader and Layers framework.
*/
-VKAPI_ATTR void VKAPI_CALL vkGetShaderCompilationPerformanceMVK(
- VkDevice device,
- MVKShaderCompilationPerformance* pShaderCompPerf);
+VKAPI_ATTR VkResult VKAPI_CALL vkGetPerformanceStatisticsMVK(
+ VkDevice device,
+ MVKPerformanceStatistics* pPerf,
+ size_t* pPerfSize);
/**
* Returns a human readable version of the MoltenVK and Vulkan versions.
*
- * This function is provided as a convenience for reporting. Use the MLN_VERSION,
+ * This function is provided as a convenience for reporting. Use the MVK_VERSION,
* VK_API_VERSION_1_0, and VK_HEADER_VERSION macros for programmatically accessing
* the corresponding version numbers.
*/
@@ -270,10 +1215,30 @@ VKAPI_ATTR void VKAPI_CALL vkGetVersionStringsMVK(
char* pVulkanVersionStringBuffer,
uint32_t vulkanVersionStringBufferLength);
+/**
+ * Sets the number of threads in a workgroup for a compute kernel.
+ *
+ * This needs to be called if you are creating compute shader modules from MSL
+ * source code or MSL compiled code. Workgroup size is determined automatically
+ * if you're using SPIR-V.
+ *
+ * This function is not supported by the Vulkan SDK Loader and Layers framework
+ * and is unavailable when using the Vulkan SDK Loader and Layers framework.
+ */
+VKAPI_ATTR void VKAPI_CALL vkSetWorkgroupSizeMVK(
+ VkShaderModule shaderModule,
+ uint32_t x,
+ uint32_t y,
+ uint32_t z);
#ifdef __OBJC__
-/** Returns, in the pMTLDevice pointer, the MTLDevice used by the VkPhysicalDevice. */
+/**
+ * Returns, in the pMTLDevice pointer, the MTLDevice used by the VkPhysicalDevice.
+ *
+ * This function is not supported by the Vulkan SDK Loader and Layers framework
+ * and is unavailable when using the Vulkan SDK Loader and Layers framework.
+ */
VKAPI_ATTR void VKAPI_CALL vkGetMTLDeviceMVK(
VkPhysicalDevice physicalDevice,
id* pMTLDevice);
@@ -287,16 +1252,46 @@ VKAPI_ATTR void VKAPI_CALL vkGetMTLDeviceMVK(
* If a MTLTexture has already been created for this image, it will be destroyed.
*
* Returns VK_SUCCESS.
+ *
+ * This function is not supported by the Vulkan SDK Loader and Layers framework
+ * and is unavailable when using the Vulkan SDK Loader and Layers framework.
*/
VKAPI_ATTR VkResult VKAPI_CALL vkSetMTLTextureMVK(
VkImage image,
id mtlTexture);
-/** Returns, in the pMTLTexture pointer, the MTLTexture currently underlaying the VkImage. */
+/**
+ * Returns, in the pMTLTexture pointer, the MTLTexture currently underlaying the VkImage.
+ *
+ * This function is not supported by the Vulkan SDK Loader and Layers framework
+ * and is unavailable when using the Vulkan SDK Loader and Layers framework.
+ */
VKAPI_ATTR void VKAPI_CALL vkGetMTLTextureMVK(
VkImage image,
id* pMTLTexture);
+/**
+* Returns, in the pMTLBuffer pointer, the MTLBuffer currently underlaying the VkBuffer.
+*
+ * This function is not supported by the Vulkan SDK Loader and Layers framework
+ * and is unavailable when using the Vulkan SDK Loader and Layers framework.
+*/
+VKAPI_ATTR void VKAPI_CALL vkGetMTLBufferMVK(
+ VkBuffer buffer,
+ id* pMTLBuffer);
+
+/**
+* Returns, in the pMTLCommandQueue pointer, the MTLCommandQueue currently underlaying the VkQueue.
+*
+ * This function is not supported by the Vulkan SDK Loader and Layers framework
+ * and is unavailable when using the Vulkan SDK Loader and Layers framework.
+*/
+VKAPI_ATTR void VKAPI_CALL vkGetMTLCommandQueueMVK(
+ VkQueue queue,
+ id* pMTLCommandQueue);
+
+#endif // __OBJC__
+
/**
* Indicates that a VkImage should use an IOSurface to underlay the Metal texture.
*
@@ -308,33 +1303,90 @@ VKAPI_ATTR void VKAPI_CALL vkGetMTLTextureMVK(
*
* If a MTLTexture has already been created for this image, it will be destroyed.
*
+ * IOSurfaces are supported on the following platforms:
+ * - macOS 10.11 and above
+ * - iOS 11.0 and above
+ *
+ * To enable IOSurface support, ensure the Deployment Target build setting
+ * (MACOSX_DEPLOYMENT_TARGET or IPHONEOS_DEPLOYMENT_TARGET) is set to at least
+ * one of the values above when compiling MoltenVK, and any app that uses MoltenVK.
+ *
* Returns:
* - VK_SUCCESS.
* - VK_ERROR_FEATURE_NOT_PRESENT if IOSurfaces are not supported on the platform.
* - VK_ERROR_INITIALIZATION_FAILED if ioSurface is specified and is not compatible with this VkImage.
+ *
+ * This function is not supported by the Vulkan SDK Loader and Layers framework
+ * and is unavailable when using the Vulkan SDK Loader and Layers framework.
*/
VKAPI_ATTR VkResult VKAPI_CALL vkUseIOSurfaceMVK(
VkImage image,
IOSurfaceRef ioSurface);
-
/**
* Returns, in the pIOSurface pointer, the IOSurface currently underlaying the VkImage,
* as set by the useIOSurfaceMVK() function, or returns null if the VkImage is not using
* an IOSurface, or if the platform does not support IOSurfaces.
+ *
+ * This function is not supported by the Vulkan SDK Loader and Layers framework
+ * and is unavailable when using the Vulkan SDK Loader and Layers framework.
*/
VKAPI_ATTR void VKAPI_CALL vkGetIOSurfaceMVK(
VkImage image,
IOSurfaceRef* pIOSurface);
-#endif // __OBJC__
+#pragma mark -
+#pragma mark Shaders
+
+/**
+ * NOTE: Shader code should be submitted as SPIR-V. Although some simple direct MSL shaders may work,
+ * direct loading of MSL source code or compiled MSL code is not officially supported at this time.
+ * Future versions of MoltenVK may support direct MSL submission again.
+ *
+ * Enumerates the magic number values to set in the MVKMSLSPIRVHeader when
+ * submitting a SPIR-V stream that contains either Metal Shading Language source
+ * code or Metal Shading Language compiled binary code in place of SPIR-V code.
+ */
+typedef enum {
+ kMVKMagicNumberSPIRVCode = 0x07230203, /**< SPIR-V stream contains standard SPIR-V code. */
+ kMVKMagicNumberMSLSourceCode = 0x19960412, /**< SPIR-V stream contains Metal Shading Language source code. */
+ kMVKMagicNumberMSLCompiledCode = 0x19981215, /**< SPIR-V stream contains Metal Shading Language compiled binary code. */
+} MVKMSLMagicNumber;
+
+/**
+ * NOTE: Shader code should be submitted as SPIR-V. Although some simple direct MSL shaders may work,
+ * direct loading of MSL source code or compiled MSL code is not officially supported at this time.
+ * Future versions of MoltenVK may support direct MSL submission again.
+ *
+ * Describes the header at the start of an SPIR-V stream, when it contains either
+ * Metal Shading Language source code or Metal Shading Language compiled binary code.
+ *
+ * To submit MSL source code to the vkCreateShaderModule() function in place of SPIR-V
+ * code, prepend a MVKMSLSPIRVHeader containing the kMVKMagicNumberMSLSourceCode magic
+ * number to the MSL source code. The MSL source code must be null-terminated.
+ *
+ * To submit MSL compiled binary code to the vkCreateShaderModule() function in place of
+ * SPIR-V code, prepend a MVKMSLSPIRVHeader containing the kMVKMagicNumberMSLCompiledCode
+ * magic number to the MSL compiled binary code.
+ *
+ * In both cases, the pCode element of VkShaderModuleCreateInfo should pointer to the
+ * location of the MVKMSLSPIRVHeader, and the MSL code should start at the byte immediately
+ * after the MVKMSLSPIRVHeader.
+ *
+ * The codeSize element of VkShaderModuleCreateInfo should be set to the entire size of
+ * the submitted code memory, including the additional sizeof(MVKMSLSPIRVHeader) bytes
+ * taken up by the MVKMSLSPIRVHeader, and, in the case of MSL source code, including
+ * the null-terminator byte.
+ */
+typedef uint32_t MVKMSLSPIRVHeader;
+
#endif // VK_NO_PROTOTYPES
#ifdef __cplusplus
}
-#endif // __cplusplus
+#endif // __cplusplus
#endif
diff --git a/moltenVK/vk_mvk_moltenvk_119.h b/moltenVK/vk_mvk_moltenvk_119.h
new file mode 100644
index 0000000..d4163a9
--- /dev/null
+++ b/moltenVK/vk_mvk_moltenvk_119.h
@@ -0,0 +1,1342 @@
+/*
+ * vk_mvk_moltenvk.h
+ *
+ * Copyright (c) 2015-2022 The Brenwill Workshop Ltd. (http://www.brenwill.com)
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
+/** Vulkan extension VK_MVK_moltenvk. */
+
+#ifndef __vk_mvk_moltenvk_h_
+#define __vk_mvk_moltenvk_h_ 1
+
+#ifdef __cplusplus
+extern "C" {
+#endif // __cplusplus
+
+#include "mvk_vulkan.h"
+#include
+
+#ifdef __OBJC__
+#import
+#else
+typedef unsigned long MTLLanguageVersion;
+#endif
+
+
+/**
+ * The version number of MoltenVK is a single integer value, derived from the Major, Minor,
+ * and Patch version values, where each of the Major, Minor, and Patch components is allocated
+ * two decimal digits, in the format MjMnPt. This creates a version number that is both human
+ * readable and allows efficient computational comparisons to a single integer number.
+ *
+ * The following examples illustrate how the MoltenVK version number is built from its components:
+ * - 002000 (version 0.20.0)
+ * - 010000 (version 1.0.0)
+ * - 030104 (version 3.1.4)
+ * - 401215 (version 4.12.15)
+ */
+#define MVK_VERSION_MAJOR 1
+#define MVK_VERSION_MINOR 1
+#define MVK_VERSION_PATCH 9
+
+#define MVK_MAKE_VERSION(major, minor, patch) (((major) * 10000) + ((minor) * 100) + (patch))
+#define MVK_VERSION MVK_MAKE_VERSION(MVK_VERSION_MAJOR, MVK_VERSION_MINOR, MVK_VERSION_PATCH)
+
+#define VK_MVK_MOLTENVK_SPEC_VERSION 34
+#define VK_MVK_MOLTENVK_EXTENSION_NAME "VK_MVK_moltenvk"
+
+/** Identifies the level of logging MoltenVK should be limited to outputting. */
+typedef enum MVKConfigLogLevel {
+ MVK_CONFIG_LOG_LEVEL_NONE = 0, /**< No logging. */
+ MVK_CONFIG_LOG_LEVEL_ERROR = 1, /**< Log errors only. */
+ MVK_CONFIG_LOG_LEVEL_WARNING = 2, /**< Log errors and warning messages. */
+ MVK_CONFIG_LOG_LEVEL_INFO = 3, /**< Log errors, warnings and informational messages. */
+ MVK_CONFIG_LOG_LEVEL_DEBUG = 4, /**< Log errors, warnings, infos and debug messages. */
+ MVK_CONFIG_LOG_LEVEL_MAX_ENUM = 0x7FFFFFFF
+} MVKConfigLogLevel;
+
+/** Identifies the level of Vulkan call trace logging MoltenVK should perform. */
+typedef enum MVKConfigTraceVulkanCalls {
+ MVK_CONFIG_TRACE_VULKAN_CALLS_NONE = 0, /**< No Vulkan call logging. */
+ MVK_CONFIG_TRACE_VULKAN_CALLS_ENTER = 1, /**< Log the name of each Vulkan call when the call is entered. */
+ MVK_CONFIG_TRACE_VULKAN_CALLS_ENTER_EXIT = 2, /**< Log the name of each Vulkan call when the call is entered and exited. This effectively brackets any other logging activity within the scope of the Vulkan call. */
+ MVK_CONFIG_TRACE_VULKAN_CALLS_DURATION = 3, /**< Same as MVK_CONFIG_TRACE_VULKAN_CALLS_ENTER_EXIT, plus logs the time spent inside the Vulkan function. */
+ MVK_CONFIG_TRACE_VULKAN_CALLS_MAX_ENUM = 0x7FFFFFFF
+} MVKConfigTraceVulkanCalls;
+
+/** Identifies the scope for Metal to run an automatic GPU capture for diagnostic debugging purposes. */
+typedef enum MVKConfigAutoGPUCaptureScope {
+ MVK_CONFIG_AUTO_GPU_CAPTURE_SCOPE_NONE = 0, /**< No automatic GPU capture. */
+ MVK_CONFIG_AUTO_GPU_CAPTURE_SCOPE_DEVICE = 1, /**< Automatically capture all GPU activity during the lifetime of a VkDevice. */
+ MVK_CONFIG_AUTO_GPU_CAPTURE_SCOPE_FRAME = 2, /**< Automatically capture all GPU activity during the rendering and presentation of the first frame. */
+ MVK_CONFIG_AUTO_GPU_CAPTURE_SCOPE_MAX_ENUM = 0x7FFFFFFF
+} MVKConfigAutoGPUCaptureScope;
+
+/** Identifies extensions to advertise as part of MoltenVK configuration. */
+typedef enum MVKConfigAdvertiseExtensionBits {
+ MVK_CONFIG_ADVERTISE_EXTENSIONS_ALL = 0x00000001, /**< All supported extensions. */
+ MVK_CONFIG_ADVERTISE_EXTENSIONS_MOLTENVK = 0x00000002, /**< This VK_MVK_moltenvk extension. */
+ MVK_CONFIG_ADVERTISE_EXTENSIONS_WSI = 0x00000004, /**< WSI extensions supported on the platform. */
+ MVK_CONFIG_ADVERTISE_EXTENSIONS_PORTABILITY = 0x00000008, /**< Vulkan Portability Subset extensions. */
+ MVK_CONFIG_ADVERTISE_EXTENSIONS_MAX_ENUM = 0x7FFFFFFF
+} MVKConfigAdvertiseExtensionBits;
+typedef VkFlags MVKConfigAdvertiseExtensions;
+
+/**
+ * MoltenVK configuration settings.
+ *
+ * To be active, some configuration settings must be set before a VkDevice is created.
+ * See the description of the individual configuration structure members for more information.
+ *
+ * There are three mechanisms for setting the values of the MoltenVK configuration parameters:
+ * - Runtime API via the vkGetMoltenVKConfigurationMVK()/vkSetMoltenVKConfigurationMVK() functions.
+ * - Application runtime environment variables.
+ * - Build settings at MoltenVK build time.
+ *
+ * To change the MoltenVK configuration settings at runtime using a programmatic API,
+ * use the vkGetMoltenVKConfigurationMVK() and vkSetMoltenVKConfigurationMVK() functions
+ * to retrieve, modify, and set a copy of the MVKConfiguration structure. To be active,
+ * some configuration settings must be set before a VkInstance or VkDevice is created.
+ * See the description of each member for more information.
+ *
+ * The initial value of each of the configuration settings can established at runtime
+ * by a corresponding environment variable, or if the environment variable is not set,
+ * by a corresponding build setting at the time MoltenVK is compiled. The environment
+ * variable and build setting for each configuration parameter share the same name.
+ *
+ * For example, the initial value of the shaderConversionFlipVertexY configuration setting
+ * is set by the MVK_CONFIG_SHADER_CONVERSION_FLIP_VERTEX_Y at runtime, or by the
+ * MVK_CONFIG_SHADER_CONVERSION_FLIP_VERTEX_Y build setting when MoltenVK is compiled.
+ *
+ * This structure may be extended as new features are added to MoltenVK. If you are linking to
+ * an implementation of MoltenVK that was compiled from a different VK_MVK_MOLTENVK_SPEC_VERSION
+ * than your app was, the size of this structure in your app may be larger or smaller than the
+ * struct in MoltenVK. See the description of the vkGetMoltenVKConfigurationMVK() and
+ * vkSetMoltenVKConfigurationMVK() functions for information about how to handle this.
+ *
+ * TO SUPPORT DYNAMIC LINKING TO THIS STRUCTURE AS DESCRIBED ABOVE, THIS STRUCTURE SHOULD NOT
+ * BE CHANGED EXCEPT TO ADD ADDITIONAL MEMBERS ON THE END. EXISTING MEMBERS, AND THEIR ORDER,
+ * SHOULD NOT BE CHANGED.
+ */
+typedef struct {
+
+ /**
+ * If enabled, debugging capabilities will be enabled, including logging
+ * shader code during runtime shader conversion.
+ *
+ * The value of this parameter may be changed at any time during application runtime,
+ * and the changed value will immediately effect subsequent MoltenVK behaviour.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_DEBUG
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter is false if MoltenVK was
+ * built in Release mode, and true if MoltenVK was built in Debug mode.
+ */
+ VkBool32 debugMode;
+
+ /**
+ * If enabled, MSL vertex shader code created during runtime shader conversion will
+ * flip the Y-axis of each vertex, as the Vulkan Y-axis is the inverse of OpenGL.
+ *
+ * An alternate way to reverse the Y-axis is to employ a negative Y-axis value on
+ * the viewport, in which case this parameter can be disabled.
+ *
+ * The value of this parameter may be changed at any time during application runtime,
+ * and the changed value will immediately effect subsequent MoltenVK behaviour.
+ * Specifically, this parameter can be enabled when compiling some pipelines,
+ * and disabled when compiling others. Existing pipelines are not automatically
+ * re-compiled when this parameter is changed.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_SHADER_CONVERSION_FLIP_VERTEX_Y
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to true.
+ */
+ VkBool32 shaderConversionFlipVertexY;
+
+ /**
+ * If enabled, queue command submissions (vkQueueSubmit() & vkQueuePresentKHR()) will be
+ * processed on the thread that called the submission function. If disabled, processing
+ * will be dispatched to a GCD dispatch_queue whose priority is determined by
+ * VkDeviceQueueCreateInfo::pQueuePriorities during vkCreateDevice().
+ *
+ * The value of this parameter must be changed before creating a VkDevice,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_SYNCHRONOUS_QUEUE_SUBMITS
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to true for macOS 10.14
+ * and above or iOS 12 and above, and false otherwise. The reason for this distinction
+ * is that this feature should be disabled when emulation is required to support VkEvents
+ * because native support for events (MTLEvent) is not available.
+ */
+ VkBool32 synchronousQueueSubmits;
+
+ /**
+ * If enabled, where possible, a Metal command buffer will be created and filled when each
+ * Vulkan command buffer is filled. For applications that parallelize the filling of Vulkan
+ * commmand buffers across multiple threads, this allows the Metal command buffers to also
+ * be filled on the same parallel thread. Because each command buffer is filled separately,
+ * this requires that each Vulkan command buffer requires a dedicated Metal command buffer.
+ *
+ * If disabled, a single Metal command buffer will be created and filled when the Vulkan
+ * command buffers are submitted to the Vulkan queue. This allows a single Metal command
+ * buffer to be used for all of the Vulkan command buffers in a queue submission. The
+ * Metal command buffer is filled on the thread that processes the command queue submission.
+ *
+ * Depending on the nature of your application, you may find performance is improved by filling
+ * the Metal command buffers on parallel threads, or you may find that performance is improved by
+ * consolidating all Vulkan command buffers onto a single Metal command buffer during queue submission.
+ *
+ * Prefilling of a Metal command buffer will not occur during the filling of secondary command
+ * buffers (VK_COMMAND_BUFFER_LEVEL_SECONDARY), or for primary command buffers that are intended
+ * to be submitted to multiple queues concurrently (VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT).
+ *
+ * When enabling this feature, be aware that one Metal command buffer is required for each Vulkan
+ * command buffer. Depending on the number of command buffers that you use, you may also need to
+ * change the value of the maxActiveMetalCommandBuffersPerQueue setting.
+ *
+ * If this feature is enabled, be aware that if you have recorded commands to a Vulkan command buffer,
+ * and then choose to reset that command buffer instead of submitting it, the corresponding prefilled
+ * Metal command buffer will still be submitted. This is because Metal command buffers do not support
+ * the concept of being reset after being filled. Depending on when and how often you do this,
+ * it may cause unexpected visual artifacts and unnecessary GPU load.
+ *
+ * This feature is incompatible with updating descriptors after binding. If any of the
+ * *UpdateAfterBind feature flags of VkPhysicalDeviceDescriptorIndexingFeaturesEXT or
+ * VkPhysicalDeviceInlineUniformBlockFeaturesEXT have been enabled, the value of this
+ * setting will be ignored and treated as if it is false.
+ *
+ * The value of this parameter may be changed at any time during application runtime,
+ * and the changed value will immediately effect subsequent MoltenVK behaviour.
+ * Specifically, this parameter can be enabled when filling some command buffers,
+ * and disabled when filling others.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_PREFILL_METAL_COMMAND_BUFFERS
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to false.
+ */
+ VkBool32 prefillMetalCommandBuffers;
+
+ /**
+ * The maximum number of Metal command buffers that can be concurrently active per Vulkan queue.
+ * The number of active Metal command buffers required depends on the prefillMetalCommandBuffers
+ * setting. If prefillMetalCommandBuffers is enabled, one Metal command buffer is required per
+ * Vulkan command buffer. If prefillMetalCommandBuffers is disabled, one Metal command buffer
+ * is required per command buffer queue submission, which may be significantly less than the
+ * number of Vulkan command buffers.
+ *
+ * The value of this parameter must be changed before creating a VkDevice,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_MAX_ACTIVE_METAL_COMMAND_BUFFERS_PER_QUEUE
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to 64.
+ */
+ uint32_t maxActiveMetalCommandBuffersPerQueue;
+
+ /**
+ * Metal allows only 8192 occlusion queries per MTLBuffer. If enabled, MoltenVK
+ * allocates a MTLBuffer for each query pool, allowing each query pool to support
+ * 8192 queries, which may slow performance or cause unexpected behaviour if the query
+ * pool is not established prior to a Metal renderpass, or if the query pool is changed
+ * within a renderpass. If disabled, one MTLBuffer will be shared by all query pools,
+ * which improves performance, but limits the total device queries to 8192.
+ *
+ * The value of this parameter may be changed at any time during application runtime,
+ * and the changed value will immediately effect subsequent MoltenVK behaviour.
+ * Specifically, this parameter can be enabled when creating some query pools,
+ * and disabled when creating others.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_SUPPORT_LARGE_QUERY_POOLS
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to true.
+ */
+ VkBool32 supportLargeQueryPools;
+
+ /** Obsolete, ignored, and deprecated. All surface presentations are performed with a command buffer. */
+ VkBool32 presentWithCommandBuffer;
+
+ /**
+ * If enabled, swapchain images will use simple Nearest sampling when magnifying the
+ * swapchain image to fit a physical display surface. If disabled, swapchain images will
+ * use Linear sampling when magnifying the swapchain image to fit a physical display surface.
+ * Enabling this setting avoids smearing effects when swapchain images are simple interger
+ * multiples of display pixels (eg- macOS Retina, and typical of graphics apps and games),
+ * but may cause aliasing effects when using non-integer display scaling.
+ *
+ * The value of this parameter may be changed before creating a VkSwapchain,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_SWAPCHAIN_MAG_FILTER_USE_NEAREST
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to true.
+ */
+ VkBool32 swapchainMagFilterUseNearest;
+
+ /**
+ * The maximum amount of time, in nanoseconds, to wait for a Metal library, function, or
+ * pipeline state object to be compiled and created by the Metal compiler. An internal error
+ * within the Metal compiler can stall the thread for up to 30 seconds. Setting this value
+ * limits that delay to a specified amount of time, allowing shader compilations to fail fast.
+ *
+ * The value of this parameter may be changed at any time during application runtime,
+ * and the changed value will immediately effect subsequent MoltenVK behaviour.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_METAL_COMPILE_TIMEOUT
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to infinite.
+ */
+ uint64_t metalCompileTimeout;
+
+ /**
+ * If enabled, performance statistics, as defined by the MVKPerformanceStatistics structure,
+ * are collected, and can be retrieved via the vkGetPerformanceStatisticsMVK() function.
+ *
+ * You can also use the performanceLoggingFrameCount or logActivityPerformanceInline
+ * parameters to automatically log the performance statistics collected by this parameter.
+ *
+ * The value of this parameter must be changed before creating a VkDevice,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_PERFORMANCE_TRACKING
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to false.
+ */
+ VkBool32 performanceTracking;
+
+ /**
+ * If non-zero, performance statistics, frame-based statistics will be logged, on a
+ * repeating cycle, once per this many frames. The performanceTracking parameter must
+ * also be enabled. If this parameter is zero, or the performanceTracking parameter
+ * is disabled, no frame-based performance statistics will be logged.
+ *
+ * The value of this parameter may be changed at any time during application runtime,
+ * and the changed value will immediately effect subsequent MoltenVK behaviour.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_PERFORMANCE_LOGGING_FRAME_COUNT
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to zero.
+ */
+ uint32_t performanceLoggingFrameCount;
+
+ /**
+ * If enabled, a MoltenVK logo watermark will be rendered on top of the scene.
+ * This can be enabled for publicity during demos.
+ *
+ * The value of this parameter may be changed at any time during application runtime,
+ * and the changed value will immediately effect subsequent MoltenVK behaviour.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_DISPLAY_WATERMARK
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to false.
+ */
+ VkBool32 displayWatermark;
+
+ /**
+ * Metal does not distinguish functionality between queues, which would normally mean only
+ * a single general-purpose queue family with multiple queues is needed. However, Vulkan
+ * associates command buffers with a queue family, whereas Metal associates command buffers
+ * with a specific Metal queue. In order to allow a Metal command buffer to be prefilled
+ * before is is formally submitted to a Vulkan queue, each Vulkan queue family can support
+ * only a single Metal queue. As a result, in order to provide parallel queue operations,
+ * MoltenVK provides multiple queue families, each with a single queue.
+ *
+ * If this parameter is disabled, all queue families will be advertised as having general-purpose
+ * graphics + compute + transfer functionality, which is how the actual Metal queues behave.
+ *
+ * If this parameter is enabled, one queue family will be advertised as having general-purpose
+ * graphics + compute + transfer functionality, and the remaining queue families will be advertised
+ * as having specialized graphics OR compute OR transfer functionality, to make it easier for some
+ * apps to select a queue family with the appropriate requirements.
+ *
+ * The value of this parameter must be changed before creating a VkDevice, and before
+ * querying a VkPhysicalDevice for queue family properties, for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_SPECIALIZED_QUEUE_FAMILIES
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to false.
+ */
+ VkBool32 specializedQueueFamilies;
+
+ /**
+ * If enabled, when the app creates a VkDevice from a VkPhysicalDevice (GPU) that is neither
+ * headless nor low-power, and is different than the GPU used by the windowing system, the
+ * windowing system will be forced to switch to use the GPU selected by the Vulkan app.
+ * When the Vulkan app is ended, the windowing system will automatically switch back to
+ * using the previous GPU, depending on the usage requirements of other running apps.
+ *
+ * If disabled, the Vulkan app will render using its selected GPU, and if the windowing
+ * system uses a different GPU, the windowing system compositor will automatically copy
+ * framebuffer content from the app GPU to the windowing system GPU.
+ *
+ * The value of this parmeter has no effect on systems with a single GPU, or when the
+ * Vulkan app creates a VkDevice from a low-power or headless VkPhysicalDevice (GPU).
+ *
+ * Switching the windowing system GPU to match the Vulkan app GPU maximizes app performance,
+ * because it avoids the windowing system compositor from having to copy framebuffer content
+ * between GPUs on each rendered frame. However, doing so forces the entire system to
+ * potentially switch to using a GPU that may consume more power while the app is running.
+ *
+ * Some Vulkan apps may want to render using a high-power GPU, but leave it up to the
+ * system window compositor to determine how best to blend content with the windowing
+ * system, and as a result, may want to disable this parameter.
+ *
+ * The value of this parameter must be changed before creating a VkDevice,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_SWITCH_SYSTEM_GPU
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to true.
+ */
+ VkBool32 switchSystemGPU;
+
+ /**
+ * Older versions of Metal do not natively support per-texture swizzling. When running on
+ * such a system, and this parameter is enabled, arbitrary VkImageView component swizzles
+ * are supported, as defined in VkImageViewCreateInfo::components when creating a VkImageView.
+ *
+ * If disabled, and native Metal per-texture swizzling is not available on the platform,
+ * a very limited set of VkImageView component swizzles are supported via format substitutions.
+ *
+ * If Metal supports native per-texture swizzling, this parameter is ignored.
+ *
+ * When running on an older version of Metal that does not support native per-texture
+ * swizzling, if this parameter is enabled, both when a VkImageView is created, and
+ * when any pipeline that uses that VkImageView is compiled, VkImageView swizzling is
+ * automatically performed in the converted Metal shader code during all texture sampling
+ * and reading operations, regardless of whether a swizzle is required for the VkImageView
+ * associated with the Metal texture. This may result in reduced performance.
+ *
+ * The value of this parameter may be changed at any time during application runtime,
+ * and the changed value will immediately effect subsequent MoltenVK behaviour.
+ * Specifically, this parameter can be enabled when creating VkImageViews that need it,
+ * and compiling pipelines that use those VkImageViews, and can be disabled when creating
+ * VkImageViews that don't need it, and compiling pipelines that use those VkImageViews.
+ *
+ * Existing pipelines are not automatically re-compiled when this parameter is changed.
+ *
+ * An error is logged and returned during VkImageView creation if that VkImageView
+ * requires full image view swizzling and this feature is not enabled. An error is
+ * also logged when a pipeline that was not compiled with full image view swizzling
+ * is presented with a VkImageView that is expecting it.
+ *
+ * An error is also retuned and logged when a VkPhysicalDeviceImageFormatInfo2KHR is passed
+ * in a call to vkGetPhysicalDeviceImageFormatProperties2KHR() to query for an VkImageView
+ * format that will require full swizzling to be enabled, and this feature is not enabled.
+ *
+ * If this parameter is disabled, and native Metal per-texture swizzling is not available
+ * on the platform, the following limited set of VkImageView swizzles are supported by
+ * MoltenVK, via automatic format substitution:
+ *
+ * Texture format Swizzle
+ * -------------- -------
+ * VK_FORMAT_R8_UNORM ZERO, ANY, ANY, RED
+ * VK_FORMAT_A8_UNORM ALPHA, ANY, ANY, ZERO
+ * VK_FORMAT_R8G8B8A8_UNORM BLUE, GREEN, RED, ALPHA
+ * VK_FORMAT_R8G8B8A8_SRGB BLUE, GREEN, RED, ALPHA
+ * VK_FORMAT_B8G8R8A8_UNORM BLUE, GREEN, RED, ALPHA
+ * VK_FORMAT_B8G8R8A8_SRGB BLUE, GREEN, RED, ALPHA
+ * VK_FORMAT_D32_SFLOAT_S8_UINT RED, ANY, ANY, ANY (stencil only)
+ * VK_FORMAT_D24_UNORM_S8_UINT RED, ANY, ANY, ANY (stencil only)
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_FULL_IMAGE_VIEW_SWIZZLE
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to false.
+ */
+ VkBool32 fullImageViewSwizzle;
+
+ /**
+ * The index of the queue family whose presentation submissions will
+ * be used as the default GPU Capture Scope during debugging in Xcode.
+ *
+ * The value of this parameter must be changed before creating a VkDevice,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_DEFAULT_GPU_CAPTURE_SCOPE_QUEUE_FAMILY_INDEX
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to zero (the first queue family).
+ */
+ uint32_t defaultGPUCaptureScopeQueueFamilyIndex;
+
+ /**
+ * The index of the queue, within the queue family identified by the
+ * defaultGPUCaptureScopeQueueFamilyIndex parameter, whose presentation submissions
+ * will be used as the default GPU Capture Scope during debugging in Xcode.
+ *
+ * The value of this parameter must be changed before creating a VkDevice,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_DEFAULT_GPU_CAPTURE_SCOPE_QUEUE_INDEX
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to zero (the first queue).
+ */
+ uint32_t defaultGPUCaptureScopeQueueIndex;
+
+ /**
+ * Corresponds to the fastMathEnabled property of MTLCompileOptions.
+ * Setting it may cause the Metal Compiler to optimize floating point operations
+ * in ways that may violate the IEEE 754 standard.
+ *
+ * Must be changed before creating a VkDevice, for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_FAST_MATH_ENABLED
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to true.
+ */
+ VkBool32 fastMathEnabled;
+
+ /**
+ * Controls the level of logging performned by MoltenVK.
+ *
+ * The value of this parameter may be changed at any time during application runtime,
+ * and the changed value will immediately effect subsequent MoltenVK behaviour.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_LOG_LEVEL
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, errors and informational messages are logged.
+ */
+ MVKConfigLogLevel logLevel;
+
+ /**
+ * Causes MoltenVK to log the name of each Vulkan call made by the application,
+ * along with the Mach thread ID, global system thread ID, and thread name.
+ *
+ * The value of this parameter may be changed at any time during application runtime,
+ * and the changed value will immediately effect subsequent MoltenVK behaviour.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_TRACE_VULKAN_CALLS
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, no Vulkan call logging will occur.
+ */
+ MVKConfigTraceVulkanCalls traceVulkanCalls;
+
+ /**
+ * Force MoltenVK to use a low-power GPU, if one is availble on the device.
+ *
+ * The value of this parameter must be changed before creating a VkInstance,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_FORCE_LOW_POWER_GPU
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, this setting is disabled by default, allowing both
+ * low-power and high-power GPU's to be used.
+ */
+ VkBool32 forceLowPowerGPU;
+
+ /**
+ * Use MTLFence, if it is available on the device, for VkSemaphore synchronization behaviour.
+ *
+ * This parameter interacts with semaphoreUseMTLEvent. If both are enabled, on GPUs other than
+ * NVIDIA, semaphoreUseMTLEvent takes priority and MTLEvent will be used if it is available,
+ * otherwise MTLFence will be used if it is available. On NVIDIA GPUs, MTLEvent is disabled
+ * for VkSemaphores, so CPU-based synchronization will be used unless semaphoreUseMTLFence
+ * is enabled and MTLFence is available.
+ *
+ * In the special case of VK_SEMAPHORE_TYPE_TIMELINE semaphores, MoltenVK will always
+ * use MTLSharedEvent if it is available on the platform, regardless of the values of
+ * semaphoreUseMTLEvent or semaphoreUseMTLFence.
+ *
+ * The value of this parameter must be changed before creating a VkDevice,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_ALLOW_METAL_FENCES
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, this setting is disabled by default, and VkSemaphore will not use MTLFence.
+ */
+ VkBool32 semaphoreUseMTLFence;
+
+ /**
+ * Use MTLEvent, if it is available on the device, for VkSemaphore synchronization behaviour.
+ *
+ * This parameter interacts with semaphoreUseMTLFence. If both are enabled, on GPUs other than
+ * NVIDIA, semaphoreUseMTLEvent takes priority and MTLEvent will be used if it is available,
+ * otherwise MTLFence will be used if it is available. On NVIDIA GPUs, MTLEvent is disabled
+ * for VkSemaphores, so CPU-based synchronization will be used unless semaphoreUseMTLFence
+ * is enabled and MTLFence is available.
+ *
+ * In the special case of VK_SEMAPHORE_TYPE_TIMELINE semaphores, MoltenVK will always
+ * use MTLSharedEvent if it is available on the platform, regardless of the values of
+ * semaphoreUseMTLEvent or semaphoreUseMTLFence.
+ *
+ * The value of this parameter must be changed before creating a VkDevice,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_ALLOW_METAL_EVENTS
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, this setting is enabled by default, and VkSemaphore will use MTLEvent,
+ * if it is available, except on NVIDIA GPUs.
+ */
+ VkBool32 semaphoreUseMTLEvent;
+
+ /**
+ * Controls whether Metal should run an automatic GPU capture without the user having to
+ * trigger it manually via the Xcode user interface, and controls the scope under which
+ * that GPU capture will occur. This is useful when trying to capture a one-shot GPU trace,
+ * such as when running a Vulkan CTS test case. For the automatic GPU capture to occur, the
+ * Xcode scheme under which the app is run must have the Metal GPU capture option enabled.
+ * This parameter should not be set to manually trigger a GPU capture via the Xcode user interface.
+ *
+ * When the value of this parameter is MVK_CONFIG_AUTO_GPU_CAPTURE_SCOPE_FRAME,
+ * the queue for which the GPU activity is captured is identifed by the values of
+ * the defaultGPUCaptureScopeQueueFamilyIndex and defaultGPUCaptureScopeQueueIndex
+ * configuration parameters.
+ *
+ * The value of this parameter must be changed before creating a VkDevice,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_AUTO_GPU_CAPTURE_SCOPE
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, no automatic GPU capture will occur.
+ */
+ MVKConfigAutoGPUCaptureScope autoGPUCaptureScope;
+
+ /**
+ * The path to a file where the automatic GPU capture should be saved, if autoGPUCaptureScope
+ * is enabled. In this case, the Xcode scheme need not have Metal GPU capture enabled, and in
+ * fact the app need not be run under Xcode's control at all. This is useful in case the app
+ * cannot be run under Xcode's control. A path starting with '~' can be used to place it in a
+ * user's home directory, as in the shell. This feature requires Metal 3.0 (macOS 10.15, iOS 13).
+ *
+ * If this parameter is NULL or an empty string, and autoGPUCaptureScope is enabled, automatic
+ * GPU capture will be handled by the Xcode user interface.
+ *
+ * The value of this parameter must be changed before creating a VkDevice,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_AUTO_GPU_CAPTURE_OUTPUT_FILE
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, automatic GPU capture will be handled by the Xcode user interface.
+ */
+ const char* autoGPUCaptureOutputFilepath;
+
+ /**
+ * Controls whether MoltenVK should use a Metal 2D texture with a height of 1 for a
+ * Vulkan 1D image, or use a native Metal 1D texture. Metal imposes significant restrictions
+ * on native 1D textures, including not being renderable, clearable, or permitting mipmaps.
+ * Using a Metal 2D texture allows Vulkan 1D textures to support this additional functionality.
+ *
+ * The value of this parameter should only be changed before creating the VkInstance.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_TEXTURE_1D_AS_2D
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, this setting is enabled by default, and MoltenVK will
+ * use a Metal 2D texture for each Vulkan 1D image.
+ */
+ VkBool32 texture1DAs2D;
+
+ /**
+ * Controls whether MoltenVK should preallocate memory in each VkDescriptorPool according
+ * to the values of the VkDescriptorPoolSize parameters. Doing so may improve descriptor set
+ * allocation performance and memory stability at a cost of preallocated application memory.
+ * If this setting is disabled, the descriptors required for a descriptor set will be individually
+ * dynamically allocated in application memory when the descriptor set itself is allocated.
+ *
+ * The value of this parameter may be changed at any time during application runtime, and the
+ * changed value will affect the behavior of VkDescriptorPools created after the value is changed.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_PREALLOCATE_DESCRIPTORS
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, this setting is enabled by default, and MoltenVK will
+ * allocate a pool of descriptors when a VkDescriptorPool is created.
+ */
+ VkBool32 preallocateDescriptors;
+
+ /**
+ * Controls whether MoltenVK should use pools to manage memory used when adding commands
+ * to command buffers. If this setting is enabled, MoltenVK will use a pool to hold command
+ * resources for reuse during command execution. If this setting is disabled, command memory
+ * is allocated and destroyed each time a command is executed. This is a classic time-space
+ * trade off. When command pooling is active, the memory in the pool can be cleared via a
+ * call to the vkTrimCommandPoolKHR() command.
+ *
+ * The value of this parameter may be changed at any time during application runtime,
+ * and the changed value will immediately effect behavior of VkCommandPools created
+ * after the setting is changed.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_USE_COMMAND_POOLING
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, this setting is enabled by default, and MoltenVK will pool command memory.
+ */
+ VkBool32 useCommandPooling;
+
+ /**
+ * Controls whether MoltenVK should use MTLHeaps for allocating textures and buffers
+ * from device memory. If this setting is enabled, and placement MTLHeaps are
+ * available on the platform, MoltenVK will allocate a placement MTLHeap for each VkDeviceMemory
+ * instance, and allocate textures and buffers from that placement heap. If this environment
+ * variable is disabled, MoltenVK will allocate textures and buffers from general device memory.
+ *
+ * Apple recommends that MTLHeaps should only be used for specific requirements such as aliasing
+ * or hazard tracking, and MoltenVK testing has shown that allocating multiple textures of
+ * different types or usages from one MTLHeap can occassionally cause corruption issues under
+ * certain circumstances.
+ *
+ * The value of this parameter must be changed before creating a VkInstance,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_USE_MTLHEAP
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, this setting is disabled by default, and MoltenVK
+ * will allocate texures and buffers from general device memory.
+ */
+ VkBool32 useMTLHeap;
+
+ /**
+ * Controls whether MoltenVK should log the performance of individual activities as they happen.
+ * If this setting is enabled, activity performance will be logged when each activity happens.
+ * If this setting is disabled, activity performance will be logged when frame peformance is
+ * logged as determined by the performanceLoggingFrameCount value.
+ *
+ * The value of this parameter must be changed before creating a VkDevice,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_PERFORMANCE_LOGGING_INLINE
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, this setting is disabled by default, and activity
+ * performance will be logged only when frame activity is logged.
+ */
+ VkBool32 logActivityPerformanceInline;
+
+ /**
+ * Controls the Vulkan API version that MoltenVK should advertise in vkEnumerateInstanceVersion().
+ * When reading this value, it will be one of the VK_API_VERSION_1_* values, including the latest
+ * VK_HEADER_VERSION component. When setting this value, it should be set to one of:
+ *
+ * VK_API_VERSION_1_1 (equivalent decimal number 4198400)
+ * VK_API_VERSION_1_0 (equivalent decimal number 4194304)
+ *
+ * MoltenVK will automatically add the VK_HEADER_VERSION component.
+ *
+ * The value of this parameter must be changed before creating a VkInstance,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_API_VERSION_TO_ADVERTISE
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this parameter defaults to the highest API version
+ * currently supported by MoltenVK, including the latest VK_HEADER_VERSION component.
+ */
+ uint32_t apiVersionToAdvertise;
+
+ /**
+ * Controls which extensions MoltenVK should advertise it supports in
+ * vkEnumerateInstanceExtensionProperties() and vkEnumerateDeviceExtensionProperties().
+ * The value of this parameter is a bitwise OR of values from the MVKConfigAdvertiseExtensionBits
+ * enumeration. Any prerequisite extensions are also advertised.
+ * If the flag MVK_CONFIG_ADVERTISE_EXTENSIONS_ALL is included, all supported extensions
+ * will be advertised. A value of zero means no extensions will be advertised.
+ *
+ * The value of this parameter must be changed before creating a VkInstance,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_ADVERTISE_EXTENSIONS
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, the value of this setting defaults to
+ * MVK_CONFIG_ADVERTISE_EXTENSIONS_ALL, and all supported extensions will be advertised.
+ */
+ MVKConfigAdvertiseExtensions advertiseExtensions;
+
+ /**
+ * Controls whether MoltenVK should treat a lost VkDevice as resumable, unless the
+ * corresponding VkPhysicalDevice has also been lost. The VK_ERROR_DEVICE_LOST error has
+ * a broad definitional range, and can mean anything from a GPU hiccup on the current
+ * command buffer submission, to a physically removed GPU. In the case where this error does
+ * not impact the VkPhysicalDevice, Vulkan requires that the app destroy and re-create a new
+ * VkDevice. However, not all apps (including CTS) respect that requirement, leading to what
+ * might be a transient command submission failure causing an unexpected catastrophic app failure.
+ *
+ * If this setting is enabled, in the case of a VK_ERROR_DEVICE_LOST error that does NOT impact
+ * the VkPhysicalDevice, MoltenVK will log the error, but will not mark the VkDevice as lost,
+ * allowing the VkDevice to continue to be used. If this setting is disabled, MoltenVK will
+ * mark the VkDevice as lost, and subsequent use of that VkDevice will be reduced or prohibited.
+ *
+ * The value of this parameter may be changed at any time during application runtime,
+ * and the changed value will affect the error behavior of subsequent command submissions.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_RESUME_LOST_DEVICE
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, this setting is disabled by default, and MoltenVK
+ * will mark the VkDevice as lost when a command submission failure occurs.
+ */
+ VkBool32 resumeLostDevice;
+
+ /**
+ * Controls whether MoltenVK should use Metal argument buffers for resources defined in
+ * descriptor sets, if Metal argument buffers are supported on the platform. Using Metal
+ * argument buffers dramatically increases the number of buffers, textures and samplers
+ * that can be bound to a pipeline shader, and in most cases improves performance. If this
+ * setting is enabled, MoltenVK will use Metal argument buffers to bind resources to the
+ * shaders. If this setting is disabled, MoltenVK will bind resources to shaders discretely.
+ *
+ * NOTE: Currently, Metal argument buffer support is in beta stage, and is only supported
+ * on macOS 11.0 (Big Sur) or later, or on older versions of macOS using an Intel GPU.
+ * Metal argument buffers support is not available on iOS. Development to support iOS
+ * and a wider combination of GPU's on older macOS versions is under way.
+ *
+ * The value of this parameter must be changed before creating a VkInstance,
+ * for the change to take effect.
+ *
+ * The initial value or this parameter is set by the
+ * MVK_CONFIG_USE_METAL_ARGUMENT_BUFFERS
+ * runtime environment variable or MoltenVK compile-time build setting.
+ * If neither is set, this setting is enabled by default, and MoltenVK will not
+ * use Metal argument buffers, and will bind resources to shaders discretely.
+ */
+ VkBool32 useMetalArgumentBuffers;
+
+} MVKConfiguration;
+
+/** Identifies the type of rounding Metal uses for float to integer conversions in particular calculatons. */
+typedef enum MVKFloatRounding {
+ MVK_FLOAT_ROUNDING_NEAREST = 0, /**< Metal rounds to nearest. */
+ MVK_FLOAT_ROUNDING_UP = 1, /**< Metal rounds towards positive infinity. */
+ MVK_FLOAT_ROUNDING_DOWN = 2, /**< Metal rounds towards negative infinity. */
+ MVK_FLOAT_ROUNDING_UP_MAX_ENUM = 0x7FFFFFFF
+} MVKFloatRounding;
+
+/** Identifies the pipeline points where GPU counter sampling can occur. Maps to MTLCounterSamplingPoint. */
+typedef enum MVKCounterSamplingBits {
+ MVK_COUNTER_SAMPLING_AT_DRAW = 0x00000001,
+ MVK_COUNTER_SAMPLING_AT_DISPATCH = 0x00000002,
+ MVK_COUNTER_SAMPLING_AT_BLIT = 0x00000004,
+ MVK_COUNTER_SAMPLING_AT_PIPELINE_STAGE = 0x00000008,
+ MVK_COUNTER_SAMPLING_MAX_ENUM = 0X7FFFFFFF
+} MVKCounterSamplingBits;
+typedef VkFlags MVKCounterSamplingFlags;
+
+/**
+ * Features provided by the current implementation of Metal on the current device. You can
+ * retrieve a copy of this structure using the vkGetPhysicalDeviceMetalFeaturesMVK() function.
+ *
+ * This structure may be extended as new features are added to MoltenVK. If you are linking to
+ * an implementation of MoltenVK that was compiled from a different VK_MVK_MOLTENVK_SPEC_VERSION
+ * than your app was, the size of this structure in your app may be larger or smaller than the
+ * struct in MoltenVK. See the description of the vkGetPhysicalDeviceMetalFeaturesMVK() function
+ * for information about how to handle this.
+ *
+ * TO SUPPORT DYNAMIC LINKING TO THIS STRUCTURE AS DESCRIBED ABOVE, THIS STRUCTURE SHOULD NOT
+ * BE CHANGED EXCEPT TO ADD ADDITIONAL MEMBERS ON THE END. EXISTING MEMBERS, AND THEIR ORDER,
+ * SHOULD NOT BE CHANGED.
+ */
+typedef struct {
+ uint32_t mslVersion; /**< The version of the Metal Shading Language available on this device. The format of the integer is MMmmpp, with two decimal digts each for Major, minor, and patch version values (eg. MSL 1.2 would appear as 010200). */
+ VkBool32 indirectDrawing; /**< If true, draw calls support parameters held in a GPU buffer. */
+ VkBool32 baseVertexInstanceDrawing; /**< If true, draw calls support specifiying the base vertex and instance. */
+ uint32_t dynamicMTLBufferSize; /**< If greater than zero, dynamic MTLBuffers for setting vertex, fragment, and compute bytes are supported, and their content must be below this value. */
+ VkBool32 shaderSpecialization; /**< If true, shader specialization (aka Metal function constants) is supported. */
+ VkBool32 ioSurfaces; /**< If true, VkImages can be underlaid by IOSurfaces via the vkUseIOSurfaceMVK() function, to support inter-process image transfers. */
+ VkBool32 texelBuffers; /**< If true, texel buffers are supported, allowing the contents of a buffer to be interpreted as an image via a VkBufferView. */
+ VkBool32 layeredRendering; /**< If true, layered rendering to multiple cube or texture array layers is supported. */
+ VkBool32 presentModeImmediate; /**< If true, immediate surface present mode (VK_PRESENT_MODE_IMMEDIATE_KHR), allowing a swapchain image to be presented immediately, without waiting for the vertical sync period of the display, is supported. */
+ VkBool32 stencilViews; /**< If true, stencil aspect views are supported through the MTLPixelFormatX24_Stencil8 and MTLPixelFormatX32_Stencil8 formats. */
+ VkBool32 multisampleArrayTextures; /**< If true, MTLTextureType2DMultisampleArray is supported. */
+ VkBool32 samplerClampToBorder; /**< If true, the border color set when creating a sampler will be respected. */
+ uint32_t maxTextureDimension; /**< The maximum size of each texture dimension (width, height, or depth). */
+ uint32_t maxPerStageBufferCount; /**< The total number of per-stage Metal buffers available for shader uniform content and attributes. */
+ uint32_t maxPerStageTextureCount; /**< The total number of per-stage Metal textures available for shader uniform content. */
+ uint32_t maxPerStageSamplerCount; /**< The total number of per-stage Metal samplers available for shader uniform content. */
+ VkDeviceSize maxMTLBufferSize; /**< The max size of a MTLBuffer (in bytes). */
+ VkDeviceSize mtlBufferAlignment; /**< The alignment used when allocating memory for MTLBuffers. Must be PoT. */
+ VkDeviceSize maxQueryBufferSize; /**< The maximum size of an occlusion query buffer (in bytes). */
+ VkDeviceSize mtlCopyBufferAlignment; /**< The alignment required during buffer copy operations (in bytes). */
+ VkSampleCountFlags supportedSampleCounts; /**< A bitmask identifying the sample counts supported by the device. */
+ uint32_t minSwapchainImageCount; /**< The minimum number of swapchain images that can be supported by a surface. */
+ uint32_t maxSwapchainImageCount; /**< The maximum number of swapchain images that can be supported by a surface. */
+ VkBool32 combinedStoreResolveAction; /**< If true, the device supports VK_ATTACHMENT_STORE_OP_STORE with a simultaneous resolve attachment. */
+ VkBool32 arrayOfTextures; /**< If true, arrays of textures is supported. */
+ VkBool32 arrayOfSamplers; /**< If true, arrays of texture samplers is supported. */
+ MTLLanguageVersion mslVersionEnum; /**< The version of the Metal Shading Language available on this device, as a Metal enumeration. */
+ VkBool32 depthSampleCompare; /**< If true, depth texture samplers support the comparison of the pixel value against a reference value. */
+ VkBool32 events; /**< If true, Metal synchronization events (MTLEvent) are supported. */
+ VkBool32 memoryBarriers; /**< If true, full memory barriers within Metal render passes are supported. */
+ VkBool32 multisampleLayeredRendering; /**< If true, layered rendering to multiple multi-sampled cube or texture array layers is supported. */
+ VkBool32 stencilFeedback; /**< If true, fragment shaders that write to [[stencil]] outputs are supported. */
+ VkBool32 textureBuffers; /**< If true, textures of type MTLTextureTypeBuffer are supported. */
+ VkBool32 postDepthCoverage; /**< If true, coverage masks in fragment shaders post-depth-test are supported. */
+ VkBool32 fences; /**< If true, Metal synchronization fences (MTLFence) are supported. */
+ VkBool32 rasterOrderGroups; /**< If true, Raster order groups in fragment shaders are supported. */
+ VkBool32 native3DCompressedTextures; /**< If true, 3D compressed images are supported natively, without manual decompression. */
+ VkBool32 nativeTextureSwizzle; /**< If true, component swizzle is supported natively, without manual swizzling in shaders. */
+ VkBool32 placementHeaps; /**< If true, MTLHeap objects support placement of resources. */
+ VkDeviceSize pushConstantSizeAlignment; /**< The alignment used internally when allocating memory for push constants. Must be PoT. */
+ uint32_t maxTextureLayers; /**< The maximum number of layers in an array texture. */
+ uint32_t maxSubgroupSize; /**< The maximum number of threads in a SIMD-group. */
+ VkDeviceSize vertexStrideAlignment; /**< The alignment used for the stride of vertex attribute bindings. */
+ VkBool32 indirectTessellationDrawing; /**< If true, tessellation draw calls support parameters held in a GPU buffer. */
+ VkBool32 nonUniformThreadgroups; /**< If true, the device supports arbitrary-sized grids in compute workloads. */
+ VkBool32 renderWithoutAttachments; /**< If true, we don't have to create a dummy attachment for a render pass if there isn't one. */
+ VkBool32 deferredStoreActions; /**< If true, render pass store actions can be specified after the render encoder is created. */
+ VkBool32 sharedLinearTextures; /**< If true, linear textures and texture buffers can be created from buffers in Shared storage. */
+ VkBool32 depthResolve; /**< If true, resolving depth textures with filters other than Sample0 is supported. */
+ VkBool32 stencilResolve; /**< If true, resolving stencil textures with filters other than Sample0 is supported. */
+ uint32_t maxPerStageDynamicMTLBufferCount; /**< The maximum number of inline buffers that can be set on a command buffer. */
+ uint32_t maxPerStageStorageTextureCount; /**< The total number of per-stage Metal textures with read-write access available for writing to from a shader. */
+ VkBool32 astcHDRTextures; /**< If true, ASTC HDR pixel formats are supported. */
+ VkBool32 renderLinearTextures; /**< If true, linear textures are renderable. */
+ VkBool32 pullModelInterpolation; /**< If true, explicit interpolation functions are supported. */
+ VkBool32 samplerMirrorClampToEdge; /**< If true, the mirrored clamp to edge address mode is supported in samplers. */
+ VkBool32 quadPermute; /**< If true, quadgroup permutation functions (vote, ballot, shuffle) are supported in shaders. */
+ VkBool32 simdPermute; /**< If true, SIMD-group permutation functions (vote, ballot, shuffle) are supported in shaders. */
+ VkBool32 simdReduction; /**< If true, SIMD-group reduction functions (arithmetic) are supported in shaders. */
+ uint32_t minSubgroupSize; /**< The minimum number of threads in a SIMD-group. */
+ VkBool32 textureBarriers; /**< If true, texture barriers are supported within Metal render passes. */
+ VkBool32 tileBasedDeferredRendering; /**< If true, this device uses tile-based deferred rendering. */
+ VkBool32 argumentBuffers; /**< If true, Metal argument buffers are supported. */
+ VkBool32 descriptorSetArgumentBuffers; /**< If true, a Metal argument buffer can be assigned to a descriptor set, and used on any pipeline and pipeline stage. If false, a different Metal argument buffer must be used for each pipeline-stage/descriptor-set combination. */
+ MVKFloatRounding clearColorFloatRounding; /**< Identifies the type of rounding Metal uses for MTLClearColor float to integer conversions. */
+ MVKCounterSamplingFlags counterSamplingPoints; /**< Identifies the points where pipeline GPU counter sampling may occur. */
+ VkBool32 programmableSamplePositions; /**< If true, programmable MSAA sample positions are supported. */
+} MVKPhysicalDeviceMetalFeatures;
+
+/** MoltenVK performance of a particular type of activity. */
+typedef struct {
+ uint32_t count; /**< The number of activities of this type. */
+ double latestDuration; /**< The latest (most recent) duration of the activity, in milliseconds. */
+ double averageDuration; /**< The average duration of the activity, in milliseconds. */
+ double minimumDuration; /**< The minimum duration of the activity, in milliseconds. */
+ double maximumDuration; /**< The maximum duration of the activity, in milliseconds. */
+} MVKPerformanceTracker;
+
+/** MoltenVK performance of shader compilation activities. */
+typedef struct {
+ MVKPerformanceTracker hashShaderCode; /** Create a hash from the incoming shader code. */
+ MVKPerformanceTracker spirvToMSL; /** Convert SPIR-V to MSL source code. */
+ MVKPerformanceTracker mslCompile; /** Compile MSL source code into a MTLLibrary. */
+ MVKPerformanceTracker mslLoad; /** Load pre-compiled MSL code into a MTLLibrary. */
+ MVKPerformanceTracker shaderLibraryFromCache; /** Retrieve a shader library from the cache, lazily creating it if needed. */
+ MVKPerformanceTracker functionRetrieval; /** Retrieve a MTLFunction from a MTLLibrary. */
+ MVKPerformanceTracker functionSpecialization; /** Specialize a retrieved MTLFunction. */
+ MVKPerformanceTracker pipelineCompile; /** Compile MTLFunctions into a pipeline. */
+ MVKPerformanceTracker glslToSPRIV; /** Convert GLSL to SPIR-V code. */
+} MVKShaderCompilationPerformance;
+
+/** MoltenVK performance of pipeline cache activities. */
+typedef struct {
+ MVKPerformanceTracker sizePipelineCache; /** Calculate the size of cache data required to write MSL to pipeline cache data stream. */
+ MVKPerformanceTracker writePipelineCache; /** Write MSL to pipeline cache data stream. */
+ MVKPerformanceTracker readPipelineCache; /** Read MSL from pipeline cache data stream. */
+} MVKPipelineCachePerformance;
+
+/** MoltenVK performance of queue activities. */
+typedef struct {
+ MVKPerformanceTracker mtlQueueAccess; /** Create an MTLCommandQueue or access an existing cached instance. */
+ MVKPerformanceTracker mtlCommandBufferCompletion; /** Completion of a MTLCommandBuffer on the GPU, from commit to completion callback. */
+ MVKPerformanceTracker nextCAMetalDrawable; /** Retrieve next CAMetalDrawable from CAMetalLayer during presentation. */
+ MVKPerformanceTracker frameInterval; /** Frame presentation interval (1000/FPS). */
+} MVKQueuePerformance;
+
+/**
+ * MoltenVK performance. You can retrieve a copy of this structure using the vkGetPerformanceStatisticsMVK() function.
+ *
+ * This structure may be extended as new features are added to MoltenVK. If you are linking to
+ * an implementation of MoltenVK that was compiled from a different VK_MVK_MOLTENVK_SPEC_VERSION
+ * than your app was, the size of this structure in your app may be larger or smaller than the
+ * struct in MoltenVK. See the description of the vkGetPerformanceStatisticsMVK() function for
+ * information about how to handle this.
+ *
+ * TO SUPPORT DYNAMIC LINKING TO THIS STRUCTURE AS DESCRIBED ABOVE, THIS STRUCTURE SHOULD NOT
+ * BE CHANGED EXCEPT TO ADD ADDITIONAL MEMBERS ON THE END. EXISTING MEMBERS, AND THEIR ORDER,
+ * SHOULD NOT BE CHANGED.
+ */
+typedef struct {
+ MVKShaderCompilationPerformance shaderCompilation; /** Shader compilations activities. */
+ MVKPipelineCachePerformance pipelineCache; /** Pipeline cache activities. */
+ MVKQueuePerformance queue; /** Queue activities. */
+} MVKPerformanceStatistics;
+
+
+#pragma mark -
+#pragma mark Function types
+
+typedef VkResult (VKAPI_PTR *PFN_vkGetMoltenVKConfigurationMVK)(VkInstance ignored, MVKConfiguration* pConfiguration, size_t* pConfigurationSize);
+typedef VkResult (VKAPI_PTR *PFN_vkSetMoltenVKConfigurationMVK)(VkInstance ignored, MVKConfiguration* pConfiguration, size_t* pConfigurationSize);
+typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceMetalFeaturesMVK)(VkPhysicalDevice physicalDevice, MVKPhysicalDeviceMetalFeatures* pMetalFeatures, size_t* pMetalFeaturesSize);
+typedef VkResult (VKAPI_PTR *PFN_vkGetPerformanceStatisticsMVK)(VkDevice device, MVKPerformanceStatistics* pPerf, size_t* pPerfSize);
+typedef void (VKAPI_PTR *PFN_vkGetVersionStringsMVK)(char* pMoltenVersionStringBuffer, uint32_t moltenVersionStringBufferLength, char* pVulkanVersionStringBuffer, uint32_t vulkanVersionStringBufferLength);
+typedef void (VKAPI_PTR *PFN_vkSetWorkgroupSizeMVK)(VkShaderModule shaderModule, uint32_t x, uint32_t y, uint32_t z);
+typedef VkResult (VKAPI_PTR *PFN_vkUseIOSurfaceMVK)(VkImage image, IOSurfaceRef ioSurface);
+typedef void (VKAPI_PTR *PFN_vkGetIOSurfaceMVK)(VkImage image, IOSurfaceRef* pIOSurface);
+
+#ifdef __OBJC__
+typedef void (VKAPI_PTR *PFN_vkGetMTLDeviceMVK)(VkPhysicalDevice physicalDevice, id* pMTLDevice);
+typedef VkResult (VKAPI_PTR *PFN_vkSetMTLTextureMVK)(VkImage image, id mtlTexture);
+typedef void (VKAPI_PTR *PFN_vkGetMTLTextureMVK)(VkImage image, id* pMTLTexture);
+typedef void (VKAPI_PTR *PFN_vkGetMTLBufferMVK)(VkBuffer buffer, id* pMTLBuffer);
+typedef void (VKAPI_PTR *PFN_vkGetMTLCommandQueueMVK)(VkQueue queue, id* pMTLCommandQueue);
+#endif // __OBJC__
+
+
+#pragma mark -
+#pragma mark Function prototypes
+
+#ifndef VK_NO_PROTOTYPES
+
+/**
+ * Populates the pConfiguration structure with the current MoltenVK configuration settings.
+ *
+ * To change a specific configuration value, call vkGetMoltenVKConfigurationMVK() to retrieve
+ * the current configuration, make changes, and call vkSetMoltenVKConfigurationMVK() to
+ * update all of the values.
+ *
+ * The VkInstance object you provide here is ignored, and a VK_NULL_HANDLE value can be provided.
+ * This function can be called before the VkInstance has been created. It is safe to call this function
+ * with a VkInstance retrieved from a different layer in the Vulkan SDK Loader and Layers framework.
+ *
+ * To be active, some configuration settings must be set before a VkInstance or VkDevice
+ * is created. See the description of the MVKConfiguration members for more information.
+ *
+ * If you are linking to an implementation of MoltenVK that was compiled from a different
+ * VK_MVK_MOLTENVK_SPEC_VERSION than your app was, the size of the MVKConfiguration structure
+ * in your app may be larger or smaller than the same struct as expected by MoltenVK.
+ *
+ * When calling this function, set the value of *pConfigurationSize to sizeof(MVKConfiguration),
+ * to tell MoltenVK the limit of the size of your MVKConfiguration structure. Upon return from
+ * this function, the value of *pConfigurationSize will hold the actual number of bytes copied
+ * into your passed MVKConfiguration structure, which will be the smaller of what your app
+ * thinks is the size of MVKConfiguration, and what MoltenVK thinks it is. This represents the
+ * safe access area within the structure for both MoltenVK and your app.
+ *
+ * If the size that MoltenVK expects for MVKConfiguration is different than the value passed in
+ * *pConfigurationSize, this function will return VK_INCOMPLETE, otherwise it will return VK_SUCCESS.
+ *
+ * Although it is not necessary, you can use this function to determine in advance the value
+ * that MoltenVK expects the size of MVKConfiguration to be by setting the value of pConfiguration
+ * to NULL. In that case, this function will set *pConfigurationSize to the size that MoltenVK
+ * expects MVKConfiguration to be.
+ */
+VKAPI_ATTR VkResult VKAPI_CALL vkGetMoltenVKConfigurationMVK(
+ VkInstance ignored,
+ MVKConfiguration* pConfiguration,
+ size_t* pConfigurationSize);
+
+/**
+ * Sets the MoltenVK configuration settings to those found in the pConfiguration structure.
+ *
+ * To change a specific configuration value, call vkGetMoltenVKConfigurationMVK()
+ * to retrieve the current configuration, make changes, and call
+ * vkSetMoltenVKConfigurationMVK() to update all of the values.
+ *
+ * The VkInstance object you provide here is ignored, and a VK_NULL_HANDLE value can be provided.
+ * This function can be called before the VkInstance has been created. It is safe to call this function
+ * with a VkInstance retrieved from a different layer in the Vulkan SDK Loader and Layers framework.
+ *
+ * To be active, some configuration settings must be set before a VkInstance or VkDevice
+ * is created. See the description of the MVKConfiguration members for more information.
+ *
+ * If you are linking to an implementation of MoltenVK that was compiled from a different
+ * VK_MVK_MOLTENVK_SPEC_VERSION than your app was, the size of the MVKConfiguration structure
+ * in your app may be larger or smaller than the same struct as expected by MoltenVK.
+ *
+ * When calling this function, set the value of *pConfigurationSize to sizeof(MVKConfiguration),
+ * to tell MoltenVK the limit of the size of your MVKConfiguration structure. Upon return from
+ * this function, the value of *pConfigurationSize will hold the actual number of bytes copied
+ * out of your passed MVKConfiguration structure, which will be the smaller of what your app
+ * thinks is the size of MVKConfiguration, and what MoltenVK thinks it is. This represents the
+ * safe access area within the structure for both MoltenVK and your app.
+ *
+ * If the size that MoltenVK expects for MVKConfiguration is different than the value passed in
+ * *pConfigurationSize, this function will return VK_INCOMPLETE, otherwise it will return VK_SUCCESS.
+ *
+ * Although it is not necessary, you can use this function to determine in advance the value
+ * that MoltenVK expects the size of MVKConfiguration to be by setting the value of pConfiguration
+ * to NULL. In that case, this function will set *pConfigurationSize to the size that MoltenVK
+ * expects MVKConfiguration to be.
+ */
+VKAPI_ATTR VkResult VKAPI_CALL vkSetMoltenVKConfigurationMVK(
+ VkInstance ignored,
+ const MVKConfiguration* pConfiguration,
+ size_t* pConfigurationSize);
+
+/**
+ * Populates the pMetalFeatures structure with the Metal-specific features
+ * supported by the specified physical device.
+ *
+ * If you are linking to an implementation of MoltenVK that was compiled from a different
+ * VK_MVK_MOLTENVK_SPEC_VERSION than your app was, the size of the MVKPhysicalDeviceMetalFeatures
+ * structure in your app may be larger or smaller than the same struct as expected by MoltenVK.
+ *
+ * When calling this function, set the value of *pMetalFeaturesSize to sizeof(MVKPhysicalDeviceMetalFeatures),
+ * to tell MoltenVK the limit of the size of your MVKPhysicalDeviceMetalFeatures structure. Upon return from
+ * this function, the value of *pMetalFeaturesSize will hold the actual number of bytes copied into your
+ * passed MVKPhysicalDeviceMetalFeatures structure, which will be the smaller of what your app thinks is the
+ * size of MVKPhysicalDeviceMetalFeatures, and what MoltenVK thinks it is. This represents the safe access
+ * area within the structure for both MoltenVK and your app.
+ *
+ * If the size that MoltenVK expects for MVKPhysicalDeviceMetalFeatures is different than the value passed in
+ * *pMetalFeaturesSize, this function will return VK_INCOMPLETE, otherwise it will return VK_SUCCESS.
+ *
+ * Although it is not necessary, you can use this function to determine in advance the value that MoltenVK
+ * expects the size of MVKPhysicalDeviceMetalFeatures to be by setting the value of pMetalFeatures to NULL.
+ * In that case, this function will set *pMetalFeaturesSize to the size that MoltenVK expects
+ * MVKPhysicalDeviceMetalFeatures to be.
+ *
+ * This function is not supported by the Vulkan SDK Loader and Layers framework
+ * and is unavailable when using the Vulkan SDK Loader and Layers framework.
+ */
+VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceMetalFeaturesMVK(
+ VkPhysicalDevice physicalDevice,
+ MVKPhysicalDeviceMetalFeatures* pMetalFeatures,
+ size_t* pMetalFeaturesSize);
+
+/**
+ * Populates the pPerf structure with the current performance statistics for the device.
+ *
+ * If you are linking to an implementation of MoltenVK that was compiled from a different
+ * VK_MVK_MOLTENVK_SPEC_VERSION than your app was, the size of the MVKPerformanceStatistics
+ * structure in your app may be larger or smaller than the same struct as expected by MoltenVK.
+ *
+ * When calling this function, set the value of *pPerfSize to sizeof(MVKPerformanceStatistics),
+ * to tell MoltenVK the limit of the size of your MVKPerformanceStatistics structure. Upon return
+ * from this function, the value of *pPerfSize will hold the actual number of bytes copied into
+ * your passed MVKPerformanceStatistics structure, which will be the smaller of what your app
+ * thinks is the size of MVKPerformanceStatistics, and what MoltenVK thinks it is. This
+ * represents the safe access area within the structure for both MoltenVK and your app.
+ *
+ * If the size that MoltenVK expects for MVKPerformanceStatistics is different than the value passed
+ * in *pPerfSize, this function will return VK_INCOMPLETE, otherwise it will return VK_SUCCESS.
+ *
+ * Although it is not necessary, you can use this function to determine in advance the value
+ * that MoltenVK expects the size of MVKPerformanceStatistics to be by setting the value of
+ * pPerf to NULL. In that case, this function will set *pPerfSize to the size that MoltenVK
+ * expects MVKPerformanceStatistics to be.
+ *
+ * This function is not supported by the Vulkan SDK Loader and Layers framework
+ * and is unavailable when using the Vulkan SDK Loader and Layers framework.
+ */
+VKAPI_ATTR VkResult VKAPI_CALL vkGetPerformanceStatisticsMVK(
+ VkDevice device,
+ MVKPerformanceStatistics* pPerf,
+ size_t* pPerfSize);
+
+/**
+ * Returns a human readable version of the MoltenVK and Vulkan versions.
+ *
+ * This function is provided as a convenience for reporting. Use the MVK_VERSION,
+ * VK_API_VERSION_1_0, and VK_HEADER_VERSION macros for programmatically accessing
+ * the corresponding version numbers.
+ */
+VKAPI_ATTR void VKAPI_CALL vkGetVersionStringsMVK(
+ char* pMoltenVersionStringBuffer,
+ uint32_t moltenVersionStringBufferLength,
+ char* pVulkanVersionStringBuffer,
+ uint32_t vulkanVersionStringBufferLength);
+
+/**
+ * Sets the number of threads in a workgroup for a compute kernel.
+ *
+ * This needs to be called if you are creating compute shader modules from MSL
+ * source code or MSL compiled code. Workgroup size is determined automatically
+ * if you're using SPIR-V.
+ *
+ * This function is not supported by the Vulkan SDK Loader and Layers framework
+ * and is unavailable when using the Vulkan SDK Loader and Layers framework.
+ */
+VKAPI_ATTR void VKAPI_CALL vkSetWorkgroupSizeMVK(
+ VkShaderModule shaderModule,
+ uint32_t x,
+ uint32_t y,
+ uint32_t z);
+
+#ifdef __OBJC__
+
+/**
+ * Returns, in the pMTLDevice pointer, the MTLDevice used by the VkPhysicalDevice.
+ *
+ * This function is not supported by the Vulkan SDK Loader and Layers framework
+ * and is unavailable when using the Vulkan SDK Loader and Layers framework.
+ */
+VKAPI_ATTR void VKAPI_CALL vkGetMTLDeviceMVK(
+ VkPhysicalDevice physicalDevice,
+ id* pMTLDevice);
+
+/**
+ * Sets the VkImage to use the specified MTLTexture.
+ *
+ * Any differences in the properties of mtlTexture and this image will modify the
+ * properties of this image.
+ *
+ * If a MTLTexture has already been created for this image, it will be destroyed.
+ *
+ * Returns VK_SUCCESS.
+ *
+ * This function is not supported by the Vulkan SDK Loader and Layers framework
+ * and is unavailable when using the Vulkan SDK Loader and Layers framework.
+ */
+VKAPI_ATTR VkResult VKAPI_CALL vkSetMTLTextureMVK(
+ VkImage image,
+ id mtlTexture);
+
+/**
+ * Returns, in the pMTLTexture pointer, the MTLTexture currently underlaying the VkImage.
+ *
+ * This function is not supported by the Vulkan SDK Loader and Layers framework
+ * and is unavailable when using the Vulkan SDK Loader and Layers framework.
+ */
+VKAPI_ATTR void VKAPI_CALL vkGetMTLTextureMVK(
+ VkImage image,
+ id* pMTLTexture);
+
+/**
+* Returns, in the pMTLBuffer pointer, the MTLBuffer currently underlaying the VkBuffer.
+*
+ * This function is not supported by the Vulkan SDK Loader and Layers framework
+ * and is unavailable when using the Vulkan SDK Loader and Layers framework.
+*/
+VKAPI_ATTR void VKAPI_CALL vkGetMTLBufferMVK(
+ VkBuffer buffer,
+ id* pMTLBuffer);
+
+/**
+* Returns, in the pMTLCommandQueue pointer, the MTLCommandQueue currently underlaying the VkQueue.
+*
+ * This function is not supported by the Vulkan SDK Loader and Layers framework
+ * and is unavailable when using the Vulkan SDK Loader and Layers framework.
+*/
+VKAPI_ATTR void VKAPI_CALL vkGetMTLCommandQueueMVK(
+ VkQueue queue,
+ id* pMTLCommandQueue);
+
+#endif // __OBJC__
+
+/**
+ * Indicates that a VkImage should use an IOSurface to underlay the Metal texture.
+ *
+ * If ioSurface is not null, it will be used as the IOSurface, and any differences
+ * in the properties of that IOSurface will modify the properties of this image.
+ *
+ * If ioSurface is null, this image will create and use an IOSurface
+ * whose properties are compatible with the properties of this image.
+ *
+ * If a MTLTexture has already been created for this image, it will be destroyed.
+ *
+ * IOSurfaces are supported on the following platforms:
+ * - macOS 10.11 and above
+ * - iOS 11.0 and above
+ *
+ * To enable IOSurface support, ensure the Deployment Target build setting
+ * (MACOSX_DEPLOYMENT_TARGET or IPHONEOS_DEPLOYMENT_TARGET) is set to at least
+ * one of the values above when compiling MoltenVK, and any app that uses MoltenVK.
+ *
+ * Returns:
+ * - VK_SUCCESS.
+ * - VK_ERROR_FEATURE_NOT_PRESENT if IOSurfaces are not supported on the platform.
+ * - VK_ERROR_INITIALIZATION_FAILED if ioSurface is specified and is not compatible with this VkImage.
+ *
+ * This function is not supported by the Vulkan SDK Loader and Layers framework
+ * and is unavailable when using the Vulkan SDK Loader and Layers framework.
+ */
+VKAPI_ATTR VkResult VKAPI_CALL vkUseIOSurfaceMVK(
+ VkImage image,
+ IOSurfaceRef ioSurface);
+
+/**
+ * Returns, in the pIOSurface pointer, the IOSurface currently underlaying the VkImage,
+ * as set by the useIOSurfaceMVK() function, or returns null if the VkImage is not using
+ * an IOSurface, or if the platform does not support IOSurfaces.
+ *
+ * This function is not supported by the Vulkan SDK Loader and Layers framework
+ * and is unavailable when using the Vulkan SDK Loader and Layers framework.
+ */
+VKAPI_ATTR void VKAPI_CALL vkGetIOSurfaceMVK(
+ VkImage image,
+ IOSurfaceRef* pIOSurface);
+
+
+#pragma mark -
+#pragma mark Shaders
+
+/**
+ * NOTE: Shader code should be submitted as SPIR-V. Although some simple direct MSL shaders may work,
+ * direct loading of MSL source code or compiled MSL code is not officially supported at this time.
+ * Future versions of MoltenVK may support direct MSL submission again.
+ *
+ * Enumerates the magic number values to set in the MVKMSLSPIRVHeader when
+ * submitting a SPIR-V stream that contains either Metal Shading Language source
+ * code or Metal Shading Language compiled binary code in place of SPIR-V code.
+ */
+typedef enum {
+ kMVKMagicNumberSPIRVCode = 0x07230203, /**< SPIR-V stream contains standard SPIR-V code. */
+ kMVKMagicNumberMSLSourceCode = 0x19960412, /**< SPIR-V stream contains Metal Shading Language source code. */
+ kMVKMagicNumberMSLCompiledCode = 0x19981215, /**< SPIR-V stream contains Metal Shading Language compiled binary code. */
+} MVKMSLMagicNumber;
+
+/**
+ * NOTE: Shader code should be submitted as SPIR-V. Although some simple direct MSL shaders may work,
+ * direct loading of MSL source code or compiled MSL code is not officially supported at this time.
+ * Future versions of MoltenVK may support direct MSL submission again.
+ *
+ * Describes the header at the start of an SPIR-V stream, when it contains either
+ * Metal Shading Language source code or Metal Shading Language compiled binary code.
+ *
+ * To submit MSL source code to the vkCreateShaderModule() function in place of SPIR-V
+ * code, prepend a MVKMSLSPIRVHeader containing the kMVKMagicNumberMSLSourceCode magic
+ * number to the MSL source code. The MSL source code must be null-terminated.
+ *
+ * To submit MSL compiled binary code to the vkCreateShaderModule() function in place of
+ * SPIR-V code, prepend a MVKMSLSPIRVHeader containing the kMVKMagicNumberMSLCompiledCode
+ * magic number to the MSL compiled binary code.
+ *
+ * In both cases, the pCode element of VkShaderModuleCreateInfo should pointer to the
+ * location of the MVKMSLSPIRVHeader, and the MSL code should start at the byte immediately
+ * after the MVKMSLSPIRVHeader.
+ *
+ * The codeSize element of VkShaderModuleCreateInfo should be set to the entire size of
+ * the submitted code memory, including the additional sizeof(MVKMSLSPIRVHeader) bytes
+ * taken up by the MVKMSLSPIRVHeader, and, in the case of MSL source code, including
+ * the null-terminator byte.
+ */
+typedef uint32_t MVKMSLSPIRVHeader;
+
+
+#endif // VK_NO_PROTOTYPES
+
+
+#ifdef __cplusplus
+}
+#endif // __cplusplus
+
+#endif
diff --git a/types.go b/types.go
index 7c83fae..a86528b 100644
--- a/types.go
+++ b/types.go
@@ -1,6 +1,6 @@
// THE AUTOGENERATED LICENSE. ALL THE RIGHTS ARE RESERVED BY ROBOTS.
-// WARNING: This file has automatically been generated on Mon, 15 Oct 2018 01:04:16 +07.
+// WARNING: This file has automatically been generated on Fri, 10 Feb 2023 11:56:02 PST.
// Code generated by https://git.io/c-for-go. DO NOT EDIT.
package vulkan
@@ -8,6 +8,7 @@ package vulkan
/*
#cgo CFLAGS: -I. -DVK_NO_PROTOTYPES
#include "vulkan/vulkan.h"
+#include "vulkan/vulkan_beta.h"
#include "vk_wrapper.h"
#include "vk_bridge.h"
#include
@@ -16,18 +17,27 @@ package vulkan
import "C"
import "unsafe"
-// Flags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFlags.html
-type Flags uint32
-
// Bool32 type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBool32.html
type Bool32 uint32
+// DeviceAddress type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceAddress.html
+type DeviceAddress uint64
+
// DeviceSize type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceSize.html
type DeviceSize uint64
+// Flags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFlags.html
+type Flags uint32
+
// SampleMask type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSampleMask.html
type SampleMask uint32
+// Buffer as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBuffer.html
+type Buffer C.VkBuffer
+
+// Image as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImage.html
+type Image C.VkImage
+
// Instance as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkInstance.html
type Instance C.VkInstance
@@ -52,12 +62,6 @@ type Fence C.VkFence
// DeviceMemory as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceMemory.html
type DeviceMemory C.VkDeviceMemory
-// Buffer as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBuffer.html
-type Buffer C.VkBuffer
-
-// Image as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImage.html
-type Image C.VkImage
-
// Event as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkEvent.html
type Event C.VkEvent
@@ -79,54 +83,60 @@ type PipelineCache C.VkPipelineCache
// PipelineLayout as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineLayout.html
type PipelineLayout C.VkPipelineLayout
-// RenderPass as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderPass.html
-type RenderPass C.VkRenderPass
-
// Pipeline as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipeline.html
type Pipeline C.VkPipeline
+// RenderPass as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderPass.html
+type RenderPass C.VkRenderPass
+
// DescriptorSetLayout as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetLayout.html
type DescriptorSetLayout C.VkDescriptorSetLayout
// Sampler as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSampler.html
type Sampler C.VkSampler
-// DescriptorPool as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorPool.html
-type DescriptorPool C.VkDescriptorPool
-
// DescriptorSet as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSet.html
type DescriptorSet C.VkDescriptorSet
+// DescriptorPool as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorPool.html
+type DescriptorPool C.VkDescriptorPool
+
// Framebuffer as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFramebuffer.html
type Framebuffer C.VkFramebuffer
// CommandPool as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandPool.html
type CommandPool C.VkCommandPool
-// InstanceCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkInstanceCreateFlags.html
-type InstanceCreateFlags uint32
+// AccessFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAccessFlags.html
+type AccessFlags uint32
+
+// ImageAspectFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageAspectFlags.html
+type ImageAspectFlags uint32
// FormatFeatureFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFormatFeatureFlags.html
type FormatFeatureFlags uint32
-// ImageUsageFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageUsageFlags.html
-type ImageUsageFlags uint32
-
// ImageCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageCreateFlags.html
type ImageCreateFlags uint32
// SampleCountFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSampleCountFlags.html
type SampleCountFlags uint32
-// QueueFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueueFlags.html
-type QueueFlags uint32
+// ImageUsageFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageUsageFlags.html
+type ImageUsageFlags uint32
-// MemoryPropertyFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryPropertyFlags.html
-type MemoryPropertyFlags uint32
+// InstanceCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkInstanceCreateFlags.html
+type InstanceCreateFlags uint32
// MemoryHeapFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryHeapFlags.html
type MemoryHeapFlags uint32
+// MemoryPropertyFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryPropertyFlags.html
+type MemoryPropertyFlags uint32
+
+// QueueFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueueFlags.html
+type QueueFlags uint32
+
// DeviceCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceCreateFlags.html
type DeviceCreateFlags uint32
@@ -139,15 +149,12 @@ type PipelineStageFlags uint32
// MemoryMapFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryMapFlags.html
type MemoryMapFlags uint32
-// ImageAspectFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageAspectFlags.html
-type ImageAspectFlags uint32
+// SparseMemoryBindFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseMemoryBindFlags.html
+type SparseMemoryBindFlags uint32
// SparseImageFormatFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseImageFormatFlags.html
type SparseImageFormatFlags uint32
-// SparseMemoryBindFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseMemoryBindFlags.html
-type SparseMemoryBindFlags uint32
-
// FenceCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFenceCreateFlags.html
type FenceCreateFlags uint32
@@ -157,12 +164,12 @@ type SemaphoreCreateFlags uint32
// EventCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkEventCreateFlags.html
type EventCreateFlags uint32
-// QueryPoolCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueryPoolCreateFlags.html
-type QueryPoolCreateFlags uint32
-
// QueryPipelineStatisticFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueryPipelineStatisticFlags.html
type QueryPipelineStatisticFlags uint32
+// QueryPoolCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueryPoolCreateFlags.html
+type QueryPoolCreateFlags uint32
+
// QueryResultFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueryResultFlags.html
type QueryResultFlags uint32
@@ -184,12 +191,18 @@ type ShaderModuleCreateFlags uint32
// PipelineCacheCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCacheCreateFlags.html
type PipelineCacheCreateFlags uint32
+// ColorComponentFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkColorComponentFlags.html
+type ColorComponentFlags uint32
+
// PipelineCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCreateFlags.html
type PipelineCreateFlags uint32
// PipelineShaderStageCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineShaderStageCreateFlags.html
type PipelineShaderStageCreateFlags uint32
+// CullModeFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCullModeFlags.html
+type CullModeFlags uint32
+
// PipelineVertexInputStateCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineVertexInputStateCreateFlags.html
type PipelineVertexInputStateCreateFlags uint32
@@ -205,9 +218,6 @@ type PipelineViewportStateCreateFlags uint32
// PipelineRasterizationStateCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRasterizationStateCreateFlags.html
type PipelineRasterizationStateCreateFlags uint32
-// CullModeFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCullModeFlags.html
-type CullModeFlags uint32
-
// PipelineMultisampleStateCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineMultisampleStateCreateFlags.html
type PipelineMultisampleStateCreateFlags uint32
@@ -217,9 +227,6 @@ type PipelineDepthStencilStateCreateFlags uint32
// PipelineColorBlendStateCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineColorBlendStateCreateFlags.html
type PipelineColorBlendStateCreateFlags uint32
-// ColorComponentFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkColorComponentFlags.html
-type ColorComponentFlags uint32
-
// PipelineDynamicStateCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineDynamicStateCreateFlags.html
type PipelineDynamicStateCreateFlags uint32
@@ -232,33 +239,30 @@ type ShaderStageFlags uint32
// SamplerCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerCreateFlags.html
type SamplerCreateFlags uint32
-// DescriptorSetLayoutCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetLayoutCreateFlags.html
-type DescriptorSetLayoutCreateFlags uint32
-
// DescriptorPoolCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorPoolCreateFlags.html
type DescriptorPoolCreateFlags uint32
// DescriptorPoolResetFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorPoolResetFlags.html
type DescriptorPoolResetFlags uint32
+// DescriptorSetLayoutCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetLayoutCreateFlags.html
+type DescriptorSetLayoutCreateFlags uint32
+
+// AttachmentDescriptionFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAttachmentDescriptionFlags.html
+type AttachmentDescriptionFlags uint32
+
+// DependencyFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDependencyFlags.html
+type DependencyFlags uint32
+
// FramebufferCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFramebufferCreateFlags.html
type FramebufferCreateFlags uint32
// RenderPassCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderPassCreateFlags.html
type RenderPassCreateFlags uint32
-// AttachmentDescriptionFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAttachmentDescriptionFlags.html
-type AttachmentDescriptionFlags uint32
-
// SubpassDescriptionFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubpassDescriptionFlags.html
type SubpassDescriptionFlags uint32
-// AccessFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAccessFlags.html
-type AccessFlags uint32
-
-// DependencyFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDependencyFlags.html
-type DependencyFlags uint32
-
// CommandPoolCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandPoolCreateFlags.html
type CommandPoolCreateFlags uint32
@@ -277,104 +281,12 @@ type CommandBufferResetFlags uint32
// StencilFaceFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkStencilFaceFlags.html
type StencilFaceFlags uint32
-// ApplicationInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkApplicationInfo.html
-type ApplicationInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- PApplicationName string
- ApplicationVersion uint32
- PEngineName string
- EngineVersion uint32
- ApiVersion uint32
- refb0af7378 *C.VkApplicationInfo
- allocsb0af7378 interface{}
-}
-
-// InstanceCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkInstanceCreateInfo.html
-type InstanceCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags InstanceCreateFlags
- PApplicationInfo *ApplicationInfo
- EnabledLayerCount uint32
- PpEnabledLayerNames []string
- EnabledExtensionCount uint32
- PpEnabledExtensionNames []string
- ref9b760798 *C.VkInstanceCreateInfo
- allocs9b760798 interface{}
-}
-
-// AllocationCallbacks as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAllocationCallbacks.html
-type AllocationCallbacks C.VkAllocationCallbacks
-
-// PhysicalDeviceFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceFeatures.html
-type PhysicalDeviceFeatures struct {
- RobustBufferAccess Bool32
- FullDrawIndexUint32 Bool32
- ImageCubeArray Bool32
- IndependentBlend Bool32
- GeometryShader Bool32
- TessellationShader Bool32
- SampleRateShading Bool32
- DualSrcBlend Bool32
- LogicOp Bool32
- MultiDrawIndirect Bool32
- DrawIndirectFirstInstance Bool32
- DepthClamp Bool32
- DepthBiasClamp Bool32
- FillModeNonSolid Bool32
- DepthBounds Bool32
- WideLines Bool32
- LargePoints Bool32
- AlphaToOne Bool32
- MultiViewport Bool32
- SamplerAnisotropy Bool32
- TextureCompressionETC2 Bool32
- TextureCompressionASTC_LDR Bool32
- TextureCompressionBC Bool32
- OcclusionQueryPrecise Bool32
- PipelineStatisticsQuery Bool32
- VertexPipelineStoresAndAtomics Bool32
- FragmentStoresAndAtomics Bool32
- ShaderTessellationAndGeometryPointSize Bool32
- ShaderImageGatherExtended Bool32
- ShaderStorageImageExtendedFormats Bool32
- ShaderStorageImageMultisample Bool32
- ShaderStorageImageReadWithoutFormat Bool32
- ShaderStorageImageWriteWithoutFormat Bool32
- ShaderUniformBufferArrayDynamicIndexing Bool32
- ShaderSampledImageArrayDynamicIndexing Bool32
- ShaderStorageBufferArrayDynamicIndexing Bool32
- ShaderStorageImageArrayDynamicIndexing Bool32
- ShaderClipDistance Bool32
- ShaderCullDistance Bool32
- ShaderFloat64 Bool32
- ShaderInt64 Bool32
- ShaderInt16 Bool32
- ShaderResourceResidency Bool32
- ShaderResourceMinLod Bool32
- SparseBinding Bool32
- SparseResidencyBuffer Bool32
- SparseResidencyImage2D Bool32
- SparseResidencyImage3D Bool32
- SparseResidency2Samples Bool32
- SparseResidency4Samples Bool32
- SparseResidency8Samples Bool32
- SparseResidency16Samples Bool32
- SparseResidencyAliased Bool32
- VariableMultisampleRate Bool32
- InheritedQueries Bool32
- reff97e405d *C.VkPhysicalDeviceFeatures
- allocsf97e405d interface{}
-}
-
-// FormatProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFormatProperties.html
-type FormatProperties struct {
- LinearTilingFeatures FormatFeatureFlags
- OptimalTilingFeatures FormatFeatureFlags
- BufferFeatures FormatFeatureFlags
- refc4b9937b *C.VkFormatProperties
- allocsc4b9937b interface{}
+// Extent2D as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExtent2D.html
+type Extent2D struct {
+ Width uint32
+ Height uint32
+ refe2edf56b *C.VkExtent2D
+ allocse2edf56b interface{}
}
// Extent3D as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExtent3D.html
@@ -386,53 +298,303 @@ type Extent3D struct {
allocsfbf6c42a interface{}
}
-// ImageFormatProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageFormatProperties.html
-type ImageFormatProperties struct {
- MaxExtent Extent3D
- MaxMipLevels uint32
- MaxArrayLayers uint32
- SampleCounts SampleCountFlags
- MaxResourceSize DeviceSize
- ref4cfb2ea2 *C.VkImageFormatProperties
- allocs4cfb2ea2 interface{}
+// Offset2D as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkOffset2D.html
+type Offset2D struct {
+ X int32
+ Y int32
+ ref32734883 *C.VkOffset2D
+ allocs32734883 interface{}
}
-// PhysicalDeviceLimits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceLimits.html
-type PhysicalDeviceLimits struct {
- MaxImageDimension1D uint32
- MaxImageDimension2D uint32
- MaxImageDimension3D uint32
- MaxImageDimensionCube uint32
- MaxImageArrayLayers uint32
- MaxTexelBufferElements uint32
- MaxUniformBufferRange uint32
- MaxStorageBufferRange uint32
- MaxPushConstantsSize uint32
- MaxMemoryAllocationCount uint32
- MaxSamplerAllocationCount uint32
- BufferImageGranularity DeviceSize
- SparseAddressSpaceSize DeviceSize
- MaxBoundDescriptorSets uint32
- MaxPerStageDescriptorSamplers uint32
- MaxPerStageDescriptorUniformBuffers uint32
- MaxPerStageDescriptorStorageBuffers uint32
- MaxPerStageDescriptorSampledImages uint32
- MaxPerStageDescriptorStorageImages uint32
- MaxPerStageDescriptorInputAttachments uint32
- MaxPerStageResources uint32
- MaxDescriptorSetSamplers uint32
- MaxDescriptorSetUniformBuffers uint32
- MaxDescriptorSetUniformBuffersDynamic uint32
- MaxDescriptorSetStorageBuffers uint32
- MaxDescriptorSetStorageBuffersDynamic uint32
- MaxDescriptorSetSampledImages uint32
- MaxDescriptorSetStorageImages uint32
- MaxDescriptorSetInputAttachments uint32
- MaxVertexInputAttributes uint32
- MaxVertexInputBindings uint32
- MaxVertexInputAttributeOffset uint32
- MaxVertexInputBindingStride uint32
- MaxVertexOutputComponents uint32
+// Offset3D as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkOffset3D.html
+type Offset3D struct {
+ X int32
+ Y int32
+ Z int32
+ ref2b6879c2 *C.VkOffset3D
+ allocs2b6879c2 interface{}
+}
+
+// Rect2D as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRect2D.html
+type Rect2D struct {
+ Offset Offset2D
+ Extent Extent2D
+ ref89e4256f *C.VkRect2D
+ allocs89e4256f interface{}
+}
+
+// BaseInStructure as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBaseInStructure.html
+type BaseInStructure struct {
+ SType StructureType
+ PNext []BaseInStructure
+ refeae401a9 *C.VkBaseInStructure
+ allocseae401a9 interface{}
+}
+
+// BaseOutStructure as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBaseOutStructure.html
+type BaseOutStructure struct {
+ SType StructureType
+ PNext []BaseOutStructure
+ refd536fcd0 *C.VkBaseOutStructure
+ allocsd536fcd0 interface{}
+}
+
+// BufferMemoryBarrier as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferMemoryBarrier.html
+type BufferMemoryBarrier struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SrcAccessMask AccessFlags
+ DstAccessMask AccessFlags
+ SrcQueueFamilyIndex uint32
+ DstQueueFamilyIndex uint32
+ Buffer Buffer
+ Offset DeviceSize
+ Size DeviceSize
+ refeaf4700b *C.VkBufferMemoryBarrier
+ allocseaf4700b interface{}
+}
+
+// DispatchIndirectCommand as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDispatchIndirectCommand.html
+type DispatchIndirectCommand struct {
+ X uint32
+ Y uint32
+ Z uint32
+ refd298ba27 *C.VkDispatchIndirectCommand
+ allocsd298ba27 interface{}
+}
+
+// DrawIndexedIndirectCommand as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDrawIndexedIndirectCommand.html
+type DrawIndexedIndirectCommand struct {
+ IndexCount uint32
+ InstanceCount uint32
+ FirstIndex uint32
+ VertexOffset int32
+ FirstInstance uint32
+ ref4c78b5c3 *C.VkDrawIndexedIndirectCommand
+ allocs4c78b5c3 interface{}
+}
+
+// DrawIndirectCommand as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDrawIndirectCommand.html
+type DrawIndirectCommand struct {
+ VertexCount uint32
+ InstanceCount uint32
+ FirstVertex uint32
+ FirstInstance uint32
+ ref2b5b67c4 *C.VkDrawIndirectCommand
+ allocs2b5b67c4 interface{}
+}
+
+// ImageSubresourceRange as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageSubresourceRange.html
+type ImageSubresourceRange struct {
+ AspectMask ImageAspectFlags
+ BaseMipLevel uint32
+ LevelCount uint32
+ BaseArrayLayer uint32
+ LayerCount uint32
+ ref5aa1126 *C.VkImageSubresourceRange
+ allocs5aa1126 interface{}
+}
+
+// ImageMemoryBarrier as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageMemoryBarrier.html
+type ImageMemoryBarrier struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SrcAccessMask AccessFlags
+ DstAccessMask AccessFlags
+ OldLayout ImageLayout
+ NewLayout ImageLayout
+ SrcQueueFamilyIndex uint32
+ DstQueueFamilyIndex uint32
+ Image Image
+ SubresourceRange ImageSubresourceRange
+ refd52734ec *C.VkImageMemoryBarrier
+ allocsd52734ec interface{}
+}
+
+// MemoryBarrier as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryBarrier.html
+type MemoryBarrier struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SrcAccessMask AccessFlags
+ DstAccessMask AccessFlags
+ ref977c944e *C.VkMemoryBarrier
+ allocs977c944e interface{}
+}
+
+// PipelineCacheHeaderVersionOne as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCacheHeaderVersionOne.html
+type PipelineCacheHeaderVersionOne struct {
+ HeaderSize uint32
+ HeaderVersion PipelineCacheHeaderVersion
+ VendorID uint32
+ DeviceID uint32
+ PipelineCacheUUID [16]byte
+ refa2162ec9 *C.VkPipelineCacheHeaderVersionOne
+ allocsa2162ec9 interface{}
+}
+
+// AllocationCallbacks as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAllocationCallbacks.html
+type AllocationCallbacks C.VkAllocationCallbacks
+
+// ApplicationInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkApplicationInfo.html
+type ApplicationInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PApplicationName string
+ ApplicationVersion uint32
+ PEngineName string
+ EngineVersion uint32
+ ApiVersion uint32
+ refb0af7378 *C.VkApplicationInfo
+ allocsb0af7378 interface{}
+}
+
+// FormatProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFormatProperties.html
+type FormatProperties struct {
+ LinearTilingFeatures FormatFeatureFlags
+ OptimalTilingFeatures FormatFeatureFlags
+ BufferFeatures FormatFeatureFlags
+ refc4b9937b *C.VkFormatProperties
+ allocsc4b9937b interface{}
+}
+
+// ImageFormatProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageFormatProperties.html
+type ImageFormatProperties struct {
+ MaxExtent Extent3D
+ MaxMipLevels uint32
+ MaxArrayLayers uint32
+ SampleCounts SampleCountFlags
+ MaxResourceSize DeviceSize
+ ref4cfb2ea2 *C.VkImageFormatProperties
+ allocs4cfb2ea2 interface{}
+}
+
+// InstanceCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkInstanceCreateInfo.html
+type InstanceCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags InstanceCreateFlags
+ PApplicationInfo *ApplicationInfo
+ EnabledLayerCount uint32
+ PpEnabledLayerNames []string
+ EnabledExtensionCount uint32
+ PpEnabledExtensionNames []string
+ ref9b760798 *C.VkInstanceCreateInfo
+ allocs9b760798 interface{}
+}
+
+// MemoryHeap as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryHeap.html
+type MemoryHeap struct {
+ Size DeviceSize
+ Flags MemoryHeapFlags
+ ref1eb195d5 *C.VkMemoryHeap
+ allocs1eb195d5 interface{}
+}
+
+// MemoryType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryType.html
+type MemoryType struct {
+ PropertyFlags MemoryPropertyFlags
+ HeapIndex uint32
+ ref2f46e01d *C.VkMemoryType
+ allocs2f46e01d interface{}
+}
+
+// PhysicalDeviceFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceFeatures.html
+type PhysicalDeviceFeatures struct {
+ RobustBufferAccess Bool32
+ FullDrawIndexUint32 Bool32
+ ImageCubeArray Bool32
+ IndependentBlend Bool32
+ GeometryShader Bool32
+ TessellationShader Bool32
+ SampleRateShading Bool32
+ DualSrcBlend Bool32
+ LogicOp Bool32
+ MultiDrawIndirect Bool32
+ DrawIndirectFirstInstance Bool32
+ DepthClamp Bool32
+ DepthBiasClamp Bool32
+ FillModeNonSolid Bool32
+ DepthBounds Bool32
+ WideLines Bool32
+ LargePoints Bool32
+ AlphaToOne Bool32
+ MultiViewport Bool32
+ SamplerAnisotropy Bool32
+ TextureCompressionETC2 Bool32
+ TextureCompressionASTC_LDR Bool32
+ TextureCompressionBC Bool32
+ OcclusionQueryPrecise Bool32
+ PipelineStatisticsQuery Bool32
+ VertexPipelineStoresAndAtomics Bool32
+ FragmentStoresAndAtomics Bool32
+ ShaderTessellationAndGeometryPointSize Bool32
+ ShaderImageGatherExtended Bool32
+ ShaderStorageImageExtendedFormats Bool32
+ ShaderStorageImageMultisample Bool32
+ ShaderStorageImageReadWithoutFormat Bool32
+ ShaderStorageImageWriteWithoutFormat Bool32
+ ShaderUniformBufferArrayDynamicIndexing Bool32
+ ShaderSampledImageArrayDynamicIndexing Bool32
+ ShaderStorageBufferArrayDynamicIndexing Bool32
+ ShaderStorageImageArrayDynamicIndexing Bool32
+ ShaderClipDistance Bool32
+ ShaderCullDistance Bool32
+ ShaderFloat64 Bool32
+ ShaderInt64 Bool32
+ ShaderInt16 Bool32
+ ShaderResourceResidency Bool32
+ ShaderResourceMinLod Bool32
+ SparseBinding Bool32
+ SparseResidencyBuffer Bool32
+ SparseResidencyImage2D Bool32
+ SparseResidencyImage3D Bool32
+ SparseResidency2Samples Bool32
+ SparseResidency4Samples Bool32
+ SparseResidency8Samples Bool32
+ SparseResidency16Samples Bool32
+ SparseResidencyAliased Bool32
+ VariableMultisampleRate Bool32
+ InheritedQueries Bool32
+ reff97e405d *C.VkPhysicalDeviceFeatures
+ allocsf97e405d interface{}
+}
+
+// PhysicalDeviceLimits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceLimits.html
+type PhysicalDeviceLimits struct {
+ MaxImageDimension1D uint32
+ MaxImageDimension2D uint32
+ MaxImageDimension3D uint32
+ MaxImageDimensionCube uint32
+ MaxImageArrayLayers uint32
+ MaxTexelBufferElements uint32
+ MaxUniformBufferRange uint32
+ MaxStorageBufferRange uint32
+ MaxPushConstantsSize uint32
+ MaxMemoryAllocationCount uint32
+ MaxSamplerAllocationCount uint32
+ BufferImageGranularity DeviceSize
+ SparseAddressSpaceSize DeviceSize
+ MaxBoundDescriptorSets uint32
+ MaxPerStageDescriptorSamplers uint32
+ MaxPerStageDescriptorUniformBuffers uint32
+ MaxPerStageDescriptorStorageBuffers uint32
+ MaxPerStageDescriptorSampledImages uint32
+ MaxPerStageDescriptorStorageImages uint32
+ MaxPerStageDescriptorInputAttachments uint32
+ MaxPerStageResources uint32
+ MaxDescriptorSetSamplers uint32
+ MaxDescriptorSetUniformBuffers uint32
+ MaxDescriptorSetUniformBuffersDynamic uint32
+ MaxDescriptorSetStorageBuffers uint32
+ MaxDescriptorSetStorageBuffersDynamic uint32
+ MaxDescriptorSetSampledImages uint32
+ MaxDescriptorSetStorageImages uint32
+ MaxDescriptorSetInputAttachments uint32
+ MaxVertexInputAttributes uint32
+ MaxVertexInputBindings uint32
+ MaxVertexInputAttributeOffset uint32
+ MaxVertexInputBindingStride uint32
+ MaxVertexOutputComponents uint32
MaxTessellationGenerationLevel uint32
MaxTessellationPatchSize uint32
MaxTessellationControlPerVertexInputComponents uint32
@@ -465,7 +627,7 @@ type PhysicalDeviceLimits struct {
MaxViewportDimensions [2]uint32
ViewportBoundsRange [2]float32
ViewportSubPixelBits uint32
- MinMemoryMapAlignment uint
+ MinMemoryMapAlignment uint64
MinTexelBufferOffsetAlignment DeviceSize
MinUniformBufferOffsetAlignment DeviceSize
MinStorageBufferOffsetAlignment DeviceSize
@@ -509,4006 +671,6870 @@ type PhysicalDeviceLimits struct {
allocs7926795a interface{}
}
-// PhysicalDeviceSparseProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceSparseProperties.html
-type PhysicalDeviceSparseProperties struct {
- ResidencyStandard2DBlockShape Bool32
- ResidencyStandard2DMultisampleBlockShape Bool32
- ResidencyStandard3DBlockShape Bool32
- ResidencyAlignedMipSize Bool32
- ResidencyNonResidentStrict Bool32
- ref6d7c11e6 *C.VkPhysicalDeviceSparseProperties
- allocs6d7c11e6 interface{}
+// PhysicalDeviceMemoryProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceMemoryProperties.html
+type PhysicalDeviceMemoryProperties struct {
+ MemoryTypeCount uint32
+ MemoryTypes [32]MemoryType
+ MemoryHeapCount uint32
+ MemoryHeaps [16]MemoryHeap
+ ref3aabb5fd *C.VkPhysicalDeviceMemoryProperties
+ allocs3aabb5fd interface{}
+}
+
+// PhysicalDeviceSparseProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceSparseProperties.html
+type PhysicalDeviceSparseProperties struct {
+ ResidencyStandard2DBlockShape Bool32
+ ResidencyStandard2DMultisampleBlockShape Bool32
+ ResidencyStandard3DBlockShape Bool32
+ ResidencyAlignedMipSize Bool32
+ ResidencyNonResidentStrict Bool32
+ ref6d7c11e6 *C.VkPhysicalDeviceSparseProperties
+ allocs6d7c11e6 interface{}
+}
+
+// PhysicalDeviceProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceProperties.html
+type PhysicalDeviceProperties struct {
+ ApiVersion uint32
+ DriverVersion uint32
+ VendorID uint32
+ DeviceID uint32
+ DeviceType PhysicalDeviceType
+ DeviceName [256]byte
+ PipelineCacheUUID [16]byte
+ Limits PhysicalDeviceLimits
+ SparseProperties PhysicalDeviceSparseProperties
+ ref1080ca9d *C.VkPhysicalDeviceProperties
+ allocs1080ca9d interface{}
+}
+
+// QueueFamilyProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueueFamilyProperties.html
+type QueueFamilyProperties struct {
+ QueueFlags QueueFlags
+ QueueCount uint32
+ TimestampValidBits uint32
+ MinImageTransferGranularity Extent3D
+ refd538c446 *C.VkQueueFamilyProperties
+ allocsd538c446 interface{}
+}
+
+// DeviceQueueCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceQueueCreateInfo.html
+type DeviceQueueCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags DeviceQueueCreateFlags
+ QueueFamilyIndex uint32
+ QueueCount uint32
+ PQueuePriorities []float32
+ ref6087b30d *C.VkDeviceQueueCreateInfo
+ allocs6087b30d interface{}
+}
+
+// DeviceCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceCreateInfo.html
+type DeviceCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags DeviceCreateFlags
+ QueueCreateInfoCount uint32
+ PQueueCreateInfos []DeviceQueueCreateInfo
+ EnabledLayerCount uint32
+ PpEnabledLayerNames []string
+ EnabledExtensionCount uint32
+ PpEnabledExtensionNames []string
+ PEnabledFeatures []PhysicalDeviceFeatures
+ refc0d8b997 *C.VkDeviceCreateInfo
+ allocsc0d8b997 interface{}
+}
+
+// ExtensionProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExtensionProperties.html
+type ExtensionProperties struct {
+ ExtensionName [256]byte
+ SpecVersion uint32
+ ref2f001956 *C.VkExtensionProperties
+ allocs2f001956 interface{}
+}
+
+// LayerProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkLayerProperties.html
+type LayerProperties struct {
+ LayerName [256]byte
+ SpecVersion uint32
+ ImplementationVersion uint32
+ Description [256]byte
+ refd9407ce7 *C.VkLayerProperties
+ allocsd9407ce7 interface{}
+}
+
+// SubmitInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubmitInfo.html
+type SubmitInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ WaitSemaphoreCount uint32
+ PWaitSemaphores []Semaphore
+ PWaitDstStageMask []PipelineStageFlags
+ CommandBufferCount uint32
+ PCommandBuffers []CommandBuffer
+ SignalSemaphoreCount uint32
+ PSignalSemaphores []Semaphore
+ ref22884025 *C.VkSubmitInfo
+ allocs22884025 interface{}
+}
+
+// MappedMemoryRange as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMappedMemoryRange.html
+type MappedMemoryRange struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Memory DeviceMemory
+ Offset DeviceSize
+ Size DeviceSize
+ ref42a37320 *C.VkMappedMemoryRange
+ allocs42a37320 interface{}
+}
+
+// MemoryAllocateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryAllocateInfo.html
+type MemoryAllocateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ AllocationSize DeviceSize
+ MemoryTypeIndex uint32
+ ref31032b *C.VkMemoryAllocateInfo
+ allocs31032b interface{}
+}
+
+// MemoryRequirements as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryRequirements.html
+type MemoryRequirements struct {
+ Size DeviceSize
+ Alignment DeviceSize
+ MemoryTypeBits uint32
+ ref5259fc6b *C.VkMemoryRequirements
+ allocs5259fc6b interface{}
+}
+
+// SparseMemoryBind as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseMemoryBind.html
+type SparseMemoryBind struct {
+ ResourceOffset DeviceSize
+ Size DeviceSize
+ Memory DeviceMemory
+ MemoryOffset DeviceSize
+ Flags SparseMemoryBindFlags
+ ref5bf418e8 *C.VkSparseMemoryBind
+ allocs5bf418e8 interface{}
+}
+
+// SparseBufferMemoryBindInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseBufferMemoryBindInfo.html
+type SparseBufferMemoryBindInfo struct {
+ Buffer Buffer
+ BindCount uint32
+ PBinds []SparseMemoryBind
+ refebcaf40c *C.VkSparseBufferMemoryBindInfo
+ allocsebcaf40c interface{}
+}
+
+// SparseImageOpaqueMemoryBindInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseImageOpaqueMemoryBindInfo.html
+type SparseImageOpaqueMemoryBindInfo struct {
+ Image Image
+ BindCount uint32
+ PBinds []SparseMemoryBind
+ reffb1b3d56 *C.VkSparseImageOpaqueMemoryBindInfo
+ allocsfb1b3d56 interface{}
+}
+
+// ImageSubresource as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageSubresource.html
+type ImageSubresource struct {
+ AspectMask ImageAspectFlags
+ MipLevel uint32
+ ArrayLayer uint32
+ reffeaa0d8a *C.VkImageSubresource
+ allocsfeaa0d8a interface{}
+}
+
+// SparseImageMemoryBind as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseImageMemoryBind.html
+type SparseImageMemoryBind struct {
+ Subresource ImageSubresource
+ Offset Offset3D
+ Extent Extent3D
+ Memory DeviceMemory
+ MemoryOffset DeviceSize
+ Flags SparseMemoryBindFlags
+ ref41b516d7 *C.VkSparseImageMemoryBind
+ allocs41b516d7 interface{}
+}
+
+// SparseImageMemoryBindInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseImageMemoryBindInfo.html
+type SparseImageMemoryBindInfo struct {
+ Image Image
+ BindCount uint32
+ PBinds []SparseImageMemoryBind
+ ref50faeb70 *C.VkSparseImageMemoryBindInfo
+ allocs50faeb70 interface{}
+}
+
+// BindSparseInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBindSparseInfo.html
+type BindSparseInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ WaitSemaphoreCount uint32
+ PWaitSemaphores []Semaphore
+ BufferBindCount uint32
+ PBufferBinds []SparseBufferMemoryBindInfo
+ ImageOpaqueBindCount uint32
+ PImageOpaqueBinds []SparseImageOpaqueMemoryBindInfo
+ ImageBindCount uint32
+ PImageBinds []SparseImageMemoryBindInfo
+ SignalSemaphoreCount uint32
+ PSignalSemaphores []Semaphore
+ refb0cbe910 *C.VkBindSparseInfo
+ allocsb0cbe910 interface{}
+}
+
+// SparseImageFormatProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseImageFormatProperties.html
+type SparseImageFormatProperties struct {
+ AspectMask ImageAspectFlags
+ ImageGranularity Extent3D
+ Flags SparseImageFormatFlags
+ ref2c12cf44 *C.VkSparseImageFormatProperties
+ allocs2c12cf44 interface{}
+}
+
+// SparseImageMemoryRequirements as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseImageMemoryRequirements.html
+type SparseImageMemoryRequirements struct {
+ FormatProperties SparseImageFormatProperties
+ ImageMipTailFirstLod uint32
+ ImageMipTailSize DeviceSize
+ ImageMipTailOffset DeviceSize
+ ImageMipTailStride DeviceSize
+ ref685a2323 *C.VkSparseImageMemoryRequirements
+ allocs685a2323 interface{}
+}
+
+// FenceCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFenceCreateInfo.html
+type FenceCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags FenceCreateFlags
+ refb8ff4840 *C.VkFenceCreateInfo
+ allocsb8ff4840 interface{}
+}
+
+// SemaphoreCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSemaphoreCreateInfo.html
+type SemaphoreCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags SemaphoreCreateFlags
+ reff130cd2b *C.VkSemaphoreCreateInfo
+ allocsf130cd2b interface{}
+}
+
+// EventCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkEventCreateInfo.html
+type EventCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags EventCreateFlags
+ refa54f9ec8 *C.VkEventCreateInfo
+ allocsa54f9ec8 interface{}
+}
+
+// QueryPoolCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueryPoolCreateInfo.html
+type QueryPoolCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags QueryPoolCreateFlags
+ QueryType QueryType
+ QueryCount uint32
+ PipelineStatistics QueryPipelineStatisticFlags
+ ref85dfcd4a *C.VkQueryPoolCreateInfo
+ allocs85dfcd4a interface{}
+}
+
+// BufferCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferCreateInfo.html
+type BufferCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags BufferCreateFlags
+ Size DeviceSize
+ Usage BufferUsageFlags
+ SharingMode SharingMode
+ QueueFamilyIndexCount uint32
+ PQueueFamilyIndices []uint32
+ reffe19d2cd *C.VkBufferCreateInfo
+ allocsfe19d2cd interface{}
+}
+
+// BufferViewCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferViewCreateInfo.html
+type BufferViewCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags BufferViewCreateFlags
+ Buffer Buffer
+ Format Format
+ Offset DeviceSize
+ Range DeviceSize
+ ref49b97027 *C.VkBufferViewCreateInfo
+ allocs49b97027 interface{}
+}
+
+// ImageCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageCreateInfo.html
+type ImageCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags ImageCreateFlags
+ ImageType ImageType
+ Format Format
+ Extent Extent3D
+ MipLevels uint32
+ ArrayLayers uint32
+ Samples SampleCountFlagBits
+ Tiling ImageTiling
+ Usage ImageUsageFlags
+ SharingMode SharingMode
+ QueueFamilyIndexCount uint32
+ PQueueFamilyIndices []uint32
+ InitialLayout ImageLayout
+ reffb587ba1 *C.VkImageCreateInfo
+ allocsfb587ba1 interface{}
+}
+
+// SubresourceLayout as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubresourceLayout.html
+type SubresourceLayout struct {
+ Offset DeviceSize
+ Size DeviceSize
+ RowPitch DeviceSize
+ ArrayPitch DeviceSize
+ DepthPitch DeviceSize
+ ref182612ad *C.VkSubresourceLayout
+ allocs182612ad interface{}
+}
+
+// ComponentMapping as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkComponentMapping.html
+type ComponentMapping struct {
+ R ComponentSwizzle
+ G ComponentSwizzle
+ B ComponentSwizzle
+ A ComponentSwizzle
+ ref63d3d563 *C.VkComponentMapping
+ allocs63d3d563 interface{}
+}
+
+// ImageViewCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageViewCreateInfo.html
+type ImageViewCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags ImageViewCreateFlags
+ Image Image
+ ViewType ImageViewType
+ Format Format
+ Components ComponentMapping
+ SubresourceRange ImageSubresourceRange
+ ref77e8d4b8 *C.VkImageViewCreateInfo
+ allocs77e8d4b8 interface{}
+}
+
+// ShaderModuleCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkShaderModuleCreateInfo.html
+type ShaderModuleCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags ShaderModuleCreateFlags
+ CodeSize uint64
+ PCode []uint32
+ refc663d23e *C.VkShaderModuleCreateInfo
+ allocsc663d23e interface{}
+}
+
+// PipelineCacheCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCacheCreateInfo.html
+type PipelineCacheCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags PipelineCacheCreateFlags
+ InitialDataSize uint64
+ PInitialData unsafe.Pointer
+ reff11e7dd1 *C.VkPipelineCacheCreateInfo
+ allocsf11e7dd1 interface{}
+}
+
+// SpecializationMapEntry as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSpecializationMapEntry.html
+type SpecializationMapEntry struct {
+ ConstantID uint32
+ Offset uint32
+ Size uint64
+ ref2fd815d1 *C.VkSpecializationMapEntry
+ allocs2fd815d1 interface{}
+}
+
+// SpecializationInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSpecializationInfo.html
+type SpecializationInfo struct {
+ MapEntryCount uint32
+ PMapEntries []SpecializationMapEntry
+ DataSize uint64
+ PData unsafe.Pointer
+ ref6bc395a3 *C.VkSpecializationInfo
+ allocs6bc395a3 interface{}
+}
+
+// PipelineShaderStageCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineShaderStageCreateInfo.html
+type PipelineShaderStageCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags PipelineShaderStageCreateFlags
+ Stage ShaderStageFlagBits
+ Module ShaderModule
+ PName string
+ PSpecializationInfo []SpecializationInfo
+ ref50ba8b60 *C.VkPipelineShaderStageCreateInfo
+ allocs50ba8b60 interface{}
+}
+
+// ComputePipelineCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkComputePipelineCreateInfo.html
+type ComputePipelineCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags PipelineCreateFlags
+ Stage PipelineShaderStageCreateInfo
+ Layout PipelineLayout
+ BasePipelineHandle Pipeline
+ BasePipelineIndex int32
+ ref77823220 *C.VkComputePipelineCreateInfo
+ allocs77823220 interface{}
+}
+
+// VertexInputBindingDescription as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkVertexInputBindingDescription.html
+type VertexInputBindingDescription struct {
+ Binding uint32
+ Stride uint32
+ InputRate VertexInputRate
+ ref5c9d8c23 *C.VkVertexInputBindingDescription
+ allocs5c9d8c23 interface{}
+}
+
+// VertexInputAttributeDescription as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkVertexInputAttributeDescription.html
+type VertexInputAttributeDescription struct {
+ Location uint32
+ Binding uint32
+ Format Format
+ Offset uint32
+ refdc4635ff *C.VkVertexInputAttributeDescription
+ allocsdc4635ff interface{}
+}
+
+// PipelineVertexInputStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineVertexInputStateCreateInfo.html
+type PipelineVertexInputStateCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags PipelineVertexInputStateCreateFlags
+ VertexBindingDescriptionCount uint32
+ PVertexBindingDescriptions []VertexInputBindingDescription
+ VertexAttributeDescriptionCount uint32
+ PVertexAttributeDescriptions []VertexInputAttributeDescription
+ ref5fe4aa50 *C.VkPipelineVertexInputStateCreateInfo
+ allocs5fe4aa50 interface{}
+}
+
+// PipelineInputAssemblyStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineInputAssemblyStateCreateInfo.html
+type PipelineInputAssemblyStateCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags PipelineInputAssemblyStateCreateFlags
+ Topology PrimitiveTopology
+ PrimitiveRestartEnable Bool32
+ ref22e1691d *C.VkPipelineInputAssemblyStateCreateInfo
+ allocs22e1691d interface{}
+}
+
+// PipelineTessellationStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineTessellationStateCreateInfo.html
+type PipelineTessellationStateCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags PipelineTessellationStateCreateFlags
+ PatchControlPoints uint32
+ ref4ef3997a *C.VkPipelineTessellationStateCreateInfo
+ allocs4ef3997a interface{}
+}
+
+// Viewport as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkViewport.html
+type Viewport struct {
+ X float32
+ Y float32
+ Width float32
+ Height float32
+ MinDepth float32
+ MaxDepth float32
+ ref75cf5291 *C.VkViewport
+ allocs75cf5291 interface{}
+}
+
+// PipelineViewportStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineViewportStateCreateInfo.html
+type PipelineViewportStateCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags PipelineViewportStateCreateFlags
+ ViewportCount uint32
+ PViewports []Viewport
+ ScissorCount uint32
+ PScissors []Rect2D
+ refc4705791 *C.VkPipelineViewportStateCreateInfo
+ allocsc4705791 interface{}
+}
+
+// PipelineRasterizationStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRasterizationStateCreateInfo.html
+type PipelineRasterizationStateCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags PipelineRasterizationStateCreateFlags
+ DepthClampEnable Bool32
+ RasterizerDiscardEnable Bool32
+ PolygonMode PolygonMode
+ CullMode CullModeFlags
+ FrontFace FrontFace
+ DepthBiasEnable Bool32
+ DepthBiasConstantFactor float32
+ DepthBiasClamp float32
+ DepthBiasSlopeFactor float32
+ LineWidth float32
+ ref48cb9fad *C.VkPipelineRasterizationStateCreateInfo
+ allocs48cb9fad interface{}
+}
+
+// PipelineMultisampleStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineMultisampleStateCreateInfo.html
+type PipelineMultisampleStateCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags PipelineMultisampleStateCreateFlags
+ RasterizationSamples SampleCountFlagBits
+ SampleShadingEnable Bool32
+ MinSampleShading float32
+ PSampleMask []SampleMask
+ AlphaToCoverageEnable Bool32
+ AlphaToOneEnable Bool32
+ refb6538bfb *C.VkPipelineMultisampleStateCreateInfo
+ allocsb6538bfb interface{}
+}
+
+// StencilOpState as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkStencilOpState.html
+type StencilOpState struct {
+ FailOp StencilOp
+ PassOp StencilOp
+ DepthFailOp StencilOp
+ CompareOp CompareOp
+ CompareMask uint32
+ WriteMask uint32
+ Reference uint32
+ ref28886871 *C.VkStencilOpState
+ allocs28886871 interface{}
+}
+
+// PipelineDepthStencilStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineDepthStencilStateCreateInfo.html
+type PipelineDepthStencilStateCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags PipelineDepthStencilStateCreateFlags
+ DepthTestEnable Bool32
+ DepthWriteEnable Bool32
+ DepthCompareOp CompareOp
+ DepthBoundsTestEnable Bool32
+ StencilTestEnable Bool32
+ Front StencilOpState
+ Back StencilOpState
+ MinDepthBounds float32
+ MaxDepthBounds float32
+ refeabfcf1 *C.VkPipelineDepthStencilStateCreateInfo
+ allocseabfcf1 interface{}
+}
+
+// PipelineColorBlendAttachmentState as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineColorBlendAttachmentState.html
+type PipelineColorBlendAttachmentState struct {
+ BlendEnable Bool32
+ SrcColorBlendFactor BlendFactor
+ DstColorBlendFactor BlendFactor
+ ColorBlendOp BlendOp
+ SrcAlphaBlendFactor BlendFactor
+ DstAlphaBlendFactor BlendFactor
+ AlphaBlendOp BlendOp
+ ColorWriteMask ColorComponentFlags
+ ref9e889477 *C.VkPipelineColorBlendAttachmentState
+ allocs9e889477 interface{}
+}
+
+// PipelineColorBlendStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineColorBlendStateCreateInfo.html
+type PipelineColorBlendStateCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags PipelineColorBlendStateCreateFlags
+ LogicOpEnable Bool32
+ LogicOp LogicOp
+ AttachmentCount uint32
+ PAttachments []PipelineColorBlendAttachmentState
+ BlendConstants [4]float32
+ ref2a9b490b *C.VkPipelineColorBlendStateCreateInfo
+ allocs2a9b490b interface{}
+}
+
+// PipelineDynamicStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineDynamicStateCreateInfo.html
+type PipelineDynamicStateCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags PipelineDynamicStateCreateFlags
+ DynamicStateCount uint32
+ PDynamicStates []DynamicState
+ ref246d7bc8 *C.VkPipelineDynamicStateCreateInfo
+ allocs246d7bc8 interface{}
+}
+
+// GraphicsPipelineCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkGraphicsPipelineCreateInfo.html
+type GraphicsPipelineCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags PipelineCreateFlags
+ StageCount uint32
+ PStages []PipelineShaderStageCreateInfo
+ PVertexInputState *PipelineVertexInputStateCreateInfo
+ PInputAssemblyState *PipelineInputAssemblyStateCreateInfo
+ PTessellationState *PipelineTessellationStateCreateInfo
+ PViewportState *PipelineViewportStateCreateInfo
+ PRasterizationState *PipelineRasterizationStateCreateInfo
+ PMultisampleState *PipelineMultisampleStateCreateInfo
+ PDepthStencilState *PipelineDepthStencilStateCreateInfo
+ PColorBlendState *PipelineColorBlendStateCreateInfo
+ PDynamicState *PipelineDynamicStateCreateInfo
+ Layout PipelineLayout
+ RenderPass RenderPass
+ Subpass uint32
+ BasePipelineHandle Pipeline
+ BasePipelineIndex int32
+ ref178f88b6 *C.VkGraphicsPipelineCreateInfo
+ allocs178f88b6 interface{}
+}
+
+// PushConstantRange as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPushConstantRange.html
+type PushConstantRange struct {
+ StageFlags ShaderStageFlags
+ Offset uint32
+ Size uint32
+ ref6f025856 *C.VkPushConstantRange
+ allocs6f025856 interface{}
+}
+
+// PipelineLayoutCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineLayoutCreateInfo.html
+type PipelineLayoutCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags PipelineLayoutCreateFlags
+ SetLayoutCount uint32
+ PSetLayouts []DescriptorSetLayout
+ PushConstantRangeCount uint32
+ PPushConstantRanges []PushConstantRange
+ ref64cc4eed *C.VkPipelineLayoutCreateInfo
+ allocs64cc4eed interface{}
+}
+
+// SamplerCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerCreateInfo.html
+type SamplerCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags SamplerCreateFlags
+ MagFilter Filter
+ MinFilter Filter
+ MipmapMode SamplerMipmapMode
+ AddressModeU SamplerAddressMode
+ AddressModeV SamplerAddressMode
+ AddressModeW SamplerAddressMode
+ MipLodBias float32
+ AnisotropyEnable Bool32
+ MaxAnisotropy float32
+ CompareEnable Bool32
+ CompareOp CompareOp
+ MinLod float32
+ MaxLod float32
+ BorderColor BorderColor
+ UnnormalizedCoordinates Bool32
+ refce034abf *C.VkSamplerCreateInfo
+ allocsce034abf interface{}
+}
+
+// CopyDescriptorSet as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCopyDescriptorSet.html
+type CopyDescriptorSet struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SrcSet DescriptorSet
+ SrcBinding uint32
+ SrcArrayElement uint32
+ DstSet DescriptorSet
+ DstBinding uint32
+ DstArrayElement uint32
+ DescriptorCount uint32
+ reffe237a3a *C.VkCopyDescriptorSet
+ allocsfe237a3a interface{}
+}
+
+// DescriptorBufferInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorBufferInfo.html
+type DescriptorBufferInfo struct {
+ Buffer Buffer
+ Offset DeviceSize
+ Range DeviceSize
+ refe64bec0e *C.VkDescriptorBufferInfo
+ allocse64bec0e interface{}
+}
+
+// DescriptorImageInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorImageInfo.html
+type DescriptorImageInfo struct {
+ Sampler Sampler
+ ImageView ImageView
+ ImageLayout ImageLayout
+ refaf073b07 *C.VkDescriptorImageInfo
+ allocsaf073b07 interface{}
+}
+
+// DescriptorPoolSize as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorPoolSize.html
+type DescriptorPoolSize struct {
+ Type DescriptorType
+ DescriptorCount uint32
+ refe15137da *C.VkDescriptorPoolSize
+ allocse15137da interface{}
+}
+
+// DescriptorPoolCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorPoolCreateInfo.html
+type DescriptorPoolCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags DescriptorPoolCreateFlags
+ MaxSets uint32
+ PoolSizeCount uint32
+ PPoolSizes []DescriptorPoolSize
+ ref19868463 *C.VkDescriptorPoolCreateInfo
+ allocs19868463 interface{}
+}
+
+// DescriptorSetAllocateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetAllocateInfo.html
+type DescriptorSetAllocateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DescriptorPool DescriptorPool
+ DescriptorSetCount uint32
+ PSetLayouts []DescriptorSetLayout
+ ref2dd6cc22 *C.VkDescriptorSetAllocateInfo
+ allocs2dd6cc22 interface{}
+}
+
+// DescriptorSetLayoutBinding as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetLayoutBinding.html
+type DescriptorSetLayoutBinding struct {
+ Binding uint32
+ DescriptorType DescriptorType
+ DescriptorCount uint32
+ StageFlags ShaderStageFlags
+ PImmutableSamplers []Sampler
+ ref8b50b4ec *C.VkDescriptorSetLayoutBinding
+ allocs8b50b4ec interface{}
+}
+
+// DescriptorSetLayoutCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetLayoutCreateInfo.html
+type DescriptorSetLayoutCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags DescriptorSetLayoutCreateFlags
+ BindingCount uint32
+ PBindings []DescriptorSetLayoutBinding
+ ref5ee8e0ed *C.VkDescriptorSetLayoutCreateInfo
+ allocs5ee8e0ed interface{}
+}
+
+// WriteDescriptorSet as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkWriteDescriptorSet.html
+type WriteDescriptorSet struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DstSet DescriptorSet
+ DstBinding uint32
+ DstArrayElement uint32
+ DescriptorCount uint32
+ DescriptorType DescriptorType
+ PImageInfo []DescriptorImageInfo
+ PBufferInfo []DescriptorBufferInfo
+ PTexelBufferView []BufferView
+ ref3cec3f3f *C.VkWriteDescriptorSet
+ allocs3cec3f3f interface{}
+}
+
+// AttachmentDescription as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAttachmentDescription.html
+type AttachmentDescription struct {
+ Flags AttachmentDescriptionFlags
+ Format Format
+ Samples SampleCountFlagBits
+ LoadOp AttachmentLoadOp
+ StoreOp AttachmentStoreOp
+ StencilLoadOp AttachmentLoadOp
+ StencilStoreOp AttachmentStoreOp
+ InitialLayout ImageLayout
+ FinalLayout ImageLayout
+ refa5d685fc *C.VkAttachmentDescription
+ allocsa5d685fc interface{}
+}
+
+// AttachmentReference as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAttachmentReference.html
+type AttachmentReference struct {
+ Attachment uint32
+ Layout ImageLayout
+ refef4776de *C.VkAttachmentReference
+ allocsef4776de interface{}
+}
+
+// FramebufferCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFramebufferCreateInfo.html
+type FramebufferCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags FramebufferCreateFlags
+ RenderPass RenderPass
+ AttachmentCount uint32
+ PAttachments []ImageView
+ Width uint32
+ Height uint32
+ Layers uint32
+ refa3ad85cc *C.VkFramebufferCreateInfo
+ allocsa3ad85cc interface{}
+}
+
+// SubpassDescription as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubpassDescription.html
+type SubpassDescription struct {
+ Flags SubpassDescriptionFlags
+ PipelineBindPoint PipelineBindPoint
+ InputAttachmentCount uint32
+ PInputAttachments []AttachmentReference
+ ColorAttachmentCount uint32
+ PColorAttachments []AttachmentReference
+ PResolveAttachments []AttachmentReference
+ PDepthStencilAttachment *AttachmentReference
+ PreserveAttachmentCount uint32
+ PPreserveAttachments []uint32
+ refc7bfeda *C.VkSubpassDescription
+ allocsc7bfeda interface{}
+}
+
+// SubpassDependency as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubpassDependency.html
+type SubpassDependency struct {
+ SrcSubpass uint32
+ DstSubpass uint32
+ SrcStageMask PipelineStageFlags
+ DstStageMask PipelineStageFlags
+ SrcAccessMask AccessFlags
+ DstAccessMask AccessFlags
+ DependencyFlags DependencyFlags
+ refdb197adb *C.VkSubpassDependency
+ allocsdb197adb interface{}
+}
+
+// RenderPassCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderPassCreateInfo.html
+type RenderPassCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags RenderPassCreateFlags
+ AttachmentCount uint32
+ PAttachments []AttachmentDescription
+ SubpassCount uint32
+ PSubpasses []SubpassDescription
+ DependencyCount uint32
+ PDependencies []SubpassDependency
+ ref886d7d86 *C.VkRenderPassCreateInfo
+ allocs886d7d86 interface{}
+}
+
+// CommandPoolCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandPoolCreateInfo.html
+type CommandPoolCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags CommandPoolCreateFlags
+ QueueFamilyIndex uint32
+ ref73550de0 *C.VkCommandPoolCreateInfo
+ allocs73550de0 interface{}
+}
+
+// CommandBufferAllocateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandBufferAllocateInfo.html
+type CommandBufferAllocateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ CommandPool CommandPool
+ Level CommandBufferLevel
+ CommandBufferCount uint32
+ refd1a0a7c8 *C.VkCommandBufferAllocateInfo
+ allocsd1a0a7c8 interface{}
+}
+
+// CommandBufferInheritanceInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandBufferInheritanceInfo.html
+type CommandBufferInheritanceInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ RenderPass RenderPass
+ Subpass uint32
+ Framebuffer Framebuffer
+ OcclusionQueryEnable Bool32
+ QueryFlags QueryControlFlags
+ PipelineStatistics QueryPipelineStatisticFlags
+ ref737f8019 *C.VkCommandBufferInheritanceInfo
+ allocs737f8019 interface{}
+}
+
+// CommandBufferBeginInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandBufferBeginInfo.html
+type CommandBufferBeginInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags CommandBufferUsageFlags
+ PInheritanceInfo []CommandBufferInheritanceInfo
+ ref266762df *C.VkCommandBufferBeginInfo
+ allocs266762df interface{}
+}
+
+// BufferCopy as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferCopy.html
+type BufferCopy struct {
+ SrcOffset DeviceSize
+ DstOffset DeviceSize
+ Size DeviceSize
+ ref12184ffd *C.VkBufferCopy
+ allocs12184ffd interface{}
+}
+
+// ImageSubresourceLayers as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageSubresourceLayers.html
+type ImageSubresourceLayers struct {
+ AspectMask ImageAspectFlags
+ MipLevel uint32
+ BaseArrayLayer uint32
+ LayerCount uint32
+ ref3b13bcd2 *C.VkImageSubresourceLayers
+ allocs3b13bcd2 interface{}
+}
+
+// BufferImageCopy as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferImageCopy.html
+type BufferImageCopy struct {
+ BufferOffset DeviceSize
+ BufferRowLength uint32
+ BufferImageHeight uint32
+ ImageSubresource ImageSubresourceLayers
+ ImageOffset Offset3D
+ ImageExtent Extent3D
+ ref6d50e36e *C.VkBufferImageCopy
+ allocs6d50e36e interface{}
+}
+
+// ClearColorValue as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkClearColorValue.html
+const sizeofClearColorValue = unsafe.Sizeof(C.VkClearColorValue{})
+
+type ClearColorValue [sizeofClearColorValue]byte
+
+// ClearDepthStencilValue as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkClearDepthStencilValue.html
+type ClearDepthStencilValue struct {
+ Depth float32
+ Stencil uint32
+ refa7d07c03 *C.VkClearDepthStencilValue
+ allocsa7d07c03 interface{}
+}
+
+// ClearValue as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkClearValue.html
+const sizeofClearValue = unsafe.Sizeof(C.VkClearValue{})
+
+type ClearValue [sizeofClearValue]byte
+
+// ClearAttachment as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkClearAttachment.html
+type ClearAttachment struct {
+ AspectMask ImageAspectFlags
+ ColorAttachment uint32
+ ClearValue ClearValue
+ refe9150303 *C.VkClearAttachment
+ allocse9150303 interface{}
+}
+
+// ClearRect as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkClearRect.html
+type ClearRect struct {
+ Rect Rect2D
+ BaseArrayLayer uint32
+ LayerCount uint32
+ ref1d449c8b *C.VkClearRect
+ allocs1d449c8b interface{}
+}
+
+// ImageBlit as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageBlit.html
+type ImageBlit struct {
+ SrcSubresource ImageSubresourceLayers
+ SrcOffsets [2]Offset3D
+ DstSubresource ImageSubresourceLayers
+ DstOffsets [2]Offset3D
+ ref11311e8d *C.VkImageBlit
+ allocs11311e8d interface{}
+}
+
+// ImageCopy as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageCopy.html
+type ImageCopy struct {
+ SrcSubresource ImageSubresourceLayers
+ SrcOffset Offset3D
+ DstSubresource ImageSubresourceLayers
+ DstOffset Offset3D
+ Extent Extent3D
+ ref4e7a1214 *C.VkImageCopy
+ allocs4e7a1214 interface{}
+}
+
+// ImageResolve as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageResolve.html
+type ImageResolve struct {
+ SrcSubresource ImageSubresourceLayers
+ SrcOffset Offset3D
+ DstSubresource ImageSubresourceLayers
+ DstOffset Offset3D
+ Extent Extent3D
+ ref7bda856d *C.VkImageResolve
+ allocs7bda856d interface{}
+}
+
+// RenderPassBeginInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderPassBeginInfo.html
+type RenderPassBeginInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ RenderPass RenderPass
+ Framebuffer Framebuffer
+ RenderArea Rect2D
+ ClearValueCount uint32
+ PClearValues []ClearValue
+ ref3c3752c8 *C.VkRenderPassBeginInfo
+ allocs3c3752c8 interface{}
+}
+
+// SamplerYcbcrConversion as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerYcbcrConversion.html
+type SamplerYcbcrConversion C.VkSamplerYcbcrConversion
+
+// DescriptorUpdateTemplate as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorUpdateTemplate.html
+type DescriptorUpdateTemplate C.VkDescriptorUpdateTemplate
+
+// SubgroupFeatureFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubgroupFeatureFlags.html
+type SubgroupFeatureFlags uint32
+
+// PeerMemoryFeatureFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPeerMemoryFeatureFlags.html
+type PeerMemoryFeatureFlags uint32
+
+// MemoryAllocateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryAllocateFlags.html
+type MemoryAllocateFlags uint32
+
+// CommandPoolTrimFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandPoolTrimFlags.html
+type CommandPoolTrimFlags uint32
+
+// DescriptorUpdateTemplateCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorUpdateTemplateCreateFlags.html
+type DescriptorUpdateTemplateCreateFlags uint32
+
+// ExternalMemoryHandleTypeFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryHandleTypeFlags.html
+type ExternalMemoryHandleTypeFlags uint32
+
+// ExternalMemoryFeatureFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryFeatureFlags.html
+type ExternalMemoryFeatureFlags uint32
+
+// ExternalFenceHandleTypeFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalFenceHandleTypeFlags.html
+type ExternalFenceHandleTypeFlags uint32
+
+// ExternalFenceFeatureFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalFenceFeatureFlags.html
+type ExternalFenceFeatureFlags uint32
+
+// FenceImportFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFenceImportFlags.html
+type FenceImportFlags uint32
+
+// SemaphoreImportFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSemaphoreImportFlags.html
+type SemaphoreImportFlags uint32
+
+// ExternalSemaphoreHandleTypeFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalSemaphoreHandleTypeFlags.html
+type ExternalSemaphoreHandleTypeFlags uint32
+
+// ExternalSemaphoreFeatureFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalSemaphoreFeatureFlags.html
+type ExternalSemaphoreFeatureFlags uint32
+
+// PhysicalDeviceSubgroupProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceSubgroupProperties.html
+type PhysicalDeviceSubgroupProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SubgroupSize uint32
+ SupportedStages ShaderStageFlags
+ SupportedOperations SubgroupFeatureFlags
+ QuadOperationsInAllStages Bool32
+ refb019c29f *C.VkPhysicalDeviceSubgroupProperties
+ allocsb019c29f interface{}
+}
+
+// BindBufferMemoryInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBindBufferMemoryInfo.html
+type BindBufferMemoryInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Buffer Buffer
+ Memory DeviceMemory
+ MemoryOffset DeviceSize
+ refd392322d *C.VkBindBufferMemoryInfo
+ allocsd392322d interface{}
+}
+
+// BindImageMemoryInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBindImageMemoryInfo.html
+type BindImageMemoryInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Image Image
+ Memory DeviceMemory
+ MemoryOffset DeviceSize
+ ref767a2113 *C.VkBindImageMemoryInfo
+ allocs767a2113 interface{}
+}
+
+// PhysicalDevice16BitStorageFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDevice16BitStorageFeatures.html
+type PhysicalDevice16BitStorageFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ StorageBuffer16BitAccess Bool32
+ UniformAndStorageBuffer16BitAccess Bool32
+ StoragePushConstant16 Bool32
+ StorageInputOutput16 Bool32
+ refa90fed14 *C.VkPhysicalDevice16BitStorageFeatures
+ allocsa90fed14 interface{}
+}
+
+// MemoryDedicatedRequirements as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryDedicatedRequirements.html
+type MemoryDedicatedRequirements struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PrefersDedicatedAllocation Bool32
+ RequiresDedicatedAllocation Bool32
+ refaa924122 *C.VkMemoryDedicatedRequirements
+ allocsaa924122 interface{}
+}
+
+// MemoryDedicatedAllocateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryDedicatedAllocateInfo.html
+type MemoryDedicatedAllocateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Image Image
+ Buffer Buffer
+ reff8fabe62 *C.VkMemoryDedicatedAllocateInfo
+ allocsf8fabe62 interface{}
+}
+
+// MemoryAllocateFlagsInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryAllocateFlagsInfo.html
+type MemoryAllocateFlagsInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags MemoryAllocateFlags
+ DeviceMask uint32
+ ref7ca6664 *C.VkMemoryAllocateFlagsInfo
+ allocs7ca6664 interface{}
+}
+
+// DeviceGroupRenderPassBeginInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceGroupRenderPassBeginInfo.html
+type DeviceGroupRenderPassBeginInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DeviceMask uint32
+ DeviceRenderAreaCount uint32
+ PDeviceRenderAreas []Rect2D
+ ref139f3599 *C.VkDeviceGroupRenderPassBeginInfo
+ allocs139f3599 interface{}
+}
+
+// DeviceGroupCommandBufferBeginInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceGroupCommandBufferBeginInfo.html
+type DeviceGroupCommandBufferBeginInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DeviceMask uint32
+ refb9a8f0cd *C.VkDeviceGroupCommandBufferBeginInfo
+ allocsb9a8f0cd interface{}
+}
+
+// DeviceGroupSubmitInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceGroupSubmitInfo.html
+type DeviceGroupSubmitInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ WaitSemaphoreCount uint32
+ PWaitSemaphoreDeviceIndices []uint32
+ CommandBufferCount uint32
+ PCommandBufferDeviceMasks []uint32
+ SignalSemaphoreCount uint32
+ PSignalSemaphoreDeviceIndices []uint32
+ refea4e7ce4 *C.VkDeviceGroupSubmitInfo
+ allocsea4e7ce4 interface{}
+}
+
+// DeviceGroupBindSparseInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceGroupBindSparseInfo.html
+type DeviceGroupBindSparseInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ResourceDeviceIndex uint32
+ MemoryDeviceIndex uint32
+ ref5b5446cd *C.VkDeviceGroupBindSparseInfo
+ allocs5b5446cd interface{}
+}
+
+// BindBufferMemoryDeviceGroupInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBindBufferMemoryDeviceGroupInfo.html
+type BindBufferMemoryDeviceGroupInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DeviceIndexCount uint32
+ PDeviceIndices []uint32
+ reff136b64f *C.VkBindBufferMemoryDeviceGroupInfo
+ allocsf136b64f interface{}
+}
+
+// BindImageMemoryDeviceGroupInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBindImageMemoryDeviceGroupInfo.html
+type BindImageMemoryDeviceGroupInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DeviceIndexCount uint32
+ PDeviceIndices []uint32
+ SplitInstanceBindRegionCount uint32
+ PSplitInstanceBindRegions []Rect2D
+ ref24f026a5 *C.VkBindImageMemoryDeviceGroupInfo
+ allocs24f026a5 interface{}
+}
+
+// PhysicalDeviceGroupProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceGroupProperties.html
+type PhysicalDeviceGroupProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PhysicalDeviceCount uint32
+ PhysicalDevices [32]PhysicalDevice
+ SubsetAllocation Bool32
+ ref2aa9a663 *C.VkPhysicalDeviceGroupProperties
+ allocs2aa9a663 interface{}
+}
+
+// DeviceGroupDeviceCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceGroupDeviceCreateInfo.html
+type DeviceGroupDeviceCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PhysicalDeviceCount uint32
+ PPhysicalDevices []PhysicalDevice
+ refb2275723 *C.VkDeviceGroupDeviceCreateInfo
+ allocsb2275723 interface{}
+}
+
+// BufferMemoryRequirementsInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferMemoryRequirementsInfo2.html
+type BufferMemoryRequirementsInfo2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Buffer Buffer
+ reff54a2a42 *C.VkBufferMemoryRequirementsInfo2
+ allocsf54a2a42 interface{}
+}
+
+// ImageMemoryRequirementsInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageMemoryRequirementsInfo2.html
+type ImageMemoryRequirementsInfo2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Image Image
+ ref75b3ca05 *C.VkImageMemoryRequirementsInfo2
+ allocs75b3ca05 interface{}
+}
+
+// ImageSparseMemoryRequirementsInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageSparseMemoryRequirementsInfo2.html
+type ImageSparseMemoryRequirementsInfo2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Image Image
+ ref878956f7 *C.VkImageSparseMemoryRequirementsInfo2
+ allocs878956f7 interface{}
+}
+
+// MemoryRequirements2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryRequirements2.html
+type MemoryRequirements2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ MemoryRequirements MemoryRequirements
+ refc0e75f21 *C.VkMemoryRequirements2
+ allocsc0e75f21 interface{}
+}
+
+// SparseImageMemoryRequirements2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseImageMemoryRequirements2.html
+type SparseImageMemoryRequirements2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ MemoryRequirements SparseImageMemoryRequirements
+ refb8da955c *C.VkSparseImageMemoryRequirements2
+ allocsb8da955c interface{}
+}
+
+// PhysicalDeviceFeatures2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceFeatures2.html
+type PhysicalDeviceFeatures2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Features PhysicalDeviceFeatures
+ refff6ed04 *C.VkPhysicalDeviceFeatures2
+ allocsff6ed04 interface{}
+}
+
+// PhysicalDeviceProperties2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceProperties2.html
+type PhysicalDeviceProperties2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Properties PhysicalDeviceProperties
+ ref947bd13e *C.VkPhysicalDeviceProperties2
+ allocs947bd13e interface{}
+}
+
+// FormatProperties2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFormatProperties2.html
+type FormatProperties2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ FormatProperties FormatProperties
+ refddc6af2a *C.VkFormatProperties2
+ allocsddc6af2a interface{}
+}
+
+// ImageFormatProperties2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageFormatProperties2.html
+type ImageFormatProperties2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ImageFormatProperties ImageFormatProperties
+ ref224187e7 *C.VkImageFormatProperties2
+ allocs224187e7 interface{}
+}
+
+// PhysicalDeviceImageFormatInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceImageFormatInfo2.html
+type PhysicalDeviceImageFormatInfo2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Format Format
+ Type ImageType
+ Tiling ImageTiling
+ Usage ImageUsageFlags
+ Flags ImageCreateFlags
+ ref5934b445 *C.VkPhysicalDeviceImageFormatInfo2
+ allocs5934b445 interface{}
+}
+
+// QueueFamilyProperties2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueueFamilyProperties2.html
+type QueueFamilyProperties2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ QueueFamilyProperties QueueFamilyProperties
+ ref85bf626c *C.VkQueueFamilyProperties2
+ allocs85bf626c interface{}
+}
+
+// PhysicalDeviceMemoryProperties2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceMemoryProperties2.html
+type PhysicalDeviceMemoryProperties2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ MemoryProperties PhysicalDeviceMemoryProperties
+ refd9e39b19 *C.VkPhysicalDeviceMemoryProperties2
+ allocsd9e39b19 interface{}
+}
+
+// SparseImageFormatProperties2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseImageFormatProperties2.html
+type SparseImageFormatProperties2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Properties SparseImageFormatProperties
+ ref6b48294b *C.VkSparseImageFormatProperties2
+ allocs6b48294b interface{}
+}
+
+// PhysicalDeviceSparseImageFormatInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceSparseImageFormatInfo2.html
+type PhysicalDeviceSparseImageFormatInfo2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Format Format
+ Type ImageType
+ Samples SampleCountFlagBits
+ Usage ImageUsageFlags
+ Tiling ImageTiling
+ ref566d5513 *C.VkPhysicalDeviceSparseImageFormatInfo2
+ allocs566d5513 interface{}
+}
+
+// PhysicalDevicePointClippingProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDevicePointClippingProperties.html
+type PhysicalDevicePointClippingProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PointClippingBehavior PointClippingBehavior
+ ref5afbd22f *C.VkPhysicalDevicePointClippingProperties
+ allocs5afbd22f interface{}
+}
+
+// InputAttachmentAspectReference as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkInputAttachmentAspectReference.html
+type InputAttachmentAspectReference struct {
+ Subpass uint32
+ InputAttachmentIndex uint32
+ AspectMask ImageAspectFlags
+ ref4f7194e6 *C.VkInputAttachmentAspectReference
+ allocs4f7194e6 interface{}
+}
+
+// RenderPassInputAttachmentAspectCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderPassInputAttachmentAspectCreateInfo.html
+type RenderPassInputAttachmentAspectCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ AspectReferenceCount uint32
+ PAspectReferences []InputAttachmentAspectReference
+ ref34eaa5c7 *C.VkRenderPassInputAttachmentAspectCreateInfo
+ allocs34eaa5c7 interface{}
+}
+
+// ImageViewUsageCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageViewUsageCreateInfo.html
+type ImageViewUsageCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Usage ImageUsageFlags
+ ref3791cec9 *C.VkImageViewUsageCreateInfo
+ allocs3791cec9 interface{}
+}
+
+// PipelineTessellationDomainOriginStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineTessellationDomainOriginStateCreateInfo.html
+type PipelineTessellationDomainOriginStateCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DomainOrigin TessellationDomainOrigin
+ ref58ef29bf *C.VkPipelineTessellationDomainOriginStateCreateInfo
+ allocs58ef29bf interface{}
+}
+
+// RenderPassMultiviewCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderPassMultiviewCreateInfo.html
+type RenderPassMultiviewCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SubpassCount uint32
+ PViewMasks []uint32
+ DependencyCount uint32
+ PViewOffsets []int32
+ CorrelationMaskCount uint32
+ PCorrelationMasks []uint32
+ refee413e05 *C.VkRenderPassMultiviewCreateInfo
+ allocsee413e05 interface{}
+}
+
+// PhysicalDeviceMultiviewFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceMultiviewFeatures.html
+type PhysicalDeviceMultiviewFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Multiview Bool32
+ MultiviewGeometryShader Bool32
+ MultiviewTessellationShader Bool32
+ refd7a7434b *C.VkPhysicalDeviceMultiviewFeatures
+ allocsd7a7434b interface{}
+}
+
+// PhysicalDeviceMultiviewProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceMultiviewProperties.html
+type PhysicalDeviceMultiviewProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ MaxMultiviewViewCount uint32
+ MaxMultiviewInstanceIndex uint32
+ ref95110029 *C.VkPhysicalDeviceMultiviewProperties
+ allocs95110029 interface{}
+}
+
+// PhysicalDeviceVariablePointersFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceVariablePointersFeatures.html
+type PhysicalDeviceVariablePointersFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ VariablePointersStorageBuffer Bool32
+ VariablePointers Bool32
+ refb49644a0 *C.VkPhysicalDeviceVariablePointersFeatures
+ allocsb49644a0 interface{}
+}
+
+// PhysicalDeviceVariablePointerFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceVariablePointerFeatures.html
+type PhysicalDeviceVariablePointerFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ VariablePointersStorageBuffer Bool32
+ VariablePointers Bool32
+ refb49644a0 *C.VkPhysicalDeviceVariablePointersFeatures
+ allocsb49644a0 interface{}
+}
+
+// PhysicalDeviceProtectedMemoryFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceProtectedMemoryFeatures.html
+type PhysicalDeviceProtectedMemoryFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ProtectedMemory Bool32
+ refac441ed1 *C.VkPhysicalDeviceProtectedMemoryFeatures
+ allocsac441ed1 interface{}
+}
+
+// PhysicalDeviceProtectedMemoryProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceProtectedMemoryProperties.html
+type PhysicalDeviceProtectedMemoryProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ProtectedNoFault Bool32
+ refb653413 *C.VkPhysicalDeviceProtectedMemoryProperties
+ allocsb653413 interface{}
+}
+
+// DeviceQueueInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceQueueInfo2.html
+type DeviceQueueInfo2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags DeviceQueueCreateFlags
+ QueueFamilyIndex uint32
+ QueueIndex uint32
+ ref2f267e52 *C.VkDeviceQueueInfo2
+ allocs2f267e52 interface{}
+}
+
+// ProtectedSubmitInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkProtectedSubmitInfo.html
+type ProtectedSubmitInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ProtectedSubmit Bool32
+ ref6bd69669 *C.VkProtectedSubmitInfo
+ allocs6bd69669 interface{}
+}
+
+// SamplerYcbcrConversionCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerYcbcrConversionCreateInfo.html
+type SamplerYcbcrConversionCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Format Format
+ YcbcrModel SamplerYcbcrModelConversion
+ YcbcrRange SamplerYcbcrRange
+ Components ComponentMapping
+ XChromaOffset ChromaLocation
+ YChromaOffset ChromaLocation
+ ChromaFilter Filter
+ ForceExplicitReconstruction Bool32
+ ref9875bff7 *C.VkSamplerYcbcrConversionCreateInfo
+ allocs9875bff7 interface{}
+}
+
+// SamplerYcbcrConversionInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerYcbcrConversionInfo.html
+type SamplerYcbcrConversionInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Conversion SamplerYcbcrConversion
+ ref11ff5547 *C.VkSamplerYcbcrConversionInfo
+ allocs11ff5547 interface{}
+}
+
+// BindImagePlaneMemoryInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBindImagePlaneMemoryInfo.html
+type BindImagePlaneMemoryInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PlaneAspect ImageAspectFlagBits
+ ref56b81476 *C.VkBindImagePlaneMemoryInfo
+ allocs56b81476 interface{}
+}
+
+// ImagePlaneMemoryRequirementsInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImagePlaneMemoryRequirementsInfo.html
+type ImagePlaneMemoryRequirementsInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PlaneAspect ImageAspectFlagBits
+ refefec131f *C.VkImagePlaneMemoryRequirementsInfo
+ allocsefec131f interface{}
+}
+
+// PhysicalDeviceSamplerYcbcrConversionFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceSamplerYcbcrConversionFeatures.html
+type PhysicalDeviceSamplerYcbcrConversionFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SamplerYcbcrConversion Bool32
+ ref1d054d67 *C.VkPhysicalDeviceSamplerYcbcrConversionFeatures
+ allocs1d054d67 interface{}
+}
+
+// SamplerYcbcrConversionImageFormatProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerYcbcrConversionImageFormatProperties.html
+type SamplerYcbcrConversionImageFormatProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ CombinedImageSamplerDescriptorCount uint32
+ ref6bc79530 *C.VkSamplerYcbcrConversionImageFormatProperties
+ allocs6bc79530 interface{}
+}
+
+// DescriptorUpdateTemplateEntry as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorUpdateTemplateEntry.html
+type DescriptorUpdateTemplateEntry struct {
+ DstBinding uint32
+ DstArrayElement uint32
+ DescriptorCount uint32
+ DescriptorType DescriptorType
+ Offset uint64
+ Stride uint64
+ refabf78fb7 *C.VkDescriptorUpdateTemplateEntry
+ allocsabf78fb7 interface{}
+}
+
+// DescriptorUpdateTemplateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorUpdateTemplateCreateInfo.html
+type DescriptorUpdateTemplateCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags DescriptorUpdateTemplateCreateFlags
+ DescriptorUpdateEntryCount uint32
+ PDescriptorUpdateEntries []DescriptorUpdateTemplateEntry
+ TemplateType DescriptorUpdateTemplateType
+ DescriptorSetLayout DescriptorSetLayout
+ PipelineBindPoint PipelineBindPoint
+ PipelineLayout PipelineLayout
+ Set uint32
+ ref2af95951 *C.VkDescriptorUpdateTemplateCreateInfo
+ allocs2af95951 interface{}
+}
+
+// ExternalMemoryProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryProperties.html
+type ExternalMemoryProperties struct {
+ ExternalMemoryFeatures ExternalMemoryFeatureFlags
+ ExportFromImportedHandleTypes ExternalMemoryHandleTypeFlags
+ CompatibleHandleTypes ExternalMemoryHandleTypeFlags
+ ref4b738f01 *C.VkExternalMemoryProperties
+ allocs4b738f01 interface{}
+}
+
+// PhysicalDeviceExternalImageFormatInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceExternalImageFormatInfo.html
+type PhysicalDeviceExternalImageFormatInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ HandleType ExternalMemoryHandleTypeFlagBits
+ refc839c724 *C.VkPhysicalDeviceExternalImageFormatInfo
+ allocsc839c724 interface{}
+}
+
+// ExternalImageFormatProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalImageFormatProperties.html
+type ExternalImageFormatProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ExternalMemoryProperties ExternalMemoryProperties
+ refd404c4b5 *C.VkExternalImageFormatProperties
+ allocsd404c4b5 interface{}
+}
+
+// PhysicalDeviceExternalBufferInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceExternalBufferInfo.html
+type PhysicalDeviceExternalBufferInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags BufferCreateFlags
+ Usage BufferUsageFlags
+ HandleType ExternalMemoryHandleTypeFlagBits
+ ref8d758947 *C.VkPhysicalDeviceExternalBufferInfo
+ allocs8d758947 interface{}
+}
+
+// ExternalBufferProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalBufferProperties.html
+type ExternalBufferProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ExternalMemoryProperties ExternalMemoryProperties
+ ref12f7c546 *C.VkExternalBufferProperties
+ allocs12f7c546 interface{}
+}
+
+// PhysicalDeviceIDProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceIDProperties.html
+type PhysicalDeviceIDProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DeviceUUID [16]byte
+ DriverUUID [16]byte
+ DeviceLUID [8]byte
+ DeviceNodeMask uint32
+ DeviceLUIDValid Bool32
+ refe990a9f3 *C.VkPhysicalDeviceIDProperties
+ allocse990a9f3 interface{}
+}
+
+// ExternalMemoryImageCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryImageCreateInfo.html
+type ExternalMemoryImageCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ HandleTypes ExternalMemoryHandleTypeFlags
+ refdaf1185e *C.VkExternalMemoryImageCreateInfo
+ allocsdaf1185e interface{}
+}
+
+// ExternalMemoryBufferCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryBufferCreateInfo.html
+type ExternalMemoryBufferCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ HandleTypes ExternalMemoryHandleTypeFlags
+ refd33a9423 *C.VkExternalMemoryBufferCreateInfo
+ allocsd33a9423 interface{}
+}
+
+// ExportMemoryAllocateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExportMemoryAllocateInfo.html
+type ExportMemoryAllocateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ HandleTypes ExternalMemoryHandleTypeFlags
+ refeb76ec64 *C.VkExportMemoryAllocateInfo
+ allocseb76ec64 interface{}
+}
+
+// PhysicalDeviceExternalFenceInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceExternalFenceInfo.html
+type PhysicalDeviceExternalFenceInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ HandleType ExternalFenceHandleTypeFlagBits
+ ref9bb660cc *C.VkPhysicalDeviceExternalFenceInfo
+ allocs9bb660cc interface{}
+}
+
+// ExternalFenceProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalFenceProperties.html
+type ExternalFenceProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ExportFromImportedHandleTypes ExternalFenceHandleTypeFlags
+ CompatibleHandleTypes ExternalFenceHandleTypeFlags
+ ExternalFenceFeatures ExternalFenceFeatureFlags
+ ref18806773 *C.VkExternalFenceProperties
+ allocs18806773 interface{}
+}
+
+// ExportFenceCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExportFenceCreateInfo.html
+type ExportFenceCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ HandleTypes ExternalFenceHandleTypeFlags
+ ref5fef8c3a *C.VkExportFenceCreateInfo
+ allocs5fef8c3a interface{}
+}
+
+// ExportSemaphoreCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExportSemaphoreCreateInfo.html
+type ExportSemaphoreCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ HandleTypes ExternalSemaphoreHandleTypeFlags
+ ref17b8d6c5 *C.VkExportSemaphoreCreateInfo
+ allocs17b8d6c5 interface{}
+}
+
+// PhysicalDeviceExternalSemaphoreInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceExternalSemaphoreInfo.html
+type PhysicalDeviceExternalSemaphoreInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ HandleType ExternalSemaphoreHandleTypeFlagBits
+ ref5981d29e *C.VkPhysicalDeviceExternalSemaphoreInfo
+ allocs5981d29e interface{}
+}
+
+// ExternalSemaphoreProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalSemaphoreProperties.html
+type ExternalSemaphoreProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ExportFromImportedHandleTypes ExternalSemaphoreHandleTypeFlags
+ CompatibleHandleTypes ExternalSemaphoreHandleTypeFlags
+ ExternalSemaphoreFeatures ExternalSemaphoreFeatureFlags
+ ref87ec1054 *C.VkExternalSemaphoreProperties
+ allocs87ec1054 interface{}
+}
+
+// PhysicalDeviceMaintenance3Properties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceMaintenance3Properties.html
+type PhysicalDeviceMaintenance3Properties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ MaxPerSetDescriptors uint32
+ MaxMemoryAllocationSize DeviceSize
+ ref12c07777 *C.VkPhysicalDeviceMaintenance3Properties
+ allocs12c07777 interface{}
+}
+
+// DescriptorSetLayoutSupport as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetLayoutSupport.html
+type DescriptorSetLayoutSupport struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Supported Bool32
+ ref5802686c *C.VkDescriptorSetLayoutSupport
+ allocs5802686c interface{}
+}
+
+// PhysicalDeviceShaderDrawParametersFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceShaderDrawParametersFeatures.html
+type PhysicalDeviceShaderDrawParametersFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ShaderDrawParameters Bool32
+ ref35d5aa70 *C.VkPhysicalDeviceShaderDrawParametersFeatures
+ allocs35d5aa70 interface{}
+}
+
+// PhysicalDeviceShaderDrawParameterFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceShaderDrawParameterFeatures.html
+type PhysicalDeviceShaderDrawParameterFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ShaderDrawParameters Bool32
+ ref35d5aa70 *C.VkPhysicalDeviceShaderDrawParametersFeatures
+ allocs35d5aa70 interface{}
+}
+
+// ResolveModeFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkResolveModeFlags.html
+type ResolveModeFlags uint32
+
+// DescriptorBindingFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorBindingFlags.html
+type DescriptorBindingFlags uint32
+
+// SemaphoreWaitFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSemaphoreWaitFlags.html
+type SemaphoreWaitFlags uint32
+
+// PhysicalDeviceVulkan11Features as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceVulkan11Features.html
+type PhysicalDeviceVulkan11Features struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ StorageBuffer16BitAccess Bool32
+ UniformAndStorageBuffer16BitAccess Bool32
+ StoragePushConstant16 Bool32
+ StorageInputOutput16 Bool32
+ Multiview Bool32
+ MultiviewGeometryShader Bool32
+ MultiviewTessellationShader Bool32
+ VariablePointersStorageBuffer Bool32
+ VariablePointers Bool32
+ ProtectedMemory Bool32
+ SamplerYcbcrConversion Bool32
+ ShaderDrawParameters Bool32
+ refd5335cef *C.VkPhysicalDeviceVulkan11Features
+ allocsd5335cef interface{}
+}
+
+// PhysicalDeviceVulkan11Properties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceVulkan11Properties.html
+type PhysicalDeviceVulkan11Properties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DeviceUUID [16]byte
+ DriverUUID [16]byte
+ DeviceLUID [8]byte
+ DeviceNodeMask uint32
+ DeviceLUIDValid Bool32
+ SubgroupSize uint32
+ SubgroupSupportedStages ShaderStageFlags
+ SubgroupSupportedOperations SubgroupFeatureFlags
+ SubgroupQuadOperationsInAllStages Bool32
+ PointClippingBehavior PointClippingBehavior
+ MaxMultiviewViewCount uint32
+ MaxMultiviewInstanceIndex uint32
+ ProtectedNoFault Bool32
+ MaxPerSetDescriptors uint32
+ MaxMemoryAllocationSize DeviceSize
+ refd27276a5 *C.VkPhysicalDeviceVulkan11Properties
+ allocsd27276a5 interface{}
+}
+
+// PhysicalDeviceVulkan12Features as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceVulkan12Features.html
+type PhysicalDeviceVulkan12Features struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SamplerMirrorClampToEdge Bool32
+ DrawIndirectCount Bool32
+ StorageBuffer8BitAccess Bool32
+ UniformAndStorageBuffer8BitAccess Bool32
+ StoragePushConstant8 Bool32
+ ShaderBufferInt64Atomics Bool32
+ ShaderSharedInt64Atomics Bool32
+ ShaderFloat16 Bool32
+ ShaderInt8 Bool32
+ DescriptorIndexing Bool32
+ ShaderInputAttachmentArrayDynamicIndexing Bool32
+ ShaderUniformTexelBufferArrayDynamicIndexing Bool32
+ ShaderStorageTexelBufferArrayDynamicIndexing Bool32
+ ShaderUniformBufferArrayNonUniformIndexing Bool32
+ ShaderSampledImageArrayNonUniformIndexing Bool32
+ ShaderStorageBufferArrayNonUniformIndexing Bool32
+ ShaderStorageImageArrayNonUniformIndexing Bool32
+ ShaderInputAttachmentArrayNonUniformIndexing Bool32
+ ShaderUniformTexelBufferArrayNonUniformIndexing Bool32
+ ShaderStorageTexelBufferArrayNonUniformIndexing Bool32
+ DescriptorBindingUniformBufferUpdateAfterBind Bool32
+ DescriptorBindingSampledImageUpdateAfterBind Bool32
+ DescriptorBindingStorageImageUpdateAfterBind Bool32
+ DescriptorBindingStorageBufferUpdateAfterBind Bool32
+ DescriptorBindingUniformTexelBufferUpdateAfterBind Bool32
+ DescriptorBindingStorageTexelBufferUpdateAfterBind Bool32
+ DescriptorBindingUpdateUnusedWhilePending Bool32
+ DescriptorBindingPartiallyBound Bool32
+ DescriptorBindingVariableDescriptorCount Bool32
+ RuntimeDescriptorArray Bool32
+ SamplerFilterMinmax Bool32
+ ScalarBlockLayout Bool32
+ ImagelessFramebuffer Bool32
+ UniformBufferStandardLayout Bool32
+ ShaderSubgroupExtendedTypes Bool32
+ SeparateDepthStencilLayouts Bool32
+ HostQueryReset Bool32
+ TimelineSemaphore Bool32
+ BufferDeviceAddress Bool32
+ BufferDeviceAddressCaptureReplay Bool32
+ BufferDeviceAddressMultiDevice Bool32
+ VulkanMemoryModel Bool32
+ VulkanMemoryModelDeviceScope Bool32
+ VulkanMemoryModelAvailabilityVisibilityChains Bool32
+ ShaderOutputViewportIndex Bool32
+ ShaderOutputLayer Bool32
+ SubgroupBroadcastDynamicId Bool32
+ refecbe602a *C.VkPhysicalDeviceVulkan12Features
+ allocsecbe602a interface{}
+}
+
+// ConformanceVersion as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkConformanceVersion.html
+type ConformanceVersion struct {
+ Major byte
+ Minor byte
+ Subminor byte
+ Patch byte
+ reffb98ebcd *C.VkConformanceVersion
+ allocsfb98ebcd interface{}
+}
+
+// PhysicalDeviceVulkan12Properties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceVulkan12Properties.html
+type PhysicalDeviceVulkan12Properties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DriverID DriverId
+ DriverName [256]byte
+ DriverInfo [256]byte
+ ConformanceVersion ConformanceVersion
+ DenormBehaviorIndependence ShaderFloatControlsIndependence
+ RoundingModeIndependence ShaderFloatControlsIndependence
+ ShaderSignedZeroInfNanPreserveFloat16 Bool32
+ ShaderSignedZeroInfNanPreserveFloat32 Bool32
+ ShaderSignedZeroInfNanPreserveFloat64 Bool32
+ ShaderDenormPreserveFloat16 Bool32
+ ShaderDenormPreserveFloat32 Bool32
+ ShaderDenormPreserveFloat64 Bool32
+ ShaderDenormFlushToZeroFloat16 Bool32
+ ShaderDenormFlushToZeroFloat32 Bool32
+ ShaderDenormFlushToZeroFloat64 Bool32
+ ShaderRoundingModeRTEFloat16 Bool32
+ ShaderRoundingModeRTEFloat32 Bool32
+ ShaderRoundingModeRTEFloat64 Bool32
+ ShaderRoundingModeRTZFloat16 Bool32
+ ShaderRoundingModeRTZFloat32 Bool32
+ ShaderRoundingModeRTZFloat64 Bool32
+ MaxUpdateAfterBindDescriptorsInAllPools uint32
+ ShaderUniformBufferArrayNonUniformIndexingNative Bool32
+ ShaderSampledImageArrayNonUniformIndexingNative Bool32
+ ShaderStorageBufferArrayNonUniformIndexingNative Bool32
+ ShaderStorageImageArrayNonUniformIndexingNative Bool32
+ ShaderInputAttachmentArrayNonUniformIndexingNative Bool32
+ RobustBufferAccessUpdateAfterBind Bool32
+ QuadDivergentImplicitLod Bool32
+ MaxPerStageDescriptorUpdateAfterBindSamplers uint32
+ MaxPerStageDescriptorUpdateAfterBindUniformBuffers uint32
+ MaxPerStageDescriptorUpdateAfterBindStorageBuffers uint32
+ MaxPerStageDescriptorUpdateAfterBindSampledImages uint32
+ MaxPerStageDescriptorUpdateAfterBindStorageImages uint32
+ MaxPerStageDescriptorUpdateAfterBindInputAttachments uint32
+ MaxPerStageUpdateAfterBindResources uint32
+ MaxDescriptorSetUpdateAfterBindSamplers uint32
+ MaxDescriptorSetUpdateAfterBindUniformBuffers uint32
+ MaxDescriptorSetUpdateAfterBindUniformBuffersDynamic uint32
+ MaxDescriptorSetUpdateAfterBindStorageBuffers uint32
+ MaxDescriptorSetUpdateAfterBindStorageBuffersDynamic uint32
+ MaxDescriptorSetUpdateAfterBindSampledImages uint32
+ MaxDescriptorSetUpdateAfterBindStorageImages uint32
+ MaxDescriptorSetUpdateAfterBindInputAttachments uint32
+ SupportedDepthResolveModes ResolveModeFlags
+ SupportedStencilResolveModes ResolveModeFlags
+ IndependentResolveNone Bool32
+ IndependentResolve Bool32
+ FilterMinmaxSingleComponentFormats Bool32
+ FilterMinmaxImageComponentMapping Bool32
+ MaxTimelineSemaphoreValueDifference uint64
+ FramebufferIntegerColorSampleCounts SampleCountFlags
+ ref4b9010a4 *C.VkPhysicalDeviceVulkan12Properties
+ allocs4b9010a4 interface{}
+}
+
+// ImageFormatListCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageFormatListCreateInfo.html
+type ImageFormatListCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ViewFormatCount uint32
+ PViewFormats []Format
+ ref76fdc95e *C.VkImageFormatListCreateInfo
+ allocs76fdc95e interface{}
+}
+
+// AttachmentDescription2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAttachmentDescription2.html
+type AttachmentDescription2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags AttachmentDescriptionFlags
+ Format Format
+ Samples SampleCountFlagBits
+ LoadOp AttachmentLoadOp
+ StoreOp AttachmentStoreOp
+ StencilLoadOp AttachmentLoadOp
+ StencilStoreOp AttachmentStoreOp
+ InitialLayout ImageLayout
+ FinalLayout ImageLayout
+ refae7bd6bf *C.VkAttachmentDescription2
+ allocsae7bd6bf interface{}
+}
+
+// AttachmentReference2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAttachmentReference2.html
+type AttachmentReference2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Attachment uint32
+ Layout ImageLayout
+ AspectMask ImageAspectFlags
+ ref7b5106a8 *C.VkAttachmentReference2
+ allocs7b5106a8 interface{}
+}
+
+// SubpassDescription2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubpassDescription2.html
+type SubpassDescription2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags SubpassDescriptionFlags
+ PipelineBindPoint PipelineBindPoint
+ ViewMask uint32
+ InputAttachmentCount uint32
+ PInputAttachments []AttachmentReference2
+ ColorAttachmentCount uint32
+ PColorAttachments []AttachmentReference2
+ PResolveAttachments []AttachmentReference2
+ PDepthStencilAttachment []AttachmentReference2
+ PreserveAttachmentCount uint32
+ PPreserveAttachments []uint32
+ ref7cdffe39 *C.VkSubpassDescription2
+ allocs7cdffe39 interface{}
+}
+
+// SubpassDependency2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubpassDependency2.html
+type SubpassDependency2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SrcSubpass uint32
+ DstSubpass uint32
+ SrcStageMask PipelineStageFlags
+ DstStageMask PipelineStageFlags
+ SrcAccessMask AccessFlags
+ DstAccessMask AccessFlags
+ DependencyFlags DependencyFlags
+ ViewOffset int32
+ refb0fac2b *C.VkSubpassDependency2
+ allocsb0fac2b interface{}
+}
+
+// RenderPassCreateInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderPassCreateInfo2.html
+type RenderPassCreateInfo2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags RenderPassCreateFlags
+ AttachmentCount uint32
+ PAttachments []AttachmentDescription2
+ SubpassCount uint32
+ PSubpasses []SubpassDescription2
+ DependencyCount uint32
+ PDependencies []SubpassDependency2
+ CorrelatedViewMaskCount uint32
+ PCorrelatedViewMasks []uint32
+ ref1e86f565 *C.VkRenderPassCreateInfo2
+ allocs1e86f565 interface{}
+}
+
+// SubpassBeginInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubpassBeginInfo.html
+type SubpassBeginInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Contents SubpassContents
+ ref941a38e5 *C.VkSubpassBeginInfo
+ allocs941a38e5 interface{}
+}
+
+// SubpassEndInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubpassEndInfo.html
+type SubpassEndInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ reffa172a5c *C.VkSubpassEndInfo
+ allocsfa172a5c interface{}
+}
+
+// PhysicalDevice8BitStorageFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDevice8BitStorageFeatures.html
+type PhysicalDevice8BitStorageFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ StorageBuffer8BitAccess Bool32
+ UniformAndStorageBuffer8BitAccess Bool32
+ StoragePushConstant8 Bool32
+ ref4c9f0386 *C.VkPhysicalDevice8BitStorageFeatures
+ allocs4c9f0386 interface{}
+}
+
+// PhysicalDeviceDriverProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceDriverProperties.html
+type PhysicalDeviceDriverProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DriverID DriverId
+ DriverName [256]byte
+ DriverInfo [256]byte
+ ConformanceVersion ConformanceVersion
+ ref492c8b68 *C.VkPhysicalDeviceDriverProperties
+ allocs492c8b68 interface{}
+}
+
+// PhysicalDeviceShaderAtomicInt64Features as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceShaderAtomicInt64Features.html
+type PhysicalDeviceShaderAtomicInt64Features struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ShaderBufferInt64Atomics Bool32
+ ShaderSharedInt64Atomics Bool32
+ refa23b7e52 *C.VkPhysicalDeviceShaderAtomicInt64Features
+ allocsa23b7e52 interface{}
+}
+
+// PhysicalDeviceShaderFloat16Int8Features as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceShaderFloat16Int8Features.html
+type PhysicalDeviceShaderFloat16Int8Features struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ShaderFloat16 Bool32
+ ShaderInt8 Bool32
+ refc9d315b6 *C.VkPhysicalDeviceShaderFloat16Int8Features
+ allocsc9d315b6 interface{}
+}
+
+// PhysicalDeviceFloatControlsProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceFloatControlsProperties.html
+type PhysicalDeviceFloatControlsProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DenormBehaviorIndependence ShaderFloatControlsIndependence
+ RoundingModeIndependence ShaderFloatControlsIndependence
+ ShaderSignedZeroInfNanPreserveFloat16 Bool32
+ ShaderSignedZeroInfNanPreserveFloat32 Bool32
+ ShaderSignedZeroInfNanPreserveFloat64 Bool32
+ ShaderDenormPreserveFloat16 Bool32
+ ShaderDenormPreserveFloat32 Bool32
+ ShaderDenormPreserveFloat64 Bool32
+ ShaderDenormFlushToZeroFloat16 Bool32
+ ShaderDenormFlushToZeroFloat32 Bool32
+ ShaderDenormFlushToZeroFloat64 Bool32
+ ShaderRoundingModeRTEFloat16 Bool32
+ ShaderRoundingModeRTEFloat32 Bool32
+ ShaderRoundingModeRTEFloat64 Bool32
+ ShaderRoundingModeRTZFloat16 Bool32
+ ShaderRoundingModeRTZFloat32 Bool32
+ ShaderRoundingModeRTZFloat64 Bool32
+ ref92190a8a *C.VkPhysicalDeviceFloatControlsProperties
+ allocs92190a8a interface{}
+}
+
+// DescriptorSetLayoutBindingFlagsCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetLayoutBindingFlagsCreateInfo.html
+type DescriptorSetLayoutBindingFlagsCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ BindingCount uint32
+ PBindingFlags []DescriptorBindingFlags
+ ref84838c4d *C.VkDescriptorSetLayoutBindingFlagsCreateInfo
+ allocs84838c4d interface{}
+}
+
+// PhysicalDeviceDescriptorIndexingFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceDescriptorIndexingFeatures.html
+type PhysicalDeviceDescriptorIndexingFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ShaderInputAttachmentArrayDynamicIndexing Bool32
+ ShaderUniformTexelBufferArrayDynamicIndexing Bool32
+ ShaderStorageTexelBufferArrayDynamicIndexing Bool32
+ ShaderUniformBufferArrayNonUniformIndexing Bool32
+ ShaderSampledImageArrayNonUniformIndexing Bool32
+ ShaderStorageBufferArrayNonUniformIndexing Bool32
+ ShaderStorageImageArrayNonUniformIndexing Bool32
+ ShaderInputAttachmentArrayNonUniformIndexing Bool32
+ ShaderUniformTexelBufferArrayNonUniformIndexing Bool32
+ ShaderStorageTexelBufferArrayNonUniformIndexing Bool32
+ DescriptorBindingUniformBufferUpdateAfterBind Bool32
+ DescriptorBindingSampledImageUpdateAfterBind Bool32
+ DescriptorBindingStorageImageUpdateAfterBind Bool32
+ DescriptorBindingStorageBufferUpdateAfterBind Bool32
+ DescriptorBindingUniformTexelBufferUpdateAfterBind Bool32
+ DescriptorBindingStorageTexelBufferUpdateAfterBind Bool32
+ DescriptorBindingUpdateUnusedWhilePending Bool32
+ DescriptorBindingPartiallyBound Bool32
+ DescriptorBindingVariableDescriptorCount Bool32
+ RuntimeDescriptorArray Bool32
+ reff599863 *C.VkPhysicalDeviceDescriptorIndexingFeatures
+ allocsf599863 interface{}
+}
+
+// PhysicalDeviceDescriptorIndexingProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceDescriptorIndexingProperties.html
+type PhysicalDeviceDescriptorIndexingProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ MaxUpdateAfterBindDescriptorsInAllPools uint32
+ ShaderUniformBufferArrayNonUniformIndexingNative Bool32
+ ShaderSampledImageArrayNonUniformIndexingNative Bool32
+ ShaderStorageBufferArrayNonUniformIndexingNative Bool32
+ ShaderStorageImageArrayNonUniformIndexingNative Bool32
+ ShaderInputAttachmentArrayNonUniformIndexingNative Bool32
+ RobustBufferAccessUpdateAfterBind Bool32
+ QuadDivergentImplicitLod Bool32
+ MaxPerStageDescriptorUpdateAfterBindSamplers uint32
+ MaxPerStageDescriptorUpdateAfterBindUniformBuffers uint32
+ MaxPerStageDescriptorUpdateAfterBindStorageBuffers uint32
+ MaxPerStageDescriptorUpdateAfterBindSampledImages uint32
+ MaxPerStageDescriptorUpdateAfterBindStorageImages uint32
+ MaxPerStageDescriptorUpdateAfterBindInputAttachments uint32
+ MaxPerStageUpdateAfterBindResources uint32
+ MaxDescriptorSetUpdateAfterBindSamplers uint32
+ MaxDescriptorSetUpdateAfterBindUniformBuffers uint32
+ MaxDescriptorSetUpdateAfterBindUniformBuffersDynamic uint32
+ MaxDescriptorSetUpdateAfterBindStorageBuffers uint32
+ MaxDescriptorSetUpdateAfterBindStorageBuffersDynamic uint32
+ MaxDescriptorSetUpdateAfterBindSampledImages uint32
+ MaxDescriptorSetUpdateAfterBindStorageImages uint32
+ MaxDescriptorSetUpdateAfterBindInputAttachments uint32
+ refd94d7d21 *C.VkPhysicalDeviceDescriptorIndexingProperties
+ allocsd94d7d21 interface{}
+}
+
+// DescriptorSetVariableDescriptorCountAllocateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetVariableDescriptorCountAllocateInfo.html
+type DescriptorSetVariableDescriptorCountAllocateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DescriptorSetCount uint32
+ PDescriptorCounts []uint32
+ ref7969c9a7 *C.VkDescriptorSetVariableDescriptorCountAllocateInfo
+ allocs7969c9a7 interface{}
+}
+
+// DescriptorSetVariableDescriptorCountLayoutSupport as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetVariableDescriptorCountLayoutSupport.html
+type DescriptorSetVariableDescriptorCountLayoutSupport struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ MaxVariableDescriptorCount uint32
+ refc584a0c6 *C.VkDescriptorSetVariableDescriptorCountLayoutSupport
+ allocsc584a0c6 interface{}
+}
+
+// SubpassDescriptionDepthStencilResolve as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubpassDescriptionDepthStencilResolve.html
+type SubpassDescriptionDepthStencilResolve struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DepthResolveMode ResolveModeFlagBits
+ StencilResolveMode ResolveModeFlagBits
+ PDepthStencilResolveAttachment []AttachmentReference2
+ refc46545a8 *C.VkSubpassDescriptionDepthStencilResolve
+ allocsc46545a8 interface{}
+}
+
+// PhysicalDeviceDepthStencilResolveProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceDepthStencilResolveProperties.html
+type PhysicalDeviceDepthStencilResolveProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SupportedDepthResolveModes ResolveModeFlags
+ SupportedStencilResolveModes ResolveModeFlags
+ IndependentResolveNone Bool32
+ IndependentResolve Bool32
+ refc9f61da9 *C.VkPhysicalDeviceDepthStencilResolveProperties
+ allocsc9f61da9 interface{}
+}
+
+// PhysicalDeviceScalarBlockLayoutFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceScalarBlockLayoutFeatures.html
+type PhysicalDeviceScalarBlockLayoutFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ScalarBlockLayout Bool32
+ refbdf75616 *C.VkPhysicalDeviceScalarBlockLayoutFeatures
+ allocsbdf75616 interface{}
+}
+
+// ImageStencilUsageCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageStencilUsageCreateInfo.html
+type ImageStencilUsageCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ StencilUsage ImageUsageFlags
+ ref32229fd9 *C.VkImageStencilUsageCreateInfo
+ allocs32229fd9 interface{}
+}
+
+// SamplerReductionModeCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerReductionModeCreateInfo.html
+type SamplerReductionModeCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ReductionMode SamplerReductionMode
+ ref801424d0 *C.VkSamplerReductionModeCreateInfo
+ allocs801424d0 interface{}
+}
+
+// PhysicalDeviceSamplerFilterMinmaxProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceSamplerFilterMinmaxProperties.html
+type PhysicalDeviceSamplerFilterMinmaxProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ FilterMinmaxSingleComponentFormats Bool32
+ FilterMinmaxImageComponentMapping Bool32
+ ref69bbe609 *C.VkPhysicalDeviceSamplerFilterMinmaxProperties
+ allocs69bbe609 interface{}
}
-// PhysicalDeviceProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceProperties.html
-type PhysicalDeviceProperties struct {
- ApiVersion uint32
- DriverVersion uint32
- VendorID uint32
- DeviceID uint32
- DeviceType PhysicalDeviceType
- DeviceName [256]byte
- PipelineCacheUUID [16]byte
- Limits PhysicalDeviceLimits
- SparseProperties PhysicalDeviceSparseProperties
- ref1080ca9d *C.VkPhysicalDeviceProperties
- allocs1080ca9d interface{}
+// PhysicalDeviceVulkanMemoryModelFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceVulkanMemoryModelFeatures.html
+type PhysicalDeviceVulkanMemoryModelFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ VulkanMemoryModel Bool32
+ VulkanMemoryModelDeviceScope Bool32
+ VulkanMemoryModelAvailabilityVisibilityChains Bool32
+ refedb93263 *C.VkPhysicalDeviceVulkanMemoryModelFeatures
+ allocsedb93263 interface{}
}
-// QueueFamilyProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueueFamilyProperties.html
-type QueueFamilyProperties struct {
- QueueFlags QueueFlags
- QueueCount uint32
- TimestampValidBits uint32
- MinImageTransferGranularity Extent3D
- refd538c446 *C.VkQueueFamilyProperties
- allocsd538c446 interface{}
+// PhysicalDeviceImagelessFramebufferFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceImagelessFramebufferFeatures.html
+type PhysicalDeviceImagelessFramebufferFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ImagelessFramebuffer Bool32
+ refcd561baf *C.VkPhysicalDeviceImagelessFramebufferFeatures
+ allocscd561baf interface{}
}
-// MemoryType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryType.html
-type MemoryType struct {
- PropertyFlags MemoryPropertyFlags
- HeapIndex uint32
- ref2f46e01d *C.VkMemoryType
- allocs2f46e01d interface{}
+// FramebufferAttachmentImageInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFramebufferAttachmentImageInfo.html
+type FramebufferAttachmentImageInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags ImageCreateFlags
+ Usage ImageUsageFlags
+ Width uint32
+ Height uint32
+ LayerCount uint32
+ ViewFormatCount uint32
+ PViewFormats []Format
+ refe569691c *C.VkFramebufferAttachmentImageInfo
+ allocse569691c interface{}
}
-// MemoryHeap as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryHeap.html
-type MemoryHeap struct {
- Size DeviceSize
- Flags MemoryHeapFlags
- ref1eb195d5 *C.VkMemoryHeap
- allocs1eb195d5 interface{}
+// FramebufferAttachmentsCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFramebufferAttachmentsCreateInfo.html
+type FramebufferAttachmentsCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ AttachmentImageInfoCount uint32
+ PAttachmentImageInfos []FramebufferAttachmentImageInfo
+ reff3bb4ec3 *C.VkFramebufferAttachmentsCreateInfo
+ allocsf3bb4ec3 interface{}
}
-// PhysicalDeviceMemoryProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceMemoryProperties.html
-type PhysicalDeviceMemoryProperties struct {
- MemoryTypeCount uint32
- MemoryTypes [32]MemoryType
- MemoryHeapCount uint32
- MemoryHeaps [16]MemoryHeap
- ref3aabb5fd *C.VkPhysicalDeviceMemoryProperties
- allocs3aabb5fd interface{}
+// RenderPassAttachmentBeginInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderPassAttachmentBeginInfo.html
+type RenderPassAttachmentBeginInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ AttachmentCount uint32
+ PAttachments []ImageView
+ ref5c976537 *C.VkRenderPassAttachmentBeginInfo
+ allocs5c976537 interface{}
}
-// DeviceQueueCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceQueueCreateInfo.html
-type DeviceQueueCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags DeviceQueueCreateFlags
- QueueFamilyIndex uint32
- QueueCount uint32
- PQueuePriorities []float32
- ref6087b30d *C.VkDeviceQueueCreateInfo
- allocs6087b30d interface{}
+// PhysicalDeviceUniformBufferStandardLayoutFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceUniformBufferStandardLayoutFeatures.html
+type PhysicalDeviceUniformBufferStandardLayoutFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ UniformBufferStandardLayout Bool32
+ refda381ec5 *C.VkPhysicalDeviceUniformBufferStandardLayoutFeatures
+ allocsda381ec5 interface{}
}
-// DeviceCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceCreateInfo.html
-type DeviceCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags DeviceCreateFlags
- QueueCreateInfoCount uint32
- PQueueCreateInfos []DeviceQueueCreateInfo
- EnabledLayerCount uint32
- PpEnabledLayerNames []string
- EnabledExtensionCount uint32
- PpEnabledExtensionNames []string
- PEnabledFeatures []PhysicalDeviceFeatures
- refc0d8b997 *C.VkDeviceCreateInfo
- allocsc0d8b997 interface{}
+// PhysicalDeviceShaderSubgroupExtendedTypesFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures.html
+type PhysicalDeviceShaderSubgroupExtendedTypesFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ShaderSubgroupExtendedTypes Bool32
+ ref3bdcd2a2 *C.VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures
+ allocs3bdcd2a2 interface{}
}
-// ExtensionProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExtensionProperties.html
-type ExtensionProperties struct {
- ExtensionName [256]byte
- SpecVersion uint32
- ref2f001956 *C.VkExtensionProperties
- allocs2f001956 interface{}
+// PhysicalDeviceSeparateDepthStencilLayoutsFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures.html
+type PhysicalDeviceSeparateDepthStencilLayoutsFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SeparateDepthStencilLayouts Bool32
+ ref7974377f *C.VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures
+ allocs7974377f interface{}
}
-// LayerProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkLayerProperties.html
-type LayerProperties struct {
- LayerName [256]byte
- SpecVersion uint32
- ImplementationVersion uint32
- Description [256]byte
- refd9407ce7 *C.VkLayerProperties
- allocsd9407ce7 interface{}
+// AttachmentReferenceStencilLayout as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAttachmentReferenceStencilLayout.html
+type AttachmentReferenceStencilLayout struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ StencilLayout ImageLayout
+ refb936264a *C.VkAttachmentReferenceStencilLayout
+ allocsb936264a interface{}
}
-// SubmitInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubmitInfo.html
-type SubmitInfo struct {
+// AttachmentDescriptionStencilLayout as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAttachmentDescriptionStencilLayout.html
+type AttachmentDescriptionStencilLayout struct {
SType StructureType
PNext unsafe.Pointer
- WaitSemaphoreCount uint32
- PWaitSemaphores []Semaphore
- PWaitDstStageMask []PipelineStageFlags
- CommandBufferCount uint32
- PCommandBuffers []CommandBuffer
- SignalSemaphoreCount uint32
- PSignalSemaphores []Semaphore
- ref22884025 *C.VkSubmitInfo
- allocs22884025 interface{}
+ StencilInitialLayout ImageLayout
+ StencilFinalLayout ImageLayout
+ refc8065ded *C.VkAttachmentDescriptionStencilLayout
+ allocsc8065ded interface{}
}
-// MemoryAllocateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryAllocateInfo.html
-type MemoryAllocateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- AllocationSize DeviceSize
- MemoryTypeIndex uint32
- ref31032b *C.VkMemoryAllocateInfo
- allocs31032b interface{}
+// PhysicalDeviceHostQueryResetFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceHostQueryResetFeatures.html
+type PhysicalDeviceHostQueryResetFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ HostQueryReset Bool32
+ ref6ff2e40a *C.VkPhysicalDeviceHostQueryResetFeatures
+ allocs6ff2e40a interface{}
}
-// MappedMemoryRange as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMappedMemoryRange.html
-type MappedMemoryRange struct {
+// PhysicalDeviceTimelineSemaphoreFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceTimelineSemaphoreFeatures.html
+type PhysicalDeviceTimelineSemaphoreFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ TimelineSemaphore Bool32
+ ref9260df2e *C.VkPhysicalDeviceTimelineSemaphoreFeatures
+ allocs9260df2e interface{}
+}
+
+// PhysicalDeviceTimelineSemaphoreProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceTimelineSemaphoreProperties.html
+type PhysicalDeviceTimelineSemaphoreProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ MaxTimelineSemaphoreValueDifference uint64
+ ref74220563 *C.VkPhysicalDeviceTimelineSemaphoreProperties
+ allocs74220563 interface{}
+}
+
+// SemaphoreTypeCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSemaphoreTypeCreateInfo.html
+type SemaphoreTypeCreateInfo struct {
SType StructureType
PNext unsafe.Pointer
- Memory DeviceMemory
- Offset DeviceSize
- Size DeviceSize
- ref42a37320 *C.VkMappedMemoryRange
- allocs42a37320 interface{}
+ SemaphoreType SemaphoreType
+ InitialValue uint64
+ ref4e668d65 *C.VkSemaphoreTypeCreateInfo
+ allocs4e668d65 interface{}
}
-// MemoryRequirements as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryRequirements.html
-type MemoryRequirements struct {
- Size DeviceSize
- Alignment DeviceSize
- MemoryTypeBits uint32
- ref5259fc6b *C.VkMemoryRequirements
- allocs5259fc6b interface{}
+// TimelineSemaphoreSubmitInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkTimelineSemaphoreSubmitInfo.html
+type TimelineSemaphoreSubmitInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ WaitSemaphoreValueCount uint32
+ PWaitSemaphoreValues []uint64
+ SignalSemaphoreValueCount uint32
+ PSignalSemaphoreValues []uint64
+ refc447a049 *C.VkTimelineSemaphoreSubmitInfo
+ allocsc447a049 interface{}
}
-// SparseImageFormatProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseImageFormatProperties.html
-type SparseImageFormatProperties struct {
- AspectMask ImageAspectFlags
- ImageGranularity Extent3D
- Flags SparseImageFormatFlags
- ref2c12cf44 *C.VkSparseImageFormatProperties
- allocs2c12cf44 interface{}
+// SemaphoreWaitInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSemaphoreWaitInfo.html
+type SemaphoreWaitInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags SemaphoreWaitFlags
+ SemaphoreCount uint32
+ PSemaphores []Semaphore
+ PValues []uint64
+ ref5e4f71e8 *C.VkSemaphoreWaitInfo
+ allocs5e4f71e8 interface{}
}
-// SparseImageMemoryRequirements as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseImageMemoryRequirements.html
-type SparseImageMemoryRequirements struct {
- FormatProperties SparseImageFormatProperties
- ImageMipTailFirstLod uint32
- ImageMipTailSize DeviceSize
- ImageMipTailOffset DeviceSize
- ImageMipTailStride DeviceSize
- ref685a2323 *C.VkSparseImageMemoryRequirements
- allocs685a2323 interface{}
+// SemaphoreSignalInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSemaphoreSignalInfo.html
+type SemaphoreSignalInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Semaphore Semaphore
+ Value uint64
+ ref126d16a2 *C.VkSemaphoreSignalInfo
+ allocs126d16a2 interface{}
}
-// SparseMemoryBind as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseMemoryBind.html
-type SparseMemoryBind struct {
- ResourceOffset DeviceSize
- Size DeviceSize
- Memory DeviceMemory
- MemoryOffset DeviceSize
- Flags SparseMemoryBindFlags
- ref5bf418e8 *C.VkSparseMemoryBind
- allocs5bf418e8 interface{}
+// PhysicalDeviceBufferDeviceAddressFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceBufferDeviceAddressFeatures.html
+type PhysicalDeviceBufferDeviceAddressFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ BufferDeviceAddress Bool32
+ BufferDeviceAddressCaptureReplay Bool32
+ BufferDeviceAddressMultiDevice Bool32
+ ref13b242c3 *C.VkPhysicalDeviceBufferDeviceAddressFeatures
+ allocs13b242c3 interface{}
}
-// SparseBufferMemoryBindInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseBufferMemoryBindInfo.html
-type SparseBufferMemoryBindInfo struct {
+// BufferDeviceAddressInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferDeviceAddressInfo.html
+type BufferDeviceAddressInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
Buffer Buffer
- BindCount uint32
- PBinds []SparseMemoryBind
- refebcaf40c *C.VkSparseBufferMemoryBindInfo
- allocsebcaf40c interface{}
+ ref347b43e3 *C.VkBufferDeviceAddressInfo
+ allocs347b43e3 interface{}
}
-// SparseImageOpaqueMemoryBindInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseImageOpaqueMemoryBindInfo.html
-type SparseImageOpaqueMemoryBindInfo struct {
- Image Image
- BindCount uint32
- PBinds []SparseMemoryBind
- reffb1b3d56 *C.VkSparseImageOpaqueMemoryBindInfo
- allocsfb1b3d56 interface{}
+// BufferOpaqueCaptureAddressCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferOpaqueCaptureAddressCreateInfo.html
+type BufferOpaqueCaptureAddressCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ OpaqueCaptureAddress uint64
+ refb0364ded *C.VkBufferOpaqueCaptureAddressCreateInfo
+ allocsb0364ded interface{}
}
-// ImageSubresource as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageSubresource.html
-type ImageSubresource struct {
- AspectMask ImageAspectFlags
- MipLevel uint32
- ArrayLayer uint32
- reffeaa0d8a *C.VkImageSubresource
- allocsfeaa0d8a interface{}
+// MemoryOpaqueCaptureAddressAllocateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryOpaqueCaptureAddressAllocateInfo.html
+type MemoryOpaqueCaptureAddressAllocateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ OpaqueCaptureAddress uint64
+ refe361764c *C.VkMemoryOpaqueCaptureAddressAllocateInfo
+ allocse361764c interface{}
}
-// Offset3D as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkOffset3D.html
-type Offset3D struct {
- X int32
- Y int32
- Z int32
- ref2b6879c2 *C.VkOffset3D
- allocs2b6879c2 interface{}
+// DeviceMemoryOpaqueCaptureAddressInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceMemoryOpaqueCaptureAddressInfo.html
+type DeviceMemoryOpaqueCaptureAddressInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Memory DeviceMemory
+ refbbe30c6e *C.VkDeviceMemoryOpaqueCaptureAddressInfo
+ allocsbbe30c6e interface{}
}
-// SparseImageMemoryBind as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseImageMemoryBind.html
-type SparseImageMemoryBind struct {
- Subresource ImageSubresource
- Offset Offset3D
- Extent Extent3D
- Memory DeviceMemory
- MemoryOffset DeviceSize
- Flags SparseMemoryBindFlags
- ref41b516d7 *C.VkSparseImageMemoryBind
- allocs41b516d7 interface{}
+// Flags64 type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFlags64.html
+type Flags64 uint64
+
+// PrivateDataSlot as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPrivateDataSlot.html
+type PrivateDataSlot C.VkPrivateDataSlot
+
+// PipelineCreationFeedbackFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCreationFeedbackFlags.html
+type PipelineCreationFeedbackFlags uint32
+
+// ToolPurposeFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkToolPurposeFlags.html
+type ToolPurposeFlags uint32
+
+// PrivateDataSlotCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPrivateDataSlotCreateFlags.html
+type PrivateDataSlotCreateFlags uint32
+
+// PipelineStageFlags2 type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineStageFlags2.html
+type PipelineStageFlags2 uint64
+
+// PipelineStageFlagBits2 type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineStageFlagBits2.html
+type PipelineStageFlagBits2 uint64
+
+// AccessFlags2 type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAccessFlags2.html
+type AccessFlags2 uint64
+
+// AccessFlagBits2 type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAccessFlagBits2.html
+type AccessFlagBits2 uint64
+
+// SubmitFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubmitFlags.html
+type SubmitFlags uint32
+
+// RenderingFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderingFlags.html
+type RenderingFlags uint32
+
+// FormatFeatureFlags2 type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFormatFeatureFlags2.html
+type FormatFeatureFlags2 uint64
+
+// FormatFeatureFlagBits2 type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFormatFeatureFlagBits2.html
+type FormatFeatureFlagBits2 uint64
+
+// PhysicalDeviceVulkan13Features as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceVulkan13Features.html
+type PhysicalDeviceVulkan13Features struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ RobustImageAccess Bool32
+ InlineUniformBlock Bool32
+ DescriptorBindingInlineUniformBlockUpdateAfterBind Bool32
+ PipelineCreationCacheControl Bool32
+ PrivateData Bool32
+ ShaderDemoteToHelperInvocation Bool32
+ ShaderTerminateInvocation Bool32
+ SubgroupSizeControl Bool32
+ ComputeFullSubgroups Bool32
+ Synchronization2 Bool32
+ TextureCompressionASTC_HDR Bool32
+ ShaderZeroInitializeWorkgroupMemory Bool32
+ DynamicRendering Bool32
+ ShaderIntegerDotProduct Bool32
+ Maintenance4 Bool32
+ reffbc57469 *C.VkPhysicalDeviceVulkan13Features
+ allocsfbc57469 interface{}
+}
+
+// PhysicalDeviceVulkan13Properties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceVulkan13Properties.html
+type PhysicalDeviceVulkan13Properties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ MinSubgroupSize uint32
+ MaxSubgroupSize uint32
+ MaxComputeWorkgroupSubgroups uint32
+ RequiredSubgroupSizeStages ShaderStageFlags
+ MaxInlineUniformBlockSize uint32
+ MaxPerStageDescriptorInlineUniformBlocks uint32
+ MaxPerStageDescriptorUpdateAfterBindInlineUniformBlocks uint32
+ MaxDescriptorSetInlineUniformBlocks uint32
+ MaxDescriptorSetUpdateAfterBindInlineUniformBlocks uint32
+ MaxInlineUniformTotalSize uint32
+ IntegerDotProduct8BitUnsignedAccelerated Bool32
+ IntegerDotProduct8BitSignedAccelerated Bool32
+ IntegerDotProduct8BitMixedSignednessAccelerated Bool32
+ IntegerDotProduct4x8BitPackedUnsignedAccelerated Bool32
+ IntegerDotProduct4x8BitPackedSignedAccelerated Bool32
+ IntegerDotProduct4x8BitPackedMixedSignednessAccelerated Bool32
+ IntegerDotProduct16BitUnsignedAccelerated Bool32
+ IntegerDotProduct16BitSignedAccelerated Bool32
+ IntegerDotProduct16BitMixedSignednessAccelerated Bool32
+ IntegerDotProduct32BitUnsignedAccelerated Bool32
+ IntegerDotProduct32BitSignedAccelerated Bool32
+ IntegerDotProduct32BitMixedSignednessAccelerated Bool32
+ IntegerDotProduct64BitUnsignedAccelerated Bool32
+ IntegerDotProduct64BitSignedAccelerated Bool32
+ IntegerDotProduct64BitMixedSignednessAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating8BitUnsignedAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating8BitSignedAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating16BitUnsignedAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating16BitSignedAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating32BitUnsignedAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating32BitSignedAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating64BitUnsignedAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating64BitSignedAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated Bool32
+ StorageTexelBufferOffsetAlignmentBytes DeviceSize
+ StorageTexelBufferOffsetSingleTexelAlignment Bool32
+ UniformTexelBufferOffsetAlignmentBytes DeviceSize
+ UniformTexelBufferOffsetSingleTexelAlignment Bool32
+ MaxBufferSize DeviceSize
+ ref8a1ecf64 *C.VkPhysicalDeviceVulkan13Properties
+ allocs8a1ecf64 interface{}
+}
+
+// PipelineCreationFeedback as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCreationFeedback.html
+type PipelineCreationFeedback struct {
+ Flags PipelineCreationFeedbackFlags
+ Duration uint64
+ ref98e30cfe *C.VkPipelineCreationFeedback
+ allocs98e30cfe interface{}
+}
+
+// PipelineCreationFeedbackCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCreationFeedbackCreateInfo.html
+type PipelineCreationFeedbackCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PPipelineCreationFeedback []PipelineCreationFeedback
+ PipelineStageCreationFeedbackCount uint32
+ PPipelineStageCreationFeedbacks []PipelineCreationFeedback
+ ref4fcf7570 *C.VkPipelineCreationFeedbackCreateInfo
+ allocs4fcf7570 interface{}
}
-// SparseImageMemoryBindInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseImageMemoryBindInfo.html
-type SparseImageMemoryBindInfo struct {
- Image Image
- BindCount uint32
- PBinds []SparseImageMemoryBind
- ref50faeb70 *C.VkSparseImageMemoryBindInfo
- allocs50faeb70 interface{}
+// PhysicalDeviceShaderTerminateInvocationFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceShaderTerminateInvocationFeatures.html
+type PhysicalDeviceShaderTerminateInvocationFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ShaderTerminateInvocation Bool32
+ ref49451fcb *C.VkPhysicalDeviceShaderTerminateInvocationFeatures
+ allocs49451fcb interface{}
}
-// BindSparseInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBindSparseInfo.html
-type BindSparseInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- WaitSemaphoreCount uint32
- PWaitSemaphores []Semaphore
- BufferBindCount uint32
- PBufferBinds []SparseBufferMemoryBindInfo
- ImageOpaqueBindCount uint32
- PImageOpaqueBinds []SparseImageOpaqueMemoryBindInfo
- ImageBindCount uint32
- PImageBinds []SparseImageMemoryBindInfo
- SignalSemaphoreCount uint32
- PSignalSemaphores []Semaphore
- refb0cbe910 *C.VkBindSparseInfo
- allocsb0cbe910 interface{}
+// PhysicalDeviceToolProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceToolProperties.html
+type PhysicalDeviceToolProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Name [256]byte
+ Version [256]byte
+ Purposes ToolPurposeFlags
+ Description [256]byte
+ Layer [256]byte
+ ref88f98ec3 *C.VkPhysicalDeviceToolProperties
+ allocs88f98ec3 interface{}
}
-// FenceCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFenceCreateInfo.html
-type FenceCreateInfo struct {
+// PhysicalDeviceShaderDemoteToHelperInvocationFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures.html
+type PhysicalDeviceShaderDemoteToHelperInvocationFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ShaderDemoteToHelperInvocation Bool32
+ ref5eeeae89 *C.VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures
+ allocs5eeeae89 interface{}
+}
+
+// PhysicalDevicePrivateDataFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDevicePrivateDataFeatures.html
+type PhysicalDevicePrivateDataFeatures struct {
SType StructureType
PNext unsafe.Pointer
- Flags FenceCreateFlags
- refb8ff4840 *C.VkFenceCreateInfo
- allocsb8ff4840 interface{}
+ PrivateData Bool32
+ refeee8cb11 *C.VkPhysicalDevicePrivateDataFeatures
+ allocseee8cb11 interface{}
}
-// SemaphoreCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSemaphoreCreateInfo.html
-type SemaphoreCreateInfo struct {
+// DevicePrivateDataCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDevicePrivateDataCreateInfo.html
+type DevicePrivateDataCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PrivateDataSlotRequestCount uint32
+ ref5e7326be *C.VkDevicePrivateDataCreateInfo
+ allocs5e7326be interface{}
+}
+
+// PrivateDataSlotCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPrivateDataSlotCreateInfo.html
+type PrivateDataSlotCreateInfo struct {
SType StructureType
PNext unsafe.Pointer
- Flags SemaphoreCreateFlags
- reff130cd2b *C.VkSemaphoreCreateInfo
- allocsf130cd2b interface{}
+ Flags PrivateDataSlotCreateFlags
+ reffd6b0ff3 *C.VkPrivateDataSlotCreateInfo
+ allocsfd6b0ff3 interface{}
}
-// EventCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkEventCreateInfo.html
-type EventCreateInfo struct {
+// PhysicalDevicePipelineCreationCacheControlFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDevicePipelineCreationCacheControlFeatures.html
+type PhysicalDevicePipelineCreationCacheControlFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PipelineCreationCacheControl Bool32
+ ref5e373d52 *C.VkPhysicalDevicePipelineCreationCacheControlFeatures
+ allocs5e373d52 interface{}
+}
+
+// MemoryBarrier2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryBarrier2.html
+type MemoryBarrier2 struct {
SType StructureType
PNext unsafe.Pointer
- Flags EventCreateFlags
- refa54f9ec8 *C.VkEventCreateInfo
- allocsa54f9ec8 interface{}
+ SrcStageMask PipelineStageFlags2
+ SrcAccessMask AccessFlags2
+ DstStageMask PipelineStageFlags2
+ DstAccessMask AccessFlags2
+ ref8b26ae0e *C.VkMemoryBarrier2
+ allocs8b26ae0e interface{}
}
-// QueryPoolCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueryPoolCreateInfo.html
-type QueryPoolCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags QueryPoolCreateFlags
- QueryType QueryType
- QueryCount uint32
- PipelineStatistics QueryPipelineStatisticFlags
- ref85dfcd4a *C.VkQueryPoolCreateInfo
- allocs85dfcd4a interface{}
+// BufferMemoryBarrier2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferMemoryBarrier2.html
+type BufferMemoryBarrier2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SrcStageMask PipelineStageFlags2
+ SrcAccessMask AccessFlags2
+ DstStageMask PipelineStageFlags2
+ DstAccessMask AccessFlags2
+ SrcQueueFamilyIndex uint32
+ DstQueueFamilyIndex uint32
+ Buffer Buffer
+ Offset DeviceSize
+ Size DeviceSize
+ ref8ded93f5 *C.VkBufferMemoryBarrier2
+ allocs8ded93f5 interface{}
}
-// BufferCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferCreateInfo.html
-type BufferCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags BufferCreateFlags
- Size DeviceSize
- Usage BufferUsageFlags
- SharingMode SharingMode
- QueueFamilyIndexCount uint32
- PQueueFamilyIndices []uint32
- reffe19d2cd *C.VkBufferCreateInfo
- allocsfe19d2cd interface{}
+// ImageMemoryBarrier2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageMemoryBarrier2.html
+type ImageMemoryBarrier2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SrcStageMask PipelineStageFlags2
+ SrcAccessMask AccessFlags2
+ DstStageMask PipelineStageFlags2
+ DstAccessMask AccessFlags2
+ OldLayout ImageLayout
+ NewLayout ImageLayout
+ SrcQueueFamilyIndex uint32
+ DstQueueFamilyIndex uint32
+ Image Image
+ SubresourceRange ImageSubresourceRange
+ refb3bc376a *C.VkImageMemoryBarrier2
+ allocsb3bc376a interface{}
}
-// BufferViewCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferViewCreateInfo.html
-type BufferViewCreateInfo struct {
+// DependencyInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDependencyInfo.html
+type DependencyInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DependencyFlags DependencyFlags
+ MemoryBarrierCount uint32
+ PMemoryBarriers []MemoryBarrier2
+ BufferMemoryBarrierCount uint32
+ PBufferMemoryBarriers []BufferMemoryBarrier2
+ ImageMemoryBarrierCount uint32
+ PImageMemoryBarriers []ImageMemoryBarrier2
+ ref18c760d2 *C.VkDependencyInfo
+ allocs18c760d2 interface{}
+}
+
+// SemaphoreSubmitInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSemaphoreSubmitInfo.html
+type SemaphoreSubmitInfo struct {
SType StructureType
PNext unsafe.Pointer
- Flags BufferViewCreateFlags
- Buffer Buffer
- Format Format
- Offset DeviceSize
- Range DeviceSize
- ref49b97027 *C.VkBufferViewCreateInfo
- allocs49b97027 interface{}
+ Semaphore Semaphore
+ Value uint64
+ StageMask PipelineStageFlags2
+ DeviceIndex uint32
+ ref9d52ed10 *C.VkSemaphoreSubmitInfo
+ allocs9d52ed10 interface{}
}
-// ImageCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageCreateInfo.html
-type ImageCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags ImageCreateFlags
- ImageType ImageType
- Format Format
- Extent Extent3D
- MipLevels uint32
- ArrayLayers uint32
- Samples SampleCountFlagBits
- Tiling ImageTiling
- Usage ImageUsageFlags
- SharingMode SharingMode
- QueueFamilyIndexCount uint32
- PQueueFamilyIndices []uint32
- InitialLayout ImageLayout
- reffb587ba1 *C.VkImageCreateInfo
- allocsfb587ba1 interface{}
+// CommandBufferSubmitInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandBufferSubmitInfo.html
+type CommandBufferSubmitInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ CommandBuffer CommandBuffer
+ DeviceMask uint32
+ ref67c6884a *C.VkCommandBufferSubmitInfo
+ allocs67c6884a interface{}
}
-// SubresourceLayout as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubresourceLayout.html
-type SubresourceLayout struct {
- Offset DeviceSize
- Size DeviceSize
- RowPitch DeviceSize
- ArrayPitch DeviceSize
- DepthPitch DeviceSize
- ref182612ad *C.VkSubresourceLayout
- allocs182612ad interface{}
+// SubmitInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubmitInfo2.html
+type SubmitInfo2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags SubmitFlags
+ WaitSemaphoreInfoCount uint32
+ PWaitSemaphoreInfos []SemaphoreSubmitInfo
+ CommandBufferInfoCount uint32
+ PCommandBufferInfos []CommandBufferSubmitInfo
+ SignalSemaphoreInfoCount uint32
+ PSignalSemaphoreInfos []SemaphoreSubmitInfo
+ ref51f3e20a *C.VkSubmitInfo2
+ allocs51f3e20a interface{}
+}
+
+// PhysicalDeviceSynchronization2Features as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceSynchronization2Features.html
+type PhysicalDeviceSynchronization2Features struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Synchronization2 Bool32
+ ref64be4f9 *C.VkPhysicalDeviceSynchronization2Features
+ allocs64be4f9 interface{}
}
-// ComponentMapping as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkComponentMapping.html
-type ComponentMapping struct {
- R ComponentSwizzle
- G ComponentSwizzle
- B ComponentSwizzle
- A ComponentSwizzle
- ref63d3d563 *C.VkComponentMapping
- allocs63d3d563 interface{}
+// PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures.html
+type PhysicalDeviceZeroInitializeWorkgroupMemoryFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ShaderZeroInitializeWorkgroupMemory Bool32
+ ref971f8a0a *C.VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures
+ allocs971f8a0a interface{}
}
-// ImageSubresourceRange as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageSubresourceRange.html
-type ImageSubresourceRange struct {
- AspectMask ImageAspectFlags
- BaseMipLevel uint32
- LevelCount uint32
- BaseArrayLayer uint32
- LayerCount uint32
- ref5aa1126 *C.VkImageSubresourceRange
- allocs5aa1126 interface{}
+// PhysicalDeviceImageRobustnessFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceImageRobustnessFeatures.html
+type PhysicalDeviceImageRobustnessFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ RobustImageAccess Bool32
+ ref73ceff2 *C.VkPhysicalDeviceImageRobustnessFeatures
+ allocs73ceff2 interface{}
}
-// ImageViewCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageViewCreateInfo.html
-type ImageViewCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags ImageViewCreateFlags
- Image Image
- ViewType ImageViewType
- Format Format
- Components ComponentMapping
- SubresourceRange ImageSubresourceRange
- ref77e8d4b8 *C.VkImageViewCreateInfo
- allocs77e8d4b8 interface{}
+// BufferCopy2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferCopy2.html
+type BufferCopy2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SrcOffset DeviceSize
+ DstOffset DeviceSize
+ Size DeviceSize
+ refd9cb28e3 *C.VkBufferCopy2
+ allocsd9cb28e3 interface{}
}
-// ShaderModuleCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkShaderModuleCreateInfo.html
-type ShaderModuleCreateInfo struct {
+// CopyBufferInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCopyBufferInfo2.html
+type CopyBufferInfo2 struct {
SType StructureType
PNext unsafe.Pointer
- Flags ShaderModuleCreateFlags
- CodeSize uint
- PCode []uint32
- refc663d23e *C.VkShaderModuleCreateInfo
- allocsc663d23e interface{}
+ SrcBuffer Buffer
+ DstBuffer Buffer
+ RegionCount uint32
+ PRegions []BufferCopy2
+ ref95a1aa26 *C.VkCopyBufferInfo2
+ allocs95a1aa26 interface{}
}
-// PipelineCacheCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCacheCreateInfo.html
-type PipelineCacheCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags PipelineCacheCreateFlags
- InitialDataSize uint
- PInitialData unsafe.Pointer
- reff11e7dd1 *C.VkPipelineCacheCreateInfo
- allocsf11e7dd1 interface{}
+// ImageCopy2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageCopy2.html
+type ImageCopy2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SrcSubresource ImageSubresourceLayers
+ SrcOffset Offset3D
+ DstSubresource ImageSubresourceLayers
+ DstOffset Offset3D
+ Extent Extent3D
+ ref411062 *C.VkImageCopy2
+ allocs411062 interface{}
}
-// SpecializationMapEntry as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSpecializationMapEntry.html
-type SpecializationMapEntry struct {
- ConstantID uint32
- Offset uint32
- Size uint
- ref2fd815d1 *C.VkSpecializationMapEntry
- allocs2fd815d1 interface{}
+// CopyImageInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCopyImageInfo2.html
+type CopyImageInfo2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SrcImage Image
+ SrcImageLayout ImageLayout
+ DstImage Image
+ DstImageLayout ImageLayout
+ RegionCount uint32
+ PRegions []ImageCopy2
+ ref73df1447 *C.VkCopyImageInfo2
+ allocs73df1447 interface{}
+}
+
+// BufferImageCopy2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferImageCopy2.html
+type BufferImageCopy2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ BufferOffset DeviceSize
+ BufferRowLength uint32
+ BufferImageHeight uint32
+ ImageSubresource ImageSubresourceLayers
+ ImageOffset Offset3D
+ ImageExtent Extent3D
+ refb0b2a2b1 *C.VkBufferImageCopy2
+ allocsb0b2a2b1 interface{}
}
-// SpecializationInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSpecializationInfo.html
-type SpecializationInfo struct {
- MapEntryCount uint32
- PMapEntries []SpecializationMapEntry
- DataSize uint
- PData unsafe.Pointer
- ref6bc395a3 *C.VkSpecializationInfo
- allocs6bc395a3 interface{}
+// CopyBufferToImageInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCopyBufferToImageInfo2.html
+type CopyBufferToImageInfo2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SrcBuffer Buffer
+ DstImage Image
+ DstImageLayout ImageLayout
+ RegionCount uint32
+ PRegions []BufferImageCopy2
+ refa8b5363c *C.VkCopyBufferToImageInfo2
+ allocsa8b5363c interface{}
}
-// PipelineShaderStageCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineShaderStageCreateInfo.html
-type PipelineShaderStageCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags PipelineShaderStageCreateFlags
- Stage ShaderStageFlagBits
- Module ShaderModule
- PName string
- PSpecializationInfo []SpecializationInfo
- ref50ba8b60 *C.VkPipelineShaderStageCreateInfo
- allocs50ba8b60 interface{}
+// CopyImageToBufferInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCopyImageToBufferInfo2.html
+type CopyImageToBufferInfo2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SrcImage Image
+ SrcImageLayout ImageLayout
+ DstBuffer Buffer
+ RegionCount uint32
+ PRegions []BufferImageCopy2
+ refa81aa2a6 *C.VkCopyImageToBufferInfo2
+ allocsa81aa2a6 interface{}
}
-// VertexInputBindingDescription as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkVertexInputBindingDescription.html
-type VertexInputBindingDescription struct {
- Binding uint32
- Stride uint32
- InputRate VertexInputRate
- ref5c9d8c23 *C.VkVertexInputBindingDescription
- allocs5c9d8c23 interface{}
+// ImageBlit2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageBlit2.html
+type ImageBlit2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SrcSubresource ImageSubresourceLayers
+ SrcOffsets [2]Offset3D
+ DstSubresource ImageSubresourceLayers
+ DstOffsets [2]Offset3D
+ ref89cd708e *C.VkImageBlit2
+ allocs89cd708e interface{}
+}
+
+// BlitImageInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBlitImageInfo2.html
+type BlitImageInfo2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SrcImage Image
+ SrcImageLayout ImageLayout
+ DstImage Image
+ DstImageLayout ImageLayout
+ RegionCount uint32
+ PRegions []ImageBlit2
+ Filter Filter
+ ref93f0395 *C.VkBlitImageInfo2
+ allocs93f0395 interface{}
+}
+
+// ImageResolve2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageResolve2.html
+type ImageResolve2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SrcSubresource ImageSubresourceLayers
+ SrcOffset Offset3D
+ DstSubresource ImageSubresourceLayers
+ DstOffset Offset3D
+ Extent Extent3D
+ ref29ad796d *C.VkImageResolve2
+ allocs29ad796d interface{}
+}
+
+// ResolveImageInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkResolveImageInfo2.html
+type ResolveImageInfo2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SrcImage Image
+ SrcImageLayout ImageLayout
+ DstImage Image
+ DstImageLayout ImageLayout
+ RegionCount uint32
+ PRegions []ImageResolve2
+ ref407c4932 *C.VkResolveImageInfo2
+ allocs407c4932 interface{}
+}
+
+// PhysicalDeviceSubgroupSizeControlFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceSubgroupSizeControlFeatures.html
+type PhysicalDeviceSubgroupSizeControlFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SubgroupSizeControl Bool32
+ ComputeFullSubgroups Bool32
+ ref688d05c2 *C.VkPhysicalDeviceSubgroupSizeControlFeatures
+ allocs688d05c2 interface{}
}
-// VertexInputAttributeDescription as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkVertexInputAttributeDescription.html
-type VertexInputAttributeDescription struct {
- Location uint32
- Binding uint32
- Format Format
- Offset uint32
- refdc4635ff *C.VkVertexInputAttributeDescription
- allocsdc4635ff interface{}
+// PhysicalDeviceSubgroupSizeControlProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceSubgroupSizeControlProperties.html
+type PhysicalDeviceSubgroupSizeControlProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ MinSubgroupSize uint32
+ MaxSubgroupSize uint32
+ MaxComputeWorkgroupSubgroups uint32
+ RequiredSubgroupSizeStages ShaderStageFlags
+ refe0ef78a4 *C.VkPhysicalDeviceSubgroupSizeControlProperties
+ allocse0ef78a4 interface{}
}
-// PipelineVertexInputStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineVertexInputStateCreateInfo.html
-type PipelineVertexInputStateCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags PipelineVertexInputStateCreateFlags
- VertexBindingDescriptionCount uint32
- PVertexBindingDescriptions []VertexInputBindingDescription
- VertexAttributeDescriptionCount uint32
- PVertexAttributeDescriptions []VertexInputAttributeDescription
- ref5fe4aa50 *C.VkPipelineVertexInputStateCreateInfo
- allocs5fe4aa50 interface{}
+// PipelineShaderStageRequiredSubgroupSizeCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineShaderStageRequiredSubgroupSizeCreateInfo.html
+type PipelineShaderStageRequiredSubgroupSizeCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ RequiredSubgroupSize uint32
+ refd57e5454 *C.VkPipelineShaderStageRequiredSubgroupSizeCreateInfo
+ allocsd57e5454 interface{}
}
-// PipelineInputAssemblyStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineInputAssemblyStateCreateInfo.html
-type PipelineInputAssemblyStateCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags PipelineInputAssemblyStateCreateFlags
- Topology PrimitiveTopology
- PrimitiveRestartEnable Bool32
- ref22e1691d *C.VkPipelineInputAssemblyStateCreateInfo
- allocs22e1691d interface{}
+// PhysicalDeviceInlineUniformBlockFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceInlineUniformBlockFeatures.html
+type PhysicalDeviceInlineUniformBlockFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ InlineUniformBlock Bool32
+ DescriptorBindingInlineUniformBlockUpdateAfterBind Bool32
+ ref6057e623 *C.VkPhysicalDeviceInlineUniformBlockFeatures
+ allocs6057e623 interface{}
}
-// PipelineTessellationStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineTessellationStateCreateInfo.html
-type PipelineTessellationStateCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags PipelineTessellationStateCreateFlags
- PatchControlPoints uint32
- ref4ef3997a *C.VkPipelineTessellationStateCreateInfo
- allocs4ef3997a interface{}
+// PhysicalDeviceInlineUniformBlockProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceInlineUniformBlockProperties.html
+type PhysicalDeviceInlineUniformBlockProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ MaxInlineUniformBlockSize uint32
+ MaxPerStageDescriptorInlineUniformBlocks uint32
+ MaxPerStageDescriptorUpdateAfterBindInlineUniformBlocks uint32
+ MaxDescriptorSetInlineUniformBlocks uint32
+ MaxDescriptorSetUpdateAfterBindInlineUniformBlocks uint32
+ ref9e890111 *C.VkPhysicalDeviceInlineUniformBlockProperties
+ allocs9e890111 interface{}
}
-// Viewport as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkViewport.html
-type Viewport struct {
- X float32
- Y float32
- Width float32
- Height float32
- MinDepth float32
- MaxDepth float32
- ref75cf5291 *C.VkViewport
- allocs75cf5291 interface{}
+// WriteDescriptorSetInlineUniformBlock as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkWriteDescriptorSetInlineUniformBlock.html
+type WriteDescriptorSetInlineUniformBlock struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DataSize uint32
+ PData unsafe.Pointer
+ ref3e98b3ff *C.VkWriteDescriptorSetInlineUniformBlock
+ allocs3e98b3ff interface{}
}
-// Offset2D as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkOffset2D.html
-type Offset2D struct {
- X int32
- Y int32
- ref32734883 *C.VkOffset2D
- allocs32734883 interface{}
+// DescriptorPoolInlineUniformBlockCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorPoolInlineUniformBlockCreateInfo.html
+type DescriptorPoolInlineUniformBlockCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ MaxInlineUniformBlockBindings uint32
+ refac227a39 *C.VkDescriptorPoolInlineUniformBlockCreateInfo
+ allocsac227a39 interface{}
}
-// Extent2D as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExtent2D.html
-type Extent2D struct {
- Width uint32
- Height uint32
- refe2edf56b *C.VkExtent2D
- allocse2edf56b interface{}
+// PhysicalDeviceTextureCompressionASTCHDRFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceTextureCompressionASTCHDRFeatures.html
+type PhysicalDeviceTextureCompressionASTCHDRFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ TextureCompressionASTC_HDR Bool32
+ refb5195968 *C.VkPhysicalDeviceTextureCompressionASTCHDRFeatures
+ allocsb5195968 interface{}
}
-// Rect2D as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRect2D.html
-type Rect2D struct {
- Offset Offset2D
- Extent Extent2D
- ref89e4256f *C.VkRect2D
- allocs89e4256f interface{}
+// RenderingAttachmentInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderingAttachmentInfo.html
+type RenderingAttachmentInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ImageView ImageView
+ ImageLayout ImageLayout
+ ResolveMode ResolveModeFlagBits
+ ResolveImageView ImageView
+ ResolveImageLayout ImageLayout
+ LoadOp AttachmentLoadOp
+ StoreOp AttachmentStoreOp
+ ClearValue ClearValue
+ ref62eee071 *C.VkRenderingAttachmentInfo
+ allocs62eee071 interface{}
+}
+
+// RenderingInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderingInfo.html
+type RenderingInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags RenderingFlags
+ RenderArea Rect2D
+ LayerCount uint32
+ ViewMask uint32
+ ColorAttachmentCount uint32
+ PColorAttachments []RenderingAttachmentInfo
+ PDepthAttachment []RenderingAttachmentInfo
+ PStencilAttachment []RenderingAttachmentInfo
+ refe60d8c7 *C.VkRenderingInfo
+ allocse60d8c7 interface{}
+}
+
+// PipelineRenderingCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRenderingCreateInfo.html
+type PipelineRenderingCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ViewMask uint32
+ ColorAttachmentCount uint32
+ PColorAttachmentFormats []Format
+ DepthAttachmentFormat Format
+ StencilAttachmentFormat Format
+ ref2f948283 *C.VkPipelineRenderingCreateInfo
+ allocs2f948283 interface{}
}
-// PipelineViewportStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineViewportStateCreateInfo.html
-type PipelineViewportStateCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags PipelineViewportStateCreateFlags
- ViewportCount uint32
- PViewports []Viewport
- ScissorCount uint32
- PScissors []Rect2D
- refc4705791 *C.VkPipelineViewportStateCreateInfo
- allocsc4705791 interface{}
+// PhysicalDeviceDynamicRenderingFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceDynamicRenderingFeatures.html
+type PhysicalDeviceDynamicRenderingFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DynamicRendering Bool32
+ refa724d875 *C.VkPhysicalDeviceDynamicRenderingFeatures
+ allocsa724d875 interface{}
}
-// PipelineRasterizationStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRasterizationStateCreateInfo.html
-type PipelineRasterizationStateCreateInfo struct {
+// CommandBufferInheritanceRenderingInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandBufferInheritanceRenderingInfo.html
+type CommandBufferInheritanceRenderingInfo struct {
SType StructureType
PNext unsafe.Pointer
- Flags PipelineRasterizationStateCreateFlags
- DepthClampEnable Bool32
- RasterizerDiscardEnable Bool32
- PolygonMode PolygonMode
- CullMode CullModeFlags
- FrontFace FrontFace
- DepthBiasEnable Bool32
- DepthBiasConstantFactor float32
- DepthBiasClamp float32
- DepthBiasSlopeFactor float32
- LineWidth float32
- ref48cb9fad *C.VkPipelineRasterizationStateCreateInfo
- allocs48cb9fad interface{}
+ Flags RenderingFlags
+ ViewMask uint32
+ ColorAttachmentCount uint32
+ PColorAttachmentFormats []Format
+ DepthAttachmentFormat Format
+ StencilAttachmentFormat Format
+ RasterizationSamples SampleCountFlagBits
+ reff704c204 *C.VkCommandBufferInheritanceRenderingInfo
+ allocsf704c204 interface{}
}
-// PipelineMultisampleStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineMultisampleStateCreateInfo.html
-type PipelineMultisampleStateCreateInfo struct {
+// PhysicalDeviceShaderIntegerDotProductFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceShaderIntegerDotProductFeatures.html
+type PhysicalDeviceShaderIntegerDotProductFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ShaderIntegerDotProduct Bool32
+ ref776faa9c *C.VkPhysicalDeviceShaderIntegerDotProductFeatures
+ allocs776faa9c interface{}
+}
+
+// PhysicalDeviceShaderIntegerDotProductProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceShaderIntegerDotProductProperties.html
+type PhysicalDeviceShaderIntegerDotProductProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ IntegerDotProduct8BitUnsignedAccelerated Bool32
+ IntegerDotProduct8BitSignedAccelerated Bool32
+ IntegerDotProduct8BitMixedSignednessAccelerated Bool32
+ IntegerDotProduct4x8BitPackedUnsignedAccelerated Bool32
+ IntegerDotProduct4x8BitPackedSignedAccelerated Bool32
+ IntegerDotProduct4x8BitPackedMixedSignednessAccelerated Bool32
+ IntegerDotProduct16BitUnsignedAccelerated Bool32
+ IntegerDotProduct16BitSignedAccelerated Bool32
+ IntegerDotProduct16BitMixedSignednessAccelerated Bool32
+ IntegerDotProduct32BitUnsignedAccelerated Bool32
+ IntegerDotProduct32BitSignedAccelerated Bool32
+ IntegerDotProduct32BitMixedSignednessAccelerated Bool32
+ IntegerDotProduct64BitUnsignedAccelerated Bool32
+ IntegerDotProduct64BitSignedAccelerated Bool32
+ IntegerDotProduct64BitMixedSignednessAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating8BitUnsignedAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating8BitSignedAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating16BitUnsignedAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating16BitSignedAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating32BitUnsignedAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating32BitSignedAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating64BitUnsignedAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating64BitSignedAccelerated Bool32
+ IntegerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated Bool32
+ ref82bea9e5 *C.VkPhysicalDeviceShaderIntegerDotProductProperties
+ allocs82bea9e5 interface{}
+}
+
+// PhysicalDeviceTexelBufferAlignmentProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceTexelBufferAlignmentProperties.html
+type PhysicalDeviceTexelBufferAlignmentProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ StorageTexelBufferOffsetAlignmentBytes DeviceSize
+ StorageTexelBufferOffsetSingleTexelAlignment Bool32
+ UniformTexelBufferOffsetAlignmentBytes DeviceSize
+ UniformTexelBufferOffsetSingleTexelAlignment Bool32
+ ref52cb68df *C.VkPhysicalDeviceTexelBufferAlignmentProperties
+ allocs52cb68df interface{}
+}
+
+// FormatProperties3 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFormatProperties3.html
+type FormatProperties3 struct {
SType StructureType
PNext unsafe.Pointer
- Flags PipelineMultisampleStateCreateFlags
- RasterizationSamples SampleCountFlagBits
- SampleShadingEnable Bool32
- MinSampleShading float32
- PSampleMask []SampleMask
- AlphaToCoverageEnable Bool32
- AlphaToOneEnable Bool32
- refb6538bfb *C.VkPipelineMultisampleStateCreateInfo
- allocsb6538bfb interface{}
+ LinearTilingFeatures FormatFeatureFlags2
+ OptimalTilingFeatures FormatFeatureFlags2
+ BufferFeatures FormatFeatureFlags2
+ refaac19fbc *C.VkFormatProperties3
+ allocsaac19fbc interface{}
}
-// StencilOpState as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkStencilOpState.html
-type StencilOpState struct {
- FailOp StencilOp
- PassOp StencilOp
- DepthFailOp StencilOp
- CompareOp CompareOp
- CompareMask uint32
- WriteMask uint32
- Reference uint32
- ref28886871 *C.VkStencilOpState
- allocs28886871 interface{}
+// PhysicalDeviceMaintenance4Features as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceMaintenance4Features.html
+type PhysicalDeviceMaintenance4Features struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Maintenance4 Bool32
+ refb110636b *C.VkPhysicalDeviceMaintenance4Features
+ allocsb110636b interface{}
}
-// PipelineDepthStencilStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineDepthStencilStateCreateInfo.html
-type PipelineDepthStencilStateCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags PipelineDepthStencilStateCreateFlags
- DepthTestEnable Bool32
- DepthWriteEnable Bool32
- DepthCompareOp CompareOp
- DepthBoundsTestEnable Bool32
- StencilTestEnable Bool32
- Front StencilOpState
- Back StencilOpState
- MinDepthBounds float32
- MaxDepthBounds float32
- refeabfcf1 *C.VkPipelineDepthStencilStateCreateInfo
- allocseabfcf1 interface{}
+// PhysicalDeviceMaintenance4Properties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceMaintenance4Properties.html
+type PhysicalDeviceMaintenance4Properties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ MaxBufferSize DeviceSize
+ ref3bfb62f4 *C.VkPhysicalDeviceMaintenance4Properties
+ allocs3bfb62f4 interface{}
}
-// PipelineColorBlendAttachmentState as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineColorBlendAttachmentState.html
-type PipelineColorBlendAttachmentState struct {
- BlendEnable Bool32
- SrcColorBlendFactor BlendFactor
- DstColorBlendFactor BlendFactor
- ColorBlendOp BlendOp
- SrcAlphaBlendFactor BlendFactor
- DstAlphaBlendFactor BlendFactor
- AlphaBlendOp BlendOp
- ColorWriteMask ColorComponentFlags
- ref9e889477 *C.VkPipelineColorBlendAttachmentState
- allocs9e889477 interface{}
+// DeviceBufferMemoryRequirements as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceBufferMemoryRequirements.html
+type DeviceBufferMemoryRequirements struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PCreateInfo []BufferCreateInfo
+ ref30350e90 *C.VkDeviceBufferMemoryRequirements
+ allocs30350e90 interface{}
}
-// PipelineColorBlendStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineColorBlendStateCreateInfo.html
-type PipelineColorBlendStateCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags PipelineColorBlendStateCreateFlags
- LogicOpEnable Bool32
- LogicOp LogicOp
- AttachmentCount uint32
- PAttachments []PipelineColorBlendAttachmentState
- BlendConstants [4]float32
- ref2a9b490b *C.VkPipelineColorBlendStateCreateInfo
- allocs2a9b490b interface{}
+// DeviceImageMemoryRequirements as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceImageMemoryRequirements.html
+type DeviceImageMemoryRequirements struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PCreateInfo []ImageCreateInfo
+ PlaneAspect ImageAspectFlagBits
+ refd9532ea3 *C.VkDeviceImageMemoryRequirements
+ allocsd9532ea3 interface{}
}
-// PipelineDynamicStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineDynamicStateCreateInfo.html
-type PipelineDynamicStateCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags PipelineDynamicStateCreateFlags
- DynamicStateCount uint32
- PDynamicStates []DynamicState
- ref246d7bc8 *C.VkPipelineDynamicStateCreateInfo
- allocs246d7bc8 interface{}
-}
+// Surface as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSurfaceKHR
+type Surface C.VkSurfaceKHR
-// GraphicsPipelineCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkGraphicsPipelineCreateInfo.html
-type GraphicsPipelineCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags PipelineCreateFlags
- StageCount uint32
- PStages []PipelineShaderStageCreateInfo
- PVertexInputState *PipelineVertexInputStateCreateInfo
- PInputAssemblyState *PipelineInputAssemblyStateCreateInfo
- PTessellationState *PipelineTessellationStateCreateInfo
- PViewportState *PipelineViewportStateCreateInfo
- PRasterizationState *PipelineRasterizationStateCreateInfo
- PMultisampleState *PipelineMultisampleStateCreateInfo
- PDepthStencilState *PipelineDepthStencilStateCreateInfo
- PColorBlendState *PipelineColorBlendStateCreateInfo
- PDynamicState *PipelineDynamicStateCreateInfo
- Layout PipelineLayout
- RenderPass RenderPass
- Subpass uint32
- BasePipelineHandle Pipeline
- BasePipelineIndex int32
- ref178f88b6 *C.VkGraphicsPipelineCreateInfo
- allocs178f88b6 interface{}
+// CompositeAlphaFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkCompositeAlphaFlagsKHR
+type CompositeAlphaFlags uint32
+
+// SurfaceTransformFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSurfaceTransformFlagsKHR
+type SurfaceTransformFlags uint32
+
+// SurfaceCapabilities as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSurfaceCapabilitiesKHR
+type SurfaceCapabilities struct {
+ MinImageCount uint32
+ MaxImageCount uint32
+ CurrentExtent Extent2D
+ MinImageExtent Extent2D
+ MaxImageExtent Extent2D
+ MaxImageArrayLayers uint32
+ SupportedTransforms SurfaceTransformFlags
+ CurrentTransform SurfaceTransformFlagBits
+ SupportedCompositeAlpha CompositeAlphaFlags
+ SupportedUsageFlags ImageUsageFlags
+ ref11d5f596 *C.VkSurfaceCapabilitiesKHR
+ allocs11d5f596 interface{}
}
-// ComputePipelineCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkComputePipelineCreateInfo.html
-type ComputePipelineCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags PipelineCreateFlags
- Stage PipelineShaderStageCreateInfo
- Layout PipelineLayout
- BasePipelineHandle Pipeline
- BasePipelineIndex int32
- ref77823220 *C.VkComputePipelineCreateInfo
- allocs77823220 interface{}
+// SurfaceFormat as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSurfaceFormatKHR
+type SurfaceFormat struct {
+ Format Format
+ ColorSpace ColorSpace
+ refedaf82ca *C.VkSurfaceFormatKHR
+ allocsedaf82ca interface{}
}
-// PushConstantRange as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPushConstantRange.html
-type PushConstantRange struct {
- StageFlags ShaderStageFlags
- Offset uint32
- Size uint32
- ref6f025856 *C.VkPushConstantRange
- allocs6f025856 interface{}
-}
+// Swapchain as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSwapchainKHR
+type Swapchain C.VkSwapchainKHR
-// PipelineLayoutCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineLayoutCreateInfo.html
-type PipelineLayoutCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags PipelineLayoutCreateFlags
- SetLayoutCount uint32
- PSetLayouts []DescriptorSetLayout
- PushConstantRangeCount uint32
- PPushConstantRanges []PushConstantRange
- ref64cc4eed *C.VkPipelineLayoutCreateInfo
- allocs64cc4eed interface{}
-}
+// SwapchainCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSwapchainCreateFlagsKHR
+type SwapchainCreateFlags uint32
-// SamplerCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerCreateInfo.html
-type SamplerCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags SamplerCreateFlags
- MagFilter Filter
- MinFilter Filter
- MipmapMode SamplerMipmapMode
- AddressModeU SamplerAddressMode
- AddressModeV SamplerAddressMode
- AddressModeW SamplerAddressMode
- MipLodBias float32
- AnisotropyEnable Bool32
- MaxAnisotropy float32
- CompareEnable Bool32
- CompareOp CompareOp
- MinLod float32
- MaxLod float32
- BorderColor BorderColor
- UnnormalizedCoordinates Bool32
- refce034abf *C.VkSamplerCreateInfo
- allocsce034abf interface{}
+// DeviceGroupPresentModeFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDeviceGroupPresentModeFlagsKHR
+type DeviceGroupPresentModeFlags uint32
+
+// SwapchainCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSwapchainCreateInfoKHR
+type SwapchainCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags SwapchainCreateFlags
+ Surface Surface
+ MinImageCount uint32
+ ImageFormat Format
+ ImageColorSpace ColorSpace
+ ImageExtent Extent2D
+ ImageArrayLayers uint32
+ ImageUsage ImageUsageFlags
+ ImageSharingMode SharingMode
+ QueueFamilyIndexCount uint32
+ PQueueFamilyIndices []uint32
+ PreTransform SurfaceTransformFlagBits
+ CompositeAlpha CompositeAlphaFlagBits
+ PresentMode PresentMode
+ Clipped Bool32
+ OldSwapchain Swapchain
+ refdb619e1c *C.VkSwapchainCreateInfoKHR
+ allocsdb619e1c interface{}
}
-// DescriptorSetLayoutBinding as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetLayoutBinding.html
-type DescriptorSetLayoutBinding struct {
- Binding uint32
- DescriptorType DescriptorType
- DescriptorCount uint32
- StageFlags ShaderStageFlags
- PImmutableSamplers []Sampler
- ref8b50b4ec *C.VkDescriptorSetLayoutBinding
- allocs8b50b4ec interface{}
+// PresentInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPresentInfoKHR
+type PresentInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ WaitSemaphoreCount uint32
+ PWaitSemaphores []Semaphore
+ SwapchainCount uint32
+ PSwapchains []Swapchain
+ PImageIndices []uint32
+ PResults []Result
+ ref1d0e82d4 *C.VkPresentInfoKHR
+ allocs1d0e82d4 interface{}
}
-// DescriptorSetLayoutCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetLayoutCreateInfo.html
-type DescriptorSetLayoutCreateInfo struct {
+// ImageSwapchainCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkImageSwapchainCreateInfoKHR
+type ImageSwapchainCreateInfo struct {
SType StructureType
PNext unsafe.Pointer
- Flags DescriptorSetLayoutCreateFlags
- BindingCount uint32
- PBindings []DescriptorSetLayoutBinding
- ref5ee8e0ed *C.VkDescriptorSetLayoutCreateInfo
- allocs5ee8e0ed interface{}
+ Swapchain Swapchain
+ refd83cc5d0 *C.VkImageSwapchainCreateInfoKHR
+ allocsd83cc5d0 interface{}
}
-// DescriptorPoolSize as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorPoolSize.html
-type DescriptorPoolSize struct {
- Type DescriptorType
- DescriptorCount uint32
- refe15137da *C.VkDescriptorPoolSize
- allocse15137da interface{}
+// BindImageMemorySwapchainInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkBindImageMemorySwapchainInfoKHR
+type BindImageMemorySwapchainInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Swapchain Swapchain
+ ImageIndex uint32
+ ref1aa25cb6 *C.VkBindImageMemorySwapchainInfoKHR
+ allocs1aa25cb6 interface{}
}
-// DescriptorPoolCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorPoolCreateInfo.html
-type DescriptorPoolCreateInfo struct {
+// AcquireNextImageInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkAcquireNextImageInfoKHR
+type AcquireNextImageInfo struct {
SType StructureType
PNext unsafe.Pointer
- Flags DescriptorPoolCreateFlags
- MaxSets uint32
- PoolSizeCount uint32
- PPoolSizes []DescriptorPoolSize
- ref19868463 *C.VkDescriptorPoolCreateInfo
- allocs19868463 interface{}
+ Swapchain Swapchain
+ Timeout uint64
+ Semaphore Semaphore
+ Fence Fence
+ DeviceMask uint32
+ ref588806a5 *C.VkAcquireNextImageInfoKHR
+ allocs588806a5 interface{}
}
-// DescriptorSetAllocateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetAllocateInfo.html
-type DescriptorSetAllocateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- DescriptorPool DescriptorPool
- DescriptorSetCount uint32
- PSetLayouts []DescriptorSetLayout
- ref2dd6cc22 *C.VkDescriptorSetAllocateInfo
- allocs2dd6cc22 interface{}
+// DeviceGroupPresentCapabilities as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDeviceGroupPresentCapabilitiesKHR
+type DeviceGroupPresentCapabilities struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PresentMask [32]uint32
+ Modes DeviceGroupPresentModeFlags
+ refa3962c81 *C.VkDeviceGroupPresentCapabilitiesKHR
+ allocsa3962c81 interface{}
}
-// DescriptorImageInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorImageInfo.html
-type DescriptorImageInfo struct {
- Sampler Sampler
- ImageView ImageView
- ImageLayout ImageLayout
- refaf073b07 *C.VkDescriptorImageInfo
- allocsaf073b07 interface{}
+// DeviceGroupPresentInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDeviceGroupPresentInfoKHR
+type DeviceGroupPresentInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SwapchainCount uint32
+ PDeviceMasks []uint32
+ Mode DeviceGroupPresentModeFlagBits
+ reff6912d09 *C.VkDeviceGroupPresentInfoKHR
+ allocsf6912d09 interface{}
}
-// DescriptorBufferInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorBufferInfo.html
-type DescriptorBufferInfo struct {
- Buffer Buffer
- Offset DeviceSize
- Range DeviceSize
- refe64bec0e *C.VkDescriptorBufferInfo
- allocse64bec0e interface{}
+// DeviceGroupSwapchainCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDeviceGroupSwapchainCreateInfoKHR
+type DeviceGroupSwapchainCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Modes DeviceGroupPresentModeFlags
+ ref44ae0c0e *C.VkDeviceGroupSwapchainCreateInfoKHR
+ allocs44ae0c0e interface{}
}
-// WriteDescriptorSet as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkWriteDescriptorSet.html
-type WriteDescriptorSet struct {
- SType StructureType
- PNext unsafe.Pointer
- DstSet DescriptorSet
- DstBinding uint32
- DstArrayElement uint32
- DescriptorCount uint32
- DescriptorType DescriptorType
- PImageInfo []DescriptorImageInfo
- PBufferInfo []DescriptorBufferInfo
- PTexelBufferView []BufferView
- ref3cec3f3f *C.VkWriteDescriptorSet
- allocs3cec3f3f interface{}
-}
+// Display as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayKHR
+type Display C.VkDisplayKHR
-// CopyDescriptorSet as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCopyDescriptorSet.html
-type CopyDescriptorSet struct {
- SType StructureType
- PNext unsafe.Pointer
- SrcSet DescriptorSet
- SrcBinding uint32
- SrcArrayElement uint32
- DstSet DescriptorSet
- DstBinding uint32
- DstArrayElement uint32
- DescriptorCount uint32
- reffe237a3a *C.VkCopyDescriptorSet
- allocsfe237a3a interface{}
-}
+// DisplayMode as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayModeKHR
+type DisplayMode C.VkDisplayModeKHR
-// FramebufferCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFramebufferCreateInfo.html
-type FramebufferCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags FramebufferCreateFlags
- RenderPass RenderPass
- AttachmentCount uint32
- PAttachments []ImageView
- Width uint32
- Height uint32
- Layers uint32
- refa3ad85cc *C.VkFramebufferCreateInfo
- allocsa3ad85cc interface{}
+// DisplayModeCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayModeCreateFlagsKHR
+type DisplayModeCreateFlags uint32
+
+// DisplayPlaneAlphaFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayPlaneAlphaFlagsKHR
+type DisplayPlaneAlphaFlags uint32
+
+// DisplaySurfaceCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplaySurfaceCreateFlagsKHR
+type DisplaySurfaceCreateFlags uint32
+
+// DisplayModeParameters as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayModeParametersKHR
+type DisplayModeParameters struct {
+ VisibleRegion Extent2D
+ RefreshRate uint32
+ refe016f77f *C.VkDisplayModeParametersKHR
+ allocse016f77f interface{}
}
-// AttachmentDescription as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAttachmentDescription.html
-type AttachmentDescription struct {
- Flags AttachmentDescriptionFlags
- Format Format
- Samples SampleCountFlagBits
- LoadOp AttachmentLoadOp
- StoreOp AttachmentStoreOp
- StencilLoadOp AttachmentLoadOp
- StencilStoreOp AttachmentStoreOp
- InitialLayout ImageLayout
- FinalLayout ImageLayout
- refa5d685fc *C.VkAttachmentDescription
- allocsa5d685fc interface{}
+// DisplayModeCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayModeCreateInfoKHR
+type DisplayModeCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags DisplayModeCreateFlags
+ Parameters DisplayModeParameters
+ ref392fca31 *C.VkDisplayModeCreateInfoKHR
+ allocs392fca31 interface{}
}
-// AttachmentReference as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAttachmentReference.html
-type AttachmentReference struct {
- Attachment uint32
- Layout ImageLayout
- refef4776de *C.VkAttachmentReference
- allocsef4776de interface{}
+// DisplayModeProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayModePropertiesKHR
+type DisplayModeProperties struct {
+ DisplayMode DisplayMode
+ Parameters DisplayModeParameters
+ ref5e3abaaa *C.VkDisplayModePropertiesKHR
+ allocs5e3abaaa interface{}
}
-// SubpassDescription as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubpassDescription.html
-type SubpassDescription struct {
- Flags SubpassDescriptionFlags
- PipelineBindPoint PipelineBindPoint
- InputAttachmentCount uint32
- PInputAttachments []AttachmentReference
- ColorAttachmentCount uint32
- PColorAttachments []AttachmentReference
- PResolveAttachments []AttachmentReference
- PDepthStencilAttachment *AttachmentReference
- PreserveAttachmentCount uint32
- PPreserveAttachments []uint32
- refc7bfeda *C.VkSubpassDescription
- allocsc7bfeda interface{}
+// DisplayPlaneCapabilities as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayPlaneCapabilitiesKHR
+type DisplayPlaneCapabilities struct {
+ SupportedAlpha DisplayPlaneAlphaFlags
+ MinSrcPosition Offset2D
+ MaxSrcPosition Offset2D
+ MinSrcExtent Extent2D
+ MaxSrcExtent Extent2D
+ MinDstPosition Offset2D
+ MaxDstPosition Offset2D
+ MinDstExtent Extent2D
+ MaxDstExtent Extent2D
+ ref6f31fcaf *C.VkDisplayPlaneCapabilitiesKHR
+ allocs6f31fcaf interface{}
}
-// SubpassDependency as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubpassDependency.html
-type SubpassDependency struct {
- SrcSubpass uint32
- DstSubpass uint32
- SrcStageMask PipelineStageFlags
- DstStageMask PipelineStageFlags
- SrcAccessMask AccessFlags
- DstAccessMask AccessFlags
- DependencyFlags DependencyFlags
- refdb197adb *C.VkSubpassDependency
- allocsdb197adb interface{}
+// DisplayPlaneProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayPlanePropertiesKHR
+type DisplayPlaneProperties struct {
+ CurrentDisplay Display
+ CurrentStackIndex uint32
+ refce3db3f6 *C.VkDisplayPlanePropertiesKHR
+ allocsce3db3f6 interface{}
}
-// RenderPassCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderPassCreateInfo.html
-type RenderPassCreateInfo struct {
+// DisplayProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayPropertiesKHR
+type DisplayProperties struct {
+ Display Display
+ DisplayName string
+ PhysicalDimensions Extent2D
+ PhysicalResolution Extent2D
+ SupportedTransforms SurfaceTransformFlags
+ PlaneReorderPossible Bool32
+ PersistentContent Bool32
+ reffe2a7187 *C.VkDisplayPropertiesKHR
+ allocsfe2a7187 interface{}
+}
+
+// DisplaySurfaceCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplaySurfaceCreateInfoKHR
+type DisplaySurfaceCreateInfo struct {
SType StructureType
PNext unsafe.Pointer
- Flags RenderPassCreateFlags
- AttachmentCount uint32
- PAttachments []AttachmentDescription
- SubpassCount uint32
- PSubpasses []SubpassDescription
- DependencyCount uint32
- PDependencies []SubpassDependency
- ref886d7d86 *C.VkRenderPassCreateInfo
- allocs886d7d86 interface{}
+ Flags DisplaySurfaceCreateFlags
+ DisplayMode DisplayMode
+ PlaneIndex uint32
+ PlaneStackIndex uint32
+ Transform SurfaceTransformFlagBits
+ GlobalAlpha float32
+ AlphaMode DisplayPlaneAlphaFlagBits
+ ImageExtent Extent2D
+ ref58445c35 *C.VkDisplaySurfaceCreateInfoKHR
+ allocs58445c35 interface{}
}
-// CommandPoolCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandPoolCreateInfo.html
-type CommandPoolCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags CommandPoolCreateFlags
- QueueFamilyIndex uint32
- ref73550de0 *C.VkCommandPoolCreateInfo
- allocs73550de0 interface{}
+// DisplayPresentInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayPresentInfoKHR
+type DisplayPresentInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SrcRect Rect2D
+ DstRect Rect2D
+ Persistent Bool32
+ ref8d2571e4 *C.VkDisplayPresentInfoKHR
+ allocs8d2571e4 interface{}
}
-// CommandBufferAllocateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandBufferAllocateInfo.html
-type CommandBufferAllocateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- CommandPool CommandPool
- Level CommandBufferLevel
- CommandBufferCount uint32
- refd1a0a7c8 *C.VkCommandBufferAllocateInfo
- allocsd1a0a7c8 interface{}
+// VideoSession as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoSessionKHR
+type VideoSession C.VkVideoSessionKHR
+
+// VideoSessionParameters as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoSessionParametersKHR
+type VideoSessionParameters C.VkVideoSessionParametersKHR
+
+// VideoCodecOperationFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoCodecOperationFlagsKHR
+type VideoCodecOperationFlags uint32
+
+// VideoChromaSubsamplingFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoChromaSubsamplingFlagsKHR
+type VideoChromaSubsamplingFlags uint32
+
+// VideoComponentBitDepthFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoComponentBitDepthFlagsKHR
+type VideoComponentBitDepthFlags uint32
+
+// VideoCapabilityFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoCapabilityFlagsKHR
+type VideoCapabilityFlags uint32
+
+// VideoSessionCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoSessionCreateFlagsKHR
+type VideoSessionCreateFlags uint32
+
+// VideoSessionParametersCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoSessionParametersCreateFlagsKHR
+type VideoSessionParametersCreateFlags uint32
+
+// VideoBeginCodingFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoBeginCodingFlagsKHR
+type VideoBeginCodingFlags uint32
+
+// VideoEndCodingFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoEndCodingFlagsKHR
+type VideoEndCodingFlags uint32
+
+// VideoCodingControlFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoCodingControlFlagsKHR
+type VideoCodingControlFlags uint32
+
+// QueueFamilyQueryResultStatusProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkQueueFamilyQueryResultStatusPropertiesKHR
+type QueueFamilyQueryResultStatusProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ QueryResultStatusSupport Bool32
+ ref1453d181 *C.VkQueueFamilyQueryResultStatusPropertiesKHR
+ allocs1453d181 interface{}
}
-// CommandBufferInheritanceInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandBufferInheritanceInfo.html
-type CommandBufferInheritanceInfo struct {
+// QueueFamilyVideoProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkQueueFamilyVideoPropertiesKHR
+type QueueFamilyVideoProperties struct {
SType StructureType
PNext unsafe.Pointer
- RenderPass RenderPass
- Subpass uint32
- Framebuffer Framebuffer
- OcclusionQueryEnable Bool32
- QueryFlags QueryControlFlags
- PipelineStatistics QueryPipelineStatisticFlags
- ref737f8019 *C.VkCommandBufferInheritanceInfo
- allocs737f8019 interface{}
+ VideoCodecOperations VideoCodecOperationFlags
+ refb21c87c4 *C.VkQueueFamilyVideoPropertiesKHR
+ allocsb21c87c4 interface{}
}
-// CommandBufferBeginInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandBufferBeginInfo.html
-type CommandBufferBeginInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags CommandBufferUsageFlags
- PInheritanceInfo []CommandBufferInheritanceInfo
- ref266762df *C.VkCommandBufferBeginInfo
- allocs266762df interface{}
+// VideoProfileInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoProfileInfoKHR
+type VideoProfileInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ VideoCodecOperation VideoCodecOperationFlagBits
+ ChromaSubsampling VideoChromaSubsamplingFlags
+ LumaBitDepth VideoComponentBitDepthFlags
+ ChromaBitDepth VideoComponentBitDepthFlags
+ refdbadacde *C.VkVideoProfileInfoKHR
+ allocsdbadacde interface{}
}
-// BufferCopy as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferCopy.html
-type BufferCopy struct {
- SrcOffset DeviceSize
- DstOffset DeviceSize
- Size DeviceSize
- ref12184ffd *C.VkBufferCopy
- allocs12184ffd interface{}
+// VideoProfileListInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoProfileListInfoKHR
+type VideoProfileListInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ProfileCount uint32
+ PProfiles []VideoProfileInfo
+ refd98c78d7 *C.VkVideoProfileListInfoKHR
+ allocsd98c78d7 interface{}
}
-// ImageSubresourceLayers as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageSubresourceLayers.html
-type ImageSubresourceLayers struct {
- AspectMask ImageAspectFlags
- MipLevel uint32
- BaseArrayLayer uint32
- LayerCount uint32
- ref3b13bcd2 *C.VkImageSubresourceLayers
- allocs3b13bcd2 interface{}
+// VideoCapabilities as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoCapabilitiesKHR
+type VideoCapabilities struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags VideoCapabilityFlags
+ MinBitstreamBufferOffsetAlignment DeviceSize
+ MinBitstreamBufferSizeAlignment DeviceSize
+ PictureAccessGranularity Extent2D
+ MinCodedExtent Extent2D
+ MaxCodedExtent Extent2D
+ MaxDpbSlots uint32
+ MaxActiveReferencePictures uint32
+ StdHeaderVersion ExtensionProperties
+ reff1959efe *C.VkVideoCapabilitiesKHR
+ allocsf1959efe interface{}
+}
+
+// PhysicalDeviceVideoFormatInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDeviceVideoFormatInfoKHR
+type PhysicalDeviceVideoFormatInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ImageUsage ImageUsageFlags
+ ref4d0248b7 *C.VkPhysicalDeviceVideoFormatInfoKHR
+ allocs4d0248b7 interface{}
}
-// ImageCopy as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageCopy.html
-type ImageCopy struct {
- SrcSubresource ImageSubresourceLayers
- SrcOffset Offset3D
- DstSubresource ImageSubresourceLayers
- DstOffset Offset3D
- Extent Extent3D
- ref4e7a1214 *C.VkImageCopy
- allocs4e7a1214 interface{}
+// VideoFormatProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoFormatPropertiesKHR
+type VideoFormatProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Format Format
+ ComponentMapping ComponentMapping
+ ImageCreateFlags ImageCreateFlags
+ ImageType ImageType
+ ImageTiling ImageTiling
+ ImageUsageFlags ImageUsageFlags
+ refa1a566f8 *C.VkVideoFormatPropertiesKHR
+ allocsa1a566f8 interface{}
}
-// ImageBlit as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageBlit.html
-type ImageBlit struct {
- SrcSubresource ImageSubresourceLayers
- SrcOffsets [2]Offset3D
- DstSubresource ImageSubresourceLayers
- DstOffsets [2]Offset3D
- ref11311e8d *C.VkImageBlit
- allocs11311e8d interface{}
+// VideoPictureResourceInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoPictureResourceInfoKHR
+type VideoPictureResourceInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ CodedOffset Offset2D
+ CodedExtent Extent2D
+ BaseArrayLayer uint32
+ ImageViewBinding ImageView
+ refe7a42049 *C.VkVideoPictureResourceInfoKHR
+ allocse7a42049 interface{}
}
-// BufferImageCopy as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferImageCopy.html
-type BufferImageCopy struct {
- BufferOffset DeviceSize
- BufferRowLength uint32
- BufferImageHeight uint32
- ImageSubresource ImageSubresourceLayers
- ImageOffset Offset3D
- ImageExtent Extent3D
- ref6d50e36e *C.VkBufferImageCopy
- allocs6d50e36e interface{}
+// VideoReferenceSlotInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoReferenceSlotInfoKHR
+type VideoReferenceSlotInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SlotIndex int32
+ PPictureResource []VideoPictureResourceInfo
+ refbbd1d28 *C.VkVideoReferenceSlotInfoKHR
+ allocsbbd1d28 interface{}
}
-// ClearColorValue as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkClearColorValue.html
-const sizeofClearColorValue = unsafe.Sizeof(C.VkClearColorValue{})
-
-type ClearColorValue [sizeofClearColorValue]byte
+// VideoSessionMemoryRequirements as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoSessionMemoryRequirementsKHR
+type VideoSessionMemoryRequirements struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ MemoryBindIndex uint32
+ MemoryRequirements MemoryRequirements
+ refd39e523e *C.VkVideoSessionMemoryRequirementsKHR
+ allocsd39e523e interface{}
+}
-// ClearDepthStencilValue as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkClearDepthStencilValue.html
-type ClearDepthStencilValue struct {
- Depth float32
- Stencil uint32
- refa7d07c03 *C.VkClearDepthStencilValue
- allocsa7d07c03 interface{}
+// BindVideoSessionMemoryInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkBindVideoSessionMemoryInfoKHR
+type BindVideoSessionMemoryInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ MemoryBindIndex uint32
+ Memory DeviceMemory
+ MemoryOffset DeviceSize
+ MemorySize DeviceSize
+ refaa36fd7c *C.VkBindVideoSessionMemoryInfoKHR
+ allocsaa36fd7c interface{}
}
-// ClearValue as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkClearValue.html
-const sizeofClearValue = unsafe.Sizeof(C.VkClearValue{})
+// VideoSessionCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoSessionCreateInfoKHR
+type VideoSessionCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ QueueFamilyIndex uint32
+ Flags VideoSessionCreateFlags
+ PVideoProfile []VideoProfileInfo
+ PictureFormat Format
+ MaxCodedExtent Extent2D
+ ReferencePictureFormat Format
+ MaxDpbSlots uint32
+ MaxActiveReferencePictures uint32
+ PStdHeaderVersion []ExtensionProperties
+ refaf4ef5a1 *C.VkVideoSessionCreateInfoKHR
+ allocsaf4ef5a1 interface{}
+}
+
+// VideoSessionParametersCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoSessionParametersCreateInfoKHR
+type VideoSessionParametersCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags VideoSessionParametersCreateFlags
+ VideoSessionParametersTemplate VideoSessionParameters
+ VideoSession VideoSession
+ reff62c4e51 *C.VkVideoSessionParametersCreateInfoKHR
+ allocsf62c4e51 interface{}
+}
-type ClearValue [sizeofClearValue]byte
+// VideoSessionParametersUpdateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoSessionParametersUpdateInfoKHR
+type VideoSessionParametersUpdateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ UpdateSequenceCount uint32
+ refcf7b7609 *C.VkVideoSessionParametersUpdateInfoKHR
+ allocscf7b7609 interface{}
+}
-// ClearAttachment as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkClearAttachment.html
-type ClearAttachment struct {
- AspectMask ImageAspectFlags
- ColorAttachment uint32
- ClearValue ClearValue
- refe9150303 *C.VkClearAttachment
- allocse9150303 interface{}
+// VideoBeginCodingInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoBeginCodingInfoKHR
+type VideoBeginCodingInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags VideoBeginCodingFlags
+ VideoSession VideoSession
+ VideoSessionParameters VideoSessionParameters
+ ReferenceSlotCount uint32
+ PReferenceSlots []VideoReferenceSlotInfo
+ ref6ab3d7b5 *C.VkVideoBeginCodingInfoKHR
+ allocs6ab3d7b5 interface{}
}
-// ClearRect as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkClearRect.html
-type ClearRect struct {
- Rect Rect2D
- BaseArrayLayer uint32
- LayerCount uint32
- ref1d449c8b *C.VkClearRect
- allocs1d449c8b interface{}
+// VideoEndCodingInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoEndCodingInfoKHR
+type VideoEndCodingInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags VideoEndCodingFlags
+ ref13b0038a *C.VkVideoEndCodingInfoKHR
+ allocs13b0038a interface{}
}
-// ImageResolve as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageResolve.html
-type ImageResolve struct {
- SrcSubresource ImageSubresourceLayers
- SrcOffset Offset3D
- DstSubresource ImageSubresourceLayers
- DstOffset Offset3D
- Extent Extent3D
- ref7bda856d *C.VkImageResolve
- allocs7bda856d interface{}
+// VideoCodingControlInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoCodingControlInfoKHR
+type VideoCodingControlInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags VideoCodingControlFlags
+ ref226eddcd *C.VkVideoCodingControlInfoKHR
+ allocs226eddcd interface{}
}
-// MemoryBarrier as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryBarrier.html
-type MemoryBarrier struct {
+// VideoDecodeCapabilityFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoDecodeCapabilityFlagsKHR
+type VideoDecodeCapabilityFlags uint32
+
+// VideoDecodeUsageFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoDecodeUsageFlagsKHR
+type VideoDecodeUsageFlags uint32
+
+// VideoDecodeFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoDecodeFlagsKHR
+type VideoDecodeFlags uint32
+
+// VideoDecodeCapabilities as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoDecodeCapabilitiesKHR
+type VideoDecodeCapabilities struct {
SType StructureType
PNext unsafe.Pointer
- SrcAccessMask AccessFlags
- DstAccessMask AccessFlags
- ref977c944e *C.VkMemoryBarrier
- allocs977c944e interface{}
+ Flags VideoDecodeCapabilityFlags
+ refc94faaf3 *C.VkVideoDecodeCapabilitiesKHR
+ allocsc94faaf3 interface{}
}
-// BufferMemoryBarrier as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferMemoryBarrier.html
-type BufferMemoryBarrier struct {
- SType StructureType
- PNext unsafe.Pointer
- SrcAccessMask AccessFlags
- DstAccessMask AccessFlags
- SrcQueueFamilyIndex uint32
- DstQueueFamilyIndex uint32
- Buffer Buffer
- Offset DeviceSize
- Size DeviceSize
- refeaf4700b *C.VkBufferMemoryBarrier
- allocseaf4700b interface{}
+// VideoDecodeUsageInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoDecodeUsageInfoKHR
+type VideoDecodeUsageInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ VideoUsageHints VideoDecodeUsageFlags
+ refd72a4309 *C.VkVideoDecodeUsageInfoKHR
+ allocsd72a4309 interface{}
}
-// ImageMemoryBarrier as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageMemoryBarrier.html
-type ImageMemoryBarrier struct {
+// VideoDecodeInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVideoDecodeInfoKHR
+type VideoDecodeInfo struct {
SType StructureType
PNext unsafe.Pointer
- SrcAccessMask AccessFlags
- DstAccessMask AccessFlags
- OldLayout ImageLayout
- NewLayout ImageLayout
- SrcQueueFamilyIndex uint32
- DstQueueFamilyIndex uint32
- Image Image
- SubresourceRange ImageSubresourceRange
- refd52734ec *C.VkImageMemoryBarrier
- allocsd52734ec interface{}
+ Flags VideoDecodeFlags
+ SrcBuffer Buffer
+ SrcBufferOffset DeviceSize
+ SrcBufferRange DeviceSize
+ DstPictureResource VideoPictureResourceInfo
+ PSetupReferenceSlot []VideoReferenceSlotInfo
+ ReferenceSlotCount uint32
+ PReferenceSlots []VideoReferenceSlotInfo
+ refbbf9d3b8 *C.VkVideoDecodeInfoKHR
+ allocsbbf9d3b8 interface{}
+}
+
+// RenderingFragmentShadingRateAttachmentInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkRenderingFragmentShadingRateAttachmentInfoKHR
+type RenderingFragmentShadingRateAttachmentInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ImageView ImageView
+ ImageLayout ImageLayout
+ ShadingRateAttachmentTexelSize Extent2D
+ ref4d98d68f *C.VkRenderingFragmentShadingRateAttachmentInfoKHR
+ allocs4d98d68f interface{}
}
-// RenderPassBeginInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderPassBeginInfo.html
-type RenderPassBeginInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- RenderPass RenderPass
- Framebuffer Framebuffer
- RenderArea Rect2D
- ClearValueCount uint32
- PClearValues []ClearValue
- ref3c3752c8 *C.VkRenderPassBeginInfo
- allocs3c3752c8 interface{}
+// RenderingFragmentDensityMapAttachmentInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderingFragmentDensityMapAttachmentInfoEXT.html
+type RenderingFragmentDensityMapAttachmentInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ImageView ImageView
+ ImageLayout ImageLayout
+ ref5a007d48 *C.VkRenderingFragmentDensityMapAttachmentInfoEXT
+ allocs5a007d48 interface{}
}
-// DispatchIndirectCommand as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDispatchIndirectCommand.html
-type DispatchIndirectCommand struct {
- X uint32
- Y uint32
- Z uint32
- refd298ba27 *C.VkDispatchIndirectCommand
- allocsd298ba27 interface{}
+// AttachmentSampleCountInfoAMD as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkAttachmentSampleCountInfoAMD
+type AttachmentSampleCountInfoAMD struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ColorAttachmentCount uint32
+ PColorAttachmentSamples []SampleCountFlagBits
+ DepthStencilAttachmentSamples SampleCountFlagBits
+ refeef56262 *C.VkAttachmentSampleCountInfoAMD
+ allocseef56262 interface{}
}
-// DrawIndexedIndirectCommand as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDrawIndexedIndirectCommand.html
-type DrawIndexedIndirectCommand struct {
- IndexCount uint32
- InstanceCount uint32
- FirstIndex uint32
- VertexOffset int32
- FirstInstance uint32
- ref4c78b5c3 *C.VkDrawIndexedIndirectCommand
- allocs4c78b5c3 interface{}
+// AttachmentSampleCountInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAttachmentSampleCountInfoNV.html
+type AttachmentSampleCountInfoNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ColorAttachmentCount uint32
+ PColorAttachmentSamples []SampleCountFlagBits
+ DepthStencilAttachmentSamples SampleCountFlagBits
+ refeef56262 *C.VkAttachmentSampleCountInfoAMD
+ allocseef56262 interface{}
}
-// DrawIndirectCommand as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDrawIndirectCommand.html
-type DrawIndirectCommand struct {
- VertexCount uint32
- InstanceCount uint32
- FirstVertex uint32
- FirstInstance uint32
- ref2b5b67c4 *C.VkDrawIndirectCommand
- allocs2b5b67c4 interface{}
+// MultiviewPerViewAttributesInfoNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkMultiviewPerViewAttributesInfoNVX
+type MultiviewPerViewAttributesInfoNVX struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PerViewAttributes Bool32
+ PerViewAttributesPositionXOnly Bool32
+ refc7d79ea0 *C.VkMultiviewPerViewAttributesInfoNVX
+ allocsc7d79ea0 interface{}
}
-// BaseOutStructure as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBaseOutStructure.html
-type BaseOutStructure struct {
+// ImportMemoryFdInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkImportMemoryFdInfoKHR
+type ImportMemoryFdInfo struct {
SType StructureType
- PNext []BaseOutStructure
- refd536fcd0 *C.VkBaseOutStructure
- allocsd536fcd0 interface{}
+ PNext unsafe.Pointer
+ HandleType ExternalMemoryHandleTypeFlagBits
+ Fd int32
+ ref73f83287 *C.VkImportMemoryFdInfoKHR
+ allocs73f83287 interface{}
}
-// BaseInStructure as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBaseInStructure.html
-type BaseInStructure struct {
+// MemoryFdProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkMemoryFdPropertiesKHR
+type MemoryFdProperties struct {
SType StructureType
- PNext []BaseInStructure
- refeae401a9 *C.VkBaseInStructure
- allocseae401a9 interface{}
+ PNext unsafe.Pointer
+ MemoryTypeBits uint32
+ ref51e16d38 *C.VkMemoryFdPropertiesKHR
+ allocs51e16d38 interface{}
}
-// SamplerYcbcrConversion as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerYcbcrConversion.html
-type SamplerYcbcrConversion C.VkSamplerYcbcrConversion
-
-// DescriptorUpdateTemplate as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorUpdateTemplate.html
-type DescriptorUpdateTemplate C.VkDescriptorUpdateTemplate
-
-// SubgroupFeatureFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubgroupFeatureFlags.html
-type SubgroupFeatureFlags uint32
-
-// PeerMemoryFeatureFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPeerMemoryFeatureFlags.html
-type PeerMemoryFeatureFlags uint32
-
-// MemoryAllocateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryAllocateFlags.html
-type MemoryAllocateFlags uint32
-
-// CommandPoolTrimFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandPoolTrimFlags.html
-type CommandPoolTrimFlags uint32
-
-// DescriptorUpdateTemplateCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorUpdateTemplateCreateFlags.html
-type DescriptorUpdateTemplateCreateFlags uint32
-
-// ExternalMemoryHandleTypeFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryHandleTypeFlags.html
-type ExternalMemoryHandleTypeFlags uint32
+// MemoryGetFdInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkMemoryGetFdInfoKHR
+type MemoryGetFdInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Memory DeviceMemory
+ HandleType ExternalMemoryHandleTypeFlagBits
+ ref75a079b1 *C.VkMemoryGetFdInfoKHR
+ allocs75a079b1 interface{}
+}
-// ExternalMemoryFeatureFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryFeatureFlags.html
-type ExternalMemoryFeatureFlags uint32
+// ImportSemaphoreFdInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkImportSemaphoreFdInfoKHR
+type ImportSemaphoreFdInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Semaphore Semaphore
+ Flags SemaphoreImportFlags
+ HandleType ExternalSemaphoreHandleTypeFlagBits
+ Fd int32
+ refbc2f829a *C.VkImportSemaphoreFdInfoKHR
+ allocsbc2f829a interface{}
+}
-// ExternalFenceHandleTypeFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalFenceHandleTypeFlags.html
-type ExternalFenceHandleTypeFlags uint32
+// SemaphoreGetFdInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSemaphoreGetFdInfoKHR
+type SemaphoreGetFdInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Semaphore Semaphore
+ HandleType ExternalSemaphoreHandleTypeFlagBits
+ refd9bd07cf *C.VkSemaphoreGetFdInfoKHR
+ allocsd9bd07cf interface{}
+}
-// ExternalFenceFeatureFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalFenceFeatureFlags.html
-type ExternalFenceFeatureFlags uint32
+// PhysicalDevicePushDescriptorProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDevicePushDescriptorPropertiesKHR
+type PhysicalDevicePushDescriptorProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ MaxPushDescriptors uint32
+ ref8c58a1a5 *C.VkPhysicalDevicePushDescriptorPropertiesKHR
+ allocs8c58a1a5 interface{}
+}
-// FenceImportFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFenceImportFlags.html
-type FenceImportFlags uint32
+// PhysicalDeviceFloat16Int8Features as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDeviceFloat16Int8FeaturesKHR
+type PhysicalDeviceFloat16Int8Features struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ShaderFloat16 Bool32
+ ShaderInt8 Bool32
+ refc9d315b6 *C.VkPhysicalDeviceShaderFloat16Int8Features
+ allocsc9d315b6 interface{}
+}
-// SemaphoreImportFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSemaphoreImportFlags.html
-type SemaphoreImportFlags uint32
+// RectLayer as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkRectLayerKHR
+type RectLayer struct {
+ Offset Offset2D
+ Extent Extent2D
+ Layer uint32
+ refaf248476 *C.VkRectLayerKHR
+ allocsaf248476 interface{}
+}
-// ExternalSemaphoreHandleTypeFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalSemaphoreHandleTypeFlags.html
-type ExternalSemaphoreHandleTypeFlags uint32
+// PresentRegion as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPresentRegionKHR
+type PresentRegion struct {
+ RectangleCount uint32
+ PRectangles []RectLayer
+ refbbc0d1b9 *C.VkPresentRegionKHR
+ allocsbbc0d1b9 interface{}
+}
-// ExternalSemaphoreFeatureFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalSemaphoreFeatureFlags.html
-type ExternalSemaphoreFeatureFlags uint32
+// PresentRegions as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPresentRegionsKHR
+type PresentRegions struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SwapchainCount uint32
+ PRegions []PresentRegion
+ ref62958060 *C.VkPresentRegionsKHR
+ allocs62958060 interface{}
+}
-// PhysicalDeviceSubgroupProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceSubgroupProperties.html
-type PhysicalDeviceSubgroupProperties struct {
- SType StructureType
- PNext unsafe.Pointer
- SubgroupSize uint32
- SupportedStages ShaderStageFlags
- SupportedOperations SubgroupFeatureFlags
- QuadOperationsInAllStages Bool32
- refb019c29f *C.VkPhysicalDeviceSubgroupProperties
- allocsb019c29f interface{}
+// SharedPresentSurfaceCapabilities as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSharedPresentSurfaceCapabilitiesKHR
+type SharedPresentSurfaceCapabilities struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SharedPresentSupportedUsageFlags ImageUsageFlags
+ ref3f98a814 *C.VkSharedPresentSurfaceCapabilitiesKHR
+ allocs3f98a814 interface{}
}
-// BindBufferMemoryInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBindBufferMemoryInfo.html
-type BindBufferMemoryInfo struct {
+// ImportFenceFdInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkImportFenceFdInfoKHR
+type ImportFenceFdInfo struct {
SType StructureType
PNext unsafe.Pointer
- Buffer Buffer
- Memory DeviceMemory
- MemoryOffset DeviceSize
- refd392322d *C.VkBindBufferMemoryInfo
- allocsd392322d interface{}
+ Fence Fence
+ Flags FenceImportFlags
+ HandleType ExternalFenceHandleTypeFlagBits
+ Fd int32
+ ref86ebd28c *C.VkImportFenceFdInfoKHR
+ allocs86ebd28c interface{}
}
-// BindImageMemoryInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBindImageMemoryInfo.html
-type BindImageMemoryInfo struct {
+// FenceGetFdInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkFenceGetFdInfoKHR
+type FenceGetFdInfo struct {
SType StructureType
PNext unsafe.Pointer
- Image Image
- Memory DeviceMemory
- MemoryOffset DeviceSize
- ref767a2113 *C.VkBindImageMemoryInfo
- allocs767a2113 interface{}
+ Fence Fence
+ HandleType ExternalFenceHandleTypeFlagBits
+ refc2668bc3 *C.VkFenceGetFdInfoKHR
+ allocsc2668bc3 interface{}
}
-// PhysicalDevice16BitStorageFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDevice16BitStorageFeatures.html
-type PhysicalDevice16BitStorageFeatures struct {
- SType StructureType
- PNext unsafe.Pointer
- StorageBuffer16BitAccess Bool32
- UniformAndStorageBuffer16BitAccess Bool32
- StoragePushConstant16 Bool32
- StorageInputOutput16 Bool32
- refa90fed14 *C.VkPhysicalDevice16BitStorageFeatures
- allocsa90fed14 interface{}
+// PerformanceCounterDescriptionFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPerformanceCounterDescriptionFlagsKHR
+type PerformanceCounterDescriptionFlags uint32
+
+// AcquireProfilingLockFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkAcquireProfilingLockFlagsKHR
+type AcquireProfilingLockFlags uint32
+
+// PhysicalDevicePerformanceQueryFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDevicePerformanceQueryFeaturesKHR
+type PhysicalDevicePerformanceQueryFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PerformanceCounterQueryPools Bool32
+ PerformanceCounterMultipleQueryPools Bool32
+ ref8e4527cb *C.VkPhysicalDevicePerformanceQueryFeaturesKHR
+ allocs8e4527cb interface{}
}
-// MemoryDedicatedRequirements as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryDedicatedRequirements.html
-type MemoryDedicatedRequirements struct {
- SType StructureType
- PNext unsafe.Pointer
- PrefersDedicatedAllocation Bool32
- RequiresDedicatedAllocation Bool32
- refaa924122 *C.VkMemoryDedicatedRequirements
- allocsaa924122 interface{}
+// PhysicalDevicePerformanceQueryProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDevicePerformanceQueryPropertiesKHR
+type PhysicalDevicePerformanceQueryProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ AllowCommandBufferQueryCopies Bool32
+ refc3efa645 *C.VkPhysicalDevicePerformanceQueryPropertiesKHR
+ allocsc3efa645 interface{}
}
-// MemoryDedicatedAllocateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryDedicatedAllocateInfo.html
-type MemoryDedicatedAllocateInfo struct {
+// PerformanceCounter as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPerformanceCounterKHR
+type PerformanceCounter struct {
SType StructureType
PNext unsafe.Pointer
- Image Image
- Buffer Buffer
- reff8fabe62 *C.VkMemoryDedicatedAllocateInfo
- allocsf8fabe62 interface{}
+ Unit PerformanceCounterUnit
+ Scope PerformanceCounterScope
+ Storage PerformanceCounterStorage
+ Uuid [16]byte
+ refc754b4e5 *C.VkPerformanceCounterKHR
+ allocsc754b4e5 interface{}
}
-// MemoryAllocateFlagsInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryAllocateFlagsInfo.html
-type MemoryAllocateFlagsInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags MemoryAllocateFlags
- DeviceMask uint32
- ref7ca6664 *C.VkMemoryAllocateFlagsInfo
- allocs7ca6664 interface{}
+// PerformanceCounterDescription as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPerformanceCounterDescriptionKHR
+type PerformanceCounterDescription struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags PerformanceCounterDescriptionFlags
+ Name [256]byte
+ Category [256]byte
+ Description [256]byte
+ ref95209df5 *C.VkPerformanceCounterDescriptionKHR
+ allocs95209df5 interface{}
}
-// DeviceGroupRenderPassBeginInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceGroupRenderPassBeginInfo.html
-type DeviceGroupRenderPassBeginInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- DeviceMask uint32
- DeviceRenderAreaCount uint32
- PDeviceRenderAreas []Rect2D
- ref139f3599 *C.VkDeviceGroupRenderPassBeginInfo
- allocs139f3599 interface{}
+// QueryPoolPerformanceCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkQueryPoolPerformanceCreateInfoKHR
+type QueryPoolPerformanceCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ QueueFamilyIndex uint32
+ CounterIndexCount uint32
+ PCounterIndices []uint32
+ ref55afa561 *C.VkQueryPoolPerformanceCreateInfoKHR
+ allocs55afa561 interface{}
}
-// DeviceGroupCommandBufferBeginInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceGroupCommandBufferBeginInfo.html
-type DeviceGroupCommandBufferBeginInfo struct {
+// PerformanceCounterResult as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPerformanceCounterResultKHR
+const sizeofPerformanceCounterResult = unsafe.Sizeof(C.VkPerformanceCounterResultKHR{})
+
+type PerformanceCounterResult [sizeofPerformanceCounterResult]byte
+
+// AcquireProfilingLockInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkAcquireProfilingLockInfoKHR
+type AcquireProfilingLockInfo struct {
SType StructureType
PNext unsafe.Pointer
- DeviceMask uint32
- refb9a8f0cd *C.VkDeviceGroupCommandBufferBeginInfo
- allocsb9a8f0cd interface{}
+ Flags AcquireProfilingLockFlags
+ Timeout uint64
+ ref73cbb121 *C.VkAcquireProfilingLockInfoKHR
+ allocs73cbb121 interface{}
}
-// DeviceGroupSubmitInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceGroupSubmitInfo.html
-type DeviceGroupSubmitInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- WaitSemaphoreCount uint32
- PWaitSemaphoreDeviceIndices []uint32
- CommandBufferCount uint32
- PCommandBufferDeviceMasks []uint32
- SignalSemaphoreCount uint32
- PSignalSemaphoreDeviceIndices []uint32
- refea4e7ce4 *C.VkDeviceGroupSubmitInfo
- allocsea4e7ce4 interface{}
+// PerformanceQuerySubmitInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPerformanceQuerySubmitInfoKHR
+type PerformanceQuerySubmitInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ CounterPassIndex uint32
+ refbccd2736 *C.VkPerformanceQuerySubmitInfoKHR
+ allocsbccd2736 interface{}
}
-// DeviceGroupBindSparseInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceGroupBindSparseInfo.html
-type DeviceGroupBindSparseInfo struct {
+// PhysicalDeviceSurfaceInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDeviceSurfaceInfo2KHR
+type PhysicalDeviceSurfaceInfo2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Surface Surface
+ refd22370ae *C.VkPhysicalDeviceSurfaceInfo2KHR
+ allocsd22370ae interface{}
+}
+
+// SurfaceCapabilities2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSurfaceCapabilities2KHR
+type SurfaceCapabilities2 struct {
SType StructureType
PNext unsafe.Pointer
- ResourceDeviceIndex uint32
- MemoryDeviceIndex uint32
- ref5b5446cd *C.VkDeviceGroupBindSparseInfo
- allocs5b5446cd interface{}
+ SurfaceCapabilities SurfaceCapabilities
+ refea469745 *C.VkSurfaceCapabilities2KHR
+ allocsea469745 interface{}
}
-// BindBufferMemoryDeviceGroupInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBindBufferMemoryDeviceGroupInfo.html
-type BindBufferMemoryDeviceGroupInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- DeviceIndexCount uint32
- PDeviceIndices []uint32
- reff136b64f *C.VkBindBufferMemoryDeviceGroupInfo
- allocsf136b64f interface{}
+// SurfaceFormat2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSurfaceFormat2KHR
+type SurfaceFormat2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SurfaceFormat SurfaceFormat
+ ref8867f0ed *C.VkSurfaceFormat2KHR
+ allocs8867f0ed interface{}
}
-// BindImageMemoryDeviceGroupInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBindImageMemoryDeviceGroupInfo.html
-type BindImageMemoryDeviceGroupInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- DeviceIndexCount uint32
- PDeviceIndices []uint32
- SplitInstanceBindRegionCount uint32
- PSplitInstanceBindRegions []Rect2D
- ref24f026a5 *C.VkBindImageMemoryDeviceGroupInfo
- allocs24f026a5 interface{}
+// DisplayProperties2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayProperties2KHR
+type DisplayProperties2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DisplayProperties DisplayProperties
+ ref80194833 *C.VkDisplayProperties2KHR
+ allocs80194833 interface{}
}
-// PhysicalDeviceGroupProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceGroupProperties.html
-type PhysicalDeviceGroupProperties struct {
- SType StructureType
- PNext unsafe.Pointer
- PhysicalDeviceCount uint32
- PhysicalDevices [32]PhysicalDevice
- SubsetAllocation Bool32
- ref2aa9a663 *C.VkPhysicalDeviceGroupProperties
- allocs2aa9a663 interface{}
+// DisplayPlaneProperties2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayPlaneProperties2KHR
+type DisplayPlaneProperties2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DisplayPlaneProperties DisplayPlaneProperties
+ refa72b1e5b *C.VkDisplayPlaneProperties2KHR
+ allocsa72b1e5b interface{}
}
-// DeviceGroupDeviceCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceGroupDeviceCreateInfo.html
-type DeviceGroupDeviceCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- PhysicalDeviceCount uint32
- PPhysicalDevices []PhysicalDevice
- refb2275723 *C.VkDeviceGroupDeviceCreateInfo
- allocsb2275723 interface{}
+// DisplayModeProperties2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayModeProperties2KHR
+type DisplayModeProperties2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DisplayModeProperties DisplayModeProperties
+ refc566048d *C.VkDisplayModeProperties2KHR
+ allocsc566048d interface{}
}
-// BufferMemoryRequirementsInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferMemoryRequirementsInfo2.html
-type BufferMemoryRequirementsInfo2 struct {
+// DisplayPlaneInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayPlaneInfo2KHR
+type DisplayPlaneInfo2 struct {
SType StructureType
PNext unsafe.Pointer
- Buffer Buffer
- reff54a2a42 *C.VkBufferMemoryRequirementsInfo2
- allocsf54a2a42 interface{}
+ Mode DisplayMode
+ PlaneIndex uint32
+ reff355ccbf *C.VkDisplayPlaneInfo2KHR
+ allocsf355ccbf interface{}
}
-// ImageMemoryRequirementsInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageMemoryRequirementsInfo2.html
-type ImageMemoryRequirementsInfo2 struct {
+// DisplayPlaneCapabilities2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayPlaneCapabilities2KHR
+type DisplayPlaneCapabilities2 struct {
SType StructureType
PNext unsafe.Pointer
- Image Image
- ref75b3ca05 *C.VkImageMemoryRequirementsInfo2
- allocs75b3ca05 interface{}
+ Capabilities DisplayPlaneCapabilities
+ refb53dfb44 *C.VkDisplayPlaneCapabilities2KHR
+ allocsb53dfb44 interface{}
}
-// ImageSparseMemoryRequirementsInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageSparseMemoryRequirementsInfo2.html
-type ImageSparseMemoryRequirementsInfo2 struct {
+// PhysicalDeviceShaderClockFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDeviceShaderClockFeaturesKHR
+type PhysicalDeviceShaderClockFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ShaderSubgroupClock Bool32
+ ShaderDeviceClock Bool32
+ refab512283 *C.VkPhysicalDeviceShaderClockFeaturesKHR
+ allocsab512283 interface{}
+}
+
+// DeviceQueueGlobalPriorityCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDeviceQueueGlobalPriorityCreateInfoKHR
+type DeviceQueueGlobalPriorityCreateInfo struct {
SType StructureType
PNext unsafe.Pointer
- Image Image
- ref878956f7 *C.VkImageSparseMemoryRequirementsInfo2
- allocs878956f7 interface{}
+ GlobalPriority QueueGlobalPriority
+ refdf0afc28 *C.VkDeviceQueueGlobalPriorityCreateInfoKHR
+ allocsdf0afc28 interface{}
}
-// MemoryRequirements2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryRequirements2.html
-type MemoryRequirements2 struct {
- SType StructureType
- PNext unsafe.Pointer
- MemoryRequirements MemoryRequirements
- refc0e75f21 *C.VkMemoryRequirements2
- allocsc0e75f21 interface{}
+// PhysicalDeviceGlobalPriorityQueryFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR
+type PhysicalDeviceGlobalPriorityQueryFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ GlobalPriorityQuery Bool32
+ refa6f56699 *C.VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR
+ allocsa6f56699 interface{}
}
-// SparseImageMemoryRequirements2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseImageMemoryRequirements2.html
-type SparseImageMemoryRequirements2 struct {
- SType StructureType
- PNext unsafe.Pointer
- MemoryRequirements SparseImageMemoryRequirements
- refb8da955c *C.VkSparseImageMemoryRequirements2
- allocsb8da955c interface{}
+// QueueFamilyGlobalPriorityProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkQueueFamilyGlobalPriorityPropertiesKHR
+type QueueFamilyGlobalPriorityProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PriorityCount uint32
+ Priorities [16]QueueGlobalPriority
+ reff5bb6c4d *C.VkQueueFamilyGlobalPriorityPropertiesKHR
+ allocsf5bb6c4d interface{}
}
-// PhysicalDeviceFeatures2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceFeatures2.html
-type PhysicalDeviceFeatures2 struct {
- SType StructureType
- PNext unsafe.Pointer
- Features PhysicalDeviceFeatures
- refff6ed04 *C.VkPhysicalDeviceFeatures2
- allocsff6ed04 interface{}
+// FragmentShadingRateAttachmentInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkFragmentShadingRateAttachmentInfoKHR
+type FragmentShadingRateAttachmentInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PFragmentShadingRateAttachment []AttachmentReference2
+ ShadingRateAttachmentTexelSize Extent2D
+ refd9f9d390 *C.VkFragmentShadingRateAttachmentInfoKHR
+ allocsd9f9d390 interface{}
}
-// PhysicalDeviceProperties2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceProperties2.html
-type PhysicalDeviceProperties2 struct {
+// PipelineFragmentShadingRateStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPipelineFragmentShadingRateStateCreateInfoKHR
+type PipelineFragmentShadingRateStateCreateInfo struct {
SType StructureType
PNext unsafe.Pointer
- Properties PhysicalDeviceProperties
- ref947bd13e *C.VkPhysicalDeviceProperties2
- allocs947bd13e interface{}
-}
-
-// FormatProperties2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFormatProperties2.html
-type FormatProperties2 struct {
- SType StructureType
- PNext unsafe.Pointer
- FormatProperties FormatProperties
- refddc6af2a *C.VkFormatProperties2
- allocsddc6af2a interface{}
+ FragmentSize Extent2D
+ CombinerOps [2]FragmentShadingRateCombinerOp
+ ref47a79f27 *C.VkPipelineFragmentShadingRateStateCreateInfoKHR
+ allocs47a79f27 interface{}
}
-// ImageFormatProperties2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageFormatProperties2.html
-type ImageFormatProperties2 struct {
- SType StructureType
- PNext unsafe.Pointer
- ImageFormatProperties ImageFormatProperties
- ref224187e7 *C.VkImageFormatProperties2
- allocs224187e7 interface{}
+// PhysicalDeviceFragmentShadingRateFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDeviceFragmentShadingRateFeaturesKHR
+type PhysicalDeviceFragmentShadingRateFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PipelineFragmentShadingRate Bool32
+ PrimitiveFragmentShadingRate Bool32
+ AttachmentFragmentShadingRate Bool32
+ ref9041f272 *C.VkPhysicalDeviceFragmentShadingRateFeaturesKHR
+ allocs9041f272 interface{}
}
-// PhysicalDeviceImageFormatInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceImageFormatInfo2.html
-type PhysicalDeviceImageFormatInfo2 struct {
+// PhysicalDeviceFragmentShadingRateProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDeviceFragmentShadingRatePropertiesKHR
+type PhysicalDeviceFragmentShadingRateProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ MinFragmentShadingRateAttachmentTexelSize Extent2D
+ MaxFragmentShadingRateAttachmentTexelSize Extent2D
+ MaxFragmentShadingRateAttachmentTexelSizeAspectRatio uint32
+ PrimitiveFragmentShadingRateWithMultipleViewports Bool32
+ LayeredShadingRateAttachments Bool32
+ FragmentShadingRateNonTrivialCombinerOps Bool32
+ MaxFragmentSize Extent2D
+ MaxFragmentSizeAspectRatio uint32
+ MaxFragmentShadingRateCoverageSamples uint32
+ MaxFragmentShadingRateRasterizationSamples SampleCountFlagBits
+ FragmentShadingRateWithShaderDepthStencilWrites Bool32
+ FragmentShadingRateWithSampleMask Bool32
+ FragmentShadingRateWithShaderSampleMask Bool32
+ FragmentShadingRateWithConservativeRasterization Bool32
+ FragmentShadingRateWithFragmentShaderInterlock Bool32
+ FragmentShadingRateWithCustomSampleLocations Bool32
+ FragmentShadingRateStrictMultiplyCombiner Bool32
+ ref518beb *C.VkPhysicalDeviceFragmentShadingRatePropertiesKHR
+ allocs518beb interface{}
+}
+
+// PhysicalDeviceFragmentShadingRate as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDeviceFragmentShadingRateKHR
+type PhysicalDeviceFragmentShadingRate struct {
SType StructureType
PNext unsafe.Pointer
- Format Format
- Type ImageType
- Tiling ImageTiling
- Usage ImageUsageFlags
- Flags ImageCreateFlags
- ref5934b445 *C.VkPhysicalDeviceImageFormatInfo2
- allocs5934b445 interface{}
+ SampleCounts SampleCountFlags
+ FragmentSize Extent2D
+ ref17914e16 *C.VkPhysicalDeviceFragmentShadingRateKHR
+ allocs17914e16 interface{}
}
-// QueueFamilyProperties2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueueFamilyProperties2.html
-type QueueFamilyProperties2 struct {
- SType StructureType
- PNext unsafe.Pointer
- QueueFamilyProperties QueueFamilyProperties
- ref85bf626c *C.VkQueueFamilyProperties2
- allocs85bf626c interface{}
+// SurfaceProtectedCapabilities as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSurfaceProtectedCapabilitiesKHR
+type SurfaceProtectedCapabilities struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SupportsProtected Bool32
+ refa5f4111 *C.VkSurfaceProtectedCapabilitiesKHR
+ allocsa5f4111 interface{}
}
-// PhysicalDeviceMemoryProperties2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceMemoryProperties2.html
-type PhysicalDeviceMemoryProperties2 struct {
- SType StructureType
- PNext unsafe.Pointer
- MemoryProperties PhysicalDeviceMemoryProperties
- refd9e39b19 *C.VkPhysicalDeviceMemoryProperties2
- allocsd9e39b19 interface{}
+// PhysicalDevicePresentWaitFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDevicePresentWaitFeaturesKHR
+type PhysicalDevicePresentWaitFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PresentWait Bool32
+ ref1cd9c482 *C.VkPhysicalDevicePresentWaitFeaturesKHR
+ allocs1cd9c482 interface{}
}
-// SparseImageFormatProperties2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseImageFormatProperties2.html
-type SparseImageFormatProperties2 struct {
+// DeferredOperation as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDeferredOperationKHR
+type DeferredOperation C.VkDeferredOperationKHR
+
+// PhysicalDevicePipelineExecutablePropertiesFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR
+type PhysicalDevicePipelineExecutablePropertiesFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PipelineExecutableInfo Bool32
+ ref84acf0e1 *C.VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR
+ allocs84acf0e1 interface{}
+}
+
+// PipelineInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPipelineInfoKHR
+type PipelineInfo struct {
SType StructureType
PNext unsafe.Pointer
- Properties SparseImageFormatProperties
- ref6b48294b *C.VkSparseImageFormatProperties2
- allocs6b48294b interface{}
+ Pipeline Pipeline
+ refcd879ca1 *C.VkPipelineInfoKHR
+ allocscd879ca1 interface{}
}
-// PhysicalDeviceSparseImageFormatInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceSparseImageFormatInfo2.html
-type PhysicalDeviceSparseImageFormatInfo2 struct {
+// PipelineExecutableProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPipelineExecutablePropertiesKHR
+type PipelineExecutableProperties struct {
SType StructureType
PNext unsafe.Pointer
- Format Format
- Type ImageType
- Samples SampleCountFlagBits
- Usage ImageUsageFlags
- Tiling ImageTiling
- ref566d5513 *C.VkPhysicalDeviceSparseImageFormatInfo2
- allocs566d5513 interface{}
+ Stages ShaderStageFlags
+ Name [256]byte
+ Description [256]byte
+ SubgroupSize uint32
+ ref4eb592a4 *C.VkPipelineExecutablePropertiesKHR
+ allocs4eb592a4 interface{}
}
-// PhysicalDevicePointClippingProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDevicePointClippingProperties.html
-type PhysicalDevicePointClippingProperties struct {
- SType StructureType
- PNext unsafe.Pointer
- PointClippingBehavior PointClippingBehavior
- ref5afbd22f *C.VkPhysicalDevicePointClippingProperties
- allocs5afbd22f interface{}
+// PipelineExecutableInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPipelineExecutableInfoKHR
+type PipelineExecutableInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Pipeline Pipeline
+ ExecutableIndex uint32
+ ref9b891dad *C.VkPipelineExecutableInfoKHR
+ allocs9b891dad interface{}
}
-// InputAttachmentAspectReference as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkInputAttachmentAspectReference.html
-type InputAttachmentAspectReference struct {
- Subpass uint32
- InputAttachmentIndex uint32
- AspectMask ImageAspectFlags
- ref4f7194e6 *C.VkInputAttachmentAspectReference
- allocs4f7194e6 interface{}
+// PipelineExecutableStatisticValue as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPipelineExecutableStatisticValueKHR
+const sizeofPipelineExecutableStatisticValue = unsafe.Sizeof(C.VkPipelineExecutableStatisticValueKHR{})
+
+type PipelineExecutableStatisticValue [sizeofPipelineExecutableStatisticValue]byte
+
+// PipelineExecutableStatistic as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPipelineExecutableStatisticKHR
+type PipelineExecutableStatistic struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Name [256]byte
+ Description [256]byte
+ Format PipelineExecutableStatisticFormat
+ Value PipelineExecutableStatisticValue
+ ref4af1a62c *C.VkPipelineExecutableStatisticKHR
+ allocs4af1a62c interface{}
}
-// RenderPassInputAttachmentAspectCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderPassInputAttachmentAspectCreateInfo.html
-type RenderPassInputAttachmentAspectCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- AspectReferenceCount uint32
- PAspectReferences []InputAttachmentAspectReference
- ref34eaa5c7 *C.VkRenderPassInputAttachmentAspectCreateInfo
- allocs34eaa5c7 interface{}
+// PipelineExecutableInternalRepresentation as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPipelineExecutableInternalRepresentationKHR
+type PipelineExecutableInternalRepresentation struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Name [256]byte
+ Description [256]byte
+ IsText Bool32
+ DataSize uint64
+ PData unsafe.Pointer
+ ref20e334f7 *C.VkPipelineExecutableInternalRepresentationKHR
+ allocs20e334f7 interface{}
}
-// ImageViewUsageCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageViewUsageCreateInfo.html
-type ImageViewUsageCreateInfo struct {
+// PipelineLibraryCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPipelineLibraryCreateInfoKHR
+type PipelineLibraryCreateInfo struct {
SType StructureType
PNext unsafe.Pointer
- Usage ImageUsageFlags
- ref3791cec9 *C.VkImageViewUsageCreateInfo
- allocs3791cec9 interface{}
+ LibraryCount uint32
+ PLibraries []Pipeline
+ ref6bb7541b *C.VkPipelineLibraryCreateInfoKHR
+ allocs6bb7541b interface{}
}
-// PipelineTessellationDomainOriginStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineTessellationDomainOriginStateCreateInfo.html
-type PipelineTessellationDomainOriginStateCreateInfo struct {
+// PresentId as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPresentIdKHR
+type PresentId struct {
SType StructureType
PNext unsafe.Pointer
- DomainOrigin TessellationDomainOrigin
- ref58ef29bf *C.VkPipelineTessellationDomainOriginStateCreateInfo
- allocs58ef29bf interface{}
+ SwapchainCount uint32
+ PPresentIds []uint64
+ ref70010623 *C.VkPresentIdKHR
+ allocs70010623 interface{}
}
-// RenderPassMultiviewCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderPassMultiviewCreateInfo.html
-type RenderPassMultiviewCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- SubpassCount uint32
- PViewMasks []uint32
- DependencyCount uint32
- PViewOffsets []int32
- CorrelationMaskCount uint32
- PCorrelationMasks []uint32
- refee413e05 *C.VkRenderPassMultiviewCreateInfo
- allocsee413e05 interface{}
+// PhysicalDevicePresentIdFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDevicePresentIdFeaturesKHR
+type PhysicalDevicePresentIdFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PresentId Bool32
+ refba9945cd *C.VkPhysicalDevicePresentIdFeaturesKHR
+ allocsba9945cd interface{}
}
-// PhysicalDeviceMultiviewFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceMultiviewFeatures.html
-type PhysicalDeviceMultiviewFeatures struct {
- SType StructureType
- PNext unsafe.Pointer
- Multiview Bool32
- MultiviewGeometryShader Bool32
- MultiviewTessellationShader Bool32
- refd7a7434b *C.VkPhysicalDeviceMultiviewFeatures
- allocsd7a7434b interface{}
+// QueueFamilyCheckpointProperties2NV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueueFamilyCheckpointProperties2NV.html
+type QueueFamilyCheckpointProperties2NV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ CheckpointExecutionStageMask PipelineStageFlags2
+ reffdc86afc *C.VkQueueFamilyCheckpointProperties2NV
+ allocsfdc86afc interface{}
}
-// PhysicalDeviceMultiviewProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceMultiviewProperties.html
-type PhysicalDeviceMultiviewProperties struct {
+// CheckpointData2NV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCheckpointData2NV.html
+type CheckpointData2NV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Stage PipelineStageFlags2
+ PCheckpointMarker unsafe.Pointer
+ ref6e25431b *C.VkCheckpointData2NV
+ allocs6e25431b interface{}
+}
+
+// PhysicalDeviceFragmentShaderBarycentricFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR
+type PhysicalDeviceFragmentShaderBarycentricFeatures struct {
SType StructureType
PNext unsafe.Pointer
- MaxMultiviewViewCount uint32
- MaxMultiviewInstanceIndex uint32
- ref95110029 *C.VkPhysicalDeviceMultiviewProperties
- allocs95110029 interface{}
+ FragmentShaderBarycentric Bool32
+ reff7f35e73 *C.VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR
+ allocsf7f35e73 interface{}
}
-// PhysicalDeviceVariablePointerFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceVariablePointerFeatures.html
-type PhysicalDeviceVariablePointerFeatures struct {
- SType StructureType
- PNext unsafe.Pointer
- VariablePointersStorageBuffer Bool32
- VariablePointers Bool32
- refdedd8372 *C.VkPhysicalDeviceVariablePointerFeatures
- allocsdedd8372 interface{}
+// PhysicalDeviceFragmentShaderBarycentricProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR
+type PhysicalDeviceFragmentShaderBarycentricProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ TriStripVertexOrderIndependentOfProvokingVertex Bool32
+ refc62a32db *C.VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR
+ allocsc62a32db interface{}
}
-// PhysicalDeviceProtectedMemoryFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceProtectedMemoryFeatures.html
-type PhysicalDeviceProtectedMemoryFeatures struct {
- SType StructureType
- PNext unsafe.Pointer
- ProtectedMemory Bool32
- refac441ed1 *C.VkPhysicalDeviceProtectedMemoryFeatures
- allocsac441ed1 interface{}
+// PhysicalDeviceShaderSubgroupUniformControlFlowFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR
+type PhysicalDeviceShaderSubgroupUniformControlFlowFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ShaderSubgroupUniformControlFlow Bool32
+ refadc1f19 *C.VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR
+ allocsadc1f19 interface{}
+}
+
+// PhysicalDeviceWorkgroupMemoryExplicitLayoutFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR
+type PhysicalDeviceWorkgroupMemoryExplicitLayoutFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ WorkgroupMemoryExplicitLayout Bool32
+ WorkgroupMemoryExplicitLayoutScalarBlockLayout Bool32
+ WorkgroupMemoryExplicitLayout8BitAccess Bool32
+ WorkgroupMemoryExplicitLayout16BitAccess Bool32
+ ref288a691 *C.VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR
+ allocs288a691 interface{}
+}
+
+// PhysicalDeviceRayTracingMaintenance1Features as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR
+type PhysicalDeviceRayTracingMaintenance1Features struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ RayTracingMaintenance1 Bool32
+ RayTracingPipelineTraceRaysIndirect2 Bool32
+ ref799fe16 *C.VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR
+ allocs799fe16 interface{}
+}
+
+// TraceRaysIndirectCommand2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkTraceRaysIndirectCommand2KHR
+type TraceRaysIndirectCommand2 struct {
+ RaygenShaderRecordAddress DeviceAddress
+ RaygenShaderRecordSize DeviceSize
+ MissShaderBindingTableAddress DeviceAddress
+ MissShaderBindingTableSize DeviceSize
+ MissShaderBindingTableStride DeviceSize
+ HitShaderBindingTableAddress DeviceAddress
+ HitShaderBindingTableSize DeviceSize
+ HitShaderBindingTableStride DeviceSize
+ CallableShaderBindingTableAddress DeviceAddress
+ CallableShaderBindingTableSize DeviceSize
+ CallableShaderBindingTableStride DeviceSize
+ Width uint32
+ Height uint32
+ Depth uint32
+ ref9139d02e *C.VkTraceRaysIndirectCommand2KHR
+ allocs9139d02e interface{}
}
-// PhysicalDeviceProtectedMemoryProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceProtectedMemoryProperties.html
-type PhysicalDeviceProtectedMemoryProperties struct {
- SType StructureType
- PNext unsafe.Pointer
- ProtectedNoFault Bool32
- refb653413 *C.VkPhysicalDeviceProtectedMemoryProperties
- allocsb653413 interface{}
-}
+// DebugReportCallback as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugReportCallbackEXT.html
+type DebugReportCallback C.VkDebugReportCallbackEXT
-// DeviceQueueInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceQueueInfo2.html
-type DeviceQueueInfo2 struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags DeviceQueueCreateFlags
- QueueFamilyIndex uint32
- QueueIndex uint32
- ref2f267e52 *C.VkDeviceQueueInfo2
- allocs2f267e52 interface{}
+// DebugReportFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugReportFlagsEXT.html
+type DebugReportFlags uint32
+
+// DebugReportCallbackFunc type as declared in vulkan/vulkan_core.h:10234
+type DebugReportCallbackFunc func(flags DebugReportFlags, objectType DebugReportObjectType, object uint64, location uint64, messageCode int32, pLayerPrefix string, pMessage string, pUserData unsafe.Pointer) Bool32
+
+// DebugReportCallbackCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugReportCallbackCreateInfoEXT.html
+type DebugReportCallbackCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags DebugReportFlags
+ PfnCallback DebugReportCallbackFunc
+ PUserData unsafe.Pointer
+ refc8238563 *C.VkDebugReportCallbackCreateInfoEXT
+ allocsc8238563 interface{}
}
-// ProtectedSubmitInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkProtectedSubmitInfo.html
-type ProtectedSubmitInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- ProtectedSubmit Bool32
- ref6bd69669 *C.VkProtectedSubmitInfo
- allocs6bd69669 interface{}
+// PipelineRasterizationStateRasterizationOrderAMD as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkPipelineRasterizationStateRasterizationOrderAMD
+type PipelineRasterizationStateRasterizationOrderAMD struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ RasterizationOrder RasterizationOrderAMD
+ ref5098cf82 *C.VkPipelineRasterizationStateRasterizationOrderAMD
+ allocs5098cf82 interface{}
}
-// SamplerYcbcrConversionCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerYcbcrConversionCreateInfo.html
-type SamplerYcbcrConversionCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Format Format
- YcbcrModel SamplerYcbcrModelConversion
- YcbcrRange SamplerYcbcrRange
- Components ComponentMapping
- XChromaOffset ChromaLocation
- YChromaOffset ChromaLocation
- ChromaFilter Filter
- ForceExplicitReconstruction Bool32
- ref9875bff7 *C.VkSamplerYcbcrConversionCreateInfo
- allocs9875bff7 interface{}
+// DebugMarkerObjectNameInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugMarkerObjectNameInfoEXT.html
+type DebugMarkerObjectNameInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ObjectType DebugReportObjectType
+ Object uint64
+ PObjectName string
+ refe4983fab *C.VkDebugMarkerObjectNameInfoEXT
+ allocse4983fab interface{}
}
-// SamplerYcbcrConversionInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerYcbcrConversionInfo.html
-type SamplerYcbcrConversionInfo struct {
+// DebugMarkerObjectTagInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugMarkerObjectTagInfoEXT.html
+type DebugMarkerObjectTagInfo struct {
SType StructureType
PNext unsafe.Pointer
- Conversion SamplerYcbcrConversion
- ref11ff5547 *C.VkSamplerYcbcrConversionInfo
- allocs11ff5547 interface{}
+ ObjectType DebugReportObjectType
+ Object uint64
+ TagName uint64
+ TagSize uint64
+ PTag unsafe.Pointer
+ refa41a5c3b *C.VkDebugMarkerObjectTagInfoEXT
+ allocsa41a5c3b interface{}
}
-// BindImagePlaneMemoryInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBindImagePlaneMemoryInfo.html
-type BindImagePlaneMemoryInfo struct {
+// DebugMarkerMarkerInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugMarkerMarkerInfoEXT.html
+type DebugMarkerMarkerInfo struct {
SType StructureType
PNext unsafe.Pointer
- PlaneAspect ImageAspectFlagBits
- ref56b81476 *C.VkBindImagePlaneMemoryInfo
- allocs56b81476 interface{}
+ PMarkerName string
+ Color [4]float32
+ ref234b91fd *C.VkDebugMarkerMarkerInfoEXT
+ allocs234b91fd interface{}
+}
+
+// DedicatedAllocationImageCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDedicatedAllocationImageCreateInfoNV.html
+type DedicatedAllocationImageCreateInfoNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DedicatedAllocation Bool32
+ ref685d878b *C.VkDedicatedAllocationImageCreateInfoNV
+ allocs685d878b interface{}
+}
+
+// DedicatedAllocationBufferCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDedicatedAllocationBufferCreateInfoNV.html
+type DedicatedAllocationBufferCreateInfoNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DedicatedAllocation Bool32
+ refbc745a8 *C.VkDedicatedAllocationBufferCreateInfoNV
+ allocsbc745a8 interface{}
}
-// ImagePlaneMemoryRequirementsInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImagePlaneMemoryRequirementsInfo.html
-type ImagePlaneMemoryRequirementsInfo struct {
+// DedicatedAllocationMemoryAllocateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDedicatedAllocationMemoryAllocateInfoNV.html
+type DedicatedAllocationMemoryAllocateInfoNV struct {
SType StructureType
PNext unsafe.Pointer
- PlaneAspect ImageAspectFlagBits
- refefec131f *C.VkImagePlaneMemoryRequirementsInfo
- allocsefec131f interface{}
+ Image Image
+ Buffer Buffer
+ ref9a72b107 *C.VkDedicatedAllocationMemoryAllocateInfoNV
+ allocs9a72b107 interface{}
}
-// PhysicalDeviceSamplerYcbcrConversionFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceSamplerYcbcrConversionFeatures.html
-type PhysicalDeviceSamplerYcbcrConversionFeatures struct {
- SType StructureType
- PNext unsafe.Pointer
- SamplerYcbcrConversion Bool32
- ref1d054d67 *C.VkPhysicalDeviceSamplerYcbcrConversionFeatures
- allocs1d054d67 interface{}
-}
+// PipelineRasterizationStateStreamCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRasterizationStateStreamCreateFlagsEXT.html
+type PipelineRasterizationStateStreamCreateFlags uint32
-// SamplerYcbcrConversionImageFormatProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerYcbcrConversionImageFormatProperties.html
-type SamplerYcbcrConversionImageFormatProperties struct {
- SType StructureType
- PNext unsafe.Pointer
- CombinedImageSamplerDescriptorCount uint32
- ref6bc79530 *C.VkSamplerYcbcrConversionImageFormatProperties
- allocs6bc79530 interface{}
+// PhysicalDeviceTransformFeedbackFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceTransformFeedbackFeaturesEXT.html
+type PhysicalDeviceTransformFeedbackFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ TransformFeedback Bool32
+ GeometryStreams Bool32
+ ref64b2a913 *C.VkPhysicalDeviceTransformFeedbackFeaturesEXT
+ allocs64b2a913 interface{}
}
-// DescriptorUpdateTemplateEntry as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorUpdateTemplateEntry.html
-type DescriptorUpdateTemplateEntry struct {
- DstBinding uint32
- DstArrayElement uint32
- DescriptorCount uint32
- DescriptorType DescriptorType
- Offset uint
- Stride uint
- refabf78fb7 *C.VkDescriptorUpdateTemplateEntry
- allocsabf78fb7 interface{}
+// PhysicalDeviceTransformFeedbackProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceTransformFeedbackPropertiesEXT.html
+type PhysicalDeviceTransformFeedbackProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ MaxTransformFeedbackStreams uint32
+ MaxTransformFeedbackBuffers uint32
+ MaxTransformFeedbackBufferSize DeviceSize
+ MaxTransformFeedbackStreamDataSize uint32
+ MaxTransformFeedbackBufferDataSize uint32
+ MaxTransformFeedbackBufferDataStride uint32
+ TransformFeedbackQueries Bool32
+ TransformFeedbackStreamsLinesTriangles Bool32
+ TransformFeedbackRasterizationStreamSelect Bool32
+ TransformFeedbackDraw Bool32
+ refc295a2a0 *C.VkPhysicalDeviceTransformFeedbackPropertiesEXT
+ allocsc295a2a0 interface{}
}
-// DescriptorUpdateTemplateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorUpdateTemplateCreateInfo.html
-type DescriptorUpdateTemplateCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags DescriptorUpdateTemplateCreateFlags
- DescriptorUpdateEntryCount uint32
- PDescriptorUpdateEntries []DescriptorUpdateTemplateEntry
- TemplateType DescriptorUpdateTemplateType
- DescriptorSetLayout DescriptorSetLayout
- PipelineBindPoint PipelineBindPoint
- PipelineLayout PipelineLayout
- Set uint32
- ref2af95951 *C.VkDescriptorUpdateTemplateCreateInfo
- allocs2af95951 interface{}
+// PipelineRasterizationStateStreamCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRasterizationStateStreamCreateInfoEXT.html
+type PipelineRasterizationStateStreamCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags PipelineRasterizationStateStreamCreateFlags
+ RasterizationStream uint32
+ refed6e1fb9 *C.VkPipelineRasterizationStateStreamCreateInfoEXT
+ allocsed6e1fb9 interface{}
}
-// ExternalMemoryProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryProperties.html
-type ExternalMemoryProperties struct {
- ExternalMemoryFeatures ExternalMemoryFeatureFlags
- ExportFromImportedHandleTypes ExternalMemoryHandleTypeFlags
- CompatibleHandleTypes ExternalMemoryHandleTypeFlags
- ref4b738f01 *C.VkExternalMemoryProperties
- allocs4b738f01 interface{}
+// ImageViewHandleInfoNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkImageViewHandleInfoNVX
+type ImageViewHandleInfoNVX struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ImageView ImageView
+ DescriptorType DescriptorType
+ Sampler Sampler
+ refc283b384 *C.VkImageViewHandleInfoNVX
+ allocsc283b384 interface{}
}
-// PhysicalDeviceExternalImageFormatInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceExternalImageFormatInfo.html
-type PhysicalDeviceExternalImageFormatInfo struct {
+// ImageViewAddressPropertiesNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkImageViewAddressPropertiesNVX
+type ImageViewAddressPropertiesNVX struct {
SType StructureType
PNext unsafe.Pointer
- HandleType ExternalMemoryHandleTypeFlagBits
- refc839c724 *C.VkPhysicalDeviceExternalImageFormatInfo
- allocsc839c724 interface{}
+ DeviceAddress DeviceAddress
+ Size DeviceSize
+ refe6dd1556 *C.VkImageViewAddressPropertiesNVX
+ allocse6dd1556 interface{}
}
-// ExternalImageFormatProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalImageFormatProperties.html
-type ExternalImageFormatProperties struct {
- SType StructureType
- PNext unsafe.Pointer
- ExternalMemoryProperties ExternalMemoryProperties
- refd404c4b5 *C.VkExternalImageFormatProperties
- allocsd404c4b5 interface{}
+// TextureLODGatherFormatPropertiesAMD as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkTextureLODGatherFormatPropertiesAMD
+type TextureLODGatherFormatPropertiesAMD struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SupportsTextureGatherLODBiasAMD Bool32
+ ref519ba3a9 *C.VkTextureLODGatherFormatPropertiesAMD
+ allocs519ba3a9 interface{}
}
-// PhysicalDeviceExternalBufferInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceExternalBufferInfo.html
-type PhysicalDeviceExternalBufferInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags BufferCreateFlags
- Usage BufferUsageFlags
- HandleType ExternalMemoryHandleTypeFlagBits
- ref8d758947 *C.VkPhysicalDeviceExternalBufferInfo
- allocs8d758947 interface{}
+// ShaderResourceUsageAMD as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkShaderResourceUsageAMD
+type ShaderResourceUsageAMD struct {
+ NumUsedVgprs uint32
+ NumUsedSgprs uint32
+ LdsSizePerLocalWorkGroup uint32
+ LdsUsageSizeInBytes uint64
+ ScratchMemUsageInBytes uint64
+ ref8a688131 *C.VkShaderResourceUsageAMD
+ allocs8a688131 interface{}
}
-// ExternalBufferProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalBufferProperties.html
-type ExternalBufferProperties struct {
- SType StructureType
- PNext unsafe.Pointer
- ExternalMemoryProperties ExternalMemoryProperties
- ref12f7c546 *C.VkExternalBufferProperties
- allocs12f7c546 interface{}
+// ShaderStatisticsInfoAMD as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkShaderStatisticsInfoAMD
+type ShaderStatisticsInfoAMD struct {
+ ShaderStageMask ShaderStageFlags
+ ResourceUsage ShaderResourceUsageAMD
+ NumPhysicalVgprs uint32
+ NumPhysicalSgprs uint32
+ NumAvailableVgprs uint32
+ NumAvailableSgprs uint32
+ ComputeWorkGroupSize [3]uint32
+ ref896a52bf *C.VkShaderStatisticsInfoAMD
+ allocs896a52bf interface{}
}
-// PhysicalDeviceIDProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceIDProperties.html
-type PhysicalDeviceIDProperties struct {
- SType StructureType
- PNext unsafe.Pointer
- DeviceUUID [16]byte
- DriverUUID [16]byte
- DeviceLUID [8]byte
- DeviceNodeMask uint32
- DeviceLUIDValid Bool32
- refe990a9f3 *C.VkPhysicalDeviceIDProperties
- allocse990a9f3 interface{}
+// PhysicalDeviceCornerSampledImageFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceCornerSampledImageFeaturesNV.html
+type PhysicalDeviceCornerSampledImageFeaturesNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ CornerSampledImage Bool32
+ refdf4a62d1 *C.VkPhysicalDeviceCornerSampledImageFeaturesNV
+ allocsdf4a62d1 interface{}
}
-// ExternalMemoryImageCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryImageCreateInfo.html
-type ExternalMemoryImageCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- HandleTypes ExternalMemoryHandleTypeFlags
- refdaf1185e *C.VkExternalMemoryImageCreateInfo
- allocsdaf1185e interface{}
+// ExternalMemoryHandleTypeFlagsNV type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryHandleTypeFlagsNV.html
+type ExternalMemoryHandleTypeFlagsNV uint32
+
+// ExternalMemoryFeatureFlagsNV type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryFeatureFlagsNV.html
+type ExternalMemoryFeatureFlagsNV uint32
+
+// ExternalImageFormatPropertiesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalImageFormatPropertiesNV.html
+type ExternalImageFormatPropertiesNV struct {
+ ImageFormatProperties ImageFormatProperties
+ ExternalMemoryFeatures ExternalMemoryFeatureFlagsNV
+ ExportFromImportedHandleTypes ExternalMemoryHandleTypeFlagsNV
+ CompatibleHandleTypes ExternalMemoryHandleTypeFlagsNV
+ refa8900ce5 *C.VkExternalImageFormatPropertiesNV
+ allocsa8900ce5 interface{}
}
-// ExternalMemoryBufferCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryBufferCreateInfo.html
-type ExternalMemoryBufferCreateInfo struct {
+// ExternalMemoryImageCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryImageCreateInfoNV.html
+type ExternalMemoryImageCreateInfoNV struct {
SType StructureType
PNext unsafe.Pointer
- HandleTypes ExternalMemoryHandleTypeFlags
- refd33a9423 *C.VkExternalMemoryBufferCreateInfo
- allocsd33a9423 interface{}
+ HandleTypes ExternalMemoryHandleTypeFlagsNV
+ ref9a7fb6c8 *C.VkExternalMemoryImageCreateInfoNV
+ allocs9a7fb6c8 interface{}
}
-// ExportMemoryAllocateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExportMemoryAllocateInfo.html
-type ExportMemoryAllocateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- HandleTypes ExternalMemoryHandleTypeFlags
- refeb76ec64 *C.VkExportMemoryAllocateInfo
- allocseb76ec64 interface{}
+// ExportMemoryAllocateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExportMemoryAllocateInfoNV.html
+type ExportMemoryAllocateInfoNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ HandleTypes ExternalMemoryHandleTypeFlagsNV
+ ref5066f33 *C.VkExportMemoryAllocateInfoNV
+ allocs5066f33 interface{}
}
-// PhysicalDeviceExternalFenceInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceExternalFenceInfo.html
-type PhysicalDeviceExternalFenceInfo struct {
+// ValidationFlags as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkValidationFlagsEXT.html
+type ValidationFlags struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DisabledValidationCheckCount uint32
+ PDisabledValidationChecks []ValidationCheck
+ refffe080ad *C.VkValidationFlagsEXT
+ allocsffe080ad interface{}
+}
+
+// ImageViewASTCDecodeMode as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageViewASTCDecodeModeEXT.html
+type ImageViewASTCDecodeMode struct {
SType StructureType
PNext unsafe.Pointer
- HandleType ExternalFenceHandleTypeFlagBits
- ref9bb660cc *C.VkPhysicalDeviceExternalFenceInfo
- allocs9bb660cc interface{}
+ DecodeMode Format
+ ref3a973fc0 *C.VkImageViewASTCDecodeModeEXT
+ allocs3a973fc0 interface{}
}
-// ExternalFenceProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalFenceProperties.html
-type ExternalFenceProperties struct {
- SType StructureType
- PNext unsafe.Pointer
- ExportFromImportedHandleTypes ExternalFenceHandleTypeFlags
- CompatibleHandleTypes ExternalFenceHandleTypeFlags
- ExternalFenceFeatures ExternalFenceFeatureFlags
- ref18806773 *C.VkExternalFenceProperties
- allocs18806773 interface{}
+// PhysicalDeviceASTCDecodeFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceASTCDecodeFeaturesEXT.html
+type PhysicalDeviceASTCDecodeFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DecodeModeSharedExponent Bool32
+ refd8af7d5a *C.VkPhysicalDeviceASTCDecodeFeaturesEXT
+ allocsd8af7d5a interface{}
+}
+
+// PhysicalDevicePipelineRobustnessFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDevicePipelineRobustnessFeaturesEXT.html
+type PhysicalDevicePipelineRobustnessFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PipelineRobustness Bool32
+ refdffe5c47 *C.VkPhysicalDevicePipelineRobustnessFeaturesEXT
+ allocsdffe5c47 interface{}
}
-// ExportFenceCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExportFenceCreateInfo.html
-type ExportFenceCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- HandleTypes ExternalFenceHandleTypeFlags
- ref5fef8c3a *C.VkExportFenceCreateInfo
- allocs5fef8c3a interface{}
+// PhysicalDevicePipelineRobustnessProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDevicePipelineRobustnessPropertiesEXT.html
+type PhysicalDevicePipelineRobustnessProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DefaultRobustnessStorageBuffers PipelineRobustnessBufferBehavior
+ DefaultRobustnessUniformBuffers PipelineRobustnessBufferBehavior
+ DefaultRobustnessVertexInputs PipelineRobustnessBufferBehavior
+ DefaultRobustnessImages PipelineRobustnessImageBehavior
+ refd195872f *C.VkPhysicalDevicePipelineRobustnessPropertiesEXT
+ allocsd195872f interface{}
}
-// ExportSemaphoreCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExportSemaphoreCreateInfo.html
-type ExportSemaphoreCreateInfo struct {
+// PipelineRobustnessCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRobustnessCreateInfoEXT.html
+type PipelineRobustnessCreateInfo struct {
SType StructureType
PNext unsafe.Pointer
- HandleTypes ExternalSemaphoreHandleTypeFlags
- ref17b8d6c5 *C.VkExportSemaphoreCreateInfo
- allocs17b8d6c5 interface{}
+ StorageBuffers PipelineRobustnessBufferBehavior
+ UniformBuffers PipelineRobustnessBufferBehavior
+ VertexInputs PipelineRobustnessBufferBehavior
+ Images PipelineRobustnessImageBehavior
+ ref1e4549a1 *C.VkPipelineRobustnessCreateInfoEXT
+ allocs1e4549a1 interface{}
}
-// PhysicalDeviceExternalSemaphoreInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceExternalSemaphoreInfo.html
-type PhysicalDeviceExternalSemaphoreInfo struct {
+// ConditionalRenderingFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkConditionalRenderingFlagsEXT.html
+type ConditionalRenderingFlags uint32
+
+// ConditionalRenderingBeginInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkConditionalRenderingBeginInfoEXT.html
+type ConditionalRenderingBeginInfo struct {
SType StructureType
PNext unsafe.Pointer
- HandleType ExternalSemaphoreHandleTypeFlagBits
- ref5981d29e *C.VkPhysicalDeviceExternalSemaphoreInfo
- allocs5981d29e interface{}
+ Buffer Buffer
+ Offset DeviceSize
+ Flags ConditionalRenderingFlags
+ ref82da87c9 *C.VkConditionalRenderingBeginInfoEXT
+ allocs82da87c9 interface{}
}
-// ExternalSemaphoreProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalSemaphoreProperties.html
-type ExternalSemaphoreProperties struct {
+// PhysicalDeviceConditionalRenderingFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceConditionalRenderingFeaturesEXT.html
+type PhysicalDeviceConditionalRenderingFeatures struct {
SType StructureType
PNext unsafe.Pointer
- ExportFromImportedHandleTypes ExternalSemaphoreHandleTypeFlags
- CompatibleHandleTypes ExternalSemaphoreHandleTypeFlags
- ExternalSemaphoreFeatures ExternalSemaphoreFeatureFlags
- ref87ec1054 *C.VkExternalSemaphoreProperties
- allocs87ec1054 interface{}
-}
-
-// PhysicalDeviceMaintenance3Properties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceMaintenance3Properties.html
-type PhysicalDeviceMaintenance3Properties struct {
- SType StructureType
- PNext unsafe.Pointer
- MaxPerSetDescriptors uint32
- MaxMemoryAllocationSize DeviceSize
- ref12c07777 *C.VkPhysicalDeviceMaintenance3Properties
- allocs12c07777 interface{}
-}
-
-// DescriptorSetLayoutSupport as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetLayoutSupport.html
-type DescriptorSetLayoutSupport struct {
- SType StructureType
- PNext unsafe.Pointer
- Supported Bool32
- ref5802686c *C.VkDescriptorSetLayoutSupport
- allocs5802686c interface{}
-}
-
-// PhysicalDeviceShaderDrawParameterFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceShaderDrawParameterFeatures.html
-type PhysicalDeviceShaderDrawParameterFeatures struct {
- SType StructureType
- PNext unsafe.Pointer
- ShaderDrawParameters Bool32
- ref23259ea6 *C.VkPhysicalDeviceShaderDrawParameterFeatures
- allocs23259ea6 interface{}
+ ConditionalRendering Bool32
+ InheritedConditionalRendering Bool32
+ ref89d2a224 *C.VkPhysicalDeviceConditionalRenderingFeaturesEXT
+ allocs89d2a224 interface{}
}
-// Surface as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSurfaceKHR
-type Surface C.VkSurfaceKHR
-
-// SurfaceTransformFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSurfaceTransformFlagsKHR
-type SurfaceTransformFlags uint32
-
-// CompositeAlphaFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkCompositeAlphaFlagsKHR
-type CompositeAlphaFlags uint32
-
-// SurfaceCapabilities as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSurfaceCapabilitiesKHR
-type SurfaceCapabilities struct {
- MinImageCount uint32
- MaxImageCount uint32
- CurrentExtent Extent2D
- MinImageExtent Extent2D
- MaxImageExtent Extent2D
- MaxImageArrayLayers uint32
- SupportedTransforms SurfaceTransformFlags
- CurrentTransform SurfaceTransformFlagBits
- SupportedCompositeAlpha CompositeAlphaFlags
- SupportedUsageFlags ImageUsageFlags
- ref11d5f596 *C.VkSurfaceCapabilitiesKHR
- allocs11d5f596 interface{}
+// CommandBufferInheritanceConditionalRenderingInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandBufferInheritanceConditionalRenderingInfoEXT.html
+type CommandBufferInheritanceConditionalRenderingInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ConditionalRenderingEnable Bool32
+ ref7155f49c *C.VkCommandBufferInheritanceConditionalRenderingInfoEXT
+ allocs7155f49c interface{}
}
-// SurfaceFormat as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSurfaceFormatKHR
-type SurfaceFormat struct {
- Format Format
- ColorSpace ColorSpace
- refedaf82ca *C.VkSurfaceFormatKHR
- allocsedaf82ca interface{}
+// ViewportWScalingNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkViewportWScalingNV.html
+type ViewportWScalingNV struct {
+ Xcoeff float32
+ Ycoeff float32
+ ref7ea4590f *C.VkViewportWScalingNV
+ allocs7ea4590f interface{}
}
-// Swapchain as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSwapchainKHR
-type Swapchain C.VkSwapchainKHR
-
-// SwapchainCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSwapchainCreateFlagsKHR
-type SwapchainCreateFlags uint32
-
-// DeviceGroupPresentModeFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDeviceGroupPresentModeFlagsKHR
-type DeviceGroupPresentModeFlags uint32
-
-// SwapchainCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSwapchainCreateInfoKHR
-type SwapchainCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags SwapchainCreateFlags
- Surface Surface
- MinImageCount uint32
- ImageFormat Format
- ImageColorSpace ColorSpace
- ImageExtent Extent2D
- ImageArrayLayers uint32
- ImageUsage ImageUsageFlags
- ImageSharingMode SharingMode
- QueueFamilyIndexCount uint32
- PQueueFamilyIndices []uint32
- PreTransform SurfaceTransformFlagBits
- CompositeAlpha CompositeAlphaFlagBits
- PresentMode PresentMode
- Clipped Bool32
- OldSwapchain Swapchain
- refdb619e1c *C.VkSwapchainCreateInfoKHR
- allocsdb619e1c interface{}
+// PipelineViewportWScalingStateCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineViewportWScalingStateCreateInfoNV.html
+type PipelineViewportWScalingStateCreateInfoNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ViewportWScalingEnable Bool32
+ ViewportCount uint32
+ PViewportWScalings []ViewportWScalingNV
+ ref3e532c0b *C.VkPipelineViewportWScalingStateCreateInfoNV
+ allocs3e532c0b interface{}
}
-// PresentInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPresentInfoKHR
-type PresentInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- WaitSemaphoreCount uint32
- PWaitSemaphores []Semaphore
- SwapchainCount uint32
- PSwapchains []Swapchain
- PImageIndices []uint32
- PResults []Result
- ref1d0e82d4 *C.VkPresentInfoKHR
- allocs1d0e82d4 interface{}
-}
+// SurfaceCounterFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSurfaceCounterFlagsEXT.html
+type SurfaceCounterFlags uint32
-// ImageSwapchainCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkImageSwapchainCreateInfoKHR
-type ImageSwapchainCreateInfo struct {
+// DisplayPowerInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDisplayPowerInfoEXT.html
+type DisplayPowerInfo struct {
SType StructureType
PNext unsafe.Pointer
- Swapchain Swapchain
- refd83cc5d0 *C.VkImageSwapchainCreateInfoKHR
- allocsd83cc5d0 interface{}
+ PowerState DisplayPowerState
+ ref80fed52f *C.VkDisplayPowerInfoEXT
+ allocs80fed52f interface{}
}
-// BindImageMemorySwapchainInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkBindImageMemorySwapchainInfoKHR
-type BindImageMemorySwapchainInfo struct {
+// DeviceEventInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceEventInfoEXT.html
+type DeviceEventInfo struct {
SType StructureType
PNext unsafe.Pointer
- Swapchain Swapchain
- ImageIndex uint32
- ref1aa25cb6 *C.VkBindImageMemorySwapchainInfoKHR
- allocs1aa25cb6 interface{}
+ DeviceEvent DeviceEventType
+ ref394b3fcb *C.VkDeviceEventInfoEXT
+ allocs394b3fcb interface{}
}
-// AcquireNextImageInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkAcquireNextImageInfoKHR
-type AcquireNextImageInfo struct {
+// DisplayEventInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDisplayEventInfoEXT.html
+type DisplayEventInfo struct {
SType StructureType
PNext unsafe.Pointer
- Swapchain Swapchain
- Timeout uint64
- Semaphore Semaphore
- Fence Fence
- DeviceMask uint32
- ref588806a5 *C.VkAcquireNextImageInfoKHR
- allocs588806a5 interface{}
+ DisplayEvent DisplayEventType
+ refa69f7302 *C.VkDisplayEventInfoEXT
+ allocsa69f7302 interface{}
}
-// DeviceGroupPresentCapabilities as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDeviceGroupPresentCapabilitiesKHR
-type DeviceGroupPresentCapabilities struct {
- SType StructureType
- PNext unsafe.Pointer
- PresentMask [32]uint32
- Modes DeviceGroupPresentModeFlags
- refa3962c81 *C.VkDeviceGroupPresentCapabilitiesKHR
- allocsa3962c81 interface{}
+// SwapchainCounterCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSwapchainCounterCreateInfoEXT.html
+type SwapchainCounterCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SurfaceCounters SurfaceCounterFlags
+ ref9f21eca6 *C.VkSwapchainCounterCreateInfoEXT
+ allocs9f21eca6 interface{}
}
-// DeviceGroupPresentInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDeviceGroupPresentInfoKHR
-type DeviceGroupPresentInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- SwapchainCount uint32
- PDeviceMasks []uint32
- Mode DeviceGroupPresentModeFlagBits
- reff6912d09 *C.VkDeviceGroupPresentInfoKHR
- allocsf6912d09 interface{}
+// RefreshCycleDurationGOOGLE as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRefreshCycleDurationGOOGLE.html
+type RefreshCycleDurationGOOGLE struct {
+ RefreshDuration uint64
+ ref969cb55b *C.VkRefreshCycleDurationGOOGLE
+ allocs969cb55b interface{}
}
-// DeviceGroupSwapchainCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDeviceGroupSwapchainCreateInfoKHR
-type DeviceGroupSwapchainCreateInfo struct {
+// PastPresentationTimingGOOGLE as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPastPresentationTimingGOOGLE.html
+type PastPresentationTimingGOOGLE struct {
+ PresentID uint32
+ DesiredPresentTime uint64
+ ActualPresentTime uint64
+ EarliestPresentTime uint64
+ PresentMargin uint64
+ refac8cf1d8 *C.VkPastPresentationTimingGOOGLE
+ allocsac8cf1d8 interface{}
+}
+
+// PresentTimeGOOGLE as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPresentTimeGOOGLE.html
+type PresentTimeGOOGLE struct {
+ PresentID uint32
+ DesiredPresentTime uint64
+ ref9cd90ade *C.VkPresentTimeGOOGLE
+ allocs9cd90ade interface{}
+}
+
+// PresentTimesInfoGOOGLE as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPresentTimesInfoGOOGLE.html
+type PresentTimesInfoGOOGLE struct {
SType StructureType
PNext unsafe.Pointer
- Modes DeviceGroupPresentModeFlags
- ref44ae0c0e *C.VkDeviceGroupSwapchainCreateInfoKHR
- allocs44ae0c0e interface{}
+ SwapchainCount uint32
+ PTimes []PresentTimeGOOGLE
+ ref70eb8ab3 *C.VkPresentTimesInfoGOOGLE
+ allocs70eb8ab3 interface{}
}
-// Display as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayKHR
-type Display C.VkDisplayKHR
+// PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX
+type PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PerViewPositionAllComponents Bool32
+ refbaf399ad *C.VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX
+ allocsbaf399ad interface{}
+}
-// DisplayMode as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayModeKHR
-type DisplayMode C.VkDisplayModeKHR
+// PipelineViewportSwizzleStateCreateFlagsNV type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineViewportSwizzleStateCreateFlagsNV.html
+type PipelineViewportSwizzleStateCreateFlagsNV uint32
-// DisplayPlaneAlphaFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayPlaneAlphaFlagsKHR
-type DisplayPlaneAlphaFlags uint32
+// ViewportSwizzleNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkViewportSwizzleNV.html
+type ViewportSwizzleNV struct {
+ X ViewportCoordinateSwizzleNV
+ Y ViewportCoordinateSwizzleNV
+ Z ViewportCoordinateSwizzleNV
+ W ViewportCoordinateSwizzleNV
+ ref74ff2887 *C.VkViewportSwizzleNV
+ allocs74ff2887 interface{}
+}
-// DisplayModeCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayModeCreateFlagsKHR
-type DisplayModeCreateFlags uint32
+// PipelineViewportSwizzleStateCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineViewportSwizzleStateCreateInfoNV.html
+type PipelineViewportSwizzleStateCreateInfoNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags PipelineViewportSwizzleStateCreateFlagsNV
+ ViewportCount uint32
+ PViewportSwizzles []ViewportSwizzleNV
+ ref5e90f24 *C.VkPipelineViewportSwizzleStateCreateInfoNV
+ allocs5e90f24 interface{}
+}
-// DisplaySurfaceCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplaySurfaceCreateFlagsKHR
-type DisplaySurfaceCreateFlags uint32
+// PipelineDiscardRectangleStateCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineDiscardRectangleStateCreateFlagsEXT.html
+type PipelineDiscardRectangleStateCreateFlags uint32
-// DisplayProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayPropertiesKHR
-type DisplayProperties struct {
- Display Display
- DisplayName string
- PhysicalDimensions Extent2D
- PhysicalResolution Extent2D
- SupportedTransforms SurfaceTransformFlags
- PlaneReorderPossible Bool32
- PersistentContent Bool32
- reffe2a7187 *C.VkDisplayPropertiesKHR
- allocsfe2a7187 interface{}
+// PhysicalDeviceDiscardRectangleProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceDiscardRectanglePropertiesEXT.html
+type PhysicalDeviceDiscardRectangleProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ MaxDiscardRectangles uint32
+ reffe8591da *C.VkPhysicalDeviceDiscardRectanglePropertiesEXT
+ allocsfe8591da interface{}
}
-// DisplayModeParameters as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayModeParametersKHR
-type DisplayModeParameters struct {
- VisibleRegion Extent2D
- RefreshRate uint32
- refe016f77f *C.VkDisplayModeParametersKHR
- allocse016f77f interface{}
+// PipelineDiscardRectangleStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineDiscardRectangleStateCreateInfoEXT.html
+type PipelineDiscardRectangleStateCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags PipelineDiscardRectangleStateCreateFlags
+ DiscardRectangleMode DiscardRectangleMode
+ DiscardRectangleCount uint32
+ PDiscardRectangles []Rect2D
+ refcdbb125e *C.VkPipelineDiscardRectangleStateCreateInfoEXT
+ allocscdbb125e interface{}
}
-// DisplayModeProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayModePropertiesKHR
-type DisplayModeProperties struct {
- DisplayMode DisplayMode
- Parameters DisplayModeParameters
- ref5e3abaaa *C.VkDisplayModePropertiesKHR
- allocs5e3abaaa interface{}
-}
+// PipelineRasterizationConservativeStateCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRasterizationConservativeStateCreateFlagsEXT.html
+type PipelineRasterizationConservativeStateCreateFlags uint32
-// DisplayModeCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayModeCreateInfoKHR
-type DisplayModeCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags DisplayModeCreateFlags
- Parameters DisplayModeParameters
- ref392fca31 *C.VkDisplayModeCreateInfoKHR
- allocs392fca31 interface{}
+// PhysicalDeviceConservativeRasterizationProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceConservativeRasterizationPropertiesEXT.html
+type PhysicalDeviceConservativeRasterizationProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PrimitiveOverestimationSize float32
+ MaxExtraPrimitiveOverestimationSize float32
+ ExtraPrimitiveOverestimationSizeGranularity float32
+ PrimitiveUnderestimation Bool32
+ ConservativePointAndLineRasterization Bool32
+ DegenerateTrianglesRasterized Bool32
+ DegenerateLinesRasterized Bool32
+ FullyCoveredFragmentShaderInputVariable Bool32
+ ConservativeRasterizationPostDepthCoverage Bool32
+ ref878f819c *C.VkPhysicalDeviceConservativeRasterizationPropertiesEXT
+ allocs878f819c interface{}
}
-// DisplayPlaneCapabilities as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayPlaneCapabilitiesKHR
-type DisplayPlaneCapabilities struct {
- SupportedAlpha DisplayPlaneAlphaFlags
- MinSrcPosition Offset2D
- MaxSrcPosition Offset2D
- MinSrcExtent Extent2D
- MaxSrcExtent Extent2D
- MinDstPosition Offset2D
- MaxDstPosition Offset2D
- MinDstExtent Extent2D
- MaxDstExtent Extent2D
- ref6f31fcaf *C.VkDisplayPlaneCapabilitiesKHR
- allocs6f31fcaf interface{}
+// PipelineRasterizationConservativeStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRasterizationConservativeStateCreateInfoEXT.html
+type PipelineRasterizationConservativeStateCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags PipelineRasterizationConservativeStateCreateFlags
+ ConservativeRasterizationMode ConservativeRasterizationMode
+ ExtraPrimitiveOverestimationSize float32
+ refe3cd0046 *C.VkPipelineRasterizationConservativeStateCreateInfoEXT
+ allocse3cd0046 interface{}
}
-// DisplayPlaneProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayPlanePropertiesKHR
-type DisplayPlaneProperties struct {
- CurrentDisplay Display
- CurrentStackIndex uint32
- refce3db3f6 *C.VkDisplayPlanePropertiesKHR
- allocsce3db3f6 interface{}
+// PipelineRasterizationDepthClipStateCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRasterizationDepthClipStateCreateFlagsEXT.html
+type PipelineRasterizationDepthClipStateCreateFlags uint32
+
+// PhysicalDeviceDepthClipEnableFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceDepthClipEnableFeaturesEXT.html
+type PhysicalDeviceDepthClipEnableFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DepthClipEnable Bool32
+ refe0daf69c *C.VkPhysicalDeviceDepthClipEnableFeaturesEXT
+ allocse0daf69c interface{}
}
-// DisplaySurfaceCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplaySurfaceCreateInfoKHR
-type DisplaySurfaceCreateInfo struct {
+// PipelineRasterizationDepthClipStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRasterizationDepthClipStateCreateInfoEXT.html
+type PipelineRasterizationDepthClipStateCreateInfo struct {
SType StructureType
PNext unsafe.Pointer
- Flags DisplaySurfaceCreateFlags
- DisplayMode DisplayMode
- PlaneIndex uint32
- PlaneStackIndex uint32
- Transform SurfaceTransformFlagBits
- GlobalAlpha float32
- AlphaMode DisplayPlaneAlphaFlagBits
- ImageExtent Extent2D
- ref58445c35 *C.VkDisplaySurfaceCreateInfoKHR
- allocs58445c35 interface{}
+ Flags PipelineRasterizationDepthClipStateCreateFlags
+ DepthClipEnable Bool32
+ ref38a864b5 *C.VkPipelineRasterizationDepthClipStateCreateInfoEXT
+ allocs38a864b5 interface{}
}
-// DisplayPresentInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayPresentInfoKHR
-type DisplayPresentInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- SrcRect Rect2D
- DstRect Rect2D
- Persistent Bool32
- ref8d2571e4 *C.VkDisplayPresentInfoKHR
- allocs8d2571e4 interface{}
+// XYColor as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkXYColorEXT.html
+type XYColor struct {
+ X float32
+ Y float32
+ refb8efaa5c *C.VkXYColorEXT
+ allocsb8efaa5c interface{}
}
-// ImportMemoryFdInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkImportMemoryFdInfoKHR
-type ImportMemoryFdInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- HandleType ExternalMemoryHandleTypeFlagBits
- Fd int32
- ref73f83287 *C.VkImportMemoryFdInfoKHR
- allocs73f83287 interface{}
+// HdrMetadata as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkHdrMetadataEXT.html
+type HdrMetadata struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DisplayPrimaryRed XYColor
+ DisplayPrimaryGreen XYColor
+ DisplayPrimaryBlue XYColor
+ WhitePoint XYColor
+ MaxLuminance float32
+ MinLuminance float32
+ MaxContentLightLevel float32
+ MaxFrameAverageLightLevel float32
+ ref5fd28976 *C.VkHdrMetadataEXT
+ allocs5fd28976 interface{}
}
-// MemoryFdProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkMemoryFdPropertiesKHR
-type MemoryFdProperties struct {
+// DebugUtilsMessageTypeFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugUtilsMessageTypeFlagsEXT.html
+type DebugUtilsMessageTypeFlags uint32
+
+// DebugUtilsMessageSeverityFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugUtilsMessageSeverityFlagsEXT.html
+type DebugUtilsMessageSeverityFlags uint32
+
+// DebugUtilsLabel as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugUtilsLabelEXT.html
+type DebugUtilsLabel struct {
SType StructureType
PNext unsafe.Pointer
- MemoryTypeBits uint32
- ref51e16d38 *C.VkMemoryFdPropertiesKHR
- allocs51e16d38 interface{}
+ PLabelName string
+ Color [4]float32
+ ref8faaf7b1 *C.VkDebugUtilsLabelEXT
+ allocs8faaf7b1 interface{}
}
-// MemoryGetFdInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkMemoryGetFdInfoKHR
-type MemoryGetFdInfo struct {
+// DebugUtilsObjectNameInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugUtilsObjectNameInfoEXT.html
+type DebugUtilsObjectNameInfo struct {
SType StructureType
PNext unsafe.Pointer
- Memory DeviceMemory
- HandleType ExternalMemoryHandleTypeFlagBits
- ref75a079b1 *C.VkMemoryGetFdInfoKHR
- allocs75a079b1 interface{}
+ ObjectType ObjectType
+ ObjectHandle uint64
+ PObjectName string
+ ref5e73c2db *C.VkDebugUtilsObjectNameInfoEXT
+ allocs5e73c2db interface{}
}
-// ImportSemaphoreFdInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkImportSemaphoreFdInfoKHR
-type ImportSemaphoreFdInfo struct {
+// DebugUtilsObjectTagInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugUtilsObjectTagInfoEXT.html
+type DebugUtilsObjectTagInfo struct {
SType StructureType
PNext unsafe.Pointer
- Semaphore Semaphore
- Flags SemaphoreImportFlags
- HandleType ExternalSemaphoreHandleTypeFlagBits
- Fd int32
- refbc2f829a *C.VkImportSemaphoreFdInfoKHR
- allocsbc2f829a interface{}
+ ObjectType ObjectType
+ ObjectHandle uint64
+ TagName uint64
+ TagSize uint64
+ PTag unsafe.Pointer
+ ref9fd129cf *C.VkDebugUtilsObjectTagInfoEXT
+ allocs9fd129cf interface{}
+}
+
+// SampleLocation as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSampleLocationEXT.html
+type SampleLocation struct {
+ X float32
+ Y float32
+ refe7a2e761 *C.VkSampleLocationEXT
+ allocse7a2e761 interface{}
+}
+
+// SampleLocationsInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSampleLocationsInfoEXT.html
+type SampleLocationsInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SampleLocationsPerPixel SampleCountFlagBits
+ SampleLocationGridSize Extent2D
+ SampleLocationsCount uint32
+ PSampleLocations []SampleLocation
+ refd8f3bd2d *C.VkSampleLocationsInfoEXT
+ allocsd8f3bd2d interface{}
}
-// SemaphoreGetFdInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSemaphoreGetFdInfoKHR
-type SemaphoreGetFdInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Semaphore Semaphore
- HandleType ExternalSemaphoreHandleTypeFlagBits
- refd9bd07cf *C.VkSemaphoreGetFdInfoKHR
- allocsd9bd07cf interface{}
+// AttachmentSampleLocations as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAttachmentSampleLocationsEXT.html
+type AttachmentSampleLocations struct {
+ AttachmentIndex uint32
+ SampleLocationsInfo SampleLocationsInfo
+ ref6a3dd41e *C.VkAttachmentSampleLocationsEXT
+ allocs6a3dd41e interface{}
}
-// PhysicalDevicePushDescriptorProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDevicePushDescriptorPropertiesKHR
-type PhysicalDevicePushDescriptorProperties struct {
- SType StructureType
- PNext unsafe.Pointer
- MaxPushDescriptors uint32
- ref8c58a1a5 *C.VkPhysicalDevicePushDescriptorPropertiesKHR
- allocs8c58a1a5 interface{}
+// SubpassSampleLocations as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubpassSampleLocationsEXT.html
+type SubpassSampleLocations struct {
+ SubpassIndex uint32
+ SampleLocationsInfo SampleLocationsInfo
+ ref1f612812 *C.VkSubpassSampleLocationsEXT
+ allocs1f612812 interface{}
}
-// RectLayer as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkRectLayerKHR
-type RectLayer struct {
- Offset Offset2D
- Extent Extent2D
- Layer uint32
- refaf248476 *C.VkRectLayerKHR
- allocsaf248476 interface{}
+// RenderPassSampleLocationsBeginInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderPassSampleLocationsBeginInfoEXT.html
+type RenderPassSampleLocationsBeginInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ AttachmentInitialSampleLocationsCount uint32
+ PAttachmentInitialSampleLocations []AttachmentSampleLocations
+ PostSubpassSampleLocationsCount uint32
+ PPostSubpassSampleLocations []SubpassSampleLocations
+ refb61b51d4 *C.VkRenderPassSampleLocationsBeginInfoEXT
+ allocsb61b51d4 interface{}
}
-// PresentRegion as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPresentRegionKHR
-type PresentRegion struct {
- RectangleCount uint32
- PRectangles []RectLayer
- refbbc0d1b9 *C.VkPresentRegionKHR
- allocsbbc0d1b9 interface{}
+// PipelineSampleLocationsStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineSampleLocationsStateCreateInfoEXT.html
+type PipelineSampleLocationsStateCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SampleLocationsEnable Bool32
+ SampleLocationsInfo SampleLocationsInfo
+ ref93a2968f *C.VkPipelineSampleLocationsStateCreateInfoEXT
+ allocs93a2968f interface{}
}
-// PresentRegions as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPresentRegionsKHR
-type PresentRegions struct {
- SType StructureType
- PNext unsafe.Pointer
- SwapchainCount uint32
- PRegions []PresentRegion
- ref62958060 *C.VkPresentRegionsKHR
- allocs62958060 interface{}
+// PhysicalDeviceSampleLocationsProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceSampleLocationsPropertiesEXT.html
+type PhysicalDeviceSampleLocationsProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SampleLocationSampleCounts SampleCountFlags
+ MaxSampleLocationGridSize Extent2D
+ SampleLocationCoordinateRange [2]float32
+ SampleLocationSubPixelBits uint32
+ VariableSampleLocations Bool32
+ refaf801323 *C.VkPhysicalDeviceSampleLocationsPropertiesEXT
+ allocsaf801323 interface{}
}
-// AttachmentDescription2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkAttachmentDescription2KHR
-type AttachmentDescription2 struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags AttachmentDescriptionFlags
- Format Format
- Samples SampleCountFlagBits
- LoadOp AttachmentLoadOp
- StoreOp AttachmentStoreOp
- StencilLoadOp AttachmentLoadOp
- StencilStoreOp AttachmentStoreOp
- InitialLayout ImageLayout
- FinalLayout ImageLayout
- refe0fc3d48 *C.VkAttachmentDescription2KHR
- allocse0fc3d48 interface{}
+// MultisampleProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMultisamplePropertiesEXT.html
+type MultisampleProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ MaxSampleLocationGridSize Extent2D
+ ref3e47f337 *C.VkMultisamplePropertiesEXT
+ allocs3e47f337 interface{}
}
-// AttachmentReference2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkAttachmentReference2KHR
-type AttachmentReference2 struct {
- SType StructureType
- PNext unsafe.Pointer
- Attachment uint32
- Layout ImageLayout
- AspectMask ImageAspectFlags
- refa31684a1 *C.VkAttachmentReference2KHR
- allocsa31684a1 interface{}
+// PhysicalDeviceBlendOperationAdvancedFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT.html
+type PhysicalDeviceBlendOperationAdvancedFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ AdvancedBlendCoherentOperations Bool32
+ ref8514bc93 *C.VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT
+ allocs8514bc93 interface{}
}
-// SubpassDescription2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSubpassDescription2KHR
-type SubpassDescription2 struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags SubpassDescriptionFlags
- PipelineBindPoint PipelineBindPoint
- ViewMask uint32
- InputAttachmentCount uint32
- PInputAttachments []AttachmentReference2
- ColorAttachmentCount uint32
- PColorAttachments []AttachmentReference2
- PResolveAttachments []AttachmentReference2
- PDepthStencilAttachment []AttachmentReference2
- PreserveAttachmentCount uint32
- PPreserveAttachments []uint32
- ref89a293f3 *C.VkSubpassDescription2KHR
- allocs89a293f3 interface{}
+// PhysicalDeviceBlendOperationAdvancedProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT.html
+type PhysicalDeviceBlendOperationAdvancedProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ AdvancedBlendMaxColorAttachments uint32
+ AdvancedBlendIndependentBlend Bool32
+ AdvancedBlendNonPremultipliedSrcColor Bool32
+ AdvancedBlendNonPremultipliedDstColor Bool32
+ AdvancedBlendCorrelatedOverlap Bool32
+ AdvancedBlendAllOperations Bool32
+ ref94cb3fa6 *C.VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT
+ allocs94cb3fa6 interface{}
}
-// SubpassDependency2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSubpassDependency2KHR
-type SubpassDependency2 struct {
- SType StructureType
- PNext unsafe.Pointer
- SrcSubpass uint32
- DstSubpass uint32
- SrcStageMask PipelineStageFlags
- DstStageMask PipelineStageFlags
- SrcAccessMask AccessFlags
- DstAccessMask AccessFlags
- DependencyFlags DependencyFlags
- ViewOffset int32
- ref985e0998 *C.VkSubpassDependency2KHR
- allocs985e0998 interface{}
+// PipelineColorBlendAdvancedStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineColorBlendAdvancedStateCreateInfoEXT.html
+type PipelineColorBlendAdvancedStateCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SrcPremultiplied Bool32
+ DstPremultiplied Bool32
+ BlendOverlap BlendOverlap
+ refcd374989 *C.VkPipelineColorBlendAdvancedStateCreateInfoEXT
+ allocscd374989 interface{}
}
-// RenderPassCreateInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkRenderPassCreateInfo2KHR
-type RenderPassCreateInfo2 struct {
+// PipelineCoverageToColorStateCreateFlagsNV type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCoverageToColorStateCreateFlagsNV.html
+type PipelineCoverageToColorStateCreateFlagsNV uint32
+
+// PipelineCoverageToColorStateCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCoverageToColorStateCreateInfoNV.html
+type PipelineCoverageToColorStateCreateInfoNV struct {
SType StructureType
PNext unsafe.Pointer
- Flags RenderPassCreateFlags
- AttachmentCount uint32
- PAttachments []AttachmentDescription2
- SubpassCount uint32
- PSubpasses []SubpassDescription2
- DependencyCount uint32
- PDependencies []SubpassDependency2
- CorrelatedViewMaskCount uint32
- PCorrelatedViewMasks []uint32
- ref1d4774de *C.VkRenderPassCreateInfo2KHR
- allocs1d4774de interface{}
+ Flags PipelineCoverageToColorStateCreateFlagsNV
+ CoverageToColorEnable Bool32
+ CoverageToColorLocation uint32
+ refcc6b7b68 *C.VkPipelineCoverageToColorStateCreateInfoNV
+ allocscc6b7b68 interface{}
}
-// SubpassBeginInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSubpassBeginInfoKHR
-type SubpassBeginInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Contents SubpassContents
- ref7b9f19b8 *C.VkSubpassBeginInfoKHR
- allocs7b9f19b8 interface{}
+// PipelineCoverageModulationStateCreateFlagsNV type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCoverageModulationStateCreateFlagsNV.html
+type PipelineCoverageModulationStateCreateFlagsNV uint32
+
+// PipelineCoverageModulationStateCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCoverageModulationStateCreateInfoNV.html
+type PipelineCoverageModulationStateCreateInfoNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags PipelineCoverageModulationStateCreateFlagsNV
+ CoverageModulationMode CoverageModulationModeNV
+ CoverageModulationTableEnable Bool32
+ CoverageModulationTableCount uint32
+ PCoverageModulationTable []float32
+ refa081b0ea *C.VkPipelineCoverageModulationStateCreateInfoNV
+ allocsa081b0ea interface{}
}
-// SubpassEndInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSubpassEndInfoKHR
-type SubpassEndInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- refb755d027 *C.VkSubpassEndInfoKHR
- allocsb755d027 interface{}
+// PhysicalDeviceShaderSMBuiltinsPropertiesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceShaderSMBuiltinsPropertiesNV.html
+type PhysicalDeviceShaderSMBuiltinsPropertiesNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ShaderSMCount uint32
+ ShaderWarpsPerSM uint32
+ refc083cf09 *C.VkPhysicalDeviceShaderSMBuiltinsPropertiesNV
+ allocsc083cf09 interface{}
}
-// SharedPresentSurfaceCapabilities as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSharedPresentSurfaceCapabilitiesKHR
-type SharedPresentSurfaceCapabilities struct {
- SType StructureType
- PNext unsafe.Pointer
- SharedPresentSupportedUsageFlags ImageUsageFlags
- ref3f98a814 *C.VkSharedPresentSurfaceCapabilitiesKHR
- allocs3f98a814 interface{}
+// PhysicalDeviceShaderSMBuiltinsFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceShaderSMBuiltinsFeaturesNV.html
+type PhysicalDeviceShaderSMBuiltinsFeaturesNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ShaderSMBuiltins Bool32
+ ref1965c1d *C.VkPhysicalDeviceShaderSMBuiltinsFeaturesNV
+ allocs1965c1d interface{}
}
-// ImportFenceFdInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkImportFenceFdInfoKHR
-type ImportFenceFdInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Fence Fence
- Flags FenceImportFlags
- HandleType ExternalFenceHandleTypeFlagBits
- Fd int32
- ref86ebd28c *C.VkImportFenceFdInfoKHR
- allocs86ebd28c interface{}
+// DrmFormatModifierProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDrmFormatModifierPropertiesEXT.html
+type DrmFormatModifierProperties struct {
+ DrmFormatModifier uint64
+ DrmFormatModifierPlaneCount uint32
+ DrmFormatModifierTilingFeatures FormatFeatureFlags
+ ref7dcb7f85 *C.VkDrmFormatModifierPropertiesEXT
+ allocs7dcb7f85 interface{}
}
-// FenceGetFdInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkFenceGetFdInfoKHR
-type FenceGetFdInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Fence Fence
- HandleType ExternalFenceHandleTypeFlagBits
- refc2668bc3 *C.VkFenceGetFdInfoKHR
- allocsc2668bc3 interface{}
+// DrmFormatModifierPropertiesList as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDrmFormatModifierPropertiesListEXT.html
+type DrmFormatModifierPropertiesList struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DrmFormatModifierCount uint32
+ PDrmFormatModifierProperties []DrmFormatModifierProperties
+ ref7e3ede2 *C.VkDrmFormatModifierPropertiesListEXT
+ allocs7e3ede2 interface{}
}
-// PhysicalDeviceSurfaceInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDeviceSurfaceInfo2KHR
-type PhysicalDeviceSurfaceInfo2 struct {
- SType StructureType
- PNext unsafe.Pointer
- Surface Surface
- refd22370ae *C.VkPhysicalDeviceSurfaceInfo2KHR
- allocsd22370ae interface{}
+// PhysicalDeviceImageDrmFormatModifierInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceImageDrmFormatModifierInfoEXT.html
+type PhysicalDeviceImageDrmFormatModifierInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DrmFormatModifier uint64
+ SharingMode SharingMode
+ QueueFamilyIndexCount uint32
+ PQueueFamilyIndices []uint32
+ refd7abef44 *C.VkPhysicalDeviceImageDrmFormatModifierInfoEXT
+ allocsd7abef44 interface{}
}
-// SurfaceCapabilities2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSurfaceCapabilities2KHR
-type SurfaceCapabilities2 struct {
- SType StructureType
- PNext unsafe.Pointer
- SurfaceCapabilities SurfaceCapabilities
- refea469745 *C.VkSurfaceCapabilities2KHR
- allocsea469745 interface{}
+// ImageDrmFormatModifierListCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageDrmFormatModifierListCreateInfoEXT.html
+type ImageDrmFormatModifierListCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DrmFormatModifierCount uint32
+ PDrmFormatModifiers []uint64
+ ref544538ab *C.VkImageDrmFormatModifierListCreateInfoEXT
+ allocs544538ab interface{}
}
-// SurfaceFormat2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSurfaceFormat2KHR
-type SurfaceFormat2 struct {
- SType StructureType
- PNext unsafe.Pointer
- SurfaceFormat SurfaceFormat
- ref8867f0ed *C.VkSurfaceFormat2KHR
- allocs8867f0ed interface{}
+// ImageDrmFormatModifierExplicitCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageDrmFormatModifierExplicitCreateInfoEXT.html
+type ImageDrmFormatModifierExplicitCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DrmFormatModifier uint64
+ DrmFormatModifierPlaneCount uint32
+ PPlaneLayouts []SubresourceLayout
+ ref8fb45ca9 *C.VkImageDrmFormatModifierExplicitCreateInfoEXT
+ allocs8fb45ca9 interface{}
}
-// DisplayProperties2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayProperties2KHR
-type DisplayProperties2 struct {
+// ImageDrmFormatModifierProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageDrmFormatModifierPropertiesEXT.html
+type ImageDrmFormatModifierProperties struct {
SType StructureType
PNext unsafe.Pointer
- DisplayProperties DisplayProperties
- ref80194833 *C.VkDisplayProperties2KHR
- allocs80194833 interface{}
+ DrmFormatModifier uint64
+ ref86a0f149 *C.VkImageDrmFormatModifierPropertiesEXT
+ allocs86a0f149 interface{}
}
-// DisplayPlaneProperties2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayPlaneProperties2KHR
-type DisplayPlaneProperties2 struct {
- SType StructureType
- PNext unsafe.Pointer
- DisplayPlaneProperties DisplayPlaneProperties
- refa72b1e5b *C.VkDisplayPlaneProperties2KHR
- allocsa72b1e5b interface{}
+// DrmFormatModifierProperties2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDrmFormatModifierProperties2EXT.html
+type DrmFormatModifierProperties2 struct {
+ DrmFormatModifier uint64
+ DrmFormatModifierPlaneCount uint32
+ DrmFormatModifierTilingFeatures FormatFeatureFlags2
+ ref6d0821ba *C.VkDrmFormatModifierProperties2EXT
+ allocs6d0821ba interface{}
}
-// DisplayModeProperties2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayModeProperties2KHR
-type DisplayModeProperties2 struct {
- SType StructureType
- PNext unsafe.Pointer
- DisplayModeProperties DisplayModeProperties
- refc566048d *C.VkDisplayModeProperties2KHR
- allocsc566048d interface{}
+// DrmFormatModifierPropertiesList2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDrmFormatModifierPropertiesList2EXT.html
+type DrmFormatModifierPropertiesList2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DrmFormatModifierCount uint32
+ PDrmFormatModifierProperties []DrmFormatModifierProperties2
+ refbea4fdd3 *C.VkDrmFormatModifierPropertiesList2EXT
+ allocsbea4fdd3 interface{}
}
-// DisplayPlaneInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayPlaneInfo2KHR
-type DisplayPlaneInfo2 struct {
- SType StructureType
- PNext unsafe.Pointer
- Mode DisplayMode
- PlaneIndex uint32
- reff355ccbf *C.VkDisplayPlaneInfo2KHR
- allocsf355ccbf interface{}
-}
+// ValidationCache as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkValidationCacheEXT.html
+type ValidationCache C.VkValidationCacheEXT
-// DisplayPlaneCapabilities2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayPlaneCapabilities2KHR
-type DisplayPlaneCapabilities2 struct {
- SType StructureType
- PNext unsafe.Pointer
- Capabilities DisplayPlaneCapabilities
- refb53dfb44 *C.VkDisplayPlaneCapabilities2KHR
- allocsb53dfb44 interface{}
-}
+// ValidationCacheCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkValidationCacheCreateFlagsEXT.html
+type ValidationCacheCreateFlags uint32
-// ImageFormatListCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkImageFormatListCreateInfoKHR
-type ImageFormatListCreateInfo struct {
+// ValidationCacheCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkValidationCacheCreateInfoEXT.html
+type ValidationCacheCreateInfo struct {
SType StructureType
PNext unsafe.Pointer
- ViewFormatCount uint32
- PViewFormats []Format
- ref815daf8c *C.VkImageFormatListCreateInfoKHR
- allocs815daf8c interface{}
-}
-
-// PhysicalDevice8BitStorageFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDevice8BitStorageFeaturesKHR
-type PhysicalDevice8BitStorageFeatures struct {
- SType StructureType
- PNext unsafe.Pointer
- StorageBuffer8BitAccess Bool32
- UniformAndStorageBuffer8BitAccess Bool32
- StoragePushConstant8 Bool32
- ref906ef48e *C.VkPhysicalDevice8BitStorageFeaturesKHR
- allocs906ef48e interface{}
+ Flags ValidationCacheCreateFlags
+ InitialDataSize uint64
+ PInitialData unsafe.Pointer
+ ref3d8ac8aa *C.VkValidationCacheCreateInfoEXT
+ allocs3d8ac8aa interface{}
}
-// PhysicalDeviceShaderAtomicInt64Features as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDeviceShaderAtomicInt64FeaturesKHR
-type PhysicalDeviceShaderAtomicInt64Features struct {
- SType StructureType
- PNext unsafe.Pointer
- ShaderBufferInt64Atomics Bool32
- ShaderSharedInt64Atomics Bool32
- ref51c409c6 *C.VkPhysicalDeviceShaderAtomicInt64FeaturesKHR
- allocs51c409c6 interface{}
+// ShaderModuleValidationCacheCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkShaderModuleValidationCacheCreateInfoEXT.html
+type ShaderModuleValidationCacheCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ValidationCache ValidationCache
+ ref37065f24 *C.VkShaderModuleValidationCacheCreateInfoEXT
+ allocs37065f24 interface{}
}
-// ConformanceVersion as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkConformanceVersionKHR
-type ConformanceVersion struct {
- Major byte
- Minor byte
- Subminor byte
- Patch byte
- refe4627a5f *C.VkConformanceVersionKHR
- allocse4627a5f interface{}
+// ShadingRatePaletteNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkShadingRatePaletteNV.html
+type ShadingRatePaletteNV struct {
+ ShadingRatePaletteEntryCount uint32
+ PShadingRatePaletteEntries []ShadingRatePaletteEntryNV
+ refa5c4ae3a *C.VkShadingRatePaletteNV
+ allocsa5c4ae3a interface{}
}
-// PhysicalDeviceDriverProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDeviceDriverPropertiesKHR
-type PhysicalDeviceDriverProperties struct {
- SType StructureType
- PNext unsafe.Pointer
- DriverID DriverId
- DriverName [256]byte
- DriverInfo [256]byte
- ConformanceVersion ConformanceVersion
- ref9220f954 *C.VkPhysicalDeviceDriverPropertiesKHR
- allocs9220f954 interface{}
+// PipelineViewportShadingRateImageStateCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineViewportShadingRateImageStateCreateInfoNV.html
+type PipelineViewportShadingRateImageStateCreateInfoNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ShadingRateImageEnable Bool32
+ ViewportCount uint32
+ PShadingRatePalettes []ShadingRatePaletteNV
+ ref6f2ec732 *C.VkPipelineViewportShadingRateImageStateCreateInfoNV
+ allocs6f2ec732 interface{}
}
-// PhysicalDeviceVulkanMemoryModelFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDeviceVulkanMemoryModelFeaturesKHR
-type PhysicalDeviceVulkanMemoryModelFeatures struct {
+// PhysicalDeviceShadingRateImageFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceShadingRateImageFeaturesNV.html
+type PhysicalDeviceShadingRateImageFeaturesNV struct {
SType StructureType
PNext unsafe.Pointer
- VulkanMemoryModel Bool32
- VulkanMemoryModelDeviceScope Bool32
- ref2b17642b *C.VkPhysicalDeviceVulkanMemoryModelFeaturesKHR
- allocs2b17642b interface{}
-}
-
-// DebugReportCallback as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugReportCallbackEXT.html
-type DebugReportCallback C.VkDebugReportCallbackEXT
-
-// DebugReportFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugReportFlagsEXT.html
-type DebugReportFlags uint32
-
-// DebugReportCallbackFunc type as declared in vulkan/vulkan_core.h:6207
-type DebugReportCallbackFunc func(flags DebugReportFlags, objectType DebugReportObjectType, object uint64, location uint, messageCode int32, pLayerPrefix string, pMessage string, pUserData unsafe.Pointer) Bool32
-
-// DebugReportCallbackCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugReportCallbackCreateInfoEXT.html
-type DebugReportCallbackCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags DebugReportFlags
- PfnCallback DebugReportCallbackFunc
- PUserData unsafe.Pointer
- refc8238563 *C.VkDebugReportCallbackCreateInfoEXT
- allocsc8238563 interface{}
+ ShadingRateImage Bool32
+ ShadingRateCoarseSampleOrder Bool32
+ ref199a921b *C.VkPhysicalDeviceShadingRateImageFeaturesNV
+ allocs199a921b interface{}
}
-// PipelineRasterizationStateRasterizationOrderAMD as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkPipelineRasterizationStateRasterizationOrderAMD
-type PipelineRasterizationStateRasterizationOrderAMD struct {
- SType StructureType
- PNext unsafe.Pointer
- RasterizationOrder RasterizationOrderAMD
- ref5098cf82 *C.VkPipelineRasterizationStateRasterizationOrderAMD
- allocs5098cf82 interface{}
+// PhysicalDeviceShadingRateImagePropertiesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceShadingRateImagePropertiesNV.html
+type PhysicalDeviceShadingRateImagePropertiesNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ShadingRateTexelSize Extent2D
+ ShadingRatePaletteSize uint32
+ ShadingRateMaxCoarseSamples uint32
+ refea059f34 *C.VkPhysicalDeviceShadingRateImagePropertiesNV
+ allocsea059f34 interface{}
}
-// DebugMarkerObjectNameInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugMarkerObjectNameInfoEXT.html
-type DebugMarkerObjectNameInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- ObjectType DebugReportObjectType
- Object uint64
- PObjectName string
- refe4983fab *C.VkDebugMarkerObjectNameInfoEXT
- allocse4983fab interface{}
+// CoarseSampleLocationNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCoarseSampleLocationNV.html
+type CoarseSampleLocationNV struct {
+ PixelX uint32
+ PixelY uint32
+ Sample uint32
+ ref2f447beb *C.VkCoarseSampleLocationNV
+ allocs2f447beb interface{}
}
-// DebugMarkerObjectTagInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugMarkerObjectTagInfoEXT.html
-type DebugMarkerObjectTagInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- ObjectType DebugReportObjectType
- Object uint64
- TagName uint64
- TagSize uint
- PTag unsafe.Pointer
- refa41a5c3b *C.VkDebugMarkerObjectTagInfoEXT
- allocsa41a5c3b interface{}
+// CoarseSampleOrderCustomNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCoarseSampleOrderCustomNV.html
+type CoarseSampleOrderCustomNV struct {
+ ShadingRate ShadingRatePaletteEntryNV
+ SampleCount uint32
+ SampleLocationCount uint32
+ PSampleLocations []CoarseSampleLocationNV
+ ref4524fa09 *C.VkCoarseSampleOrderCustomNV
+ allocs4524fa09 interface{}
}
-// DebugMarkerMarkerInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugMarkerMarkerInfoEXT.html
-type DebugMarkerMarkerInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- PMarkerName string
- Color [4]float32
- ref234b91fd *C.VkDebugMarkerMarkerInfoEXT
- allocs234b91fd interface{}
+// PipelineViewportCoarseSampleOrderStateCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineViewportCoarseSampleOrderStateCreateInfoNV.html
+type PipelineViewportCoarseSampleOrderStateCreateInfoNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SampleOrderType CoarseSampleOrderTypeNV
+ CustomSampleOrderCount uint32
+ PCustomSampleOrders []CoarseSampleOrderCustomNV
+ ref54de8ca6 *C.VkPipelineViewportCoarseSampleOrderStateCreateInfoNV
+ allocs54de8ca6 interface{}
}
-// DedicatedAllocationImageCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDedicatedAllocationImageCreateInfoNV.html
-type DedicatedAllocationImageCreateInfoNV struct {
- SType StructureType
- PNext unsafe.Pointer
- DedicatedAllocation Bool32
- ref685d878b *C.VkDedicatedAllocationImageCreateInfoNV
- allocs685d878b interface{}
+// PhysicalDeviceRepresentativeFragmentTestFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV.html
+type PhysicalDeviceRepresentativeFragmentTestFeaturesNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ RepresentativeFragmentTest Bool32
+ reff1f69e03 *C.VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV
+ allocsf1f69e03 interface{}
}
-// DedicatedAllocationBufferCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDedicatedAllocationBufferCreateInfoNV.html
-type DedicatedAllocationBufferCreateInfoNV struct {
- SType StructureType
- PNext unsafe.Pointer
- DedicatedAllocation Bool32
- refbc745a8 *C.VkDedicatedAllocationBufferCreateInfoNV
- allocsbc745a8 interface{}
+// PipelineRepresentativeFragmentTestStateCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRepresentativeFragmentTestStateCreateInfoNV.html
+type PipelineRepresentativeFragmentTestStateCreateInfoNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ RepresentativeFragmentTestEnable Bool32
+ ref9c224e21 *C.VkPipelineRepresentativeFragmentTestStateCreateInfoNV
+ allocs9c224e21 interface{}
}
-// DedicatedAllocationMemoryAllocateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDedicatedAllocationMemoryAllocateInfoNV.html
-type DedicatedAllocationMemoryAllocateInfoNV struct {
+// PhysicalDeviceImageViewImageFormatInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceImageViewImageFormatInfoEXT.html
+type PhysicalDeviceImageViewImageFormatInfo struct {
SType StructureType
PNext unsafe.Pointer
- Image Image
- Buffer Buffer
- ref9a72b107 *C.VkDedicatedAllocationMemoryAllocateInfoNV
- allocs9a72b107 interface{}
+ ImageViewType ImageViewType
+ ref99e4ab46 *C.VkPhysicalDeviceImageViewImageFormatInfoEXT
+ allocs99e4ab46 interface{}
}
-// PipelineRasterizationStateStreamCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRasterizationStateStreamCreateFlagsEXT.html
-type PipelineRasterizationStateStreamCreateFlags uint32
-
-// PhysicalDeviceTransformFeedbackFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceTransformFeedbackFeaturesEXT.html
-type PhysicalDeviceTransformFeedbackFeatures struct {
+// FilterCubicImageViewImageFormatProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFilterCubicImageViewImageFormatPropertiesEXT.html
+type FilterCubicImageViewImageFormatProperties struct {
SType StructureType
PNext unsafe.Pointer
- TransformFeedback Bool32
- GeometryStreams Bool32
- ref64b2a913 *C.VkPhysicalDeviceTransformFeedbackFeaturesEXT
- allocs64b2a913 interface{}
+ FilterCubic Bool32
+ FilterCubicMinmax Bool32
+ refcf60927c *C.VkFilterCubicImageViewImageFormatPropertiesEXT
+ allocscf60927c interface{}
}
-// PhysicalDeviceTransformFeedbackProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceTransformFeedbackPropertiesEXT.html
-type PhysicalDeviceTransformFeedbackProperties struct {
- SType StructureType
- PNext unsafe.Pointer
- MaxTransformFeedbackStreams uint32
- MaxTransformFeedbackBuffers uint32
- MaxTransformFeedbackBufferSize DeviceSize
- MaxTransformFeedbackStreamDataSize uint32
- MaxTransformFeedbackBufferDataSize uint32
- MaxTransformFeedbackBufferDataStride uint32
- TransformFeedbackQueries Bool32
- TransformFeedbackStreamsLinesTriangles Bool32
- TransformFeedbackRasterizationStreamSelect Bool32
- TransformFeedbackDraw Bool32
- refc295a2a0 *C.VkPhysicalDeviceTransformFeedbackPropertiesEXT
- allocsc295a2a0 interface{}
+// ImportMemoryHostPointerInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImportMemoryHostPointerInfoEXT.html
+type ImportMemoryHostPointerInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ HandleType ExternalMemoryHandleTypeFlagBits
+ PHostPointer unsafe.Pointer
+ reffe09253e *C.VkImportMemoryHostPointerInfoEXT
+ allocsfe09253e interface{}
}
-// PipelineRasterizationStateStreamCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRasterizationStateStreamCreateInfoEXT.html
-type PipelineRasterizationStateStreamCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags PipelineRasterizationStateStreamCreateFlags
- RasterizationStream uint32
- refed6e1fb9 *C.VkPipelineRasterizationStateStreamCreateInfoEXT
- allocsed6e1fb9 interface{}
+// MemoryHostPointerProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryHostPointerPropertiesEXT.html
+type MemoryHostPointerProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ MemoryTypeBits uint32
+ refebf46a84 *C.VkMemoryHostPointerPropertiesEXT
+ allocsebf46a84 interface{}
}
-// TextureLODGatherFormatPropertiesAMD as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkTextureLODGatherFormatPropertiesAMD
-type TextureLODGatherFormatPropertiesAMD struct {
+// PhysicalDeviceExternalMemoryHostProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceExternalMemoryHostPropertiesEXT.html
+type PhysicalDeviceExternalMemoryHostProperties struct {
SType StructureType
PNext unsafe.Pointer
- SupportsTextureGatherLODBiasAMD Bool32
- ref519ba3a9 *C.VkTextureLODGatherFormatPropertiesAMD
- allocs519ba3a9 interface{}
+ MinImportedHostPointerAlignment DeviceSize
+ ref7f697d15 *C.VkPhysicalDeviceExternalMemoryHostPropertiesEXT
+ allocs7f697d15 interface{}
}
-// ShaderResourceUsageAMD as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkShaderResourceUsageAMD
-type ShaderResourceUsageAMD struct {
- NumUsedVgprs uint32
- NumUsedSgprs uint32
- LdsSizePerLocalWorkGroup uint32
- LdsUsageSizeInBytes uint
- ScratchMemUsageInBytes uint
- ref8a688131 *C.VkShaderResourceUsageAMD
- allocs8a688131 interface{}
-}
+// PipelineCompilerControlFlagsAMD type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkPipelineCompilerControlFlagsAMD
+type PipelineCompilerControlFlagsAMD uint32
-// ShaderStatisticsInfoAMD as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkShaderStatisticsInfoAMD
-type ShaderStatisticsInfoAMD struct {
- ShaderStageMask ShaderStageFlags
- ResourceUsage ShaderResourceUsageAMD
- NumPhysicalVgprs uint32
- NumPhysicalSgprs uint32
- NumAvailableVgprs uint32
- NumAvailableSgprs uint32
- ComputeWorkGroupSize [3]uint32
- ref896a52bf *C.VkShaderStatisticsInfoAMD
- allocs896a52bf interface{}
+// PipelineCompilerControlCreateInfoAMD as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkPipelineCompilerControlCreateInfoAMD
+type PipelineCompilerControlCreateInfoAMD struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ CompilerControlFlags PipelineCompilerControlFlagsAMD
+ ref46a09e46 *C.VkPipelineCompilerControlCreateInfoAMD
+ allocs46a09e46 interface{}
}
-// PhysicalDeviceCornerSampledImageFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceCornerSampledImageFeaturesNV.html
-type PhysicalDeviceCornerSampledImageFeaturesNV struct {
- SType StructureType
- PNext unsafe.Pointer
- CornerSampledImage Bool32
- refdf4a62d1 *C.VkPhysicalDeviceCornerSampledImageFeaturesNV
- allocsdf4a62d1 interface{}
+// CalibratedTimestampInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCalibratedTimestampInfoEXT.html
+type CalibratedTimestampInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ TimeDomain TimeDomain
+ ref5f061d2a *C.VkCalibratedTimestampInfoEXT
+ allocs5f061d2a interface{}
}
-// ExternalMemoryHandleTypeFlagsNV type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryHandleTypeFlagsNV.html
-type ExternalMemoryHandleTypeFlagsNV uint32
-
-// ExternalMemoryFeatureFlagsNV type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryFeatureFlagsNV.html
-type ExternalMemoryFeatureFlagsNV uint32
-
-// ExternalImageFormatPropertiesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalImageFormatPropertiesNV.html
-type ExternalImageFormatPropertiesNV struct {
- ImageFormatProperties ImageFormatProperties
- ExternalMemoryFeatures ExternalMemoryFeatureFlagsNV
- ExportFromImportedHandleTypes ExternalMemoryHandleTypeFlagsNV
- CompatibleHandleTypes ExternalMemoryHandleTypeFlagsNV
- refa8900ce5 *C.VkExternalImageFormatPropertiesNV
- allocsa8900ce5 interface{}
+// PhysicalDeviceShaderCorePropertiesAMD as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkPhysicalDeviceShaderCorePropertiesAMD
+type PhysicalDeviceShaderCorePropertiesAMD struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ShaderEngineCount uint32
+ ShaderArraysPerEngineCount uint32
+ ComputeUnitsPerShaderArray uint32
+ SimdPerComputeUnit uint32
+ WavefrontsPerSimd uint32
+ WavefrontSize uint32
+ SgprsPerSimd uint32
+ MinSgprAllocation uint32
+ MaxSgprAllocation uint32
+ SgprAllocationGranularity uint32
+ VgprsPerSimd uint32
+ MinVgprAllocation uint32
+ MaxVgprAllocation uint32
+ VgprAllocationGranularity uint32
+ refde4b3b09 *C.VkPhysicalDeviceShaderCorePropertiesAMD
+ allocsde4b3b09 interface{}
}
-// ExternalMemoryImageCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryImageCreateInfoNV.html
-type ExternalMemoryImageCreateInfoNV struct {
- SType StructureType
- PNext unsafe.Pointer
- HandleTypes ExternalMemoryHandleTypeFlagsNV
- ref9a7fb6c8 *C.VkExternalMemoryImageCreateInfoNV
- allocs9a7fb6c8 interface{}
+// DeviceMemoryOverallocationCreateInfoAMD as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkDeviceMemoryOverallocationCreateInfoAMD
+type DeviceMemoryOverallocationCreateInfoAMD struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ OverallocationBehavior MemoryOverallocationBehaviorAMD
+ ref5ccee475 *C.VkDeviceMemoryOverallocationCreateInfoAMD
+ allocs5ccee475 interface{}
}
-// ExportMemoryAllocateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExportMemoryAllocateInfoNV.html
-type ExportMemoryAllocateInfoNV struct {
- SType StructureType
- PNext unsafe.Pointer
- HandleTypes ExternalMemoryHandleTypeFlagsNV
- ref5066f33 *C.VkExportMemoryAllocateInfoNV
- allocs5066f33 interface{}
+// PhysicalDeviceVertexAttributeDivisorProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT.html
+type PhysicalDeviceVertexAttributeDivisorProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ MaxVertexAttribDivisor uint32
+ refbd6b5075 *C.VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT
+ allocsbd6b5075 interface{}
}
-// ValidationFlags as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkValidationFlagsEXT.html
-type ValidationFlags struct {
- SType StructureType
- PNext unsafe.Pointer
- DisabledValidationCheckCount uint32
- PDisabledValidationChecks []ValidationCheck
- refffe080ad *C.VkValidationFlagsEXT
- allocsffe080ad interface{}
+// VertexInputBindingDivisorDescription as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkVertexInputBindingDivisorDescriptionEXT.html
+type VertexInputBindingDivisorDescription struct {
+ Binding uint32
+ Divisor uint32
+ refd64d4396 *C.VkVertexInputBindingDivisorDescriptionEXT
+ allocsd64d4396 interface{}
}
-// ImageViewASTCDecodeMode as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageViewASTCDecodeModeEXT.html
-type ImageViewASTCDecodeMode struct {
- SType StructureType
- PNext unsafe.Pointer
- DecodeMode Format
- ref3a973fc0 *C.VkImageViewASTCDecodeModeEXT
- allocs3a973fc0 interface{}
+// PipelineVertexInputDivisorStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineVertexInputDivisorStateCreateInfoEXT.html
+type PipelineVertexInputDivisorStateCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ VertexBindingDivisorCount uint32
+ PVertexBindingDivisors []VertexInputBindingDivisorDescription
+ ref86096bfd *C.VkPipelineVertexInputDivisorStateCreateInfoEXT
+ allocs86096bfd interface{}
}
-// PhysicalDeviceASTCDecodeFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceASTCDecodeFeaturesEXT.html
-type PhysicalDeviceASTCDecodeFeatures struct {
- SType StructureType
- PNext unsafe.Pointer
- DecodeModeSharedExponent Bool32
- refd8af7d5a *C.VkPhysicalDeviceASTCDecodeFeaturesEXT
- allocsd8af7d5a interface{}
+// PhysicalDeviceVertexAttributeDivisorFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT.html
+type PhysicalDeviceVertexAttributeDivisorFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ VertexAttributeInstanceRateDivisor Bool32
+ VertexAttributeInstanceRateZeroDivisor Bool32
+ refffe7619a *C.VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT
+ allocsffe7619a interface{}
}
-// ConditionalRenderingFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkConditionalRenderingFlagsEXT.html
-type ConditionalRenderingFlags uint32
+// PhysicalDeviceComputeShaderDerivativesFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceComputeShaderDerivativesFeaturesNV.html
+type PhysicalDeviceComputeShaderDerivativesFeaturesNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ComputeDerivativeGroupQuads Bool32
+ ComputeDerivativeGroupLinear Bool32
+ reff31d599c *C.VkPhysicalDeviceComputeShaderDerivativesFeaturesNV
+ allocsf31d599c interface{}
+}
-// ConditionalRenderingBeginInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkConditionalRenderingBeginInfoEXT.html
-type ConditionalRenderingBeginInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Buffer Buffer
- Offset DeviceSize
- Flags ConditionalRenderingFlags
- ref82da87c9 *C.VkConditionalRenderingBeginInfoEXT
- allocs82da87c9 interface{}
+// PhysicalDeviceMeshShaderFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceMeshShaderFeaturesNV.html
+type PhysicalDeviceMeshShaderFeaturesNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ TaskShader Bool32
+ MeshShader Bool32
+ ref802b98a *C.VkPhysicalDeviceMeshShaderFeaturesNV
+ allocs802b98a interface{}
}
-// PhysicalDeviceConditionalRenderingFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceConditionalRenderingFeaturesEXT.html
-type PhysicalDeviceConditionalRenderingFeatures struct {
- SType StructureType
- PNext unsafe.Pointer
- ConditionalRendering Bool32
- InheritedConditionalRendering Bool32
- ref89d2a224 *C.VkPhysicalDeviceConditionalRenderingFeaturesEXT
- allocs89d2a224 interface{}
+// PhysicalDeviceMeshShaderPropertiesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceMeshShaderPropertiesNV.html
+type PhysicalDeviceMeshShaderPropertiesNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ MaxDrawMeshTasksCount uint32
+ MaxTaskWorkGroupInvocations uint32
+ MaxTaskWorkGroupSize [3]uint32
+ MaxTaskTotalMemorySize uint32
+ MaxTaskOutputCount uint32
+ MaxMeshWorkGroupInvocations uint32
+ MaxMeshWorkGroupSize [3]uint32
+ MaxMeshTotalMemorySize uint32
+ MaxMeshOutputVertices uint32
+ MaxMeshOutputPrimitives uint32
+ MaxMeshMultiviewViewCount uint32
+ MeshOutputPerVertexGranularity uint32
+ MeshOutputPerPrimitiveGranularity uint32
+ ref2ee3ccb7 *C.VkPhysicalDeviceMeshShaderPropertiesNV
+ allocs2ee3ccb7 interface{}
}
-// CommandBufferInheritanceConditionalRenderingInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandBufferInheritanceConditionalRenderingInfoEXT.html
-type CommandBufferInheritanceConditionalRenderingInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- ConditionalRenderingEnable Bool32
- ref7155f49c *C.VkCommandBufferInheritanceConditionalRenderingInfoEXT
- allocs7155f49c interface{}
+// DrawMeshTasksIndirectCommandNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDrawMeshTasksIndirectCommandNV.html
+type DrawMeshTasksIndirectCommandNV struct {
+ TaskCount uint32
+ FirstTask uint32
+ refda6c46ea *C.VkDrawMeshTasksIndirectCommandNV
+ allocsda6c46ea interface{}
}
-// ObjectTableNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkObjectTableNVX
-type ObjectTableNVX C.VkObjectTableNVX
-
-// IndirectCommandsLayoutNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkIndirectCommandsLayoutNVX
-type IndirectCommandsLayoutNVX C.VkIndirectCommandsLayoutNVX
-
-// IndirectCommandsLayoutUsageFlagsNVX type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkIndirectCommandsLayoutUsageFlagsNVX
-type IndirectCommandsLayoutUsageFlagsNVX uint32
+// PhysicalDeviceFragmentShaderBarycentricFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV.html
+type PhysicalDeviceFragmentShaderBarycentricFeaturesNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ FragmentShaderBarycentric Bool32
+ reff7f35e73 *C.VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR
+ allocsf7f35e73 interface{}
+}
-// ObjectEntryUsageFlagsNVX type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkObjectEntryUsageFlagsNVX
-type ObjectEntryUsageFlagsNVX uint32
+// PhysicalDeviceShaderImageFootprintFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceShaderImageFootprintFeaturesNV.html
+type PhysicalDeviceShaderImageFootprintFeaturesNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ImageFootprint Bool32
+ ref9d61e1b2 *C.VkPhysicalDeviceShaderImageFootprintFeaturesNV
+ allocs9d61e1b2 interface{}
+}
-// DeviceGeneratedCommandsFeaturesNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkDeviceGeneratedCommandsFeaturesNVX
-type DeviceGeneratedCommandsFeaturesNVX struct {
- SType StructureType
- PNext unsafe.Pointer
- ComputeBindingPointSupport Bool32
- ref489899be *C.VkDeviceGeneratedCommandsFeaturesNVX
- allocs489899be interface{}
+// PipelineViewportExclusiveScissorStateCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineViewportExclusiveScissorStateCreateInfoNV.html
+type PipelineViewportExclusiveScissorStateCreateInfoNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ExclusiveScissorCount uint32
+ PExclusiveScissors []Rect2D
+ refa8715ba6 *C.VkPipelineViewportExclusiveScissorStateCreateInfoNV
+ allocsa8715ba6 interface{}
}
-// DeviceGeneratedCommandsLimitsNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkDeviceGeneratedCommandsLimitsNVX
-type DeviceGeneratedCommandsLimitsNVX struct {
- SType StructureType
- PNext unsafe.Pointer
- MaxIndirectCommandsLayoutTokenCount uint32
- MaxObjectEntryCounts uint32
- MinSequenceCountBufferOffsetAlignment uint32
- MinSequenceIndexBufferOffsetAlignment uint32
- MinCommandsTokenBufferOffsetAlignment uint32
- refb2b76f40 *C.VkDeviceGeneratedCommandsLimitsNVX
- allocsb2b76f40 interface{}
-}
-
-// IndirectCommandsTokenNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkIndirectCommandsTokenNVX
-type IndirectCommandsTokenNVX struct {
- TokenType IndirectCommandsTokenTypeNVX
- Buffer Buffer
- Offset DeviceSize
- ref8a2daca5 *C.VkIndirectCommandsTokenNVX
- allocs8a2daca5 interface{}
+// PhysicalDeviceExclusiveScissorFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceExclusiveScissorFeaturesNV.html
+type PhysicalDeviceExclusiveScissorFeaturesNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ExclusiveScissor Bool32
+ ref52c9fcfc *C.VkPhysicalDeviceExclusiveScissorFeaturesNV
+ allocs52c9fcfc interface{}
}
-// IndirectCommandsLayoutTokenNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkIndirectCommandsLayoutTokenNVX
-type IndirectCommandsLayoutTokenNVX struct {
- TokenType IndirectCommandsTokenTypeNVX
- BindingUnit uint32
- DynamicCount uint32
- Divisor uint32
- refe421769 *C.VkIndirectCommandsLayoutTokenNVX
- allocse421769 interface{}
+// QueueFamilyCheckpointPropertiesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueueFamilyCheckpointPropertiesNV.html
+type QueueFamilyCheckpointPropertiesNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ CheckpointExecutionStageMask PipelineStageFlags
+ ref351f58c6 *C.VkQueueFamilyCheckpointPropertiesNV
+ allocs351f58c6 interface{}
}
-// IndirectCommandsLayoutCreateInfoNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkIndirectCommandsLayoutCreateInfoNVX
-type IndirectCommandsLayoutCreateInfoNVX struct {
+// CheckpointDataNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCheckpointDataNV.html
+type CheckpointDataNV struct {
SType StructureType
PNext unsafe.Pointer
- PipelineBindPoint PipelineBindPoint
- Flags IndirectCommandsLayoutUsageFlagsNVX
- TokenCount uint32
- PTokens []IndirectCommandsLayoutTokenNVX
- ref2a2866d5 *C.VkIndirectCommandsLayoutCreateInfoNVX
- allocs2a2866d5 interface{}
+ Stage PipelineStageFlagBits
+ PCheckpointMarker unsafe.Pointer
+ refd1c9224b *C.VkCheckpointDataNV
+ allocsd1c9224b interface{}
}
-// CmdProcessCommandsInfoNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkCmdProcessCommandsInfoNVX
-type CmdProcessCommandsInfoNVX struct {
- SType StructureType
- PNext unsafe.Pointer
- ObjectTable ObjectTableNVX
- IndirectCommandsLayout IndirectCommandsLayoutNVX
- IndirectCommandsTokenCount uint32
- PIndirectCommandsTokens []IndirectCommandsTokenNVX
- MaxSequencesCount uint32
- TargetCommandBuffer CommandBuffer
- SequencesCountBuffer Buffer
- SequencesCountOffset DeviceSize
- SequencesIndexBuffer Buffer
- SequencesIndexOffset DeviceSize
- refcd94895d *C.VkCmdProcessCommandsInfoNVX
- allocscd94895d interface{}
-}
-
-// CmdReserveSpaceForCommandsInfoNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkCmdReserveSpaceForCommandsInfoNVX
-type CmdReserveSpaceForCommandsInfoNVX struct {
- SType StructureType
- PNext unsafe.Pointer
- ObjectTable ObjectTableNVX
- IndirectCommandsLayout IndirectCommandsLayoutNVX
- MaxSequencesCount uint32
- ref900bfee5 *C.VkCmdReserveSpaceForCommandsInfoNVX
- allocs900bfee5 interface{}
+// PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL.html
+type PhysicalDeviceShaderIntegerFunctions2FeaturesINTEL struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ShaderIntegerFunctions2 Bool32
+ refff2cd6c *C.VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL
+ allocsff2cd6c interface{}
}
-// ObjectTableCreateInfoNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkObjectTableCreateInfoNVX
-type ObjectTableCreateInfoNVX struct {
- SType StructureType
- PNext unsafe.Pointer
- ObjectCount uint32
- PObjectEntryTypes []ObjectEntryTypeNVX
- PObjectEntryCounts []uint32
- PObjectEntryUsageFlags []ObjectEntryUsageFlagsNVX
- MaxUniformBuffersPerDescriptor uint32
- MaxStorageBuffersPerDescriptor uint32
- MaxStorageImagesPerDescriptor uint32
- MaxSampledImagesPerDescriptor uint32
- MaxPipelineLayouts uint32
- refb4a6c9e1 *C.VkObjectTableCreateInfoNVX
- allocsb4a6c9e1 interface{}
-}
-
-// ObjectTableEntryNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkObjectTableEntryNVX
-type ObjectTableEntryNVX struct {
- Type ObjectEntryTypeNVX
- Flags ObjectEntryUsageFlagsNVX
- refb8f7ffef *C.VkObjectTableEntryNVX
- allocsb8f7ffef interface{}
-}
-
-// ObjectTablePipelineEntryNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkObjectTablePipelineEntryNVX
-type ObjectTablePipelineEntryNVX struct {
- Type ObjectEntryTypeNVX
- Flags ObjectEntryUsageFlagsNVX
- Pipeline Pipeline
- ref8112859b *C.VkObjectTablePipelineEntryNVX
- allocs8112859b interface{}
-}
+// PerformanceConfigurationINTEL as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPerformanceConfigurationINTEL.html
+type PerformanceConfigurationINTEL C.VkPerformanceConfigurationINTEL
-// ObjectTableDescriptorSetEntryNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkObjectTableDescriptorSetEntryNVX
-type ObjectTableDescriptorSetEntryNVX struct {
- Type ObjectEntryTypeNVX
- Flags ObjectEntryUsageFlagsNVX
- PipelineLayout PipelineLayout
- DescriptorSet DescriptorSet
- ref6fc0d42f *C.VkObjectTableDescriptorSetEntryNVX
- allocs6fc0d42f interface{}
-}
+// PerformanceValueDataINTEL as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPerformanceValueDataINTEL.html
+const sizeofPerformanceValueDataINTEL = unsafe.Sizeof(C.VkPerformanceValueDataINTEL{})
-// ObjectTableVertexBufferEntryNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkObjectTableVertexBufferEntryNVX
-type ObjectTableVertexBufferEntryNVX struct {
- Type ObjectEntryTypeNVX
- Flags ObjectEntryUsageFlagsNVX
- Buffer Buffer
- refe8a5908b *C.VkObjectTableVertexBufferEntryNVX
- allocse8a5908b interface{}
-}
+type PerformanceValueDataINTEL [sizeofPerformanceValueDataINTEL]byte
-// ObjectTableIndexBufferEntryNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkObjectTableIndexBufferEntryNVX
-type ObjectTableIndexBufferEntryNVX struct {
- Type ObjectEntryTypeNVX
- Flags ObjectEntryUsageFlagsNVX
- Buffer Buffer
- IndexType IndexType
- ref58a08650 *C.VkObjectTableIndexBufferEntryNVX
- allocs58a08650 interface{}
+// PerformanceValueINTEL as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPerformanceValueINTEL.html
+type PerformanceValueINTEL struct {
+ Type PerformanceValueTypeINTEL
+ Data PerformanceValueDataINTEL
+ refe6a134ae *C.VkPerformanceValueINTEL
+ allocse6a134ae interface{}
}
-// ObjectTablePushConstantEntryNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkObjectTablePushConstantEntryNVX
-type ObjectTablePushConstantEntryNVX struct {
- Type ObjectEntryTypeNVX
- Flags ObjectEntryUsageFlagsNVX
- PipelineLayout PipelineLayout
- StageFlags ShaderStageFlags
- ref8c8421e0 *C.VkObjectTablePushConstantEntryNVX
- allocs8c8421e0 interface{}
+// InitializePerformanceApiInfoINTEL as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkInitializePerformanceApiInfoINTEL.html
+type InitializePerformanceApiInfoINTEL struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PUserData unsafe.Pointer
+ refb72b1cf3 *C.VkInitializePerformanceApiInfoINTEL
+ allocsb72b1cf3 interface{}
}
-// ViewportWScalingNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkViewportWScalingNV.html
-type ViewportWScalingNV struct {
- Xcoeff float32
- Ycoeff float32
- ref7ea4590f *C.VkViewportWScalingNV
- allocs7ea4590f interface{}
+// QueryPoolPerformanceQueryCreateInfoINTEL as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueryPoolPerformanceQueryCreateInfoINTEL.html
+type QueryPoolPerformanceQueryCreateInfoINTEL struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PerformanceCountersSampling QueryPoolSamplingModeINTEL
+ refb8883992 *C.VkQueryPoolPerformanceQueryCreateInfoINTEL
+ allocsb8883992 interface{}
}
-// PipelineViewportWScalingStateCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineViewportWScalingStateCreateInfoNV.html
-type PipelineViewportWScalingStateCreateInfoNV struct {
- SType StructureType
- PNext unsafe.Pointer
- ViewportWScalingEnable Bool32
- ViewportCount uint32
- PViewportWScalings []ViewportWScalingNV
- ref3e532c0b *C.VkPipelineViewportWScalingStateCreateInfoNV
- allocs3e532c0b interface{}
+// QueryPoolCreateInfoINTEL as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueryPoolCreateInfoINTEL.html
+type QueryPoolCreateInfoINTEL struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PerformanceCountersSampling QueryPoolSamplingModeINTEL
+ refb8883992 *C.VkQueryPoolPerformanceQueryCreateInfoINTEL
+ allocsb8883992 interface{}
}
-// SurfaceCounterFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSurfaceCounterFlagsEXT.html
-type SurfaceCounterFlags uint32
-
-// DisplayPowerInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDisplayPowerInfoEXT.html
-type DisplayPowerInfo struct {
+// PerformanceMarkerInfoINTEL as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPerformanceMarkerInfoINTEL.html
+type PerformanceMarkerInfoINTEL struct {
SType StructureType
PNext unsafe.Pointer
- PowerState DisplayPowerState
- ref80fed52f *C.VkDisplayPowerInfoEXT
- allocs80fed52f interface{}
+ Marker uint64
+ refbf575d93 *C.VkPerformanceMarkerInfoINTEL
+ allocsbf575d93 interface{}
}
-// DeviceEventInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceEventInfoEXT.html
-type DeviceEventInfo struct {
+// PerformanceStreamMarkerInfoINTEL as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPerformanceStreamMarkerInfoINTEL.html
+type PerformanceStreamMarkerInfoINTEL struct {
SType StructureType
PNext unsafe.Pointer
- DeviceEvent DeviceEventType
- ref394b3fcb *C.VkDeviceEventInfoEXT
- allocs394b3fcb interface{}
+ Marker uint32
+ refaaf8355c *C.VkPerformanceStreamMarkerInfoINTEL
+ allocsaaf8355c interface{}
}
-// DisplayEventInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDisplayEventInfoEXT.html
-type DisplayEventInfo struct {
+// PerformanceOverrideInfoINTEL as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPerformanceOverrideInfoINTEL.html
+type PerformanceOverrideInfoINTEL struct {
SType StructureType
PNext unsafe.Pointer
- DisplayEvent DisplayEventType
- refa69f7302 *C.VkDisplayEventInfoEXT
- allocsa69f7302 interface{}
-}
-
-// SwapchainCounterCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSwapchainCounterCreateInfoEXT.html
-type SwapchainCounterCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- SurfaceCounters SurfaceCounterFlags
- ref9f21eca6 *C.VkSwapchainCounterCreateInfoEXT
- allocs9f21eca6 interface{}
-}
-
-// RefreshCycleDurationGOOGLE as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRefreshCycleDurationGOOGLE.html
-type RefreshCycleDurationGOOGLE struct {
- RefreshDuration uint64
- ref969cb55b *C.VkRefreshCycleDurationGOOGLE
- allocs969cb55b interface{}
-}
-
-// PastPresentationTimingGOOGLE as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPastPresentationTimingGOOGLE.html
-type PastPresentationTimingGOOGLE struct {
- PresentID uint32
- DesiredPresentTime uint64
- ActualPresentTime uint64
- EarliestPresentTime uint64
- PresentMargin uint64
- refac8cf1d8 *C.VkPastPresentationTimingGOOGLE
- allocsac8cf1d8 interface{}
-}
-
-// PresentTimeGOOGLE as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPresentTimeGOOGLE.html
-type PresentTimeGOOGLE struct {
- PresentID uint32
- DesiredPresentTime uint64
- ref9cd90ade *C.VkPresentTimeGOOGLE
- allocs9cd90ade interface{}
+ Type PerformanceOverrideTypeINTEL
+ Enable Bool32
+ Parameter uint64
+ ref1cdbce31 *C.VkPerformanceOverrideInfoINTEL
+ allocs1cdbce31 interface{}
}
-// PresentTimesInfoGOOGLE as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPresentTimesInfoGOOGLE.html
-type PresentTimesInfoGOOGLE struct {
+// PerformanceConfigurationAcquireInfoINTEL as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPerformanceConfigurationAcquireInfoINTEL.html
+type PerformanceConfigurationAcquireInfoINTEL struct {
SType StructureType
PNext unsafe.Pointer
- SwapchainCount uint32
- PTimes []PresentTimeGOOGLE
- ref70eb8ab3 *C.VkPresentTimesInfoGOOGLE
- allocs70eb8ab3 interface{}
-}
-
-// PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX
-type PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX struct {
- SType StructureType
- PNext unsafe.Pointer
- PerViewPositionAllComponents Bool32
- refbaf399ad *C.VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX
- allocsbaf399ad interface{}
-}
-
-// PipelineViewportSwizzleStateCreateFlagsNV type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineViewportSwizzleStateCreateFlagsNV.html
-type PipelineViewportSwizzleStateCreateFlagsNV uint32
-
-// ViewportSwizzleNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkViewportSwizzleNV.html
-type ViewportSwizzleNV struct {
- X ViewportCoordinateSwizzleNV
- Y ViewportCoordinateSwizzleNV
- Z ViewportCoordinateSwizzleNV
- W ViewportCoordinateSwizzleNV
- ref74ff2887 *C.VkViewportSwizzleNV
- allocs74ff2887 interface{}
+ Type PerformanceConfigurationTypeINTEL
+ ref16c1d105 *C.VkPerformanceConfigurationAcquireInfoINTEL
+ allocs16c1d105 interface{}
}
-// PipelineViewportSwizzleStateCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineViewportSwizzleStateCreateInfoNV.html
-type PipelineViewportSwizzleStateCreateInfoNV struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags PipelineViewportSwizzleStateCreateFlagsNV
- ViewportCount uint32
- PViewportSwizzles []ViewportSwizzleNV
- ref5e90f24 *C.VkPipelineViewportSwizzleStateCreateInfoNV
- allocs5e90f24 interface{}
+// PhysicalDevicePCIBusInfoProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDevicePCIBusInfoPropertiesEXT.html
+type PhysicalDevicePCIBusInfoProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PciDomain uint32
+ PciBus uint32
+ PciDevice uint32
+ PciFunction uint32
+ refdd9947ff *C.VkPhysicalDevicePCIBusInfoPropertiesEXT
+ allocsdd9947ff interface{}
}
-// PipelineDiscardRectangleStateCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineDiscardRectangleStateCreateFlagsEXT.html
-type PipelineDiscardRectangleStateCreateFlags uint32
-
-// PhysicalDeviceDiscardRectangleProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceDiscardRectanglePropertiesEXT.html
-type PhysicalDeviceDiscardRectangleProperties struct {
- SType StructureType
- PNext unsafe.Pointer
- MaxDiscardRectangles uint32
- reffe8591da *C.VkPhysicalDeviceDiscardRectanglePropertiesEXT
- allocsfe8591da interface{}
+// DisplayNativeHdrSurfaceCapabilitiesAMD as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkDisplayNativeHdrSurfaceCapabilitiesAMD
+type DisplayNativeHdrSurfaceCapabilitiesAMD struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ LocalDimmingSupport Bool32
+ ref2521293a *C.VkDisplayNativeHdrSurfaceCapabilitiesAMD
+ allocs2521293a interface{}
}
-// PipelineDiscardRectangleStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineDiscardRectangleStateCreateInfoEXT.html
-type PipelineDiscardRectangleStateCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags PipelineDiscardRectangleStateCreateFlags
- DiscardRectangleMode DiscardRectangleMode
- DiscardRectangleCount uint32
- PDiscardRectangles []Rect2D
- refcdbb125e *C.VkPipelineDiscardRectangleStateCreateInfoEXT
- allocscdbb125e interface{}
+// SwapchainDisplayNativeHdrCreateInfoAMD as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkSwapchainDisplayNativeHdrCreateInfoAMD
+type SwapchainDisplayNativeHdrCreateInfoAMD struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ LocalDimmingEnable Bool32
+ refffbe2634 *C.VkSwapchainDisplayNativeHdrCreateInfoAMD
+ allocsffbe2634 interface{}
}
-// PipelineRasterizationConservativeStateCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRasterizationConservativeStateCreateFlagsEXT.html
-type PipelineRasterizationConservativeStateCreateFlags uint32
-
-// PhysicalDeviceConservativeRasterizationProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceConservativeRasterizationPropertiesEXT.html
-type PhysicalDeviceConservativeRasterizationProperties struct {
- SType StructureType
- PNext unsafe.Pointer
- PrimitiveOverestimationSize float32
- MaxExtraPrimitiveOverestimationSize float32
- ExtraPrimitiveOverestimationSizeGranularity float32
- PrimitiveUnderestimation Bool32
- ConservativePointAndLineRasterization Bool32
- DegenerateTrianglesRasterized Bool32
- DegenerateLinesRasterized Bool32
- FullyCoveredFragmentShaderInputVariable Bool32
- ConservativeRasterizationPostDepthCoverage Bool32
- ref878f819c *C.VkPhysicalDeviceConservativeRasterizationPropertiesEXT
- allocs878f819c interface{}
+// PhysicalDeviceFragmentDensityMapFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceFragmentDensityMapFeaturesEXT.html
+type PhysicalDeviceFragmentDensityMapFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ FragmentDensityMap Bool32
+ FragmentDensityMapDynamic Bool32
+ FragmentDensityMapNonSubsampledImages Bool32
+ reffa0bb2d9 *C.VkPhysicalDeviceFragmentDensityMapFeaturesEXT
+ allocsfa0bb2d9 interface{}
}
-// PipelineRasterizationConservativeStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRasterizationConservativeStateCreateInfoEXT.html
-type PipelineRasterizationConservativeStateCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags PipelineRasterizationConservativeStateCreateFlags
- ConservativeRasterizationMode ConservativeRasterizationMode
- ExtraPrimitiveOverestimationSize float32
- refe3cd0046 *C.VkPipelineRasterizationConservativeStateCreateInfoEXT
- allocse3cd0046 interface{}
+// PhysicalDeviceFragmentDensityMapProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceFragmentDensityMapPropertiesEXT.html
+type PhysicalDeviceFragmentDensityMapProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ MinFragmentDensityTexelSize Extent2D
+ MaxFragmentDensityTexelSize Extent2D
+ FragmentDensityInvocations Bool32
+ ref79e5ca31 *C.VkPhysicalDeviceFragmentDensityMapPropertiesEXT
+ allocs79e5ca31 interface{}
}
-// XYColor as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkXYColorEXT.html
-type XYColor struct {
- X float32
- Y float32
- refb8efaa5c *C.VkXYColorEXT
- allocsb8efaa5c interface{}
+// RenderPassFragmentDensityMapCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderPassFragmentDensityMapCreateInfoEXT.html
+type RenderPassFragmentDensityMapCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ FragmentDensityMapAttachment AttachmentReference
+ ref76b25671 *C.VkRenderPassFragmentDensityMapCreateInfoEXT
+ allocs76b25671 interface{}
}
-// HdrMetadata as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkHdrMetadataEXT.html
-type HdrMetadata struct {
- SType StructureType
- PNext unsafe.Pointer
- DisplayPrimaryRed XYColor
- DisplayPrimaryGreen XYColor
- DisplayPrimaryBlue XYColor
- WhitePoint XYColor
- MaxLuminance float32
- MinLuminance float32
- MaxContentLightLevel float32
- MaxFrameAverageLightLevel float32
- ref5fd28976 *C.VkHdrMetadataEXT
- allocs5fd28976 interface{}
-}
+// ShaderCorePropertiesFlagsAMD type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkShaderCorePropertiesFlagsAMD
+type ShaderCorePropertiesFlagsAMD uint32
-// DebugUtilsMessageSeverityFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugUtilsMessageSeverityFlagsEXT.html
-type DebugUtilsMessageSeverityFlags uint32
+// PhysicalDeviceShaderCoreProperties2AMD as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkPhysicalDeviceShaderCoreProperties2AMD
+type PhysicalDeviceShaderCoreProperties2AMD struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ShaderCoreFeatures ShaderCorePropertiesFlagsAMD
+ ActiveComputeUnitCount uint32
+ ref7be3d4c4 *C.VkPhysicalDeviceShaderCoreProperties2AMD
+ allocs7be3d4c4 interface{}
+}
-// DebugUtilsMessageTypeFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugUtilsMessageTypeFlagsEXT.html
-type DebugUtilsMessageTypeFlags uint32
+// PhysicalDeviceCoherentMemoryFeaturesAMD as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkPhysicalDeviceCoherentMemoryFeaturesAMD
+type PhysicalDeviceCoherentMemoryFeaturesAMD struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DeviceCoherentMemory Bool32
+ ref34cb87b4 *C.VkPhysicalDeviceCoherentMemoryFeaturesAMD
+ allocs34cb87b4 interface{}
+}
-// DebugUtilsObjectNameInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugUtilsObjectNameInfoEXT.html
-type DebugUtilsObjectNameInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- ObjectType ObjectType
- ObjectHandle uint64
- PObjectName string
- ref5e73c2db *C.VkDebugUtilsObjectNameInfoEXT
- allocs5e73c2db interface{}
+// PhysicalDeviceShaderImageAtomicInt64Features as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT.html
+type PhysicalDeviceShaderImageAtomicInt64Features struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ShaderImageInt64Atomics Bool32
+ SparseImageInt64Atomics Bool32
+ ref1b0fbd *C.VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT
+ allocs1b0fbd interface{}
}
-// DebugUtilsObjectTagInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugUtilsObjectTagInfoEXT.html
-type DebugUtilsObjectTagInfo struct {
+// PhysicalDeviceMemoryBudgetProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceMemoryBudgetPropertiesEXT.html
+type PhysicalDeviceMemoryBudgetProperties struct {
SType StructureType
PNext unsafe.Pointer
- ObjectType ObjectType
- ObjectHandle uint64
- TagName uint64
- TagSize uint
- PTag unsafe.Pointer
- ref9fd129cf *C.VkDebugUtilsObjectTagInfoEXT
- allocs9fd129cf interface{}
+ HeapBudget [16]DeviceSize
+ HeapUsage [16]DeviceSize
+ refa7406c48 *C.VkPhysicalDeviceMemoryBudgetPropertiesEXT
+ allocsa7406c48 interface{}
}
-// DebugUtilsLabel as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugUtilsLabelEXT.html
-type DebugUtilsLabel struct {
+// PhysicalDeviceMemoryPriorityFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceMemoryPriorityFeaturesEXT.html
+type PhysicalDeviceMemoryPriorityFeatures struct {
SType StructureType
PNext unsafe.Pointer
- PLabelName string
- Color [4]float32
- ref8faaf7b1 *C.VkDebugUtilsLabelEXT
- allocs8faaf7b1 interface{}
+ MemoryPriority Bool32
+ ref24f8641c *C.VkPhysicalDeviceMemoryPriorityFeaturesEXT
+ allocs24f8641c interface{}
}
-// SamplerReductionModeCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerReductionModeCreateInfoEXT.html
-type SamplerReductionModeCreateInfo struct {
+// MemoryPriorityAllocateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryPriorityAllocateInfoEXT.html
+type MemoryPriorityAllocateInfo struct {
SType StructureType
PNext unsafe.Pointer
- ReductionMode SamplerReductionMode
- reff1cfd4e3 *C.VkSamplerReductionModeCreateInfoEXT
- allocsf1cfd4e3 interface{}
-}
-
-// PhysicalDeviceSamplerFilterMinmaxProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT.html
-type PhysicalDeviceSamplerFilterMinmaxProperties struct {
- SType StructureType
- PNext unsafe.Pointer
- FilterMinmaxSingleComponentFormats Bool32
- FilterMinmaxImageComponentMapping Bool32
- refcc32d100 *C.VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT
- allocscc32d100 interface{}
+ Priority float32
+ refd3540846 *C.VkMemoryPriorityAllocateInfoEXT
+ allocsd3540846 interface{}
}
-// PhysicalDeviceInlineUniformBlockFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceInlineUniformBlockFeaturesEXT.html
-type PhysicalDeviceInlineUniformBlockFeatures struct {
- SType StructureType
- PNext unsafe.Pointer
- InlineUniformBlock Bool32
- DescriptorBindingInlineUniformBlockUpdateAfterBind Bool32
- ref5054bc6c *C.VkPhysicalDeviceInlineUniformBlockFeaturesEXT
- allocs5054bc6c interface{}
+// PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV.html
+type PhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DedicatedAllocationImageAliasing Bool32
+ refade17227 *C.VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV
+ allocsade17227 interface{}
}
-// PhysicalDeviceInlineUniformBlockProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceInlineUniformBlockPropertiesEXT.html
-type PhysicalDeviceInlineUniformBlockProperties struct {
- SType StructureType
- PNext unsafe.Pointer
- MaxInlineUniformBlockSize uint32
- MaxPerStageDescriptorInlineUniformBlocks uint32
- MaxPerStageDescriptorUpdateAfterBindInlineUniformBlocks uint32
- MaxDescriptorSetInlineUniformBlocks uint32
- MaxDescriptorSetUpdateAfterBindInlineUniformBlocks uint32
- ref7ef1794 *C.VkPhysicalDeviceInlineUniformBlockPropertiesEXT
- allocs7ef1794 interface{}
+// PhysicalDeviceBufferAddressFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceBufferAddressFeaturesEXT.html
+type PhysicalDeviceBufferAddressFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ BufferDeviceAddress Bool32
+ BufferDeviceAddressCaptureReplay Bool32
+ BufferDeviceAddressMultiDevice Bool32
+ refe3bd03a5 *C.VkPhysicalDeviceBufferDeviceAddressFeaturesEXT
+ allocse3bd03a5 interface{}
}
-// WriteDescriptorSetInlineUniformBlock as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkWriteDescriptorSetInlineUniformBlockEXT.html
-type WriteDescriptorSetInlineUniformBlock struct {
+// BufferDeviceAddressCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferDeviceAddressCreateInfoEXT.html
+type BufferDeviceAddressCreateInfo struct {
SType StructureType
PNext unsafe.Pointer
- DataSize uint32
- PData unsafe.Pointer
- ref18d00656 *C.VkWriteDescriptorSetInlineUniformBlockEXT
- allocs18d00656 interface{}
+ DeviceAddress DeviceAddress
+ ref4c6937a9 *C.VkBufferDeviceAddressCreateInfoEXT
+ allocs4c6937a9 interface{}
}
-// DescriptorPoolInlineUniformBlockCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorPoolInlineUniformBlockCreateInfoEXT.html
-type DescriptorPoolInlineUniformBlockCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- MaxInlineUniformBlockBindings uint32
- refbc7edaa3 *C.VkDescriptorPoolInlineUniformBlockCreateInfoEXT
- allocsbc7edaa3 interface{}
+// ValidationFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkValidationFeaturesEXT.html
+type ValidationFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ EnabledValidationFeatureCount uint32
+ PEnabledValidationFeatures []ValidationFeatureEnable
+ DisabledValidationFeatureCount uint32
+ PDisabledValidationFeatures []ValidationFeatureDisable
+ refcd8794ea *C.VkValidationFeaturesEXT
+ allocscd8794ea interface{}
}
-// SampleLocation as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSampleLocationEXT.html
-type SampleLocation struct {
- X float32
- Y float32
- refe7a2e761 *C.VkSampleLocationEXT
- allocse7a2e761 interface{}
+// CooperativeMatrixPropertiesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCooperativeMatrixPropertiesNV.html
+type CooperativeMatrixPropertiesNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ MSize uint32
+ NSize uint32
+ KSize uint32
+ AType ComponentTypeNV
+ BType ComponentTypeNV
+ CType ComponentTypeNV
+ DType ComponentTypeNV
+ Scope ScopeNV
+ ref4302be60 *C.VkCooperativeMatrixPropertiesNV
+ allocs4302be60 interface{}
+}
+
+// PhysicalDeviceCooperativeMatrixFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceCooperativeMatrixFeaturesNV.html
+type PhysicalDeviceCooperativeMatrixFeaturesNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ CooperativeMatrix Bool32
+ CooperativeMatrixRobustBufferAccess Bool32
+ refff45ea3f *C.VkPhysicalDeviceCooperativeMatrixFeaturesNV
+ allocsff45ea3f interface{}
}
-// SampleLocationsInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSampleLocationsInfoEXT.html
-type SampleLocationsInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- SampleLocationsPerPixel SampleCountFlagBits
- SampleLocationGridSize Extent2D
- SampleLocationsCount uint32
- PSampleLocations []SampleLocation
- refd8f3bd2d *C.VkSampleLocationsInfoEXT
- allocsd8f3bd2d interface{}
+// PhysicalDeviceCooperativeMatrixPropertiesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceCooperativeMatrixPropertiesNV.html
+type PhysicalDeviceCooperativeMatrixPropertiesNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ CooperativeMatrixSupportedStages ShaderStageFlags
+ ref45336143 *C.VkPhysicalDeviceCooperativeMatrixPropertiesNV
+ allocs45336143 interface{}
}
-// AttachmentSampleLocations as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAttachmentSampleLocationsEXT.html
-type AttachmentSampleLocations struct {
- AttachmentIndex uint32
- SampleLocationsInfo SampleLocationsInfo
- ref6a3dd41e *C.VkAttachmentSampleLocationsEXT
- allocs6a3dd41e interface{}
-}
+// PipelineCoverageReductionStateCreateFlagsNV type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCoverageReductionStateCreateFlagsNV.html
+type PipelineCoverageReductionStateCreateFlagsNV uint32
-// SubpassSampleLocations as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubpassSampleLocationsEXT.html
-type SubpassSampleLocations struct {
- SubpassIndex uint32
- SampleLocationsInfo SampleLocationsInfo
- ref1f612812 *C.VkSubpassSampleLocationsEXT
- allocs1f612812 interface{}
+// PhysicalDeviceCoverageReductionModeFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceCoverageReductionModeFeaturesNV.html
+type PhysicalDeviceCoverageReductionModeFeaturesNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ CoverageReductionMode Bool32
+ ref1066c79 *C.VkPhysicalDeviceCoverageReductionModeFeaturesNV
+ allocs1066c79 interface{}
}
-// RenderPassSampleLocationsBeginInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderPassSampleLocationsBeginInfoEXT.html
-type RenderPassSampleLocationsBeginInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- AttachmentInitialSampleLocationsCount uint32
- PAttachmentInitialSampleLocations []AttachmentSampleLocations
- PostSubpassSampleLocationsCount uint32
- PPostSubpassSampleLocations []SubpassSampleLocations
- refb61b51d4 *C.VkRenderPassSampleLocationsBeginInfoEXT
- allocsb61b51d4 interface{}
+// PipelineCoverageReductionStateCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCoverageReductionStateCreateInfoNV.html
+type PipelineCoverageReductionStateCreateInfoNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags PipelineCoverageReductionStateCreateFlagsNV
+ CoverageReductionMode CoverageReductionModeNV
+ ref39db618c *C.VkPipelineCoverageReductionStateCreateInfoNV
+ allocs39db618c interface{}
}
-// PipelineSampleLocationsStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineSampleLocationsStateCreateInfoEXT.html
-type PipelineSampleLocationsStateCreateInfo struct {
+// FramebufferMixedSamplesCombinationNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFramebufferMixedSamplesCombinationNV.html
+type FramebufferMixedSamplesCombinationNV struct {
SType StructureType
PNext unsafe.Pointer
- SampleLocationsEnable Bool32
- SampleLocationsInfo SampleLocationsInfo
- ref93a2968f *C.VkPipelineSampleLocationsStateCreateInfoEXT
- allocs93a2968f interface{}
+ CoverageReductionMode CoverageReductionModeNV
+ RasterizationSamples SampleCountFlagBits
+ DepthStencilSamples SampleCountFlags
+ ColorSamples SampleCountFlags
+ ref75affbab *C.VkFramebufferMixedSamplesCombinationNV
+ allocs75affbab interface{}
}
-// PhysicalDeviceSampleLocationsProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceSampleLocationsPropertiesEXT.html
-type PhysicalDeviceSampleLocationsProperties struct {
- SType StructureType
- PNext unsafe.Pointer
- SampleLocationSampleCounts SampleCountFlags
- MaxSampleLocationGridSize Extent2D
- SampleLocationCoordinateRange [2]float32
- SampleLocationSubPixelBits uint32
- VariableSampleLocations Bool32
- refaf801323 *C.VkPhysicalDeviceSampleLocationsPropertiesEXT
- allocsaf801323 interface{}
+// PhysicalDeviceFragmentShaderInterlockFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT.html
+type PhysicalDeviceFragmentShaderInterlockFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ FragmentShaderSampleInterlock Bool32
+ FragmentShaderPixelInterlock Bool32
+ FragmentShaderShadingRateInterlock Bool32
+ ref1ed4955d *C.VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT
+ allocs1ed4955d interface{}
}
-// MultisampleProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMultisamplePropertiesEXT.html
-type MultisampleProperties struct {
- SType StructureType
- PNext unsafe.Pointer
- MaxSampleLocationGridSize Extent2D
- ref3e47f337 *C.VkMultisamplePropertiesEXT
- allocs3e47f337 interface{}
+// PhysicalDeviceYcbcrImageArraysFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceYcbcrImageArraysFeaturesEXT.html
+type PhysicalDeviceYcbcrImageArraysFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ YcbcrImageArrays Bool32
+ ref3198007 *C.VkPhysicalDeviceYcbcrImageArraysFeaturesEXT
+ allocs3198007 interface{}
}
-// PhysicalDeviceBlendOperationAdvancedFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT.html
-type PhysicalDeviceBlendOperationAdvancedFeatures struct {
- SType StructureType
- PNext unsafe.Pointer
- AdvancedBlendCoherentOperations Bool32
- ref8514bc93 *C.VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT
- allocs8514bc93 interface{}
+// PhysicalDeviceProvokingVertexFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceProvokingVertexFeaturesEXT.html
+type PhysicalDeviceProvokingVertexFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ProvokingVertexLast Bool32
+ TransformFeedbackPreservesProvokingVertex Bool32
+ ref3e34d575 *C.VkPhysicalDeviceProvokingVertexFeaturesEXT
+ allocs3e34d575 interface{}
}
-// PhysicalDeviceBlendOperationAdvancedProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT.html
-type PhysicalDeviceBlendOperationAdvancedProperties struct {
- SType StructureType
- PNext unsafe.Pointer
- AdvancedBlendMaxColorAttachments uint32
- AdvancedBlendIndependentBlend Bool32
- AdvancedBlendNonPremultipliedSrcColor Bool32
- AdvancedBlendNonPremultipliedDstColor Bool32
- AdvancedBlendCorrelatedOverlap Bool32
- AdvancedBlendAllOperations Bool32
- ref94cb3fa6 *C.VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT
- allocs94cb3fa6 interface{}
+// PhysicalDeviceProvokingVertexProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceProvokingVertexPropertiesEXT.html
+type PhysicalDeviceProvokingVertexProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ProvokingVertexModePerPipeline Bool32
+ TransformFeedbackPreservesTriangleFanProvokingVertex Bool32
+ refa8810910 *C.VkPhysicalDeviceProvokingVertexPropertiesEXT
+ allocsa8810910 interface{}
}
-// PipelineColorBlendAdvancedStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineColorBlendAdvancedStateCreateInfoEXT.html
-type PipelineColorBlendAdvancedStateCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- SrcPremultiplied Bool32
- DstPremultiplied Bool32
- BlendOverlap BlendOverlap
- refcd374989 *C.VkPipelineColorBlendAdvancedStateCreateInfoEXT
- allocscd374989 interface{}
+// PipelineRasterizationProvokingVertexStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRasterizationProvokingVertexStateCreateInfoEXT.html
+type PipelineRasterizationProvokingVertexStateCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ProvokingVertexMode ProvokingVertexMode
+ ref367b4d68 *C.VkPipelineRasterizationProvokingVertexStateCreateInfoEXT
+ allocs367b4d68 interface{}
}
-// PipelineCoverageToColorStateCreateFlagsNV type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCoverageToColorStateCreateFlagsNV.html
-type PipelineCoverageToColorStateCreateFlagsNV uint32
+// HeadlessSurfaceCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkHeadlessSurfaceCreateFlagsEXT.html
+type HeadlessSurfaceCreateFlags uint32
-// PipelineCoverageToColorStateCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCoverageToColorStateCreateInfoNV.html
-type PipelineCoverageToColorStateCreateInfoNV struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags PipelineCoverageToColorStateCreateFlagsNV
- CoverageToColorEnable Bool32
- CoverageToColorLocation uint32
- refcc6b7b68 *C.VkPipelineCoverageToColorStateCreateInfoNV
- allocscc6b7b68 interface{}
+// HeadlessSurfaceCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkHeadlessSurfaceCreateInfoEXT.html
+type HeadlessSurfaceCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags HeadlessSurfaceCreateFlags
+ refed88b258 *C.VkHeadlessSurfaceCreateInfoEXT
+ allocsed88b258 interface{}
}
-// PipelineCoverageModulationStateCreateFlagsNV type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCoverageModulationStateCreateFlagsNV.html
-type PipelineCoverageModulationStateCreateFlagsNV uint32
+// PhysicalDeviceLineRasterizationFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceLineRasterizationFeaturesEXT.html
+type PhysicalDeviceLineRasterizationFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ RectangularLines Bool32
+ BresenhamLines Bool32
+ SmoothLines Bool32
+ StippledRectangularLines Bool32
+ StippledBresenhamLines Bool32
+ StippledSmoothLines Bool32
+ refdb9049a7 *C.VkPhysicalDeviceLineRasterizationFeaturesEXT
+ allocsdb9049a7 interface{}
+}
+
+// PhysicalDeviceLineRasterizationProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceLineRasterizationPropertiesEXT.html
+type PhysicalDeviceLineRasterizationProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ LineSubPixelPrecisionBits uint32
+ refe2369446 *C.VkPhysicalDeviceLineRasterizationPropertiesEXT
+ allocse2369446 interface{}
+}
-// PipelineCoverageModulationStateCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCoverageModulationStateCreateInfoNV.html
-type PipelineCoverageModulationStateCreateInfoNV struct {
- SType StructureType
- PNext unsafe.Pointer
- Flags PipelineCoverageModulationStateCreateFlagsNV
- CoverageModulationMode CoverageModulationModeNV
- CoverageModulationTableEnable Bool32
- CoverageModulationTableCount uint32
- PCoverageModulationTable []float32
- refa081b0ea *C.VkPipelineCoverageModulationStateCreateInfoNV
- allocsa081b0ea interface{}
+// PipelineRasterizationLineStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRasterizationLineStateCreateInfoEXT.html
+type PipelineRasterizationLineStateCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ LineRasterizationMode LineRasterizationMode
+ StippledLineEnable Bool32
+ LineStippleFactor uint32
+ LineStipplePattern uint16
+ ref649f4226 *C.VkPipelineRasterizationLineStateCreateInfoEXT
+ allocs649f4226 interface{}
}
-// DrmFormatModifierProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDrmFormatModifierPropertiesEXT.html
-type DrmFormatModifierProperties struct {
- DrmFormatModifier uint64
- DrmFormatModifierPlaneCount uint32
- DrmFormatModifierTilingFeatures FormatFeatureFlags
- ref7dcb7f85 *C.VkDrmFormatModifierPropertiesEXT
- allocs7dcb7f85 interface{}
+// PhysicalDeviceShaderAtomicFloatFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.html
+type PhysicalDeviceShaderAtomicFloatFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ShaderBufferFloat32Atomics Bool32
+ ShaderBufferFloat32AtomicAdd Bool32
+ ShaderBufferFloat64Atomics Bool32
+ ShaderBufferFloat64AtomicAdd Bool32
+ ShaderSharedFloat32Atomics Bool32
+ ShaderSharedFloat32AtomicAdd Bool32
+ ShaderSharedFloat64Atomics Bool32
+ ShaderSharedFloat64AtomicAdd Bool32
+ ShaderImageFloat32Atomics Bool32
+ ShaderImageFloat32AtomicAdd Bool32
+ SparseImageFloat32Atomics Bool32
+ SparseImageFloat32AtomicAdd Bool32
+ refb387c45b *C.VkPhysicalDeviceShaderAtomicFloatFeaturesEXT
+ allocsb387c45b interface{}
+}
+
+// PhysicalDeviceIndexTypeUint8Features as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceIndexTypeUint8FeaturesEXT.html
+type PhysicalDeviceIndexTypeUint8Features struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ IndexTypeUint8 Bool32
+ refd29dc94 *C.VkPhysicalDeviceIndexTypeUint8FeaturesEXT
+ allocsd29dc94 interface{}
+}
+
+// PhysicalDeviceExtendedDynamicStateFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceExtendedDynamicStateFeaturesEXT.html
+type PhysicalDeviceExtendedDynamicStateFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ExtendedDynamicState Bool32
+ reff7bd87ab *C.VkPhysicalDeviceExtendedDynamicStateFeaturesEXT
+ allocsf7bd87ab interface{}
+}
+
+// PhysicalDeviceShaderAtomicFloat2Features as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.html
+type PhysicalDeviceShaderAtomicFloat2Features struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ShaderBufferFloat16Atomics Bool32
+ ShaderBufferFloat16AtomicAdd Bool32
+ ShaderBufferFloat16AtomicMinMax Bool32
+ ShaderBufferFloat32AtomicMinMax Bool32
+ ShaderBufferFloat64AtomicMinMax Bool32
+ ShaderSharedFloat16Atomics Bool32
+ ShaderSharedFloat16AtomicAdd Bool32
+ ShaderSharedFloat16AtomicMinMax Bool32
+ ShaderSharedFloat32AtomicMinMax Bool32
+ ShaderSharedFloat64AtomicMinMax Bool32
+ ShaderImageFloat32AtomicMinMax Bool32
+ SparseImageFloat32AtomicMinMax Bool32
+ reff53782 *C.VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT
+ allocsf53782 interface{}
+}
+
+// PresentScalingFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPresentScalingFlagsEXT.html
+type PresentScalingFlags uint32
+
+// PresentGravityFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPresentGravityFlagsEXT.html
+type PresentGravityFlags uint32
+
+// SurfacePresentMode as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSurfacePresentModeEXT.html
+type SurfacePresentMode struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PresentMode PresentMode
+ ref7c337d5d *C.VkSurfacePresentModeEXT
+ allocs7c337d5d interface{}
}
-// DrmFormatModifierPropertiesList as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDrmFormatModifierPropertiesListEXT.html
-type DrmFormatModifierPropertiesList struct {
- SType StructureType
- PNext unsafe.Pointer
- DrmFormatModifierCount uint32
- PDrmFormatModifierProperties []DrmFormatModifierProperties
- ref7e3ede2 *C.VkDrmFormatModifierPropertiesListEXT
- allocs7e3ede2 interface{}
+// SurfacePresentScalingCapabilities as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSurfacePresentScalingCapabilitiesEXT.html
+type SurfacePresentScalingCapabilities struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SupportedPresentScaling PresentScalingFlags
+ SupportedPresentGravityX PresentGravityFlags
+ SupportedPresentGravityY PresentGravityFlags
+ MinScaledImageExtent Extent2D
+ MaxScaledImageExtent Extent2D
+ ref2053fb9d *C.VkSurfacePresentScalingCapabilitiesEXT
+ allocs2053fb9d interface{}
}
-// PhysicalDeviceImageDrmFormatModifierInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceImageDrmFormatModifierInfoEXT.html
-type PhysicalDeviceImageDrmFormatModifierInfo struct {
+// SurfacePresentModeCompatibility as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSurfacePresentModeCompatibilityEXT.html
+type SurfacePresentModeCompatibility struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PresentModeCount uint32
+ PPresentModes []PresentMode
+ ref61fb395d *C.VkSurfacePresentModeCompatibilityEXT
+ allocs61fb395d interface{}
+}
+
+// PhysicalDeviceSwapchainMaintenance1Features as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT.html
+type PhysicalDeviceSwapchainMaintenance1Features struct {
SType StructureType
PNext unsafe.Pointer
- DrmFormatModifier uint64
- SharingMode SharingMode
- QueueFamilyIndexCount uint32
- PQueueFamilyIndices []uint32
- refd7abef44 *C.VkPhysicalDeviceImageDrmFormatModifierInfoEXT
- allocsd7abef44 interface{}
+ SwapchainMaintenance1 Bool32
+ ref553fbea0 *C.VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT
+ allocs553fbea0 interface{}
}
-// ImageDrmFormatModifierListCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageDrmFormatModifierListCreateInfoEXT.html
-type ImageDrmFormatModifierListCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- DrmFormatModifierCount uint32
- PDrmFormatModifiers []uint64
- ref544538ab *C.VkImageDrmFormatModifierListCreateInfoEXT
- allocs544538ab interface{}
+// SwapchainPresentFenceInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSwapchainPresentFenceInfoEXT.html
+type SwapchainPresentFenceInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SwapchainCount uint32
+ PFences []Fence
+ reff3a3ddf9 *C.VkSwapchainPresentFenceInfoEXT
+ allocsf3a3ddf9 interface{}
}
-// ImageDrmFormatModifierExplicitCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageDrmFormatModifierExplicitCreateInfoEXT.html
-type ImageDrmFormatModifierExplicitCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- DrmFormatModifier uint64
- DrmFormatModifierPlaneCount uint32
- PPlaneLayouts []SubresourceLayout
- ref8fb45ca9 *C.VkImageDrmFormatModifierExplicitCreateInfoEXT
- allocs8fb45ca9 interface{}
+// SwapchainPresentModesCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSwapchainPresentModesCreateInfoEXT.html
+type SwapchainPresentModesCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PresentModeCount uint32
+ PPresentModes []PresentMode
+ ref27b56519 *C.VkSwapchainPresentModesCreateInfoEXT
+ allocs27b56519 interface{}
}
-// ImageDrmFormatModifierProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageDrmFormatModifierPropertiesEXT.html
-type ImageDrmFormatModifierProperties struct {
- SType StructureType
- PNext unsafe.Pointer
- DrmFormatModifier uint64
- ref86a0f149 *C.VkImageDrmFormatModifierPropertiesEXT
- allocs86a0f149 interface{}
+// SwapchainPresentModeInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSwapchainPresentModeInfoEXT.html
+type SwapchainPresentModeInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SwapchainCount uint32
+ PPresentModes []PresentMode
+ refee48d4d8 *C.VkSwapchainPresentModeInfoEXT
+ allocsee48d4d8 interface{}
}
-// ValidationCache as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkValidationCacheEXT.html
-type ValidationCache C.VkValidationCacheEXT
-
-// ValidationCacheCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkValidationCacheCreateFlagsEXT.html
-type ValidationCacheCreateFlags uint32
-
-// ValidationCacheCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkValidationCacheCreateInfoEXT.html
-type ValidationCacheCreateInfo struct {
+// SwapchainPresentScalingCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSwapchainPresentScalingCreateInfoEXT.html
+type SwapchainPresentScalingCreateInfo struct {
SType StructureType
PNext unsafe.Pointer
- Flags ValidationCacheCreateFlags
- InitialDataSize uint
- PInitialData unsafe.Pointer
- ref3d8ac8aa *C.VkValidationCacheCreateInfoEXT
- allocs3d8ac8aa interface{}
+ ScalingBehavior PresentScalingFlags
+ PresentGravityX PresentGravityFlags
+ PresentGravityY PresentGravityFlags
+ ref69da29d7 *C.VkSwapchainPresentScalingCreateInfoEXT
+ allocs69da29d7 interface{}
}
-// ShaderModuleValidationCacheCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkShaderModuleValidationCacheCreateInfoEXT.html
-type ShaderModuleValidationCacheCreateInfo struct {
+// ReleaseSwapchainImagesInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkReleaseSwapchainImagesInfoEXT.html
+type ReleaseSwapchainImagesInfo struct {
SType StructureType
PNext unsafe.Pointer
- ValidationCache ValidationCache
- ref37065f24 *C.VkShaderModuleValidationCacheCreateInfoEXT
- allocs37065f24 interface{}
+ Swapchain Swapchain
+ ImageIndexCount uint32
+ PImageIndices []uint32
+ ref6c053bf *C.VkReleaseSwapchainImagesInfoEXT
+ allocs6c053bf interface{}
+}
+
+// IndirectCommandsLayoutNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkIndirectCommandsLayoutNV.html
+type IndirectCommandsLayoutNV C.VkIndirectCommandsLayoutNV
+
+// IndirectStateFlagsNV type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkIndirectStateFlagsNV.html
+type IndirectStateFlagsNV uint32
+
+// IndirectCommandsLayoutUsageFlagsNV type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkIndirectCommandsLayoutUsageFlagsNV.html
+type IndirectCommandsLayoutUsageFlagsNV uint32
+
+// PhysicalDeviceDeviceGeneratedCommandsPropertiesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.html
+type PhysicalDeviceDeviceGeneratedCommandsPropertiesNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ MaxGraphicsShaderGroupCount uint32
+ MaxIndirectSequenceCount uint32
+ MaxIndirectCommandsTokenCount uint32
+ MaxIndirectCommandsStreamCount uint32
+ MaxIndirectCommandsTokenOffset uint32
+ MaxIndirectCommandsStreamStride uint32
+ MinSequencesCountBufferOffsetAlignment uint32
+ MinSequencesIndexBufferOffsetAlignment uint32
+ MinIndirectCommandsBufferOffsetAlignment uint32
+ ref569def06 *C.VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV
+ allocs569def06 interface{}
+}
+
+// PhysicalDeviceDeviceGeneratedCommandsFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV.html
+type PhysicalDeviceDeviceGeneratedCommandsFeaturesNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DeviceGeneratedCommands Bool32
+ ref3ea95583 *C.VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV
+ allocs3ea95583 interface{}
}
-// DescriptorBindingFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorBindingFlagsEXT.html
-type DescriptorBindingFlags uint32
-
-// DescriptorSetLayoutBindingFlagsCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetLayoutBindingFlagsCreateInfoEXT.html
-type DescriptorSetLayoutBindingFlagsCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- BindingCount uint32
- PBindingFlags []DescriptorBindingFlags
- refcb1cf42 *C.VkDescriptorSetLayoutBindingFlagsCreateInfoEXT
- allocscb1cf42 interface{}
+// GraphicsShaderGroupCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkGraphicsShaderGroupCreateInfoNV.html
+type GraphicsShaderGroupCreateInfoNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ StageCount uint32
+ PStages []PipelineShaderStageCreateInfo
+ PVertexInputState []PipelineVertexInputStateCreateInfo
+ PTessellationState []PipelineTessellationStateCreateInfo
+ refa9d954e5 *C.VkGraphicsShaderGroupCreateInfoNV
+ allocsa9d954e5 interface{}
}
-// PhysicalDeviceDescriptorIndexingFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceDescriptorIndexingFeaturesEXT.html
-type PhysicalDeviceDescriptorIndexingFeatures struct {
- SType StructureType
- PNext unsafe.Pointer
- ShaderInputAttachmentArrayDynamicIndexing Bool32
- ShaderUniformTexelBufferArrayDynamicIndexing Bool32
- ShaderStorageTexelBufferArrayDynamicIndexing Bool32
- ShaderUniformBufferArrayNonUniformIndexing Bool32
- ShaderSampledImageArrayNonUniformIndexing Bool32
- ShaderStorageBufferArrayNonUniformIndexing Bool32
- ShaderStorageImageArrayNonUniformIndexing Bool32
- ShaderInputAttachmentArrayNonUniformIndexing Bool32
- ShaderUniformTexelBufferArrayNonUniformIndexing Bool32
- ShaderStorageTexelBufferArrayNonUniformIndexing Bool32
- DescriptorBindingUniformBufferUpdateAfterBind Bool32
- DescriptorBindingSampledImageUpdateAfterBind Bool32
- DescriptorBindingStorageImageUpdateAfterBind Bool32
- DescriptorBindingStorageBufferUpdateAfterBind Bool32
- DescriptorBindingUniformTexelBufferUpdateAfterBind Bool32
- DescriptorBindingStorageTexelBufferUpdateAfterBind Bool32
- DescriptorBindingUpdateUnusedWhilePending Bool32
- DescriptorBindingPartiallyBound Bool32
- DescriptorBindingVariableDescriptorCount Bool32
- RuntimeDescriptorArray Bool32
- ref76ca48bc *C.VkPhysicalDeviceDescriptorIndexingFeaturesEXT
- allocs76ca48bc interface{}
+// GraphicsPipelineShaderGroupsCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkGraphicsPipelineShaderGroupsCreateInfoNV.html
+type GraphicsPipelineShaderGroupsCreateInfoNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ GroupCount uint32
+ PGroups []GraphicsShaderGroupCreateInfoNV
+ PipelineCount uint32
+ PPipelines []Pipeline
+ refabf1b7d9 *C.VkGraphicsPipelineShaderGroupsCreateInfoNV
+ allocsabf1b7d9 interface{}
}
-// PhysicalDeviceDescriptorIndexingProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceDescriptorIndexingPropertiesEXT.html
-type PhysicalDeviceDescriptorIndexingProperties struct {
- SType StructureType
- PNext unsafe.Pointer
- MaxUpdateAfterBindDescriptorsInAllPools uint32
- ShaderUniformBufferArrayNonUniformIndexingNative Bool32
- ShaderSampledImageArrayNonUniformIndexingNative Bool32
- ShaderStorageBufferArrayNonUniformIndexingNative Bool32
- ShaderStorageImageArrayNonUniformIndexingNative Bool32
- ShaderInputAttachmentArrayNonUniformIndexingNative Bool32
- RobustBufferAccessUpdateAfterBind Bool32
- QuadDivergentImplicitLod Bool32
- MaxPerStageDescriptorUpdateAfterBindSamplers uint32
- MaxPerStageDescriptorUpdateAfterBindUniformBuffers uint32
- MaxPerStageDescriptorUpdateAfterBindStorageBuffers uint32
- MaxPerStageDescriptorUpdateAfterBindSampledImages uint32
- MaxPerStageDescriptorUpdateAfterBindStorageImages uint32
- MaxPerStageDescriptorUpdateAfterBindInputAttachments uint32
- MaxPerStageUpdateAfterBindResources uint32
- MaxDescriptorSetUpdateAfterBindSamplers uint32
- MaxDescriptorSetUpdateAfterBindUniformBuffers uint32
- MaxDescriptorSetUpdateAfterBindUniformBuffersDynamic uint32
- MaxDescriptorSetUpdateAfterBindStorageBuffers uint32
- MaxDescriptorSetUpdateAfterBindStorageBuffersDynamic uint32
- MaxDescriptorSetUpdateAfterBindSampledImages uint32
- MaxDescriptorSetUpdateAfterBindStorageImages uint32
- MaxDescriptorSetUpdateAfterBindInputAttachments uint32
- ref3c07c210 *C.VkPhysicalDeviceDescriptorIndexingPropertiesEXT
- allocs3c07c210 interface{}
+// BindShaderGroupIndirectCommandNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBindShaderGroupIndirectCommandNV.html
+type BindShaderGroupIndirectCommandNV struct {
+ GroupIndex uint32
+ ref4b098fa3 *C.VkBindShaderGroupIndirectCommandNV
+ allocs4b098fa3 interface{}
}
-// DescriptorSetVariableDescriptorCountAllocateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetVariableDescriptorCountAllocateInfoEXT.html
-type DescriptorSetVariableDescriptorCountAllocateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- DescriptorSetCount uint32
- PDescriptorCounts []uint32
- ref65152aef *C.VkDescriptorSetVariableDescriptorCountAllocateInfoEXT
- allocs65152aef interface{}
+// BindIndexBufferIndirectCommandNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBindIndexBufferIndirectCommandNV.html
+type BindIndexBufferIndirectCommandNV struct {
+ BufferAddress DeviceAddress
+ Size uint32
+ IndexType IndexType
+ ref74143926 *C.VkBindIndexBufferIndirectCommandNV
+ allocs74143926 interface{}
}
-// DescriptorSetVariableDescriptorCountLayoutSupport as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetVariableDescriptorCountLayoutSupportEXT.html
-type DescriptorSetVariableDescriptorCountLayoutSupport struct {
- SType StructureType
- PNext unsafe.Pointer
- MaxVariableDescriptorCount uint32
- ref4684c56f *C.VkDescriptorSetVariableDescriptorCountLayoutSupportEXT
- allocs4684c56f interface{}
+// BindVertexBufferIndirectCommandNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBindVertexBufferIndirectCommandNV.html
+type BindVertexBufferIndirectCommandNV struct {
+ BufferAddress DeviceAddress
+ Size uint32
+ Stride uint32
+ refca56f95c *C.VkBindVertexBufferIndirectCommandNV
+ allocsca56f95c interface{}
}
-// ShadingRatePaletteNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkShadingRatePaletteNV.html
-type ShadingRatePaletteNV struct {
- ShadingRatePaletteEntryCount uint32
- PShadingRatePaletteEntries []ShadingRatePaletteEntryNV
- refa5c4ae3a *C.VkShadingRatePaletteNV
- allocsa5c4ae3a interface{}
+// SetStateFlagsIndirectCommandNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSetStateFlagsIndirectCommandNV.html
+type SetStateFlagsIndirectCommandNV struct {
+ Data uint32
+ ref89ae676d *C.VkSetStateFlagsIndirectCommandNV
+ allocs89ae676d interface{}
}
-// PipelineViewportShadingRateImageStateCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineViewportShadingRateImageStateCreateInfoNV.html
-type PipelineViewportShadingRateImageStateCreateInfoNV struct {
- SType StructureType
- PNext unsafe.Pointer
- ShadingRateImageEnable Bool32
- ViewportCount uint32
- PShadingRatePalettes []ShadingRatePaletteNV
- ref6f2ec732 *C.VkPipelineViewportShadingRateImageStateCreateInfoNV
- allocs6f2ec732 interface{}
+// IndirectCommandsStreamNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkIndirectCommandsStreamNV.html
+type IndirectCommandsStreamNV struct {
+ Buffer Buffer
+ Offset DeviceSize
+ refc623636a *C.VkIndirectCommandsStreamNV
+ allocsc623636a interface{}
}
-// PhysicalDeviceShadingRateImageFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceShadingRateImageFeaturesNV.html
-type PhysicalDeviceShadingRateImageFeaturesNV struct {
+// IndirectCommandsLayoutTokenNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkIndirectCommandsLayoutTokenNV.html
+type IndirectCommandsLayoutTokenNV struct {
SType StructureType
PNext unsafe.Pointer
- ShadingRateImage Bool32
- ShadingRateCoarseSampleOrder Bool32
- ref199a921b *C.VkPhysicalDeviceShadingRateImageFeaturesNV
- allocs199a921b interface{}
+ TokenType IndirectCommandsTokenTypeNV
+ Stream uint32
+ Offset uint32
+ VertexBindingUnit uint32
+ VertexDynamicStride Bool32
+ PushconstantPipelineLayout PipelineLayout
+ PushconstantShaderStageFlags ShaderStageFlags
+ PushconstantOffset uint32
+ PushconstantSize uint32
+ IndirectStateFlags IndirectStateFlagsNV
+ IndexTypeCount uint32
+ PIndexTypes []IndexType
+ PIndexTypeValues []uint32
+ ref96f52b76 *C.VkIndirectCommandsLayoutTokenNV
+ allocs96f52b76 interface{}
+}
+
+// IndirectCommandsLayoutCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkIndirectCommandsLayoutCreateInfoNV.html
+type IndirectCommandsLayoutCreateInfoNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags IndirectCommandsLayoutUsageFlagsNV
+ PipelineBindPoint PipelineBindPoint
+ TokenCount uint32
+ PTokens []IndirectCommandsLayoutTokenNV
+ StreamCount uint32
+ PStreamStrides []uint32
+ ref48273185 *C.VkIndirectCommandsLayoutCreateInfoNV
+ allocs48273185 interface{}
}
-// PhysicalDeviceShadingRateImagePropertiesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceShadingRateImagePropertiesNV.html
-type PhysicalDeviceShadingRateImagePropertiesNV struct {
- SType StructureType
- PNext unsafe.Pointer
- ShadingRateTexelSize Extent2D
- ShadingRatePaletteSize uint32
- ShadingRateMaxCoarseSamples uint32
- refea059f34 *C.VkPhysicalDeviceShadingRateImagePropertiesNV
- allocsea059f34 interface{}
+// GeneratedCommandsInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkGeneratedCommandsInfoNV.html
+type GeneratedCommandsInfoNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PipelineBindPoint PipelineBindPoint
+ Pipeline Pipeline
+ IndirectCommandsLayout IndirectCommandsLayoutNV
+ StreamCount uint32
+ PStreams []IndirectCommandsStreamNV
+ SequencesCount uint32
+ PreprocessBuffer Buffer
+ PreprocessOffset DeviceSize
+ PreprocessSize DeviceSize
+ SequencesCountBuffer Buffer
+ SequencesCountOffset DeviceSize
+ SequencesIndexBuffer Buffer
+ SequencesIndexOffset DeviceSize
+ refc05396ea *C.VkGeneratedCommandsInfoNV
+ allocsc05396ea interface{}
+}
+
+// GeneratedCommandsMemoryRequirementsInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkGeneratedCommandsMemoryRequirementsInfoNV.html
+type GeneratedCommandsMemoryRequirementsInfoNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PipelineBindPoint PipelineBindPoint
+ Pipeline Pipeline
+ IndirectCommandsLayout IndirectCommandsLayoutNV
+ MaxSequencesCount uint32
+ refe82e5c4c *C.VkGeneratedCommandsMemoryRequirementsInfoNV
+ allocse82e5c4c interface{}
}
-// CoarseSampleLocationNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCoarseSampleLocationNV.html
-type CoarseSampleLocationNV struct {
- PixelX uint32
- PixelY uint32
- Sample uint32
- ref2f447beb *C.VkCoarseSampleLocationNV
- allocs2f447beb interface{}
+// PhysicalDeviceInheritedViewportScissorFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceInheritedViewportScissorFeaturesNV.html
+type PhysicalDeviceInheritedViewportScissorFeaturesNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ InheritedViewportScissor2D Bool32
+ refcec68147 *C.VkPhysicalDeviceInheritedViewportScissorFeaturesNV
+ allocscec68147 interface{}
}
-// CoarseSampleOrderCustomNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCoarseSampleOrderCustomNV.html
-type CoarseSampleOrderCustomNV struct {
- ShadingRate ShadingRatePaletteEntryNV
- SampleCount uint32
- SampleLocationCount uint32
- PSampleLocations []CoarseSampleLocationNV
- ref4524fa09 *C.VkCoarseSampleOrderCustomNV
- allocs4524fa09 interface{}
+// CommandBufferInheritanceViewportScissorInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandBufferInheritanceViewportScissorInfoNV.html
+type CommandBufferInheritanceViewportScissorInfoNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ViewportScissor2D Bool32
+ ViewportDepthCount uint32
+ PViewportDepths []Viewport
+ refc206d63 *C.VkCommandBufferInheritanceViewportScissorInfoNV
+ allocsc206d63 interface{}
}
-// PipelineViewportCoarseSampleOrderStateCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineViewportCoarseSampleOrderStateCreateInfoNV.html
-type PipelineViewportCoarseSampleOrderStateCreateInfoNV struct {
- SType StructureType
- PNext unsafe.Pointer
- SampleOrderType CoarseSampleOrderTypeNV
- CustomSampleOrderCount uint32
- PCustomSampleOrders []CoarseSampleOrderCustomNV
- ref54de8ca6 *C.VkPipelineViewportCoarseSampleOrderStateCreateInfoNV
- allocs54de8ca6 interface{}
+// PhysicalDeviceTexelBufferAlignmentFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT.html
+type PhysicalDeviceTexelBufferAlignmentFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ TexelBufferAlignment Bool32
+ ref2c4411b2 *C.VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT
+ allocs2c4411b2 interface{}
}
-// AccelerationStructureNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkAccelerationStructureNVX
-type AccelerationStructureNVX C.VkAccelerationStructureNVX
-
-// GeometryFlagsNVX type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkGeometryFlagsNVX
-type GeometryFlagsNVX uint32
+// RenderPassTransformBeginInfoQCOM as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderPassTransformBeginInfoQCOM.html
+type RenderPassTransformBeginInfoQCOM struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Transform SurfaceTransformFlagBits
+ ref938e681d *C.VkRenderPassTransformBeginInfoQCOM
+ allocs938e681d interface{}
+}
-// GeometryInstanceFlagsNVX type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkGeometryInstanceFlagsNVX
-type GeometryInstanceFlagsNVX uint32
+// CommandBufferInheritanceRenderPassTransformInfoQCOM as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandBufferInheritanceRenderPassTransformInfoQCOM.html
+type CommandBufferInheritanceRenderPassTransformInfoQCOM struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Transform SurfaceTransformFlagBits
+ RenderArea Rect2D
+ refee6ff04 *C.VkCommandBufferInheritanceRenderPassTransformInfoQCOM
+ allocsee6ff04 interface{}
+}
-// BuildAccelerationStructureFlagsNVX type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkBuildAccelerationStructureFlagsNVX
-type BuildAccelerationStructureFlagsNVX uint32
+// DeviceMemoryReportFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceMemoryReportFlagsEXT.html
+type DeviceMemoryReportFlags uint32
-// RaytracingPipelineCreateInfoNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkRaytracingPipelineCreateInfoNVX
-type RaytracingPipelineCreateInfoNVX struct {
+// PhysicalDeviceDeviceMemoryReportFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceDeviceMemoryReportFeaturesEXT.html
+type PhysicalDeviceDeviceMemoryReportFeatures struct {
SType StructureType
PNext unsafe.Pointer
- Flags PipelineCreateFlags
- StageCount uint32
- PStages []PipelineShaderStageCreateInfo
- PGroupNumbers []uint32
- MaxRecursionDepth uint32
- Layout PipelineLayout
- BasePipelineHandle Pipeline
- BasePipelineIndex int32
- ref4d91852a *C.VkRaytracingPipelineCreateInfoNVX
- allocs4d91852a interface{}
+ DeviceMemoryReport Bool32
+ ref477470f6 *C.VkPhysicalDeviceDeviceMemoryReportFeaturesEXT
+ allocs477470f6 interface{}
+}
+
+// DeviceMemoryReportCallbackData as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceMemoryReportCallbackDataEXT.html
+type DeviceMemoryReportCallbackData struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags DeviceMemoryReportFlags
+ Type DeviceMemoryReportEventType
+ MemoryObjectId uint64
+ Size DeviceSize
+ ObjectType ObjectType
+ ObjectHandle uint64
+ HeapIndex uint32
+ ref3150dbde *C.VkDeviceMemoryReportCallbackDataEXT
+ allocs3150dbde interface{}
}
-// GeometryTrianglesNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkGeometryTrianglesNVX
-type GeometryTrianglesNVX struct {
+// DeviceMemoryReportCallbackFunc type as declared in vulkan/vulkan_core.h:13857
+type DeviceMemoryReportCallbackFunc func(pCallbackData []DeviceMemoryReportCallbackData, pUserData unsafe.Pointer)
+
+// DeviceDeviceMemoryReportCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceDeviceMemoryReportCreateInfoEXT.html
+type DeviceDeviceMemoryReportCreateInfo struct {
SType StructureType
PNext unsafe.Pointer
- VertexData Buffer
- VertexOffset DeviceSize
- VertexCount uint32
- VertexStride DeviceSize
- VertexFormat Format
- IndexData Buffer
- IndexOffset DeviceSize
- IndexCount uint32
- IndexType IndexType
- TransformData Buffer
- TransformOffset DeviceSize
- ref5c3b4de9 *C.VkGeometryTrianglesNVX
- allocs5c3b4de9 interface{}
-}
-
-// GeometryAABBNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkGeometryAABBNVX
-type GeometryAABBNVX struct {
- SType StructureType
- PNext unsafe.Pointer
- AabbData Buffer
- NumAABBs uint32
- Stride uint32
- Offset DeviceSize
- reff4c42a9d *C.VkGeometryAABBNVX
- allocsf4c42a9d interface{}
+ Flags DeviceMemoryReportFlags
+ PfnUserCallback DeviceMemoryReportCallbackFunc
+ PUserData unsafe.Pointer
+ refe99f2c76 *C.VkDeviceDeviceMemoryReportCreateInfoEXT
+ allocse99f2c76 interface{}
+}
+
+// PhysicalDeviceRobustness2Features as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceRobustness2FeaturesEXT.html
+type PhysicalDeviceRobustness2Features struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ RobustBufferAccess2 Bool32
+ RobustImageAccess2 Bool32
+ NullDescriptor Bool32
+ refa1d6be35 *C.VkPhysicalDeviceRobustness2FeaturesEXT
+ allocsa1d6be35 interface{}
+}
+
+// PhysicalDeviceRobustness2Properties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceRobustness2PropertiesEXT.html
+type PhysicalDeviceRobustness2Properties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ RobustStorageBufferAccessSizeAlignment DeviceSize
+ RobustUniformBufferAccessSizeAlignment DeviceSize
+ ref82986127 *C.VkPhysicalDeviceRobustness2PropertiesEXT
+ allocs82986127 interface{}
+}
+
+// SamplerCustomBorderColorCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerCustomBorderColorCreateInfoEXT.html
+type SamplerCustomBorderColorCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ CustomBorderColor ClearColorValue
+ Format Format
+ refcac2582e *C.VkSamplerCustomBorderColorCreateInfoEXT
+ allocscac2582e interface{}
}
-// GeometryDataNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkGeometryDataNVX
-type GeometryDataNVX struct {
- Triangles GeometryTrianglesNVX
- Aabbs GeometryAABBNVX
- ref3db64dfa *C.VkGeometryDataNVX
- allocs3db64dfa interface{}
+// PhysicalDeviceCustomBorderColorProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceCustomBorderColorPropertiesEXT.html
+type PhysicalDeviceCustomBorderColorProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ MaxCustomBorderColorSamplers uint32
+ ref4b62d3cd *C.VkPhysicalDeviceCustomBorderColorPropertiesEXT
+ allocs4b62d3cd interface{}
}
-// GeometryNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkGeometryNVX
-type GeometryNVX struct {
- SType StructureType
- PNext unsafe.Pointer
- GeometryType GeometryTypeNVX
- Geometry GeometryDataNVX
- Flags GeometryFlagsNVX
- refd01fad9d *C.VkGeometryNVX
- allocsd01fad9d interface{}
+// PhysicalDeviceCustomBorderColorFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceCustomBorderColorFeaturesEXT.html
+type PhysicalDeviceCustomBorderColorFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ CustomBorderColors Bool32
+ CustomBorderColorWithoutFormat Bool32
+ ref8a9c96e0 *C.VkPhysicalDeviceCustomBorderColorFeaturesEXT
+ allocs8a9c96e0 interface{}
}
-// AccelerationStructureCreateInfoNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkAccelerationStructureCreateInfoNVX
-type AccelerationStructureCreateInfoNVX struct {
+// PhysicalDevicePresentBarrierFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDevicePresentBarrierFeaturesNV.html
+type PhysicalDevicePresentBarrierFeaturesNV struct {
SType StructureType
PNext unsafe.Pointer
- Type AccelerationStructureTypeNVX
- Flags BuildAccelerationStructureFlagsNVX
- CompactedSize DeviceSize
- InstanceCount uint32
- GeometryCount uint32
- PGeometries []GeometryNVX
- ref1289fd56 *C.VkAccelerationStructureCreateInfoNVX
- allocs1289fd56 interface{}
+ PresentBarrier Bool32
+ reff8c28ce8 *C.VkPhysicalDevicePresentBarrierFeaturesNV
+ allocsf8c28ce8 interface{}
}
-// BindAccelerationStructureMemoryInfoNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkBindAccelerationStructureMemoryInfoNVX
-type BindAccelerationStructureMemoryInfoNVX struct {
- SType StructureType
- PNext unsafe.Pointer
- AccelerationStructure AccelerationStructureNVX
- Memory DeviceMemory
- MemoryOffset DeviceSize
- DeviceIndexCount uint32
- PDeviceIndices []uint32
- refb92eae10 *C.VkBindAccelerationStructureMemoryInfoNVX
- allocsb92eae10 interface{}
+// SurfaceCapabilitiesPresentBarrierNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSurfaceCapabilitiesPresentBarrierNV.html
+type SurfaceCapabilitiesPresentBarrierNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PresentBarrierSupported Bool32
+ refb05347b2 *C.VkSurfaceCapabilitiesPresentBarrierNV
+ allocsb05347b2 interface{}
}
-// DescriptorAccelerationStructureInfoNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkDescriptorAccelerationStructureInfoNVX
-type DescriptorAccelerationStructureInfoNVX struct {
- SType StructureType
- PNext unsafe.Pointer
- AccelerationStructureCount uint32
- PAccelerationStructures []AccelerationStructureNVX
- refde5f3ba5 *C.VkDescriptorAccelerationStructureInfoNVX
- allocsde5f3ba5 interface{}
+// SwapchainPresentBarrierCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSwapchainPresentBarrierCreateInfoNV.html
+type SwapchainPresentBarrierCreateInfoNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ PresentBarrierEnable Bool32
+ ref72c75914 *C.VkSwapchainPresentBarrierCreateInfoNV
+ allocs72c75914 interface{}
}
-// AccelerationStructureMemoryRequirementsInfoNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkAccelerationStructureMemoryRequirementsInfoNVX
-type AccelerationStructureMemoryRequirementsInfoNVX struct {
- SType StructureType
- PNext unsafe.Pointer
- AccelerationStructure AccelerationStructureNVX
- ref212466e8 *C.VkAccelerationStructureMemoryRequirementsInfoNVX
- allocs212466e8 interface{}
-}
+// DeviceDiagnosticsConfigFlagsNV type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceDiagnosticsConfigFlagsNV.html
+type DeviceDiagnosticsConfigFlagsNV uint32
-// PhysicalDeviceRaytracingPropertiesNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkPhysicalDeviceRaytracingPropertiesNVX
-type PhysicalDeviceRaytracingPropertiesNVX struct {
+// PhysicalDeviceDiagnosticsConfigFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceDiagnosticsConfigFeaturesNV.html
+type PhysicalDeviceDiagnosticsConfigFeaturesNV struct {
SType StructureType
PNext unsafe.Pointer
- ShaderHeaderSize uint32
- MaxRecursionDepth uint32
- MaxGeometryCount uint32
- refd37a6b69 *C.VkPhysicalDeviceRaytracingPropertiesNVX
- allocsd37a6b69 interface{}
+ DiagnosticsConfig Bool32
+ refd354d3ba *C.VkPhysicalDeviceDiagnosticsConfigFeaturesNV
+ allocsd354d3ba interface{}
}
-// PhysicalDeviceRepresentativeFragmentTestFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV.html
-type PhysicalDeviceRepresentativeFragmentTestFeaturesNV struct {
- SType StructureType
- PNext unsafe.Pointer
- RepresentativeFragmentTest Bool32
- reff1f69e03 *C.VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV
- allocsf1f69e03 interface{}
+// DeviceDiagnosticsConfigCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceDiagnosticsConfigCreateInfoNV.html
+type DeviceDiagnosticsConfigCreateInfoNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags DeviceDiagnosticsConfigFlagsNV
+ ref856c966a *C.VkDeviceDiagnosticsConfigCreateInfoNV
+ allocs856c966a interface{}
}
-// PipelineRepresentativeFragmentTestStateCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRepresentativeFragmentTestStateCreateInfoNV.html
-type PipelineRepresentativeFragmentTestStateCreateInfoNV struct {
- SType StructureType
- PNext unsafe.Pointer
- RepresentativeFragmentTestEnable Bool32
- ref9c224e21 *C.VkPipelineRepresentativeFragmentTestStateCreateInfoNV
- allocs9c224e21 interface{}
+// AccelerationStructure as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkAccelerationStructureKHR
+type AccelerationStructure C.VkAccelerationStructureKHR
+
+// PhysicalDeviceDescriptorBufferProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceDescriptorBufferPropertiesEXT.html
+type PhysicalDeviceDescriptorBufferProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ CombinedImageSamplerDescriptorSingleArray Bool32
+ BufferlessPushDescriptors Bool32
+ AllowSamplerImageViewPostSubmitCreation Bool32
+ DescriptorBufferOffsetAlignment DeviceSize
+ MaxDescriptorBufferBindings uint32
+ MaxResourceDescriptorBufferBindings uint32
+ MaxSamplerDescriptorBufferBindings uint32
+ MaxEmbeddedImmutableSamplerBindings uint32
+ MaxEmbeddedImmutableSamplers uint32
+ BufferCaptureReplayDescriptorDataSize uint64
+ ImageCaptureReplayDescriptorDataSize uint64
+ ImageViewCaptureReplayDescriptorDataSize uint64
+ SamplerCaptureReplayDescriptorDataSize uint64
+ AccelerationStructureCaptureReplayDescriptorDataSize uint64
+ SamplerDescriptorSize uint64
+ CombinedImageSamplerDescriptorSize uint64
+ SampledImageDescriptorSize uint64
+ StorageImageDescriptorSize uint64
+ UniformTexelBufferDescriptorSize uint64
+ RobustUniformTexelBufferDescriptorSize uint64
+ StorageTexelBufferDescriptorSize uint64
+ RobustStorageTexelBufferDescriptorSize uint64
+ UniformBufferDescriptorSize uint64
+ RobustUniformBufferDescriptorSize uint64
+ StorageBufferDescriptorSize uint64
+ RobustStorageBufferDescriptorSize uint64
+ InputAttachmentDescriptorSize uint64
+ AccelerationStructureDescriptorSize uint64
+ MaxSamplerDescriptorBufferRange DeviceSize
+ MaxResourceDescriptorBufferRange DeviceSize
+ SamplerDescriptorBufferAddressSpaceSize DeviceSize
+ ResourceDescriptorBufferAddressSpaceSize DeviceSize
+ DescriptorBufferAddressSpaceSize DeviceSize
+ ref62cc13fb *C.VkPhysicalDeviceDescriptorBufferPropertiesEXT
+ allocs62cc13fb interface{}
+}
+
+// PhysicalDeviceDescriptorBufferDensityMapProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT.html
+type PhysicalDeviceDescriptorBufferDensityMapProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ CombinedImageSamplerDensityMapDescriptorSize uint64
+ refb23ce6c9 *C.VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT
+ allocsb23ce6c9 interface{}
+}
+
+// PhysicalDeviceDescriptorBufferFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceDescriptorBufferFeaturesEXT.html
+type PhysicalDeviceDescriptorBufferFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ DescriptorBuffer Bool32
+ DescriptorBufferCaptureReplay Bool32
+ DescriptorBufferImageLayoutIgnored Bool32
+ DescriptorBufferPushDescriptors Bool32
+ ref840279e1 *C.VkPhysicalDeviceDescriptorBufferFeaturesEXT
+ allocs840279e1 interface{}
}
-// DeviceQueueGlobalPriorityCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceQueueGlobalPriorityCreateInfoEXT.html
-type DeviceQueueGlobalPriorityCreateInfo struct {
+// DescriptorAddressInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorAddressInfoEXT.html
+type DescriptorAddressInfo struct {
SType StructureType
PNext unsafe.Pointer
- GlobalPriority QueueGlobalPriority
- ref76356646 *C.VkDeviceQueueGlobalPriorityCreateInfoEXT
- allocs76356646 interface{}
+ Address DeviceAddress
+ Range DeviceSize
+ Format Format
+ ref3f3c750d *C.VkDescriptorAddressInfoEXT
+ allocs3f3c750d interface{}
}
-// ImportMemoryHostPointerInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImportMemoryHostPointerInfoEXT.html
-type ImportMemoryHostPointerInfo struct {
+// DescriptorBufferBindingInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorBufferBindingInfoEXT.html
+type DescriptorBufferBindingInfo struct {
SType StructureType
PNext unsafe.Pointer
- HandleType ExternalMemoryHandleTypeFlagBits
- PHostPointer unsafe.Pointer
- reffe09253e *C.VkImportMemoryHostPointerInfoEXT
- allocsfe09253e interface{}
+ Address DeviceAddress
+ Usage BufferUsageFlags
+ refbfb2412f *C.VkDescriptorBufferBindingInfoEXT
+ allocsbfb2412f interface{}
}
-// MemoryHostPointerProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryHostPointerPropertiesEXT.html
-type MemoryHostPointerProperties struct {
+// DescriptorBufferBindingPushDescriptorBufferHandle as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorBufferBindingPushDescriptorBufferHandleEXT.html
+type DescriptorBufferBindingPushDescriptorBufferHandle struct {
SType StructureType
PNext unsafe.Pointer
- MemoryTypeBits uint32
- refebf46a84 *C.VkMemoryHostPointerPropertiesEXT
- allocsebf46a84 interface{}
+ Buffer Buffer
+ ref14f143c5 *C.VkDescriptorBufferBindingPushDescriptorBufferHandleEXT
+ allocs14f143c5 interface{}
}
-// PhysicalDeviceExternalMemoryHostProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceExternalMemoryHostPropertiesEXT.html
-type PhysicalDeviceExternalMemoryHostProperties struct {
- SType StructureType
- PNext unsafe.Pointer
- MinImportedHostPointerAlignment DeviceSize
- ref7f697d15 *C.VkPhysicalDeviceExternalMemoryHostPropertiesEXT
- allocs7f697d15 interface{}
+// DescriptorData as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorDataEXT.html
+const sizeofDescriptorData = unsafe.Sizeof(C.VkDescriptorDataEXT{})
+
+type DescriptorData [sizeofDescriptorData]byte
+
+// DescriptorGetInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorGetInfoEXT.html
+type DescriptorGetInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Type DescriptorType
+ Data DescriptorData
+ ref15e17023 *C.VkDescriptorGetInfoEXT
+ allocs15e17023 interface{}
}
-// CalibratedTimestampInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCalibratedTimestampInfoEXT.html
-type CalibratedTimestampInfo struct {
+// BufferCaptureDescriptorDataInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferCaptureDescriptorDataInfoEXT.html
+type BufferCaptureDescriptorDataInfo struct {
SType StructureType
PNext unsafe.Pointer
- TimeDomain TimeDomain
- ref5f061d2a *C.VkCalibratedTimestampInfoEXT
- allocs5f061d2a interface{}
+ Buffer Buffer
+ ref7d170bdd *C.VkBufferCaptureDescriptorDataInfoEXT
+ allocs7d170bdd interface{}
}
-// PhysicalDeviceShaderCorePropertiesAMD as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkPhysicalDeviceShaderCorePropertiesAMD
-type PhysicalDeviceShaderCorePropertiesAMD struct {
- SType StructureType
- PNext unsafe.Pointer
- ShaderEngineCount uint32
- ShaderArraysPerEngineCount uint32
- ComputeUnitsPerShaderArray uint32
- SimdPerComputeUnit uint32
- WavefrontsPerSimd uint32
- WavefrontSize uint32
- SgprsPerSimd uint32
- MinSgprAllocation uint32
- MaxSgprAllocation uint32
- SgprAllocationGranularity uint32
- VgprsPerSimd uint32
- MinVgprAllocation uint32
- MaxVgprAllocation uint32
- VgprAllocationGranularity uint32
- refde4b3b09 *C.VkPhysicalDeviceShaderCorePropertiesAMD
- allocsde4b3b09 interface{}
+// ImageCaptureDescriptorDataInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageCaptureDescriptorDataInfoEXT.html
+type ImageCaptureDescriptorDataInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Image Image
+ refc02d1ea8 *C.VkImageCaptureDescriptorDataInfoEXT
+ allocsc02d1ea8 interface{}
}
-// PhysicalDeviceVertexAttributeDivisorProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT.html
-type PhysicalDeviceVertexAttributeDivisorProperties struct {
- SType StructureType
- PNext unsafe.Pointer
- MaxVertexAttribDivisor uint32
- refbd6b5075 *C.VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT
- allocsbd6b5075 interface{}
+// ImageViewCaptureDescriptorDataInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageViewCaptureDescriptorDataInfoEXT.html
+type ImageViewCaptureDescriptorDataInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ImageView ImageView
+ refe2b761d2 *C.VkImageViewCaptureDescriptorDataInfoEXT
+ allocse2b761d2 interface{}
}
-// VertexInputBindingDivisorDescription as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkVertexInputBindingDivisorDescriptionEXT.html
-type VertexInputBindingDivisorDescription struct {
- Binding uint32
- Divisor uint32
- refd64d4396 *C.VkVertexInputBindingDivisorDescriptionEXT
- allocsd64d4396 interface{}
+// SamplerCaptureDescriptorDataInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerCaptureDescriptorDataInfoEXT.html
+type SamplerCaptureDescriptorDataInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Sampler Sampler
+ ref2455cc7e *C.VkSamplerCaptureDescriptorDataInfoEXT
+ allocs2455cc7e interface{}
}
-// PipelineVertexInputDivisorStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineVertexInputDivisorStateCreateInfoEXT.html
-type PipelineVertexInputDivisorStateCreateInfo struct {
- SType StructureType
- PNext unsafe.Pointer
- VertexBindingDivisorCount uint32
- PVertexBindingDivisors []VertexInputBindingDivisorDescription
- ref86096bfd *C.VkPipelineVertexInputDivisorStateCreateInfoEXT
- allocs86096bfd interface{}
+// OpaqueCaptureDescriptorDataCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkOpaqueCaptureDescriptorDataCreateInfoEXT.html
+type OpaqueCaptureDescriptorDataCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ OpaqueCaptureDescriptorData unsafe.Pointer
+ ref48a027d *C.VkOpaqueCaptureDescriptorDataCreateInfoEXT
+ allocs48a027d interface{}
}
-// PhysicalDeviceVertexAttributeDivisorFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT.html
-type PhysicalDeviceVertexAttributeDivisorFeatures struct {
- SType StructureType
- PNext unsafe.Pointer
- VertexAttributeInstanceRateDivisor Bool32
- VertexAttributeInstanceRateZeroDivisor Bool32
- refffe7619a *C.VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT
- allocsffe7619a interface{}
+// GraphicsPipelineLibraryFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkGraphicsPipelineLibraryFlagsEXT.html
+type GraphicsPipelineLibraryFlags uint32
+
+// PhysicalDeviceGraphicsPipelineLibraryFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT.html
+type PhysicalDeviceGraphicsPipelineLibraryFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ GraphicsPipelineLibrary Bool32
+ ref34a84548 *C.VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT
+ allocs34a84548 interface{}
}
-// PhysicalDeviceComputeShaderDerivativesFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceComputeShaderDerivativesFeaturesNV.html
-type PhysicalDeviceComputeShaderDerivativesFeaturesNV struct {
- SType StructureType
- PNext unsafe.Pointer
- ComputeDerivativeGroupQuads Bool32
- ComputeDerivativeGroupLinear Bool32
- reff31d599c *C.VkPhysicalDeviceComputeShaderDerivativesFeaturesNV
- allocsf31d599c interface{}
+// PhysicalDeviceGraphicsPipelineLibraryProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT.html
+type PhysicalDeviceGraphicsPipelineLibraryProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ GraphicsPipelineLibraryFastLinking Bool32
+ GraphicsPipelineLibraryIndependentInterpolationDecoration Bool32
+ ref3266d876 *C.VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT
+ allocs3266d876 interface{}
}
-// PhysicalDeviceMeshShaderFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceMeshShaderFeaturesNV.html
-type PhysicalDeviceMeshShaderFeaturesNV struct {
- SType StructureType
- PNext unsafe.Pointer
- TaskShader Bool32
- MeshShader Bool32
- ref802b98a *C.VkPhysicalDeviceMeshShaderFeaturesNV
- allocs802b98a interface{}
+// GraphicsPipelineLibraryCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkGraphicsPipelineLibraryCreateInfoEXT.html
+type GraphicsPipelineLibraryCreateInfo struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Flags GraphicsPipelineLibraryFlags
+ reff164ebfc *C.VkGraphicsPipelineLibraryCreateInfoEXT
+ allocsf164ebfc interface{}
}
-// PhysicalDeviceMeshShaderPropertiesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceMeshShaderPropertiesNV.html
-type PhysicalDeviceMeshShaderPropertiesNV struct {
- SType StructureType
- PNext unsafe.Pointer
- MaxDrawMeshTasksCount uint32
- MaxTaskWorkGroupInvocations uint32
- MaxTaskWorkGroupSize [3]uint32
- MaxTaskTotalMemorySize uint32
- MaxTaskOutputCount uint32
- MaxMeshWorkGroupInvocations uint32
- MaxMeshWorkGroupSize [3]uint32
- MaxMeshTotalMemorySize uint32
- MaxMeshOutputVertices uint32
- MaxMeshOutputPrimitives uint32
- MaxMeshMultiviewViewCount uint32
- MeshOutputPerVertexGranularity uint32
- MeshOutputPerPrimitiveGranularity uint32
- ref2ee3ccb7 *C.VkPhysicalDeviceMeshShaderPropertiesNV
- allocs2ee3ccb7 interface{}
+// PhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD
+type PhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ShaderEarlyAndLateFragmentTests Bool32
+ refec282b5f *C.VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD
+ allocsec282b5f interface{}
}
-// DrawMeshTasksIndirectCommandNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDrawMeshTasksIndirectCommandNV.html
-type DrawMeshTasksIndirectCommandNV struct {
- TaskCount uint32
- FirstTask uint32
- refda6c46ea *C.VkDrawMeshTasksIndirectCommandNV
- allocsda6c46ea interface{}
+// PhysicalDeviceFragmentShadingRateEnumsFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV.html
+type PhysicalDeviceFragmentShadingRateEnumsFeaturesNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ FragmentShadingRateEnums Bool32
+ SupersampleFragmentShadingRates Bool32
+ NoInvocationFragmentShadingRates Bool32
+ refd295c0e9 *C.VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV
+ allocsd295c0e9 interface{}
}
-// PhysicalDeviceFragmentShaderBarycentricFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV.html
-type PhysicalDeviceFragmentShaderBarycentricFeaturesNV struct {
- SType StructureType
- PNext unsafe.Pointer
- FragmentShaderBarycentric Bool32
- ref191b97c6 *C.VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV
- allocs191b97c6 interface{}
+// PhysicalDeviceFragmentShadingRateEnumsPropertiesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV.html
+type PhysicalDeviceFragmentShadingRateEnumsPropertiesNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ MaxFragmentShadingRateInvocationCount SampleCountFlagBits
+ ref49eae7dc *C.VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV
+ allocs49eae7dc interface{}
}
-// PhysicalDeviceShaderImageFootprintFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceShaderImageFootprintFeaturesNV.html
-type PhysicalDeviceShaderImageFootprintFeaturesNV struct {
- SType StructureType
- PNext unsafe.Pointer
- ImageFootprint Bool32
- ref9d61e1b2 *C.VkPhysicalDeviceShaderImageFootprintFeaturesNV
- allocs9d61e1b2 interface{}
+// PipelineFragmentShadingRateEnumStateCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineFragmentShadingRateEnumStateCreateInfoNV.html
+type PipelineFragmentShadingRateEnumStateCreateInfoNV struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ShadingRateType FragmentShadingRateTypeNV
+ ShadingRate FragmentShadingRateNV
+ CombinerOps [2]FragmentShadingRateCombinerOp
+ ref82a7e17b *C.VkPipelineFragmentShadingRateEnumStateCreateInfoNV
+ allocs82a7e17b interface{}
}
-// PipelineViewportExclusiveScissorStateCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineViewportExclusiveScissorStateCreateInfoNV.html
-type PipelineViewportExclusiveScissorStateCreateInfoNV struct {
+// PhysicalDeviceYcbcr2Plane444FormatsFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT.html
+type PhysicalDeviceYcbcr2Plane444FormatsFeatures struct {
SType StructureType
PNext unsafe.Pointer
- ExclusiveScissorCount uint32
- PExclusiveScissors []Rect2D
- refa8715ba6 *C.VkPipelineViewportExclusiveScissorStateCreateInfoNV
- allocsa8715ba6 interface{}
+ Ycbcr2plane444Formats Bool32
+ reff075d674 *C.VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT
+ allocsf075d674 interface{}
}
-// PhysicalDeviceExclusiveScissorFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceExclusiveScissorFeaturesNV.html
-type PhysicalDeviceExclusiveScissorFeaturesNV struct {
- SType StructureType
- PNext unsafe.Pointer
- ExclusiveScissor Bool32
- ref52c9fcfc *C.VkPhysicalDeviceExclusiveScissorFeaturesNV
- allocs52c9fcfc interface{}
+// PhysicalDeviceFragmentDensityMap2Features as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceFragmentDensityMap2FeaturesEXT.html
+type PhysicalDeviceFragmentDensityMap2Features struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ FragmentDensityMapDeferred Bool32
+ ref30a59f8 *C.VkPhysicalDeviceFragmentDensityMap2FeaturesEXT
+ allocs30a59f8 interface{}
}
-// QueueFamilyCheckpointPropertiesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueueFamilyCheckpointPropertiesNV.html
-type QueueFamilyCheckpointPropertiesNV struct {
+// PhysicalDeviceFragmentDensityMap2Properties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceFragmentDensityMap2PropertiesEXT.html
+type PhysicalDeviceFragmentDensityMap2Properties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ SubsampledLoads Bool32
+ SubsampledCoarseReconstructionEarlyAccess Bool32
+ MaxSubsampledArrayLayers uint32
+ MaxDescriptorSetSubsampledSamplers uint32
+ refc2a21d23 *C.VkPhysicalDeviceFragmentDensityMap2PropertiesEXT
+ allocsc2a21d23 interface{}
+}
+
+// CopyCommandTransformInfoQCOM as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCopyCommandTransformInfoQCOM.html
+type CopyCommandTransformInfoQCOM struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ Transform SurfaceTransformFlagBits
+ refeaa6777c *C.VkCopyCommandTransformInfoQCOM
+ allocseaa6777c interface{}
+}
+
+// ImageCompressionFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageCompressionFlagsEXT.html
+type ImageCompressionFlags uint32
+
+// ImageCompressionFixedRateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageCompressionFixedRateFlagsEXT.html
+type ImageCompressionFixedRateFlags uint32
+
+// PhysicalDeviceImageCompressionControlFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceImageCompressionControlFeaturesEXT.html
+type PhysicalDeviceImageCompressionControlFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ImageCompressionControl Bool32
+ ref25740c12 *C.VkPhysicalDeviceImageCompressionControlFeaturesEXT
+ allocs25740c12 interface{}
+}
+
+// ImageCompressionControl as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageCompressionControlEXT.html
+type ImageCompressionControl struct {
SType StructureType
PNext unsafe.Pointer
- CheckpointExecutionStageMask PipelineStageFlags
- ref351f58c6 *C.VkQueueFamilyCheckpointPropertiesNV
- allocs351f58c6 interface{}
+ Flags ImageCompressionFlags
+ CompressionControlPlaneCount uint32
+ PFixedRateFlags []ImageCompressionFixedRateFlags
+ ref37cbe96e *C.VkImageCompressionControlEXT
+ allocs37cbe96e interface{}
}
-// CheckpointDataNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCheckpointDataNV.html
-type CheckpointDataNV struct {
+// SubresourceLayout2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubresourceLayout2EXT.html
+type SubresourceLayout2 struct {
SType StructureType
PNext unsafe.Pointer
- Stage PipelineStageFlagBits
- PCheckpointMarker unsafe.Pointer
- refd1c9224b *C.VkCheckpointDataNV
- allocsd1c9224b interface{}
+ SubresourceLayout SubresourceLayout
+ ref63424f18 *C.VkSubresourceLayout2EXT
+ allocs63424f18 interface{}
}
-// PhysicalDevicePCIBusInfoProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDevicePCIBusInfoPropertiesEXT.html
-type PhysicalDevicePCIBusInfoProperties struct {
+// ImageSubresource2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageSubresource2EXT.html
+type ImageSubresource2 struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ImageSubresource ImageSubresource
+ ref9782acd8 *C.VkImageSubresource2EXT
+ allocs9782acd8 interface{}
+}
+
+// ImageCompressionProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageCompressionPropertiesEXT.html
+type ImageCompressionProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ImageCompressionFlags ImageCompressionFlags
+ ImageCompressionFixedRateFlags ImageCompressionFixedRateFlags
+ ref6a3ccfa2 *C.VkImageCompressionPropertiesEXT
+ allocs6a3ccfa2 interface{}
+}
+
+// PhysicalDeviceAttachmentFeedbackLoopLayoutFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT.html
+type PhysicalDeviceAttachmentFeedbackLoopLayoutFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ AttachmentFeedbackLoopLayout Bool32
+ reff251dd56 *C.VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT
+ allocsf251dd56 interface{}
+}
+
+// PhysicalDevice4444FormatsFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDevice4444FormatsFeaturesEXT.html
+type PhysicalDevice4444FormatsFeatures struct {
SType StructureType
PNext unsafe.Pointer
- PciDomain uint16
- PciBus byte
- PciDevice byte
- PciFunction byte
- refdd9947ff *C.VkPhysicalDevicePCIBusInfoPropertiesEXT
- allocsdd9947ff interface{}
+ FormatA4R4G4B4 Bool32
+ FormatA4B4G4R4 Bool32
+ ref51c957d0 *C.VkPhysicalDevice4444FormatsFeaturesEXT
+ allocs51c957d0 interface{}
+}
+
+// PhysicalDevicePortabilitySubsetFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDevicePortabilitySubsetFeaturesKHR
+type PhysicalDevicePortabilitySubsetFeatures struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ ConstantAlphaColorBlendFactors Bool32
+ Events Bool32
+ ImageViewFormatReinterpretation Bool32
+ ImageViewFormatSwizzle Bool32
+ ImageView2DOn3DImage Bool32
+ MultisampleArrayImage Bool32
+ MutableComparisonSamplers Bool32
+ PointPolygons Bool32
+ SamplerMipLodBias Bool32
+ SeparateStencilMaskRef Bool32
+ ShaderSampleRateInterpolationFunctions Bool32
+ TessellationIsolines Bool32
+ TessellationPointMode Bool32
+ TriangleFans Bool32
+ VertexAttributeAccessBeyondStride Bool32
+ ref1a31db1e *C.VkPhysicalDevicePortabilitySubsetFeaturesKHR
+ allocs1a31db1e interface{}
+}
+
+// PhysicalDevicePortabilitySubsetProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDevicePortabilitySubsetPropertiesKHR
+type PhysicalDevicePortabilitySubsetProperties struct {
+ SType StructureType
+ PNext unsafe.Pointer
+ MinVertexInputBindingStrideAlignment uint32
+ ref8babbd5c *C.VkPhysicalDevicePortabilitySubsetPropertiesKHR
+ allocs8babbd5c interface{}
}
diff --git a/version.go b/version.go
new file mode 100644
index 0000000..84b41e2
--- /dev/null
+++ b/version.go
@@ -0,0 +1,9 @@
+// WARNING: auto-generated by Makefile release target -- run 'make release' to update
+
+package vulkan
+
+const (
+ GoVersion = "v1.0.6"
+ GitCommit = "7e2340c" // the commit JUST BEFORE the release
+ VersionDate = "2023-03-10 21:29" // UTC
+)
diff --git a/vk_bridge.c b/vk_bridge.c
index 56151d0..394e5d9 100644
--- a/vk_bridge.c
+++ b/vk_bridge.c
@@ -1311,41 +1311,41 @@ VkResult callVkCreateIOSSurfaceMVK(
return vgo_vkCreateIOSSurfaceMVK(instance, pCreateInfo, pAllocator, pSurface);
}
-VkResult callVkActivateMoltenVKLicenseMVK(
- const char* licenseID,
- const char* licenseKey,
- VkBool32 acceptLicenseTermsAndConditions) {
- return vgo_vkActivateMoltenVKLicenseMVK(licenseID, licenseKey, acceptLicenseTermsAndConditions);
-}
+// VkResult callVkActivateMoltenVKLicenseMVK(
+// const char* licenseID,
+// const char* licenseKey,
+// VkBool32 acceptLicenseTermsAndConditions) {
+// return vgo_vkActivateMoltenVKLicenseMVK(licenseID, licenseKey, acceptLicenseTermsAndConditions);
+// }
-VkResult callVkActivateMoltenVKLicensesMVK() {
- return vgo_vkActivateMoltenVKLicensesMVK();
-}
+// VkResult callVkActivateMoltenVKLicensesMVK() {
+// return vgo_vkActivateMoltenVKLicensesMVK();
+// }
VkResult callVkGetMoltenVKDeviceConfigurationMVK(
VkDevice device,
- MVKDeviceConfiguration* pConfiguration) {
- return vgo_vkGetMoltenVKDeviceConfigurationMVK(device, pConfiguration);
+ MVKConfiguration* pConfiguration) {
+ return vgo_vkGetMoltenVKDeviceConfigurationMVK(device, pConfiguration, sizeof(MVKConfiguration));
}
VkResult callVkSetMoltenVKDeviceConfigurationMVK(
VkDevice device,
- MVKDeviceConfiguration* pConfiguration) {
- return vgo_vkSetMoltenVKDeviceConfigurationMVK(device, pConfiguration);
+ MVKConfiguration* pConfiguration) {
+ return vgo_vkSetMoltenVKDeviceConfigurationMVK(device, pConfiguration, sizeof(MVKConfiguration));
}
VkResult callVkGetPhysicalDeviceMetalFeaturesMVK(
VkPhysicalDevice physicalDevice,
MVKPhysicalDeviceMetalFeatures* pMetalFeatures) {
- return vgo_vkGetPhysicalDeviceMetalFeaturesMVK(physicalDevice, pMetalFeatures);
+ return vgo_vkGetPhysicalDeviceMetalFeaturesMVK(physicalDevice, pMetalFeatures, sizeof(MVKConfiguration));
}
-VkResult callVkGetSwapchainPerformanceMVK(
- VkDevice device,
- VkSwapchainKHR swapchain,
- MVKSwapchainPerformance* pSwapchainPerf) {
- return vgo_vkGetSwapchainPerformanceMVK(device, swapchain, pSwapchainPerf);
-}
+// VkResult callVkGetSwapchainPerformanceMVK(
+// VkDevice device,
+// VkSwapchainKHR swapchain,
+// MVKSwapchainPerformance* pSwapchainPerf) {
+// return vgo_vkGetSwapchainPerformanceMVK(device, swapchain, pSwapchainPerf);
+// }
#endif /* VK_USE_PLATFORM_IOS_MVK */
#ifdef VK_USE_PLATFORM_WIN32_KHR
diff --git a/vk_bridge.h b/vk_bridge.h
index cf9cffa..a69351b 100644
--- a/vk_bridge.h
+++ b/vk_bridge.h
@@ -962,29 +962,29 @@ VkResult callVkCreateIOSSurfaceMVK(
const VkAllocationCallbacks* pAllocator,
VkSurfaceKHR* pSurface);
-VkResult callVkActivateMoltenVKLicenseMVK(
- const char* licenseID,
- const char* licenseKey,
- VkBool32 acceptLicenseTermsAndConditions);
-
-VkResult callVkActivateMoltenVKLicensesMVK();
+// VkResult callVkActivateMoltenVKLicenseMVK(
+// const char* licenseID,
+// const char* licenseKey,
+// VkBool32 acceptLicenseTermsAndConditions);
+//
+// VkResult callVkActivateMoltenVKLicensesMVK();
VkResult callVkGetMoltenVKDeviceConfigurationMVK(
VkDevice device,
- MVKDeviceConfiguration* pConfiguration);
+ MVKConfiguration* pConfiguration);
VkResult callVkSetMoltenVKDeviceConfigurationMVK(
VkDevice device,
- MVKDeviceConfiguration* pConfiguration);
+ MVKConfiguration* pConfiguration);
VkResult callVkGetPhysicalDeviceMetalFeaturesMVK(
VkPhysicalDevice physicalDevice,
MVKPhysicalDeviceMetalFeatures* pMetalFeatures);
-VkResult callVkGetSwapchainPerformanceMVK(
- VkDevice device,
- VkSwapchainKHR swapchain,
- MVKSwapchainPerformance* pSwapchainPerf);
+// VkResult callVkGetSwapchainPerformanceMVK(
+// VkDevice device,
+// VkSwapchainKHR swapchain,
+// MVKSwapchainPerformance* pSwapchainPerf);
#endif /* VK_USE_PLATFORM_IOS_MVK */
#ifdef VK_USE_PLATFORM_WIN32_KHR
diff --git a/vk_debug_android.go b/vk_debug_android.go
index 70c723c..fc0e738 100644
--- a/vk_debug_android.go
+++ b/vk_debug_android.go
@@ -1,3 +1,4 @@
+//go:build android
// +build android
package vulkan
diff --git a/vk_null32.go b/vk_null32.go
index cc78ec0..6dfc365 100644
--- a/vk_null32.go
+++ b/vk_null32.go
@@ -1,3 +1,4 @@
+//go:build 386 || arm
// +build 386 arm
package vulkan
diff --git a/vk_null64.go b/vk_null64.go
index 0123682..09981a6 100644
--- a/vk_null64.go
+++ b/vk_null64.go
@@ -1,3 +1,4 @@
+//go:build !386 && !arm
// +build !386,!arm
package vulkan
diff --git a/vk_wrapper.h b/vk_wrapper.h
index 0df8b69..cc5ffee 100644
--- a/vk_wrapper.h
+++ b/vk_wrapper.h
@@ -22,6 +22,7 @@ extern PFN_vkGetPhysicalDeviceFeatures vgo_vkGetPhysicalDeviceFeatures;
extern PFN_vkGetPhysicalDeviceFormatProperties vgo_vkGetPhysicalDeviceFormatProperties;
extern PFN_vkGetPhysicalDeviceImageFormatProperties vgo_vkGetPhysicalDeviceImageFormatProperties;
extern PFN_vkGetPhysicalDeviceProperties vgo_vkGetPhysicalDeviceProperties;
+extern PFN_vkGetPhysicalDeviceProperties2 vgo_vkGetPhysicalDeviceProperties2;
extern PFN_vkGetPhysicalDeviceQueueFamilyProperties vgo_vkGetPhysicalDeviceQueueFamilyProperties;
extern PFN_vkGetPhysicalDeviceMemoryProperties vgo_vkGetPhysicalDeviceMemoryProperties;
extern PFN_vkGetInstanceProcAddr vgo_vkGetInstanceProcAddr;
@@ -211,12 +212,12 @@ extern PFN_vkCreateAndroidSurfaceKHR vgo_vkCreateAndroidSurfaceKHR;
#ifdef VK_USE_PLATFORM_IOS_MVK
// VK_MVK_ios_surface
extern PFN_vkCreateIOSSurfaceMVK vgo_vkCreateIOSSurfaceMVK;
-extern PFN_vkActivateMoltenVKLicenseMVK vgo_vkActivateMoltenVKLicenseMVK;
-extern PFN_vkActivateMoltenVKLicensesMVK vgo_vkActivateMoltenVKLicensesMVK;
-extern PFN_vkGetMoltenVKDeviceConfigurationMVK vgo_vkGetMoltenVKDeviceConfigurationMVK;
-extern PFN_vkSetMoltenVKDeviceConfigurationMVK vgo_vkSetMoltenVKDeviceConfigurationMVK;
+// extern PFN_vkActivateMoltenVKLicenseMVK vgo_vkActivateMoltenVKLicenseMVK;
+// extern PFN_vkActivateMoltenVKLicensesMVK vgo_vkActivateMoltenVKLicensesMVK;
+extern PFN_vkGetMoltenVKConfigurationMVK vgo_vkGetMoltenVKDeviceConfigurationMVK;
+extern PFN_vkSetMoltenVKConfigurationMVK vgo_vkSetMoltenVKDeviceConfigurationMVK;
extern PFN_vkGetPhysicalDeviceMetalFeaturesMVK vgo_vkGetPhysicalDeviceMetalFeaturesMVK;
-extern PFN_vkGetSwapchainPerformanceMVK vgo_vkGetSwapchainPerformanceMVK;
+// extern PFN_vkGetSwapchainPerformanceMVK vgo_vkGetSwapchainPerformanceMVK;
// vkGetInstanceProcAddr left there so the linker would link MoltenVK
extern PFN_vkGetInstanceProcAddr vkGetInstanceProcAddr;
#endif
diff --git a/vk_wrapper_android.c b/vk_wrapper_android.c
index 7e60c5e..0a8aab9 100644
--- a/vk_wrapper_android.c
+++ b/vk_wrapper_android.c
@@ -6,6 +6,11 @@
// No-op on Android, get the ProcAddr in vkInit()
void setProcAddr(void* getProcAddr) {}
+// no-op??
+void setDefaultProcAddr() {
+
+}
+
int isProcAddrSet() {
return 1;
}
diff --git a/vk_wrapper_ios.m b/vk_wrapper_ios.m
index 1679956..0a6fc6e 100644
--- a/vk_wrapper_ios.m
+++ b/vk_wrapper_ios.m
@@ -7,6 +7,8 @@
// No-op on iOS, get the ProcAddr in vkInit()
void setProcAddr(void* getProcAddr) {}
+void setDefaultProcAddr(void* getProcAddr) {}
+
int isProcAddrSet() {
return 1;
}
@@ -201,12 +203,12 @@ int vkInitInstance(VkInstance instance) {
#ifdef VK_USE_PLATFORM_IOS_MVK
vgo_vkCreateIOSSurfaceMVK = (PFN_vkCreateIOSSurfaceMVK)(vgo_vkGetInstanceProcAddr(instance, "vkCreateIOSSurfaceMVK"));
- vgo_vkActivateMoltenVKLicenseMVK = (PFN_vkActivateMoltenVKLicenseMVK)(vgo_vkGetInstanceProcAddr(instance, "vkActivateMoltenVKLicenseMVK"));
- vgo_vkActivateMoltenVKLicensesMVK = (PFN_vkActivateMoltenVKLicensesMVK)(vgo_vkGetInstanceProcAddr(instance, "vkActivateMoltenVKLicensesMVK"));
- vgo_vkGetMoltenVKDeviceConfigurationMVK = (PFN_vkGetMoltenVKDeviceConfigurationMVK)(vgo_vkGetInstanceProcAddr(instance, "vkGetMoltenVKDeviceConfigurationMVK"));
- vgo_vkSetMoltenVKDeviceConfigurationMVK = (PFN_vkSetMoltenVKDeviceConfigurationMVK)(vgo_vkGetInstanceProcAddr(instance, "vkSetMoltenVKDeviceConfigurationMVK"));
+ // vgo_vkActivateMoltenVKLicenseMVK = (PFN_vkActivateMoltenVKLicenseMVK)(vgo_vkGetInstanceProcAddr(instance, "vkActivateMoltenVKLicenseMVK"));
+ // vgo_vkActivateMoltenVKLicensesMVK = (PFN_vkActivateMoltenVKLicensesMVK)(vgo_vkGetInstanceProcAddr(instance, "vkActivateMoltenVKLicensesMVK"));
+ vgo_vkGetMoltenVKDeviceConfigurationMVK = (PFN_vkGetMoltenVKConfigurationMVK)(vgo_vkGetInstanceProcAddr(instance, "vkGetMoltenVKConfigurationMVK"));
+ vgo_vkSetMoltenVKDeviceConfigurationMVK = (PFN_vkSetMoltenVKConfigurationMVK)(vgo_vkGetInstanceProcAddr(instance, "vkSetMoltenVKConfigurationMVK"));
vgo_vkGetPhysicalDeviceMetalFeaturesMVK = (PFN_vkGetPhysicalDeviceMetalFeaturesMVK)(vgo_vkGetInstanceProcAddr(instance, "vkGetPhysicalDeviceMetalFeaturesMVK"));
- vgo_vkGetSwapchainPerformanceMVK = (PFN_vkGetSwapchainPerformanceMVK)(vgo_vkGetInstanceProcAddr(instance, "vkGetSwapchainPerformanceMVK"));
+ // vgo_vkGetSwapchainPerformanceMVK = (PFN_vkGetSwapchainPerformanceMVK)(vgo_vkGetInstanceProcAddr(instance, "vkGetSwapchainPerformanceMVK"));
#endif
#ifdef VK_USE_PLATFORM_WIN32_KHR
@@ -378,12 +380,12 @@ int vkInitInstance(VkInstance instance) {
#ifdef VK_USE_PLATFORM_IOS_MVK
PFN_vkCreateIOSSurfaceMVK vgo_vkCreateIOSSurfaceMVK;
-PFN_vkActivateMoltenVKLicenseMVK vgo_vkActivateMoltenVKLicenseMVK;
-PFN_vkActivateMoltenVKLicensesMVK vgo_vkActivateMoltenVKLicensesMVK;
-PFN_vkGetMoltenVKDeviceConfigurationMVK vgo_vkGetMoltenVKDeviceConfigurationMVK;
-PFN_vkSetMoltenVKDeviceConfigurationMVK vgo_vkSetMoltenVKDeviceConfigurationMVK;
+// PFN_vkActivateMoltenVKLicenseMVK vgo_vkActivateMoltenVKLicenseMVK;
+// PFN_vkActivateMoltenVKLicensesMVK vgo_vkActivateMoltenVKLicensesMVK;
+PFN_vkGetMoltenVKConfigurationMVK vgo_vkGetMoltenVKDeviceConfigurationMVK;
+PFN_vkSetMoltenVKConfigurationMVK vgo_vkSetMoltenVKDeviceConfigurationMVK;
PFN_vkGetPhysicalDeviceMetalFeaturesMVK vgo_vkGetPhysicalDeviceMetalFeaturesMVK;
-PFN_vkGetSwapchainPerformanceMVK vgo_vkGetSwapchainPerformanceMVK;
+// PFN_vkGetSwapchainPerformanceMVK vgo_vkGetSwapchainPerformanceMVK;
void __link_moltenvk() { vkGetInstanceProcAddr(NULL, NULL); }
#endif
diff --git a/vulkan.go b/vulkan.go
index a25c62f..8e96b50 100644
--- a/vulkan.go
+++ b/vulkan.go
@@ -1,6 +1,6 @@
// THE AUTOGENERATED LICENSE. ALL THE RIGHTS ARE RESERVED BY ROBOTS.
-// WARNING: This file has automatically been generated on Mon, 15 Oct 2018 01:04:16 +07.
+// WARNING: This file has automatically been generated on Fri, 10 Feb 2023 11:56:02 PST.
// Code generated by https://git.io/c-for-go. DO NOT EDIT.
package vulkan
@@ -8,6 +8,7 @@ package vulkan
/*
#cgo CFLAGS: -I. -DVK_NO_PROTOTYPES
#include "vulkan/vulkan.h"
+#include "vulkan/vulkan_beta.h"
#include "vk_wrapper.h"
#include "vk_bridge.h"
#include
@@ -472,7 +473,7 @@ func DestroyQueryPool(device Device, queryPool QueryPool, pAllocator *Allocation
}
// GetQueryPoolResults function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkGetQueryPoolResults.html
-func GetQueryPoolResults(device Device, queryPool QueryPool, firstQuery uint32, queryCount uint32, dataSize uint, pData unsafe.Pointer, stride DeviceSize, flags QueryResultFlags) Result {
+func GetQueryPoolResults(device Device, queryPool QueryPool, firstQuery uint32, queryCount uint32, dataSize uint64, pData unsafe.Pointer, stride DeviceSize, flags QueryResultFlags) Result {
cdevice, _ := *(*C.VkDevice)(unsafe.Pointer(&device)), cgoAllocsUnknown
cqueryPool, _ := *(*C.VkQueryPool)(unsafe.Pointer(&queryPool)), cgoAllocsUnknown
cfirstQuery, _ := (C.uint32_t)(firstQuery), cgoAllocsUnknown
@@ -610,7 +611,7 @@ func DestroyPipelineCache(device Device, pipelineCache PipelineCache, pAllocator
}
// GetPipelineCacheData function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkGetPipelineCacheData.html
-func GetPipelineCacheData(device Device, pipelineCache PipelineCache, pDataSize *uint, pData unsafe.Pointer) Result {
+func GetPipelineCacheData(device Device, pipelineCache PipelineCache, pDataSize *uint64, pData unsafe.Pointer) Result {
cdevice, _ := *(*C.VkDevice)(unsafe.Pointer(&device)), cgoAllocsUnknown
cpipelineCache, _ := *(*C.VkPipelineCache)(unsafe.Pointer(&pipelineCache)), cgoAllocsUnknown
cpDataSize, _ := (*C.size_t)(unsafe.Pointer(pDataSize)), cgoAllocsUnknown
@@ -1567,7 +1568,7 @@ func DestroyDebugReportCallback(instance Instance, callback DebugReportCallback,
}
// DebugReportMessage function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkDebugReportMessageEXT.html
-func DebugReportMessage(instance Instance, flags DebugReportFlags, objectType DebugReportObjectType, object uint64, location uint, messageCode int32, pLayerPrefix string, pMessage string) {
+func DebugReportMessage(instance Instance, flags DebugReportFlags, objectType DebugReportObjectType, object uint64, location uint64, messageCode int32, pLayerPrefix string, pMessage string) {
cinstance, _ := *(*C.VkInstance)(unsafe.Pointer(&instance)), cgoAllocsUnknown
cflags, _ := (C.VkDebugReportFlagsEXT)(flags), cgoAllocsUnknown
cobjectType, _ := (C.VkDebugReportObjectTypeEXT)(objectType), cgoAllocsUnknown
diff --git a/vulkan.yml b/vulkan.yml
index 927d964..3e1e8e1 100644
--- a/vulkan.yml
+++ b/vulkan.yml
@@ -5,6 +5,7 @@ GENERATOR:
PackageLicense: "THE AUTOGENERATED LICENSE. ALL THE RIGHTS ARE RESERVED BY ROBOTS."
Includes:
- vulkan/vulkan.h
+ - vulkan/vulkan_beta.h
- vk_wrapper.h
- vk_bridge.h
FlagGroups:
@@ -12,17 +13,19 @@ GENERATOR:
"-I.",
"-DVK_NO_PROTOTYPES",
]}
-
+
PARSER:
- IncludePaths: [/usr/include]
+ IncludePaths: [/usr/local/include, /usr/local/stdinclude]
# IncludePaths: [windows/, /usr/include]
SourcesPaths:
- vulkan/vulkan.h
+ - vulkan/vulkan_beta.h
- vk_wrapper.h
- vk_bridge.h
# - moltenVK/vk_mvk_moltenvk.h
Defines:
VK_NO_PROTOTYPES: 1
+ VK_ENABLE_BETA_EXTENSIONS: 1
VK_USE_PLATFORM_ANDROID_KHR: null
VK_USE_PLATFORM_WIN32_KHR: null
VK_USE_PLATFORM_IOS_MVK: null
@@ -38,6 +41,8 @@ TRANSLATOR:
# callbacks (no allocation callbacks cos it's dumb)
- {action: accept, from: PFN_vkDebugReportCallback}
- {action: replace, from: PFN_vkDebugReportCallback, to: DebugReportCallbackFunc}
+ - {action: accept, from: PFN_vkDeviceMemoryReportCallback}
+ - {action: replace, from: PFN_vkDeviceMemoryReportCallback, to: DeviceMemoryReportCallbackFunc}
- {action: ignore, from: DebugUtilsMessenger}
# these in global section so doc will work
- {action: accept, from: ^callVk}
@@ -56,6 +61,7 @@ TRANSLATOR:
- {transform: lower}
- {action: accept, from: "(?i)^VK_"}
- {action: replace, from: "(?i)^VK_", to: "_"}
+ - {action: replace, from: PipelineCacheHeaderVersionOne, to: PipelineCacheHeaderVersion1}
- {load: snakecase}
private:
- {transform: unexport}
diff --git a/vulkan/vk_enum_string_helper.h b/vulkan/vk_enum_string_helper.h
new file mode 100644
index 0000000..ff6ab7e
--- /dev/null
+++ b/vulkan/vk_enum_string_helper.h
@@ -0,0 +1,10830 @@
+// *** THIS FILE IS GENERATED - DO NOT EDIT ***
+// See helper_file_generator.py for modifications
+
+
+/***************************************************************************
+ *
+ * Copyright (c) 2015-2023 The Khronos Group Inc.
+ * Copyright (c) 2015-2023 Valve Corporation
+ * Copyright (c) 2015-2023 LunarG, Inc.
+ * Copyright (c) 2015-2023 Google Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * Author: Mark Lobodzinski
+ * Author: Courtney Goeltzenleuchter
+ * Author: Tobin Ehlis
+ * Author: Chris Forbes
+ * Author: John Zulauf
+ * Author: Tony Barbour
+ *
+ ****************************************************************************/
+
+
+#pragma once
+#ifdef _MSC_VER
+#pragma warning( disable : 4065 )
+#endif
+
+#include
+#include
+
+
+static inline const char* string_VkResult(VkResult input_value)
+{
+ switch (input_value)
+ {
+ case VK_ERROR_COMPRESSION_EXHAUSTED_EXT:
+ return "VK_ERROR_COMPRESSION_EXHAUSTED_EXT";
+ case VK_ERROR_DEVICE_LOST:
+ return "VK_ERROR_DEVICE_LOST";
+ case VK_ERROR_EXTENSION_NOT_PRESENT:
+ return "VK_ERROR_EXTENSION_NOT_PRESENT";
+ case VK_ERROR_FEATURE_NOT_PRESENT:
+ return "VK_ERROR_FEATURE_NOT_PRESENT";
+ case VK_ERROR_FORMAT_NOT_SUPPORTED:
+ return "VK_ERROR_FORMAT_NOT_SUPPORTED";
+ case VK_ERROR_FRAGMENTATION:
+ return "VK_ERROR_FRAGMENTATION";
+ case VK_ERROR_FRAGMENTED_POOL:
+ return "VK_ERROR_FRAGMENTED_POOL";
+ case VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT:
+ return "VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT";
+ case VK_ERROR_IMAGE_USAGE_NOT_SUPPORTED_KHR:
+ return "VK_ERROR_IMAGE_USAGE_NOT_SUPPORTED_KHR";
+ case VK_ERROR_INCOMPATIBLE_DISPLAY_KHR:
+ return "VK_ERROR_INCOMPATIBLE_DISPLAY_KHR";
+ case VK_ERROR_INCOMPATIBLE_DRIVER:
+ return "VK_ERROR_INCOMPATIBLE_DRIVER";
+ case VK_ERROR_INITIALIZATION_FAILED:
+ return "VK_ERROR_INITIALIZATION_FAILED";
+ case VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT:
+ return "VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT";
+ case VK_ERROR_INVALID_EXTERNAL_HANDLE:
+ return "VK_ERROR_INVALID_EXTERNAL_HANDLE";
+ case VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS:
+ return "VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS";
+ case VK_ERROR_INVALID_SHADER_NV:
+ return "VK_ERROR_INVALID_SHADER_NV";
+ case VK_ERROR_LAYER_NOT_PRESENT:
+ return "VK_ERROR_LAYER_NOT_PRESENT";
+ case VK_ERROR_MEMORY_MAP_FAILED:
+ return "VK_ERROR_MEMORY_MAP_FAILED";
+ case VK_ERROR_NATIVE_WINDOW_IN_USE_KHR:
+ return "VK_ERROR_NATIVE_WINDOW_IN_USE_KHR";
+ case VK_ERROR_NOT_PERMITTED_KHR:
+ return "VK_ERROR_NOT_PERMITTED_KHR";
+ case VK_ERROR_OUT_OF_DATE_KHR:
+ return "VK_ERROR_OUT_OF_DATE_KHR";
+ case VK_ERROR_OUT_OF_DEVICE_MEMORY:
+ return "VK_ERROR_OUT_OF_DEVICE_MEMORY";
+ case VK_ERROR_OUT_OF_HOST_MEMORY:
+ return "VK_ERROR_OUT_OF_HOST_MEMORY";
+ case VK_ERROR_OUT_OF_POOL_MEMORY:
+ return "VK_ERROR_OUT_OF_POOL_MEMORY";
+ case VK_ERROR_SURFACE_LOST_KHR:
+ return "VK_ERROR_SURFACE_LOST_KHR";
+ case VK_ERROR_TOO_MANY_OBJECTS:
+ return "VK_ERROR_TOO_MANY_OBJECTS";
+ case VK_ERROR_UNKNOWN:
+ return "VK_ERROR_UNKNOWN";
+ case VK_ERROR_VALIDATION_FAILED_EXT:
+ return "VK_ERROR_VALIDATION_FAILED_EXT";
+ case VK_ERROR_VIDEO_PICTURE_LAYOUT_NOT_SUPPORTED_KHR:
+ return "VK_ERROR_VIDEO_PICTURE_LAYOUT_NOT_SUPPORTED_KHR";
+ case VK_ERROR_VIDEO_PROFILE_CODEC_NOT_SUPPORTED_KHR:
+ return "VK_ERROR_VIDEO_PROFILE_CODEC_NOT_SUPPORTED_KHR";
+ case VK_ERROR_VIDEO_PROFILE_FORMAT_NOT_SUPPORTED_KHR:
+ return "VK_ERROR_VIDEO_PROFILE_FORMAT_NOT_SUPPORTED_KHR";
+ case VK_ERROR_VIDEO_PROFILE_OPERATION_NOT_SUPPORTED_KHR:
+ return "VK_ERROR_VIDEO_PROFILE_OPERATION_NOT_SUPPORTED_KHR";
+ case VK_ERROR_VIDEO_STD_VERSION_NOT_SUPPORTED_KHR:
+ return "VK_ERROR_VIDEO_STD_VERSION_NOT_SUPPORTED_KHR";
+ case VK_EVENT_RESET:
+ return "VK_EVENT_RESET";
+ case VK_EVENT_SET:
+ return "VK_EVENT_SET";
+ case VK_INCOMPLETE:
+ return "VK_INCOMPLETE";
+ case VK_NOT_READY:
+ return "VK_NOT_READY";
+ case VK_OPERATION_DEFERRED_KHR:
+ return "VK_OPERATION_DEFERRED_KHR";
+ case VK_OPERATION_NOT_DEFERRED_KHR:
+ return "VK_OPERATION_NOT_DEFERRED_KHR";
+ case VK_PIPELINE_COMPILE_REQUIRED:
+ return "VK_PIPELINE_COMPILE_REQUIRED";
+ case VK_SUBOPTIMAL_KHR:
+ return "VK_SUBOPTIMAL_KHR";
+ case VK_SUCCESS:
+ return "VK_SUCCESS";
+ case VK_THREAD_DONE_KHR:
+ return "VK_THREAD_DONE_KHR";
+ case VK_THREAD_IDLE_KHR:
+ return "VK_THREAD_IDLE_KHR";
+ case VK_TIMEOUT:
+ return "VK_TIMEOUT";
+ default:
+ return "Unhandled VkResult";
+ }
+}
+
+static inline const char* string_VkStructureType(VkStructureType input_value)
+{
+ switch (input_value)
+ {
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR";
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_SIZES_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_SIZES_INFO_KHR";
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CAPTURE_DESCRIPTOR_DATA_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CAPTURE_DESCRIPTOR_DATA_INFO_EXT";
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV:
+ return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV";
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR";
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR:
+ return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR";
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR:
+ return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR";
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR:
+ return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR";
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV:
+ return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV";
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR:
+ return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR";
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV:
+ return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV";
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV:
+ return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV";
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV:
+ return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV";
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_OPACITY_MICROMAP_EXT:
+ return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_OPACITY_MICROMAP_EXT";
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_INFO_KHR";
+ case VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR";
+ case VK_STRUCTURE_TYPE_AMIGO_PROFILING_SUBMIT_INFO_SEC:
+ return "VK_STRUCTURE_TYPE_AMIGO_PROFILING_SUBMIT_INFO_SEC";
+ case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID:
+ return "VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID";
+ case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID:
+ return "VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID";
+ case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID:
+ return "VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID";
+ case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID:
+ return "VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID";
+ case VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_APPLICATION_INFO:
+ return "VK_STRUCTURE_TYPE_APPLICATION_INFO";
+ case VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2:
+ return "VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2";
+ case VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT:
+ return "VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT";
+ case VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2:
+ return "VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2";
+ case VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT:
+ return "VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT";
+ case VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD:
+ return "VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD";
+ case VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV:
+ return "VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV";
+ case VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO:
+ return "VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO";
+ case VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO:
+ return "VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO";
+ case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO:
+ return "VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO";
+ case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO:
+ return "VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO";
+ case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR";
+ case VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO:
+ return "VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO";
+ case VK_STRUCTURE_TYPE_BIND_SPARSE_INFO:
+ return "VK_STRUCTURE_TYPE_BIND_SPARSE_INFO";
+ case VK_STRUCTURE_TYPE_BIND_VIDEO_SESSION_MEMORY_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_BIND_VIDEO_SESSION_MEMORY_INFO_KHR";
+ case VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2:
+ return "VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2";
+ case VK_STRUCTURE_TYPE_BUFFER_CAPTURE_DESCRIPTOR_DATA_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_BUFFER_CAPTURE_DESCRIPTOR_DATA_INFO_EXT";
+ case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA:
+ return "VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA";
+ case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CONSTRAINTS_INFO_FUCHSIA:
+ return "VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CONSTRAINTS_INFO_FUCHSIA";
+ case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CREATE_INFO_FUCHSIA:
+ return "VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CREATE_INFO_FUCHSIA";
+ case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA:
+ return "VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA";
+ case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_PROPERTIES_FUCHSIA:
+ return "VK_STRUCTURE_TYPE_BUFFER_COLLECTION_PROPERTIES_FUCHSIA";
+ case VK_STRUCTURE_TYPE_BUFFER_CONSTRAINTS_INFO_FUCHSIA:
+ return "VK_STRUCTURE_TYPE_BUFFER_CONSTRAINTS_INFO_FUCHSIA";
+ case VK_STRUCTURE_TYPE_BUFFER_COPY_2:
+ return "VK_STRUCTURE_TYPE_BUFFER_COPY_2";
+ case VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO:
+ return "VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO";
+ case VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2:
+ return "VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2";
+ case VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER:
+ return "VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER";
+ case VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2:
+ return "VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2";
+ case VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2:
+ return "VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2";
+ case VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT";
+ case VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV:
+ return "VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV";
+ case VK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV:
+ return "VK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV";
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO:
+ return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO";
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO:
+ return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO";
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT";
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO:
+ return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO";
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO:
+ return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO";
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM:
+ return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM";
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV:
+ return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV";
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO:
+ return "VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO";
+ case VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT";
+ case VK_STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV:
+ return "VK_STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV";
+ case VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR";
+ case VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2:
+ return "VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2";
+ case VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2:
+ return "VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2";
+ case VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM:
+ return "VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM";
+ case VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET:
+ return "VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET";
+ case VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2:
+ return "VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2";
+ case VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2:
+ return "VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2";
+ case VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_COPY_MEMORY_TO_MICROMAP_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_COPY_MEMORY_TO_MICROMAP_INFO_EXT";
+ case VK_STRUCTURE_TYPE_COPY_MICROMAP_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_COPY_MICROMAP_INFO_EXT";
+ case VK_STRUCTURE_TYPE_COPY_MICROMAP_TO_MEMORY_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_COPY_MICROMAP_TO_MEMORY_INFO_EXT";
+ case VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX:
+ return "VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX";
+ case VK_STRUCTURE_TYPE_CU_LAUNCH_INFO_NVX:
+ return "VK_STRUCTURE_TYPE_CU_LAUNCH_INFO_NVX";
+ case VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX:
+ return "VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX";
+ case VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR";
+ case VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT";
+ case VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT";
+ case VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT";
+ case VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT:
+ return "VK_STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT";
+ case VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT:
+ return "VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT";
+ case VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT";
+ case VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT";
+ case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV:
+ return "VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV";
+ case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV:
+ return "VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV";
+ case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV:
+ return "VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV";
+ case VK_STRUCTURE_TYPE_DEPENDENCY_INFO:
+ return "VK_STRUCTURE_TYPE_DEPENDENCY_INFO";
+ case VK_STRUCTURE_TYPE_DESCRIPTOR_ADDRESS_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_DESCRIPTOR_ADDRESS_INFO_EXT";
+ case VK_STRUCTURE_TYPE_DESCRIPTOR_BUFFER_BINDING_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_DESCRIPTOR_BUFFER_BINDING_INFO_EXT";
+ case VK_STRUCTURE_TYPE_DESCRIPTOR_BUFFER_BINDING_PUSH_DESCRIPTOR_BUFFER_HANDLE_EXT:
+ return "VK_STRUCTURE_TYPE_DESCRIPTOR_BUFFER_BINDING_PUSH_DESCRIPTOR_BUFFER_HANDLE_EXT";
+ case VK_STRUCTURE_TYPE_DESCRIPTOR_GET_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_DESCRIPTOR_GET_INFO_EXT";
+ case VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO:
+ return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO";
+ case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_BINDING_REFERENCE_VALVE:
+ return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_BINDING_REFERENCE_VALVE";
+ case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_HOST_MAPPING_INFO_VALVE:
+ return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_HOST_MAPPING_INFO_VALVE";
+ case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT:
+ return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT";
+ case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO:
+ return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO";
+ case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT:
+ return "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT";
+ case VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_DEVICE_ADDRESS_BINDING_CALLBACK_DATA_EXT:
+ return "VK_STRUCTURE_TYPE_DEVICE_ADDRESS_BINDING_CALLBACK_DATA_EXT";
+ case VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS:
+ return "VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS";
+ case VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV:
+ return "VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV";
+ case VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT";
+ case VK_STRUCTURE_TYPE_DEVICE_FAULT_COUNTS_EXT:
+ return "VK_STRUCTURE_TYPE_DEVICE_FAULT_COUNTS_EXT";
+ case VK_STRUCTURE_TYPE_DEVICE_FAULT_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_DEVICE_FAULT_INFO_EXT";
+ case VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO:
+ return "VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO";
+ case VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO:
+ return "VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO";
+ case VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR:
+ return "VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR";
+ case VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR";
+ case VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO:
+ return "VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO";
+ case VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO:
+ return "VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO";
+ case VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS:
+ return "VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS";
+ case VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO:
+ return "VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO";
+ case VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD:
+ return "VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD";
+ case VK_STRUCTURE_TYPE_DEVICE_MEMORY_REPORT_CALLBACK_DATA_EXT:
+ return "VK_STRUCTURE_TYPE_DEVICE_MEMORY_REPORT_CALLBACK_DATA_EXT";
+ case VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2:
+ return "VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2";
+ case VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_DIRECT_DRIVER_LOADING_INFO_LUNARG:
+ return "VK_STRUCTURE_TYPE_DIRECT_DRIVER_LOADING_INFO_LUNARG";
+ case VK_STRUCTURE_TYPE_DIRECT_DRIVER_LOADING_LIST_LUNARG:
+ return "VK_STRUCTURE_TYPE_DIRECT_DRIVER_LOADING_LIST_LUNARG";
+ case VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT";
+ case VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR:
+ return "VK_STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR";
+ case VK_STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD:
+ return "VK_STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD";
+ case VK_STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR:
+ return "VK_STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR";
+ case VK_STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR:
+ return "VK_STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR";
+ case VK_STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR:
+ return "VK_STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR";
+ case VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT";
+ case VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR";
+ case VK_STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR:
+ return "VK_STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR";
+ case VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT:
+ return "VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT";
+ case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT:
+ return "VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT";
+ case VK_STRUCTURE_TYPE_EVENT_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_EVENT_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO:
+ return "VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO";
+ case VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV:
+ return "VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV";
+ case VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV:
+ return "VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV";
+ case VK_STRUCTURE_TYPE_EXPORT_METAL_BUFFER_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_EXPORT_METAL_BUFFER_INFO_EXT";
+ case VK_STRUCTURE_TYPE_EXPORT_METAL_COMMAND_QUEUE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_EXPORT_METAL_COMMAND_QUEUE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_EXPORT_METAL_DEVICE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_EXPORT_METAL_DEVICE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_EXPORT_METAL_IO_SURFACE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_EXPORT_METAL_IO_SURFACE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECTS_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECTS_INFO_EXT";
+ case VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECT_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECT_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_EXPORT_METAL_SHARED_EVENT_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_EXPORT_METAL_SHARED_EVENT_INFO_EXT";
+ case VK_STRUCTURE_TYPE_EXPORT_METAL_TEXTURE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_EXPORT_METAL_TEXTURE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES:
+ return "VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES";
+ case VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES:
+ return "VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES";
+ case VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID:
+ return "VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID";
+ case VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES:
+ return "VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES";
+ case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV:
+ return "VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV";
+ case VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES:
+ return "VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES";
+ case VK_STRUCTURE_TYPE_FENCE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_FENCE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR";
+ case VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2:
+ return "VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2";
+ case VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3:
+ return "VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3";
+ case VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR";
+ case VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO:
+ return "VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO";
+ case VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV:
+ return "VK_STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV";
+ case VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV:
+ return "VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV";
+ case VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV:
+ return "VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV";
+ case VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV:
+ return "VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV";
+ case VK_STRUCTURE_TYPE_GEOMETRY_NV:
+ return "VK_STRUCTURE_TYPE_GEOMETRY_NV";
+ case VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV:
+ return "VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV";
+ case VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV:
+ return "VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV";
+ case VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV:
+ return "VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV";
+ case VK_STRUCTURE_TYPE_HDR_METADATA_EXT:
+ return "VK_STRUCTURE_TYPE_HDR_METADATA_EXT";
+ case VK_STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA:
+ return "VK_STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA";
+ case VK_STRUCTURE_TYPE_IMAGE_BLIT_2:
+ return "VK_STRUCTURE_TYPE_IMAGE_BLIT_2";
+ case VK_STRUCTURE_TYPE_IMAGE_CAPTURE_DESCRIPTOR_DATA_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_IMAGE_CAPTURE_DESCRIPTOR_DATA_INFO_EXT";
+ case VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT:
+ return "VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT";
+ case VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_IMAGE_CONSTRAINTS_INFO_FUCHSIA:
+ return "VK_STRUCTURE_TYPE_IMAGE_CONSTRAINTS_INFO_FUCHSIA";
+ case VK_STRUCTURE_TYPE_IMAGE_COPY_2:
+ return "VK_STRUCTURE_TYPE_IMAGE_COPY_2";
+ case VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_IMAGE_FORMAT_CONSTRAINTS_INFO_FUCHSIA:
+ return "VK_STRUCTURE_TYPE_IMAGE_FORMAT_CONSTRAINTS_INFO_FUCHSIA";
+ case VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2:
+ return "VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2";
+ case VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER:
+ return "VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER";
+ case VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2:
+ return "VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2";
+ case VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2:
+ return "VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2";
+ case VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO:
+ return "VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO";
+ case VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2:
+ return "VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2";
+ case VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2:
+ return "VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2";
+ case VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_EXT:
+ return "VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_EXT";
+ case VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX:
+ return "VK_STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX";
+ case VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT:
+ return "VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT";
+ case VK_STRUCTURE_TYPE_IMAGE_VIEW_CAPTURE_DESCRIPTOR_DATA_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_IMAGE_VIEW_CAPTURE_DESCRIPTOR_DATA_INFO_EXT";
+ case VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX:
+ return "VK_STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX";
+ case VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_IMAGE_VIEW_SAMPLE_WEIGHT_CREATE_INFO_QCOM:
+ return "VK_STRUCTURE_TYPE_IMAGE_VIEW_SAMPLE_WEIGHT_CREATE_INFO_QCOM";
+ case VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID:
+ return "VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID";
+ case VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR";
+ case VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA:
+ return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA";
+ case VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR";
+ case VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT";
+ case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV:
+ return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV";
+ case VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA:
+ return "VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA";
+ case VK_STRUCTURE_TYPE_IMPORT_METAL_BUFFER_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_IMPORT_METAL_BUFFER_INFO_EXT";
+ case VK_STRUCTURE_TYPE_IMPORT_METAL_IO_SURFACE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_IMPORT_METAL_IO_SURFACE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_IMPORT_METAL_SHARED_EVENT_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_IMPORT_METAL_SHARED_EVENT_INFO_EXT";
+ case VK_STRUCTURE_TYPE_IMPORT_METAL_TEXTURE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_IMPORT_METAL_TEXTURE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR";
+ case VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA:
+ return "VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA";
+ case VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV:
+ return "VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV";
+ case VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV:
+ return "VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV";
+ case VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL:
+ return "VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL";
+ case VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK:
+ return "VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK";
+ case VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK:
+ return "VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK";
+ case VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE:
+ return "VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE";
+ case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO:
+ return "VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO";
+ case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO:
+ return "VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO";
+ case VK_STRUCTURE_TYPE_MEMORY_BARRIER:
+ return "VK_STRUCTURE_TYPE_MEMORY_BARRIER";
+ case VK_STRUCTURE_TYPE_MEMORY_BARRIER_2:
+ return "VK_STRUCTURE_TYPE_MEMORY_BARRIER_2";
+ case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO:
+ return "VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO";
+ case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS:
+ return "VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS";
+ case VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR:
+ return "VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR";
+ case VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID:
+ return "VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID";
+ case VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR";
+ case VK_STRUCTURE_TYPE_MEMORY_GET_REMOTE_ADDRESS_INFO_NV:
+ return "VK_STRUCTURE_TYPE_MEMORY_GET_REMOTE_ADDRESS_INFO_NV";
+ case VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA:
+ return "VK_STRUCTURE_TYPE_MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA";
+ case VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO:
+ return "VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO";
+ case VK_STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2:
+ return "VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2";
+ case VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR:
+ return "VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR";
+ case VK_STRUCTURE_TYPE_MEMORY_ZIRCON_HANDLE_PROPERTIES_FUCHSIA:
+ return "VK_STRUCTURE_TYPE_MEMORY_ZIRCON_HANDLE_PROPERTIES_FUCHSIA";
+ case VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_MICROMAP_BUILD_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_MICROMAP_BUILD_INFO_EXT";
+ case VK_STRUCTURE_TYPE_MICROMAP_BUILD_SIZES_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_MICROMAP_BUILD_SIZES_INFO_EXT";
+ case VK_STRUCTURE_TYPE_MICROMAP_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_MICROMAP_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_MICROMAP_VERSION_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_MICROMAP_VERSION_INFO_EXT";
+ case VK_STRUCTURE_TYPE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_INFO_EXT";
+ case VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX:
+ return "VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX";
+ case VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_OPAQUE_CAPTURE_DESCRIPTOR_DATA_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_OPAQUE_CAPTURE_DESCRIPTOR_DATA_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_OPTICAL_FLOW_EXECUTE_INFO_NV:
+ return "VK_STRUCTURE_TYPE_OPTICAL_FLOW_EXECUTE_INFO_NV";
+ case VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_INFO_NV:
+ return "VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_INFO_NV";
+ case VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_PROPERTIES_NV:
+ return "VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_PROPERTIES_NV";
+ case VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_INFO_NV:
+ return "VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_INFO_NV";
+ case VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_PRIVATE_DATA_INFO_NV:
+ return "VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_PRIVATE_DATA_INFO_NV";
+ case VK_STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL:
+ return "VK_STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL";
+ case VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR:
+ return "VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR";
+ case VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR:
+ return "VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR";
+ case VK_STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL:
+ return "VK_STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL";
+ case VK_STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL:
+ return "VK_STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL";
+ case VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR";
+ case VK_STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL:
+ return "VK_STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ADDRESS_BINDING_REPORT_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ADDRESS_BINDING_REPORT_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_FEATURES_HUAWEI:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_FEATURES_HUAWEI";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_PROPERTIES_HUAWEI:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_PROPERTIES_HUAWEI";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_FEATURES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_FEATURES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_PROPERTIES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_PROPERTIES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLAMP_ZERO_ONE_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLAMP_ZERO_ONE_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_DENSITY_MAP_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_DENSITY_MAP_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_SET_HOST_MAPPING_FEATURES_VALVE:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_SET_HOST_MAPPING_FEATURES_VALVE";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FAULT_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FAULT_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_QCOM:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_QCOM";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_QCOM:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_QCOM";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_KHR";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_FEATURES_QCOM:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_FEATURES_QCOM";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_PROPERTIES_QCOM:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_PROPERTIES_QCOM";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_DITHERING_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_DITHERING_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_FEATURES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_FEATURES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_PROPERTIES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_PROPERTIES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_VIEWPORTS_FEATURES_QCOM:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_VIEWPORTS_FEATURES_QCOM";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_FEATURES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_FEATURES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_PROPERTIES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_PROPERTIES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES";
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_BARRIER_FEATURES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_BARRIER_FEATURES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVES_GENERATED_QUERY_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVES_GENERATED_QUERY_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_FEATURES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_FEATURES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_PROPERTIES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_PROPERTIES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_PROPERTIES_ARM:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_PROPERTIES_ARM";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SWAPCHAIN_MAINTENANCE_1_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SWAPCHAIN_MAINTENANCE_1_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_FORMAT_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_FORMAT_INFO_KHR";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_PROPERTIES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_PROPERTIES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES:
+ return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES";
+ case VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD:
+ return "VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD";
+ case VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV:
+ return "VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV";
+ case VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV:
+ return "VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV";
+ case VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV:
+ return "VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV";
+ case VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR:
+ return "VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR";
+ case VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR:
+ return "VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR";
+ case VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR:
+ return "VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR";
+ case VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV:
+ return "VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV";
+ case VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_PIPELINE_PROPERTIES_IDENTIFIER_EXT:
+ return "VK_STRUCTURE_TYPE_PIPELINE_PROPERTIES_IDENTIFIER_EXT";
+ case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD:
+ return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD";
+ case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV:
+ return "VK_STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV";
+ case VK_STRUCTURE_TYPE_PIPELINE_ROBUSTNESS_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_PIPELINE_ROBUSTNESS_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV:
+ return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV";
+ case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV:
+ return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV";
+ case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV:
+ return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV";
+ case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV:
+ return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV";
+ case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV:
+ return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV";
+ case VK_STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP:
+ return "VK_STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP";
+ case VK_STRUCTURE_TYPE_PRESENT_ID_KHR:
+ return "VK_STRUCTURE_TYPE_PRESENT_ID_KHR";
+ case VK_STRUCTURE_TYPE_PRESENT_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_PRESENT_INFO_KHR";
+ case VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR:
+ return "VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR";
+ case VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE:
+ return "VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE";
+ case VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO:
+ return "VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO";
+ case VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL:
+ return "VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL";
+ case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV:
+ return "VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV";
+ case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV:
+ return "VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV";
+ case VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_KHR:
+ return "VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_KHR";
+ case VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2:
+ return "VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2";
+ case VK_STRUCTURE_TYPE_QUEUE_FAMILY_QUERY_RESULT_STATUS_PROPERTIES_KHR:
+ return "VK_STRUCTURE_TYPE_QUEUE_FAMILY_QUERY_RESULT_STATUS_PROPERTIES_KHR";
+ case VK_STRUCTURE_TYPE_QUEUE_FAMILY_VIDEO_PROPERTIES_KHR:
+ return "VK_STRUCTURE_TYPE_QUEUE_FAMILY_VIDEO_PROPERTIES_KHR";
+ case VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV:
+ return "VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV";
+ case VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV:
+ return "VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV";
+ case VK_STRUCTURE_TYPE_RELEASE_SWAPCHAIN_IMAGES_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_RELEASE_SWAPCHAIN_IMAGES_INFO_EXT";
+ case VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO:
+ return "VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO";
+ case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT";
+ case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR";
+ case VK_STRUCTURE_TYPE_RENDERING_INFO:
+ return "VK_STRUCTURE_TYPE_RENDERING_INFO";
+ case VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO:
+ return "VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO";
+ case VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO:
+ return "VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO";
+ case VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2:
+ return "VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2";
+ case VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT:
+ return "VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT";
+ case VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT";
+ case VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM:
+ return "VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM";
+ case VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2:
+ return "VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2";
+ case VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_SAMPLER_CAPTURE_DESCRIPTOR_DATA_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_SAMPLER_CAPTURE_DESCRIPTOR_DATA_INFO_EXT";
+ case VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES:
+ return "VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES";
+ case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO:
+ return "VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO";
+ case VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT";
+ case VK_STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX:
+ return "VK_STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX";
+ case VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR";
+ case VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA:
+ return "VK_STRUCTURE_TYPE_SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA";
+ case VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO:
+ return "VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO";
+ case VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO:
+ return "VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO";
+ case VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO:
+ return "VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO";
+ case VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO:
+ return "VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO";
+ case VK_STRUCTURE_TYPE_SHADER_MODULE_IDENTIFIER_EXT:
+ return "VK_STRUCTURE_TYPE_SHADER_MODULE_IDENTIFIER_EXT";
+ case VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR:
+ return "VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR";
+ case VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2:
+ return "VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2";
+ case VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2:
+ return "VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2";
+ case VK_STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP:
+ return "VK_STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP";
+ case VK_STRUCTURE_TYPE_SUBMIT_INFO:
+ return "VK_STRUCTURE_TYPE_SUBMIT_INFO";
+ case VK_STRUCTURE_TYPE_SUBMIT_INFO_2:
+ return "VK_STRUCTURE_TYPE_SUBMIT_INFO_2";
+ case VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO:
+ return "VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO";
+ case VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2:
+ return "VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2";
+ case VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2:
+ return "VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2";
+ case VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE:
+ return "VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE";
+ case VK_STRUCTURE_TYPE_SUBPASS_END_INFO:
+ return "VK_STRUCTURE_TYPE_SUBPASS_END_INFO";
+ case VK_STRUCTURE_TYPE_SUBPASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_QCOM:
+ return "VK_STRUCTURE_TYPE_SUBPASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_QCOM";
+ case VK_STRUCTURE_TYPE_SUBPASS_RESOLVE_PERFORMANCE_QUERY_EXT:
+ return "VK_STRUCTURE_TYPE_SUBPASS_RESOLVE_PERFORMANCE_QUERY_EXT";
+ case VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI:
+ return "VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI";
+ case VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_EXT:
+ return "VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_EXT";
+ case VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT:
+ return "VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT";
+ case VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR:
+ return "VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR";
+ case VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT:
+ return "VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT";
+ case VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_PRESENT_BARRIER_NV:
+ return "VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_PRESENT_BARRIER_NV";
+ case VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR:
+ return "VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR";
+ case VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT";
+ case VK_STRUCTURE_TYPE_SURFACE_PRESENT_MODE_COMPATIBILITY_EXT:
+ return "VK_STRUCTURE_TYPE_SURFACE_PRESENT_MODE_COMPATIBILITY_EXT";
+ case VK_STRUCTURE_TYPE_SURFACE_PRESENT_MODE_EXT:
+ return "VK_STRUCTURE_TYPE_SURFACE_PRESENT_MODE_EXT";
+ case VK_STRUCTURE_TYPE_SURFACE_PRESENT_SCALING_CAPABILITIES_EXT:
+ return "VK_STRUCTURE_TYPE_SURFACE_PRESENT_SCALING_CAPABILITIES_EXT";
+ case VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR:
+ return "VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR";
+ case VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD:
+ return "VK_STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD";
+ case VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_BARRIER_CREATE_INFO_NV:
+ return "VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_BARRIER_CREATE_INFO_NV";
+ case VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_FENCE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_FENCE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_MODES_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_MODES_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_MODE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_MODE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_SCALING_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_SCALING_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_SYSMEM_COLOR_SPACE_FUCHSIA:
+ return "VK_STRUCTURE_TYPE_SYSMEM_COLOR_SPACE_FUCHSIA";
+ case VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD:
+ return "VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD";
+ case VK_STRUCTURE_TYPE_TILE_PROPERTIES_QCOM:
+ return "VK_STRUCTURE_TYPE_TILE_PROPERTIES_QCOM";
+ case VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO:
+ return "VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO";
+ case VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT:
+ return "VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT:
+ return "VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT";
+ case VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT:
+ return "VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT";
+ case VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT:
+ return "VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT";
+ case VK_STRUCTURE_TYPE_VIDEO_BEGIN_CODING_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_BEGIN_CODING_INFO_KHR";
+ case VK_STRUCTURE_TYPE_VIDEO_CAPABILITIES_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_CAPABILITIES_KHR";
+ case VK_STRUCTURE_TYPE_VIDEO_CODING_CONTROL_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_CODING_CONTROL_INFO_KHR";
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_CAPABILITIES_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_CAPABILITIES_KHR";
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_KHR";
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_KHR";
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_KHR";
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_KHR";
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_KHR";
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_KHR";
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_USAGE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_DECODE_USAGE_INFO_KHR";
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_CAPABILITIES_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_CAPABILITIES_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_DPB_SLOT_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_DPB_SLOT_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_NALU_SLICE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_NALU_SLICE_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_LAYER_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_LAYER_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_REFERENCE_LISTS_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_REFERENCE_LISTS_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_DPB_SLOT_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_DPB_SLOT_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_EMIT_PICTURE_PARAMETERS_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_EMIT_PICTURE_PARAMETERS_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_NALU_SLICE_SEGMENT_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_NALU_SLICE_SEGMENT_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_REFERENCE_LISTS_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_REFERENCE_LISTS_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_VCL_FRAME_INFO_EXT:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_VCL_FRAME_INFO_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_LAYER_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_LAYER_INFO_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_USAGE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_USAGE_INFO_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+ case VK_STRUCTURE_TYPE_VIDEO_END_CODING_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_END_CODING_INFO_KHR";
+ case VK_STRUCTURE_TYPE_VIDEO_FORMAT_PROPERTIES_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_FORMAT_PROPERTIES_KHR";
+ case VK_STRUCTURE_TYPE_VIDEO_PICTURE_RESOURCE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_PICTURE_RESOURCE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_VIDEO_PROFILE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_PROFILE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_VIDEO_PROFILE_LIST_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_PROFILE_LIST_INFO_KHR";
+ case VK_STRUCTURE_TYPE_VIDEO_REFERENCE_SLOT_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_REFERENCE_SLOT_INFO_KHR";
+ case VK_STRUCTURE_TYPE_VIDEO_SESSION_CREATE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_SESSION_CREATE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_VIDEO_SESSION_MEMORY_REQUIREMENTS_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_SESSION_MEMORY_REQUIREMENTS_KHR";
+ case VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_UPDATE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_UPDATE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN:
+ return "VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN";
+ case VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV:
+ return "VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV";
+ case VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET:
+ return "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET";
+ case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR:
+ return "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR";
+ case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV:
+ return "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV";
+ case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK:
+ return "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK";
+ case VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR:
+ return "VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR";
+ default:
+ return "Unhandled VkStructureType";
+ }
+}
+
+static inline const char* string_VkPipelineCacheHeaderVersion(VkPipelineCacheHeaderVersion input_value)
+{
+ switch (input_value)
+ {
+ case VK_PIPELINE_CACHE_HEADER_VERSION_ONE:
+ return "VK_PIPELINE_CACHE_HEADER_VERSION_ONE";
+ default:
+ return "Unhandled VkPipelineCacheHeaderVersion";
+ }
+}
+
+static inline const char* string_VkAccessFlagBits(VkAccessFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR:
+ return "VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR";
+ case VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR:
+ return "VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR";
+ case VK_ACCESS_COLOR_ATTACHMENT_READ_BIT:
+ return "VK_ACCESS_COLOR_ATTACHMENT_READ_BIT";
+ case VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT:
+ return "VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT";
+ case VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT:
+ return "VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT";
+ case VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV:
+ return "VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV";
+ case VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV:
+ return "VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV";
+ case VK_ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT:
+ return "VK_ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT";
+ case VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT:
+ return "VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT";
+ case VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT:
+ return "VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT";
+ case VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT:
+ return "VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT";
+ case VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR:
+ return "VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR";
+ case VK_ACCESS_HOST_READ_BIT:
+ return "VK_ACCESS_HOST_READ_BIT";
+ case VK_ACCESS_HOST_WRITE_BIT:
+ return "VK_ACCESS_HOST_WRITE_BIT";
+ case VK_ACCESS_INDEX_READ_BIT:
+ return "VK_ACCESS_INDEX_READ_BIT";
+ case VK_ACCESS_INDIRECT_COMMAND_READ_BIT:
+ return "VK_ACCESS_INDIRECT_COMMAND_READ_BIT";
+ case VK_ACCESS_INPUT_ATTACHMENT_READ_BIT:
+ return "VK_ACCESS_INPUT_ATTACHMENT_READ_BIT";
+ case VK_ACCESS_MEMORY_READ_BIT:
+ return "VK_ACCESS_MEMORY_READ_BIT";
+ case VK_ACCESS_MEMORY_WRITE_BIT:
+ return "VK_ACCESS_MEMORY_WRITE_BIT";
+ case VK_ACCESS_NONE:
+ return "VK_ACCESS_NONE";
+ case VK_ACCESS_SHADER_READ_BIT:
+ return "VK_ACCESS_SHADER_READ_BIT";
+ case VK_ACCESS_SHADER_WRITE_BIT:
+ return "VK_ACCESS_SHADER_WRITE_BIT";
+ case VK_ACCESS_TRANSFER_READ_BIT:
+ return "VK_ACCESS_TRANSFER_READ_BIT";
+ case VK_ACCESS_TRANSFER_WRITE_BIT:
+ return "VK_ACCESS_TRANSFER_WRITE_BIT";
+ case VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT:
+ return "VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT";
+ case VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT:
+ return "VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT";
+ case VK_ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT:
+ return "VK_ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT";
+ case VK_ACCESS_UNIFORM_READ_BIT:
+ return "VK_ACCESS_UNIFORM_READ_BIT";
+ case VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT:
+ return "VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT";
+ default:
+ return "Unhandled VkAccessFlagBits";
+ }
+}
+
+static inline std::string string_VkAccessFlags(VkAccessFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkAccessFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkAccessFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkImageLayout(VkImageLayout input_value)
+{
+ switch (input_value)
+ {
+ case VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT:
+ return "VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT";
+ case VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL:
+ return "VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL";
+ case VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL:
+ return "VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL";
+ case VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL:
+ return "VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL";
+ case VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL:
+ return "VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL";
+ case VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL:
+ return "VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL";
+ case VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL:
+ return "VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL";
+ case VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL:
+ return "VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL";
+ case VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL:
+ return "VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL";
+ case VK_IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT:
+ return "VK_IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT";
+ case VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR:
+ return "VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR";
+ case VK_IMAGE_LAYOUT_GENERAL:
+ return "VK_IMAGE_LAYOUT_GENERAL";
+ case VK_IMAGE_LAYOUT_PREINITIALIZED:
+ return "VK_IMAGE_LAYOUT_PREINITIALIZED";
+ case VK_IMAGE_LAYOUT_PRESENT_SRC_KHR:
+ return "VK_IMAGE_LAYOUT_PRESENT_SRC_KHR";
+ case VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL:
+ return "VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL";
+ case VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL:
+ return "VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL";
+ case VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR:
+ return "VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR";
+ case VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL:
+ return "VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL";
+ case VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL:
+ return "VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL";
+ case VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL:
+ return "VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL";
+ case VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL:
+ return "VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL";
+ case VK_IMAGE_LAYOUT_UNDEFINED:
+ return "VK_IMAGE_LAYOUT_UNDEFINED";
+ case VK_IMAGE_LAYOUT_VIDEO_DECODE_DPB_KHR:
+ return "VK_IMAGE_LAYOUT_VIDEO_DECODE_DPB_KHR";
+ case VK_IMAGE_LAYOUT_VIDEO_DECODE_DST_KHR:
+ return "VK_IMAGE_LAYOUT_VIDEO_DECODE_DST_KHR";
+ case VK_IMAGE_LAYOUT_VIDEO_DECODE_SRC_KHR:
+ return "VK_IMAGE_LAYOUT_VIDEO_DECODE_SRC_KHR";
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_IMAGE_LAYOUT_VIDEO_ENCODE_DPB_KHR:
+ return "VK_IMAGE_LAYOUT_VIDEO_ENCODE_DPB_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_IMAGE_LAYOUT_VIDEO_ENCODE_DST_KHR:
+ return "VK_IMAGE_LAYOUT_VIDEO_ENCODE_DST_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_IMAGE_LAYOUT_VIDEO_ENCODE_SRC_KHR:
+ return "VK_IMAGE_LAYOUT_VIDEO_ENCODE_SRC_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+ default:
+ return "Unhandled VkImageLayout";
+ }
+}
+
+static inline const char* string_VkImageAspectFlagBits(VkImageAspectFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_IMAGE_ASPECT_COLOR_BIT:
+ return "VK_IMAGE_ASPECT_COLOR_BIT";
+ case VK_IMAGE_ASPECT_DEPTH_BIT:
+ return "VK_IMAGE_ASPECT_DEPTH_BIT";
+ case VK_IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT:
+ return "VK_IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT";
+ case VK_IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT:
+ return "VK_IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT";
+ case VK_IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT:
+ return "VK_IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT";
+ case VK_IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT:
+ return "VK_IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT";
+ case VK_IMAGE_ASPECT_METADATA_BIT:
+ return "VK_IMAGE_ASPECT_METADATA_BIT";
+ case VK_IMAGE_ASPECT_NONE:
+ return "VK_IMAGE_ASPECT_NONE";
+ case VK_IMAGE_ASPECT_PLANE_0_BIT:
+ return "VK_IMAGE_ASPECT_PLANE_0_BIT";
+ case VK_IMAGE_ASPECT_PLANE_1_BIT:
+ return "VK_IMAGE_ASPECT_PLANE_1_BIT";
+ case VK_IMAGE_ASPECT_PLANE_2_BIT:
+ return "VK_IMAGE_ASPECT_PLANE_2_BIT";
+ case VK_IMAGE_ASPECT_STENCIL_BIT:
+ return "VK_IMAGE_ASPECT_STENCIL_BIT";
+ default:
+ return "Unhandled VkImageAspectFlagBits";
+ }
+}
+
+static inline std::string string_VkImageAspectFlags(VkImageAspectFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkImageAspectFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkImageAspectFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkObjectType(VkObjectType input_value)
+{
+ switch (input_value)
+ {
+ case VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR:
+ return "VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR";
+ case VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV:
+ return "VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV";
+ case VK_OBJECT_TYPE_BUFFER:
+ return "VK_OBJECT_TYPE_BUFFER";
+ case VK_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA:
+ return "VK_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA";
+ case VK_OBJECT_TYPE_BUFFER_VIEW:
+ return "VK_OBJECT_TYPE_BUFFER_VIEW";
+ case VK_OBJECT_TYPE_COMMAND_BUFFER:
+ return "VK_OBJECT_TYPE_COMMAND_BUFFER";
+ case VK_OBJECT_TYPE_COMMAND_POOL:
+ return "VK_OBJECT_TYPE_COMMAND_POOL";
+ case VK_OBJECT_TYPE_CU_FUNCTION_NVX:
+ return "VK_OBJECT_TYPE_CU_FUNCTION_NVX";
+ case VK_OBJECT_TYPE_CU_MODULE_NVX:
+ return "VK_OBJECT_TYPE_CU_MODULE_NVX";
+ case VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT:
+ return "VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT";
+ case VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT:
+ return "VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT";
+ case VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR:
+ return "VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR";
+ case VK_OBJECT_TYPE_DESCRIPTOR_POOL:
+ return "VK_OBJECT_TYPE_DESCRIPTOR_POOL";
+ case VK_OBJECT_TYPE_DESCRIPTOR_SET:
+ return "VK_OBJECT_TYPE_DESCRIPTOR_SET";
+ case VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT:
+ return "VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT";
+ case VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE:
+ return "VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE";
+ case VK_OBJECT_TYPE_DEVICE:
+ return "VK_OBJECT_TYPE_DEVICE";
+ case VK_OBJECT_TYPE_DEVICE_MEMORY:
+ return "VK_OBJECT_TYPE_DEVICE_MEMORY";
+ case VK_OBJECT_TYPE_DISPLAY_KHR:
+ return "VK_OBJECT_TYPE_DISPLAY_KHR";
+ case VK_OBJECT_TYPE_DISPLAY_MODE_KHR:
+ return "VK_OBJECT_TYPE_DISPLAY_MODE_KHR";
+ case VK_OBJECT_TYPE_EVENT:
+ return "VK_OBJECT_TYPE_EVENT";
+ case VK_OBJECT_TYPE_FENCE:
+ return "VK_OBJECT_TYPE_FENCE";
+ case VK_OBJECT_TYPE_FRAMEBUFFER:
+ return "VK_OBJECT_TYPE_FRAMEBUFFER";
+ case VK_OBJECT_TYPE_IMAGE:
+ return "VK_OBJECT_TYPE_IMAGE";
+ case VK_OBJECT_TYPE_IMAGE_VIEW:
+ return "VK_OBJECT_TYPE_IMAGE_VIEW";
+ case VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV:
+ return "VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV";
+ case VK_OBJECT_TYPE_INSTANCE:
+ return "VK_OBJECT_TYPE_INSTANCE";
+ case VK_OBJECT_TYPE_MICROMAP_EXT:
+ return "VK_OBJECT_TYPE_MICROMAP_EXT";
+ case VK_OBJECT_TYPE_OPTICAL_FLOW_SESSION_NV:
+ return "VK_OBJECT_TYPE_OPTICAL_FLOW_SESSION_NV";
+ case VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL:
+ return "VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL";
+ case VK_OBJECT_TYPE_PHYSICAL_DEVICE:
+ return "VK_OBJECT_TYPE_PHYSICAL_DEVICE";
+ case VK_OBJECT_TYPE_PIPELINE:
+ return "VK_OBJECT_TYPE_PIPELINE";
+ case VK_OBJECT_TYPE_PIPELINE_CACHE:
+ return "VK_OBJECT_TYPE_PIPELINE_CACHE";
+ case VK_OBJECT_TYPE_PIPELINE_LAYOUT:
+ return "VK_OBJECT_TYPE_PIPELINE_LAYOUT";
+ case VK_OBJECT_TYPE_PRIVATE_DATA_SLOT:
+ return "VK_OBJECT_TYPE_PRIVATE_DATA_SLOT";
+ case VK_OBJECT_TYPE_QUERY_POOL:
+ return "VK_OBJECT_TYPE_QUERY_POOL";
+ case VK_OBJECT_TYPE_QUEUE:
+ return "VK_OBJECT_TYPE_QUEUE";
+ case VK_OBJECT_TYPE_RENDER_PASS:
+ return "VK_OBJECT_TYPE_RENDER_PASS";
+ case VK_OBJECT_TYPE_SAMPLER:
+ return "VK_OBJECT_TYPE_SAMPLER";
+ case VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION:
+ return "VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION";
+ case VK_OBJECT_TYPE_SEMAPHORE:
+ return "VK_OBJECT_TYPE_SEMAPHORE";
+ case VK_OBJECT_TYPE_SHADER_MODULE:
+ return "VK_OBJECT_TYPE_SHADER_MODULE";
+ case VK_OBJECT_TYPE_SURFACE_KHR:
+ return "VK_OBJECT_TYPE_SURFACE_KHR";
+ case VK_OBJECT_TYPE_SWAPCHAIN_KHR:
+ return "VK_OBJECT_TYPE_SWAPCHAIN_KHR";
+ case VK_OBJECT_TYPE_UNKNOWN:
+ return "VK_OBJECT_TYPE_UNKNOWN";
+ case VK_OBJECT_TYPE_VALIDATION_CACHE_EXT:
+ return "VK_OBJECT_TYPE_VALIDATION_CACHE_EXT";
+ case VK_OBJECT_TYPE_VIDEO_SESSION_KHR:
+ return "VK_OBJECT_TYPE_VIDEO_SESSION_KHR";
+ case VK_OBJECT_TYPE_VIDEO_SESSION_PARAMETERS_KHR:
+ return "VK_OBJECT_TYPE_VIDEO_SESSION_PARAMETERS_KHR";
+ default:
+ return "Unhandled VkObjectType";
+ }
+}
+
+static inline const char* string_VkVendorId(VkVendorId input_value)
+{
+ switch (input_value)
+ {
+ case VK_VENDOR_ID_CODEPLAY:
+ return "VK_VENDOR_ID_CODEPLAY";
+ case VK_VENDOR_ID_KAZAN:
+ return "VK_VENDOR_ID_KAZAN";
+ case VK_VENDOR_ID_MESA:
+ return "VK_VENDOR_ID_MESA";
+ case VK_VENDOR_ID_POCL:
+ return "VK_VENDOR_ID_POCL";
+ case VK_VENDOR_ID_VIV:
+ return "VK_VENDOR_ID_VIV";
+ case VK_VENDOR_ID_VSI:
+ return "VK_VENDOR_ID_VSI";
+ default:
+ return "Unhandled VkVendorId";
+ }
+}
+
+static inline const char* string_VkSystemAllocationScope(VkSystemAllocationScope input_value)
+{
+ switch (input_value)
+ {
+ case VK_SYSTEM_ALLOCATION_SCOPE_CACHE:
+ return "VK_SYSTEM_ALLOCATION_SCOPE_CACHE";
+ case VK_SYSTEM_ALLOCATION_SCOPE_COMMAND:
+ return "VK_SYSTEM_ALLOCATION_SCOPE_COMMAND";
+ case VK_SYSTEM_ALLOCATION_SCOPE_DEVICE:
+ return "VK_SYSTEM_ALLOCATION_SCOPE_DEVICE";
+ case VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE:
+ return "VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE";
+ case VK_SYSTEM_ALLOCATION_SCOPE_OBJECT:
+ return "VK_SYSTEM_ALLOCATION_SCOPE_OBJECT";
+ default:
+ return "Unhandled VkSystemAllocationScope";
+ }
+}
+
+static inline const char* string_VkInternalAllocationType(VkInternalAllocationType input_value)
+{
+ switch (input_value)
+ {
+ case VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE:
+ return "VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE";
+ default:
+ return "Unhandled VkInternalAllocationType";
+ }
+}
+
+static inline const char* string_VkFormat(VkFormat input_value)
+{
+ switch (input_value)
+ {
+ case VK_FORMAT_A1R5G5B5_UNORM_PACK16:
+ return "VK_FORMAT_A1R5G5B5_UNORM_PACK16";
+ case VK_FORMAT_A2B10G10R10_SINT_PACK32:
+ return "VK_FORMAT_A2B10G10R10_SINT_PACK32";
+ case VK_FORMAT_A2B10G10R10_SNORM_PACK32:
+ return "VK_FORMAT_A2B10G10R10_SNORM_PACK32";
+ case VK_FORMAT_A2B10G10R10_SSCALED_PACK32:
+ return "VK_FORMAT_A2B10G10R10_SSCALED_PACK32";
+ case VK_FORMAT_A2B10G10R10_UINT_PACK32:
+ return "VK_FORMAT_A2B10G10R10_UINT_PACK32";
+ case VK_FORMAT_A2B10G10R10_UNORM_PACK32:
+ return "VK_FORMAT_A2B10G10R10_UNORM_PACK32";
+ case VK_FORMAT_A2B10G10R10_USCALED_PACK32:
+ return "VK_FORMAT_A2B10G10R10_USCALED_PACK32";
+ case VK_FORMAT_A2R10G10B10_SINT_PACK32:
+ return "VK_FORMAT_A2R10G10B10_SINT_PACK32";
+ case VK_FORMAT_A2R10G10B10_SNORM_PACK32:
+ return "VK_FORMAT_A2R10G10B10_SNORM_PACK32";
+ case VK_FORMAT_A2R10G10B10_SSCALED_PACK32:
+ return "VK_FORMAT_A2R10G10B10_SSCALED_PACK32";
+ case VK_FORMAT_A2R10G10B10_UINT_PACK32:
+ return "VK_FORMAT_A2R10G10B10_UINT_PACK32";
+ case VK_FORMAT_A2R10G10B10_UNORM_PACK32:
+ return "VK_FORMAT_A2R10G10B10_UNORM_PACK32";
+ case VK_FORMAT_A2R10G10B10_USCALED_PACK32:
+ return "VK_FORMAT_A2R10G10B10_USCALED_PACK32";
+ case VK_FORMAT_A4B4G4R4_UNORM_PACK16:
+ return "VK_FORMAT_A4B4G4R4_UNORM_PACK16";
+ case VK_FORMAT_A4R4G4B4_UNORM_PACK16:
+ return "VK_FORMAT_A4R4G4B4_UNORM_PACK16";
+ case VK_FORMAT_A8B8G8R8_SINT_PACK32:
+ return "VK_FORMAT_A8B8G8R8_SINT_PACK32";
+ case VK_FORMAT_A8B8G8R8_SNORM_PACK32:
+ return "VK_FORMAT_A8B8G8R8_SNORM_PACK32";
+ case VK_FORMAT_A8B8G8R8_SRGB_PACK32:
+ return "VK_FORMAT_A8B8G8R8_SRGB_PACK32";
+ case VK_FORMAT_A8B8G8R8_SSCALED_PACK32:
+ return "VK_FORMAT_A8B8G8R8_SSCALED_PACK32";
+ case VK_FORMAT_A8B8G8R8_UINT_PACK32:
+ return "VK_FORMAT_A8B8G8R8_UINT_PACK32";
+ case VK_FORMAT_A8B8G8R8_UNORM_PACK32:
+ return "VK_FORMAT_A8B8G8R8_UNORM_PACK32";
+ case VK_FORMAT_A8B8G8R8_USCALED_PACK32:
+ return "VK_FORMAT_A8B8G8R8_USCALED_PACK32";
+ case VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK:
+ return "VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK";
+ case VK_FORMAT_ASTC_10x10_SRGB_BLOCK:
+ return "VK_FORMAT_ASTC_10x10_SRGB_BLOCK";
+ case VK_FORMAT_ASTC_10x10_UNORM_BLOCK:
+ return "VK_FORMAT_ASTC_10x10_UNORM_BLOCK";
+ case VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK:
+ return "VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK";
+ case VK_FORMAT_ASTC_10x5_SRGB_BLOCK:
+ return "VK_FORMAT_ASTC_10x5_SRGB_BLOCK";
+ case VK_FORMAT_ASTC_10x5_UNORM_BLOCK:
+ return "VK_FORMAT_ASTC_10x5_UNORM_BLOCK";
+ case VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK:
+ return "VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK";
+ case VK_FORMAT_ASTC_10x6_SRGB_BLOCK:
+ return "VK_FORMAT_ASTC_10x6_SRGB_BLOCK";
+ case VK_FORMAT_ASTC_10x6_UNORM_BLOCK:
+ return "VK_FORMAT_ASTC_10x6_UNORM_BLOCK";
+ case VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK:
+ return "VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK";
+ case VK_FORMAT_ASTC_10x8_SRGB_BLOCK:
+ return "VK_FORMAT_ASTC_10x8_SRGB_BLOCK";
+ case VK_FORMAT_ASTC_10x8_UNORM_BLOCK:
+ return "VK_FORMAT_ASTC_10x8_UNORM_BLOCK";
+ case VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK:
+ return "VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK";
+ case VK_FORMAT_ASTC_12x10_SRGB_BLOCK:
+ return "VK_FORMAT_ASTC_12x10_SRGB_BLOCK";
+ case VK_FORMAT_ASTC_12x10_UNORM_BLOCK:
+ return "VK_FORMAT_ASTC_12x10_UNORM_BLOCK";
+ case VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK:
+ return "VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK";
+ case VK_FORMAT_ASTC_12x12_SRGB_BLOCK:
+ return "VK_FORMAT_ASTC_12x12_SRGB_BLOCK";
+ case VK_FORMAT_ASTC_12x12_UNORM_BLOCK:
+ return "VK_FORMAT_ASTC_12x12_UNORM_BLOCK";
+ case VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK:
+ return "VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK";
+ case VK_FORMAT_ASTC_4x4_SRGB_BLOCK:
+ return "VK_FORMAT_ASTC_4x4_SRGB_BLOCK";
+ case VK_FORMAT_ASTC_4x4_UNORM_BLOCK:
+ return "VK_FORMAT_ASTC_4x4_UNORM_BLOCK";
+ case VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK:
+ return "VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK";
+ case VK_FORMAT_ASTC_5x4_SRGB_BLOCK:
+ return "VK_FORMAT_ASTC_5x4_SRGB_BLOCK";
+ case VK_FORMAT_ASTC_5x4_UNORM_BLOCK:
+ return "VK_FORMAT_ASTC_5x4_UNORM_BLOCK";
+ case VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK:
+ return "VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK";
+ case VK_FORMAT_ASTC_5x5_SRGB_BLOCK:
+ return "VK_FORMAT_ASTC_5x5_SRGB_BLOCK";
+ case VK_FORMAT_ASTC_5x5_UNORM_BLOCK:
+ return "VK_FORMAT_ASTC_5x5_UNORM_BLOCK";
+ case VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK:
+ return "VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK";
+ case VK_FORMAT_ASTC_6x5_SRGB_BLOCK:
+ return "VK_FORMAT_ASTC_6x5_SRGB_BLOCK";
+ case VK_FORMAT_ASTC_6x5_UNORM_BLOCK:
+ return "VK_FORMAT_ASTC_6x5_UNORM_BLOCK";
+ case VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK:
+ return "VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK";
+ case VK_FORMAT_ASTC_6x6_SRGB_BLOCK:
+ return "VK_FORMAT_ASTC_6x6_SRGB_BLOCK";
+ case VK_FORMAT_ASTC_6x6_UNORM_BLOCK:
+ return "VK_FORMAT_ASTC_6x6_UNORM_BLOCK";
+ case VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK:
+ return "VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK";
+ case VK_FORMAT_ASTC_8x5_SRGB_BLOCK:
+ return "VK_FORMAT_ASTC_8x5_SRGB_BLOCK";
+ case VK_FORMAT_ASTC_8x5_UNORM_BLOCK:
+ return "VK_FORMAT_ASTC_8x5_UNORM_BLOCK";
+ case VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK:
+ return "VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK";
+ case VK_FORMAT_ASTC_8x6_SRGB_BLOCK:
+ return "VK_FORMAT_ASTC_8x6_SRGB_BLOCK";
+ case VK_FORMAT_ASTC_8x6_UNORM_BLOCK:
+ return "VK_FORMAT_ASTC_8x6_UNORM_BLOCK";
+ case VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK:
+ return "VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK";
+ case VK_FORMAT_ASTC_8x8_SRGB_BLOCK:
+ return "VK_FORMAT_ASTC_8x8_SRGB_BLOCK";
+ case VK_FORMAT_ASTC_8x8_UNORM_BLOCK:
+ return "VK_FORMAT_ASTC_8x8_UNORM_BLOCK";
+ case VK_FORMAT_B10G11R11_UFLOAT_PACK32:
+ return "VK_FORMAT_B10G11R11_UFLOAT_PACK32";
+ case VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16:
+ return "VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16";
+ case VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16:
+ return "VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16";
+ case VK_FORMAT_B16G16R16G16_422_UNORM:
+ return "VK_FORMAT_B16G16R16G16_422_UNORM";
+ case VK_FORMAT_B4G4R4A4_UNORM_PACK16:
+ return "VK_FORMAT_B4G4R4A4_UNORM_PACK16";
+ case VK_FORMAT_B5G5R5A1_UNORM_PACK16:
+ return "VK_FORMAT_B5G5R5A1_UNORM_PACK16";
+ case VK_FORMAT_B5G6R5_UNORM_PACK16:
+ return "VK_FORMAT_B5G6R5_UNORM_PACK16";
+ case VK_FORMAT_B8G8R8A8_SINT:
+ return "VK_FORMAT_B8G8R8A8_SINT";
+ case VK_FORMAT_B8G8R8A8_SNORM:
+ return "VK_FORMAT_B8G8R8A8_SNORM";
+ case VK_FORMAT_B8G8R8A8_SRGB:
+ return "VK_FORMAT_B8G8R8A8_SRGB";
+ case VK_FORMAT_B8G8R8A8_SSCALED:
+ return "VK_FORMAT_B8G8R8A8_SSCALED";
+ case VK_FORMAT_B8G8R8A8_UINT:
+ return "VK_FORMAT_B8G8R8A8_UINT";
+ case VK_FORMAT_B8G8R8A8_UNORM:
+ return "VK_FORMAT_B8G8R8A8_UNORM";
+ case VK_FORMAT_B8G8R8A8_USCALED:
+ return "VK_FORMAT_B8G8R8A8_USCALED";
+ case VK_FORMAT_B8G8R8G8_422_UNORM:
+ return "VK_FORMAT_B8G8R8G8_422_UNORM";
+ case VK_FORMAT_B8G8R8_SINT:
+ return "VK_FORMAT_B8G8R8_SINT";
+ case VK_FORMAT_B8G8R8_SNORM:
+ return "VK_FORMAT_B8G8R8_SNORM";
+ case VK_FORMAT_B8G8R8_SRGB:
+ return "VK_FORMAT_B8G8R8_SRGB";
+ case VK_FORMAT_B8G8R8_SSCALED:
+ return "VK_FORMAT_B8G8R8_SSCALED";
+ case VK_FORMAT_B8G8R8_UINT:
+ return "VK_FORMAT_B8G8R8_UINT";
+ case VK_FORMAT_B8G8R8_UNORM:
+ return "VK_FORMAT_B8G8R8_UNORM";
+ case VK_FORMAT_B8G8R8_USCALED:
+ return "VK_FORMAT_B8G8R8_USCALED";
+ case VK_FORMAT_BC1_RGBA_SRGB_BLOCK:
+ return "VK_FORMAT_BC1_RGBA_SRGB_BLOCK";
+ case VK_FORMAT_BC1_RGBA_UNORM_BLOCK:
+ return "VK_FORMAT_BC1_RGBA_UNORM_BLOCK";
+ case VK_FORMAT_BC1_RGB_SRGB_BLOCK:
+ return "VK_FORMAT_BC1_RGB_SRGB_BLOCK";
+ case VK_FORMAT_BC1_RGB_UNORM_BLOCK:
+ return "VK_FORMAT_BC1_RGB_UNORM_BLOCK";
+ case VK_FORMAT_BC2_SRGB_BLOCK:
+ return "VK_FORMAT_BC2_SRGB_BLOCK";
+ case VK_FORMAT_BC2_UNORM_BLOCK:
+ return "VK_FORMAT_BC2_UNORM_BLOCK";
+ case VK_FORMAT_BC3_SRGB_BLOCK:
+ return "VK_FORMAT_BC3_SRGB_BLOCK";
+ case VK_FORMAT_BC3_UNORM_BLOCK:
+ return "VK_FORMAT_BC3_UNORM_BLOCK";
+ case VK_FORMAT_BC4_SNORM_BLOCK:
+ return "VK_FORMAT_BC4_SNORM_BLOCK";
+ case VK_FORMAT_BC4_UNORM_BLOCK:
+ return "VK_FORMAT_BC4_UNORM_BLOCK";
+ case VK_FORMAT_BC5_SNORM_BLOCK:
+ return "VK_FORMAT_BC5_SNORM_BLOCK";
+ case VK_FORMAT_BC5_UNORM_BLOCK:
+ return "VK_FORMAT_BC5_UNORM_BLOCK";
+ case VK_FORMAT_BC6H_SFLOAT_BLOCK:
+ return "VK_FORMAT_BC6H_SFLOAT_BLOCK";
+ case VK_FORMAT_BC6H_UFLOAT_BLOCK:
+ return "VK_FORMAT_BC6H_UFLOAT_BLOCK";
+ case VK_FORMAT_BC7_SRGB_BLOCK:
+ return "VK_FORMAT_BC7_SRGB_BLOCK";
+ case VK_FORMAT_BC7_UNORM_BLOCK:
+ return "VK_FORMAT_BC7_UNORM_BLOCK";
+ case VK_FORMAT_D16_UNORM:
+ return "VK_FORMAT_D16_UNORM";
+ case VK_FORMAT_D16_UNORM_S8_UINT:
+ return "VK_FORMAT_D16_UNORM_S8_UINT";
+ case VK_FORMAT_D24_UNORM_S8_UINT:
+ return "VK_FORMAT_D24_UNORM_S8_UINT";
+ case VK_FORMAT_D32_SFLOAT:
+ return "VK_FORMAT_D32_SFLOAT";
+ case VK_FORMAT_D32_SFLOAT_S8_UINT:
+ return "VK_FORMAT_D32_SFLOAT_S8_UINT";
+ case VK_FORMAT_E5B9G9R9_UFLOAT_PACK32:
+ return "VK_FORMAT_E5B9G9R9_UFLOAT_PACK32";
+ case VK_FORMAT_EAC_R11G11_SNORM_BLOCK:
+ return "VK_FORMAT_EAC_R11G11_SNORM_BLOCK";
+ case VK_FORMAT_EAC_R11G11_UNORM_BLOCK:
+ return "VK_FORMAT_EAC_R11G11_UNORM_BLOCK";
+ case VK_FORMAT_EAC_R11_SNORM_BLOCK:
+ return "VK_FORMAT_EAC_R11_SNORM_BLOCK";
+ case VK_FORMAT_EAC_R11_UNORM_BLOCK:
+ return "VK_FORMAT_EAC_R11_UNORM_BLOCK";
+ case VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK:
+ return "VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK";
+ case VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK:
+ return "VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK";
+ case VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK:
+ return "VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK";
+ case VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK:
+ return "VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK";
+ case VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK:
+ return "VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK";
+ case VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK:
+ return "VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK";
+ case VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16:
+ return "VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16";
+ case VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16:
+ return "VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16";
+ case VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16:
+ return "VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16";
+ case VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16:
+ return "VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16";
+ case VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16:
+ return "VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16";
+ case VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16:
+ return "VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16";
+ case VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16:
+ return "VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16";
+ case VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16:
+ return "VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16";
+ case VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16:
+ return "VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16";
+ case VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16:
+ return "VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16";
+ case VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16:
+ return "VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16";
+ case VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16:
+ return "VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16";
+ case VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16:
+ return "VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16";
+ case VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16:
+ return "VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16";
+ case VK_FORMAT_G16B16G16R16_422_UNORM:
+ return "VK_FORMAT_G16B16G16R16_422_UNORM";
+ case VK_FORMAT_G16_B16R16_2PLANE_420_UNORM:
+ return "VK_FORMAT_G16_B16R16_2PLANE_420_UNORM";
+ case VK_FORMAT_G16_B16R16_2PLANE_422_UNORM:
+ return "VK_FORMAT_G16_B16R16_2PLANE_422_UNORM";
+ case VK_FORMAT_G16_B16R16_2PLANE_444_UNORM:
+ return "VK_FORMAT_G16_B16R16_2PLANE_444_UNORM";
+ case VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM:
+ return "VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM";
+ case VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM:
+ return "VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM";
+ case VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM:
+ return "VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM";
+ case VK_FORMAT_G8B8G8R8_422_UNORM:
+ return "VK_FORMAT_G8B8G8R8_422_UNORM";
+ case VK_FORMAT_G8_B8R8_2PLANE_420_UNORM:
+ return "VK_FORMAT_G8_B8R8_2PLANE_420_UNORM";
+ case VK_FORMAT_G8_B8R8_2PLANE_422_UNORM:
+ return "VK_FORMAT_G8_B8R8_2PLANE_422_UNORM";
+ case VK_FORMAT_G8_B8R8_2PLANE_444_UNORM:
+ return "VK_FORMAT_G8_B8R8_2PLANE_444_UNORM";
+ case VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM:
+ return "VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM";
+ case VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM:
+ return "VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM";
+ case VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM:
+ return "VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM";
+ case VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG:
+ return "VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG";
+ case VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG:
+ return "VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG";
+ case VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG:
+ return "VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG";
+ case VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG:
+ return "VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG";
+ case VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG:
+ return "VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG";
+ case VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG:
+ return "VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG";
+ case VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG:
+ return "VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG";
+ case VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG:
+ return "VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG";
+ case VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16:
+ return "VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16";
+ case VK_FORMAT_R10X6G10X6_UNORM_2PACK16:
+ return "VK_FORMAT_R10X6G10X6_UNORM_2PACK16";
+ case VK_FORMAT_R10X6_UNORM_PACK16:
+ return "VK_FORMAT_R10X6_UNORM_PACK16";
+ case VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16:
+ return "VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16";
+ case VK_FORMAT_R12X4G12X4_UNORM_2PACK16:
+ return "VK_FORMAT_R12X4G12X4_UNORM_2PACK16";
+ case VK_FORMAT_R12X4_UNORM_PACK16:
+ return "VK_FORMAT_R12X4_UNORM_PACK16";
+ case VK_FORMAT_R16G16B16A16_SFLOAT:
+ return "VK_FORMAT_R16G16B16A16_SFLOAT";
+ case VK_FORMAT_R16G16B16A16_SINT:
+ return "VK_FORMAT_R16G16B16A16_SINT";
+ case VK_FORMAT_R16G16B16A16_SNORM:
+ return "VK_FORMAT_R16G16B16A16_SNORM";
+ case VK_FORMAT_R16G16B16A16_SSCALED:
+ return "VK_FORMAT_R16G16B16A16_SSCALED";
+ case VK_FORMAT_R16G16B16A16_UINT:
+ return "VK_FORMAT_R16G16B16A16_UINT";
+ case VK_FORMAT_R16G16B16A16_UNORM:
+ return "VK_FORMAT_R16G16B16A16_UNORM";
+ case VK_FORMAT_R16G16B16A16_USCALED:
+ return "VK_FORMAT_R16G16B16A16_USCALED";
+ case VK_FORMAT_R16G16B16_SFLOAT:
+ return "VK_FORMAT_R16G16B16_SFLOAT";
+ case VK_FORMAT_R16G16B16_SINT:
+ return "VK_FORMAT_R16G16B16_SINT";
+ case VK_FORMAT_R16G16B16_SNORM:
+ return "VK_FORMAT_R16G16B16_SNORM";
+ case VK_FORMAT_R16G16B16_SSCALED:
+ return "VK_FORMAT_R16G16B16_SSCALED";
+ case VK_FORMAT_R16G16B16_UINT:
+ return "VK_FORMAT_R16G16B16_UINT";
+ case VK_FORMAT_R16G16B16_UNORM:
+ return "VK_FORMAT_R16G16B16_UNORM";
+ case VK_FORMAT_R16G16B16_USCALED:
+ return "VK_FORMAT_R16G16B16_USCALED";
+ case VK_FORMAT_R16G16_S10_5_NV:
+ return "VK_FORMAT_R16G16_S10_5_NV";
+ case VK_FORMAT_R16G16_SFLOAT:
+ return "VK_FORMAT_R16G16_SFLOAT";
+ case VK_FORMAT_R16G16_SINT:
+ return "VK_FORMAT_R16G16_SINT";
+ case VK_FORMAT_R16G16_SNORM:
+ return "VK_FORMAT_R16G16_SNORM";
+ case VK_FORMAT_R16G16_SSCALED:
+ return "VK_FORMAT_R16G16_SSCALED";
+ case VK_FORMAT_R16G16_UINT:
+ return "VK_FORMAT_R16G16_UINT";
+ case VK_FORMAT_R16G16_UNORM:
+ return "VK_FORMAT_R16G16_UNORM";
+ case VK_FORMAT_R16G16_USCALED:
+ return "VK_FORMAT_R16G16_USCALED";
+ case VK_FORMAT_R16_SFLOAT:
+ return "VK_FORMAT_R16_SFLOAT";
+ case VK_FORMAT_R16_SINT:
+ return "VK_FORMAT_R16_SINT";
+ case VK_FORMAT_R16_SNORM:
+ return "VK_FORMAT_R16_SNORM";
+ case VK_FORMAT_R16_SSCALED:
+ return "VK_FORMAT_R16_SSCALED";
+ case VK_FORMAT_R16_UINT:
+ return "VK_FORMAT_R16_UINT";
+ case VK_FORMAT_R16_UNORM:
+ return "VK_FORMAT_R16_UNORM";
+ case VK_FORMAT_R16_USCALED:
+ return "VK_FORMAT_R16_USCALED";
+ case VK_FORMAT_R32G32B32A32_SFLOAT:
+ return "VK_FORMAT_R32G32B32A32_SFLOAT";
+ case VK_FORMAT_R32G32B32A32_SINT:
+ return "VK_FORMAT_R32G32B32A32_SINT";
+ case VK_FORMAT_R32G32B32A32_UINT:
+ return "VK_FORMAT_R32G32B32A32_UINT";
+ case VK_FORMAT_R32G32B32_SFLOAT:
+ return "VK_FORMAT_R32G32B32_SFLOAT";
+ case VK_FORMAT_R32G32B32_SINT:
+ return "VK_FORMAT_R32G32B32_SINT";
+ case VK_FORMAT_R32G32B32_UINT:
+ return "VK_FORMAT_R32G32B32_UINT";
+ case VK_FORMAT_R32G32_SFLOAT:
+ return "VK_FORMAT_R32G32_SFLOAT";
+ case VK_FORMAT_R32G32_SINT:
+ return "VK_FORMAT_R32G32_SINT";
+ case VK_FORMAT_R32G32_UINT:
+ return "VK_FORMAT_R32G32_UINT";
+ case VK_FORMAT_R32_SFLOAT:
+ return "VK_FORMAT_R32_SFLOAT";
+ case VK_FORMAT_R32_SINT:
+ return "VK_FORMAT_R32_SINT";
+ case VK_FORMAT_R32_UINT:
+ return "VK_FORMAT_R32_UINT";
+ case VK_FORMAT_R4G4B4A4_UNORM_PACK16:
+ return "VK_FORMAT_R4G4B4A4_UNORM_PACK16";
+ case VK_FORMAT_R4G4_UNORM_PACK8:
+ return "VK_FORMAT_R4G4_UNORM_PACK8";
+ case VK_FORMAT_R5G5B5A1_UNORM_PACK16:
+ return "VK_FORMAT_R5G5B5A1_UNORM_PACK16";
+ case VK_FORMAT_R5G6B5_UNORM_PACK16:
+ return "VK_FORMAT_R5G6B5_UNORM_PACK16";
+ case VK_FORMAT_R64G64B64A64_SFLOAT:
+ return "VK_FORMAT_R64G64B64A64_SFLOAT";
+ case VK_FORMAT_R64G64B64A64_SINT:
+ return "VK_FORMAT_R64G64B64A64_SINT";
+ case VK_FORMAT_R64G64B64A64_UINT:
+ return "VK_FORMAT_R64G64B64A64_UINT";
+ case VK_FORMAT_R64G64B64_SFLOAT:
+ return "VK_FORMAT_R64G64B64_SFLOAT";
+ case VK_FORMAT_R64G64B64_SINT:
+ return "VK_FORMAT_R64G64B64_SINT";
+ case VK_FORMAT_R64G64B64_UINT:
+ return "VK_FORMAT_R64G64B64_UINT";
+ case VK_FORMAT_R64G64_SFLOAT:
+ return "VK_FORMAT_R64G64_SFLOAT";
+ case VK_FORMAT_R64G64_SINT:
+ return "VK_FORMAT_R64G64_SINT";
+ case VK_FORMAT_R64G64_UINT:
+ return "VK_FORMAT_R64G64_UINT";
+ case VK_FORMAT_R64_SFLOAT:
+ return "VK_FORMAT_R64_SFLOAT";
+ case VK_FORMAT_R64_SINT:
+ return "VK_FORMAT_R64_SINT";
+ case VK_FORMAT_R64_UINT:
+ return "VK_FORMAT_R64_UINT";
+ case VK_FORMAT_R8G8B8A8_SINT:
+ return "VK_FORMAT_R8G8B8A8_SINT";
+ case VK_FORMAT_R8G8B8A8_SNORM:
+ return "VK_FORMAT_R8G8B8A8_SNORM";
+ case VK_FORMAT_R8G8B8A8_SRGB:
+ return "VK_FORMAT_R8G8B8A8_SRGB";
+ case VK_FORMAT_R8G8B8A8_SSCALED:
+ return "VK_FORMAT_R8G8B8A8_SSCALED";
+ case VK_FORMAT_R8G8B8A8_UINT:
+ return "VK_FORMAT_R8G8B8A8_UINT";
+ case VK_FORMAT_R8G8B8A8_UNORM:
+ return "VK_FORMAT_R8G8B8A8_UNORM";
+ case VK_FORMAT_R8G8B8A8_USCALED:
+ return "VK_FORMAT_R8G8B8A8_USCALED";
+ case VK_FORMAT_R8G8B8_SINT:
+ return "VK_FORMAT_R8G8B8_SINT";
+ case VK_FORMAT_R8G8B8_SNORM:
+ return "VK_FORMAT_R8G8B8_SNORM";
+ case VK_FORMAT_R8G8B8_SRGB:
+ return "VK_FORMAT_R8G8B8_SRGB";
+ case VK_FORMAT_R8G8B8_SSCALED:
+ return "VK_FORMAT_R8G8B8_SSCALED";
+ case VK_FORMAT_R8G8B8_UINT:
+ return "VK_FORMAT_R8G8B8_UINT";
+ case VK_FORMAT_R8G8B8_UNORM:
+ return "VK_FORMAT_R8G8B8_UNORM";
+ case VK_FORMAT_R8G8B8_USCALED:
+ return "VK_FORMAT_R8G8B8_USCALED";
+ case VK_FORMAT_R8G8_SINT:
+ return "VK_FORMAT_R8G8_SINT";
+ case VK_FORMAT_R8G8_SNORM:
+ return "VK_FORMAT_R8G8_SNORM";
+ case VK_FORMAT_R8G8_SRGB:
+ return "VK_FORMAT_R8G8_SRGB";
+ case VK_FORMAT_R8G8_SSCALED:
+ return "VK_FORMAT_R8G8_SSCALED";
+ case VK_FORMAT_R8G8_UINT:
+ return "VK_FORMAT_R8G8_UINT";
+ case VK_FORMAT_R8G8_UNORM:
+ return "VK_FORMAT_R8G8_UNORM";
+ case VK_FORMAT_R8G8_USCALED:
+ return "VK_FORMAT_R8G8_USCALED";
+ case VK_FORMAT_R8_SINT:
+ return "VK_FORMAT_R8_SINT";
+ case VK_FORMAT_R8_SNORM:
+ return "VK_FORMAT_R8_SNORM";
+ case VK_FORMAT_R8_SRGB:
+ return "VK_FORMAT_R8_SRGB";
+ case VK_FORMAT_R8_SSCALED:
+ return "VK_FORMAT_R8_SSCALED";
+ case VK_FORMAT_R8_UINT:
+ return "VK_FORMAT_R8_UINT";
+ case VK_FORMAT_R8_UNORM:
+ return "VK_FORMAT_R8_UNORM";
+ case VK_FORMAT_R8_USCALED:
+ return "VK_FORMAT_R8_USCALED";
+ case VK_FORMAT_S8_UINT:
+ return "VK_FORMAT_S8_UINT";
+ case VK_FORMAT_UNDEFINED:
+ return "VK_FORMAT_UNDEFINED";
+ case VK_FORMAT_X8_D24_UNORM_PACK32:
+ return "VK_FORMAT_X8_D24_UNORM_PACK32";
+ default:
+ return "Unhandled VkFormat";
+ }
+}
+
+static inline const char* string_VkFormatFeatureFlagBits(VkFormatFeatureFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR:
+ return "VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR";
+ case VK_FORMAT_FEATURE_BLIT_DST_BIT:
+ return "VK_FORMAT_FEATURE_BLIT_DST_BIT";
+ case VK_FORMAT_FEATURE_BLIT_SRC_BIT:
+ return "VK_FORMAT_FEATURE_BLIT_SRC_BIT";
+ case VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT:
+ return "VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT";
+ case VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT:
+ return "VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT";
+ case VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT:
+ return "VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT";
+ case VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT:
+ return "VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT";
+ case VK_FORMAT_FEATURE_DISJOINT_BIT:
+ return "VK_FORMAT_FEATURE_DISJOINT_BIT";
+ case VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT:
+ return "VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT";
+ case VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR:
+ return "VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR";
+ case VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT:
+ return "VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT";
+ case VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT:
+ return "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT";
+ case VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT:
+ return "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT";
+ case VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT:
+ return "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT";
+ case VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT:
+ return "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT";
+ case VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT:
+ return "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT";
+ case VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT:
+ return "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT";
+ case VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT:
+ return "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT";
+ case VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT:
+ return "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT";
+ case VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT:
+ return "VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT";
+ case VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT:
+ return "VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT";
+ case VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT:
+ return "VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT";
+ case VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT:
+ return "VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT";
+ case VK_FORMAT_FEATURE_TRANSFER_DST_BIT:
+ return "VK_FORMAT_FEATURE_TRANSFER_DST_BIT";
+ case VK_FORMAT_FEATURE_TRANSFER_SRC_BIT:
+ return "VK_FORMAT_FEATURE_TRANSFER_SRC_BIT";
+ case VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT:
+ return "VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT";
+ case VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT:
+ return "VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT";
+ case VK_FORMAT_FEATURE_VIDEO_DECODE_DPB_BIT_KHR:
+ return "VK_FORMAT_FEATURE_VIDEO_DECODE_DPB_BIT_KHR";
+ case VK_FORMAT_FEATURE_VIDEO_DECODE_OUTPUT_BIT_KHR:
+ return "VK_FORMAT_FEATURE_VIDEO_DECODE_OUTPUT_BIT_KHR";
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_FORMAT_FEATURE_VIDEO_ENCODE_DPB_BIT_KHR:
+ return "VK_FORMAT_FEATURE_VIDEO_ENCODE_DPB_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_FORMAT_FEATURE_VIDEO_ENCODE_INPUT_BIT_KHR:
+ return "VK_FORMAT_FEATURE_VIDEO_ENCODE_INPUT_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+ default:
+ return "Unhandled VkFormatFeatureFlagBits";
+ }
+}
+
+static inline std::string string_VkFormatFeatureFlags(VkFormatFeatureFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkFormatFeatureFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkFormatFeatureFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkImageCreateFlagBits(VkImageCreateFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT:
+ return "VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT";
+ case VK_IMAGE_CREATE_2D_VIEW_COMPATIBLE_BIT_EXT:
+ return "VK_IMAGE_CREATE_2D_VIEW_COMPATIBLE_BIT_EXT";
+ case VK_IMAGE_CREATE_ALIAS_BIT:
+ return "VK_IMAGE_CREATE_ALIAS_BIT";
+ case VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT:
+ return "VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT";
+ case VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV:
+ return "VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV";
+ case VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT:
+ return "VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT";
+ case VK_IMAGE_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT:
+ return "VK_IMAGE_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT";
+ case VK_IMAGE_CREATE_DISJOINT_BIT:
+ return "VK_IMAGE_CREATE_DISJOINT_BIT";
+ case VK_IMAGE_CREATE_EXTENDED_USAGE_BIT:
+ return "VK_IMAGE_CREATE_EXTENDED_USAGE_BIT";
+ case VK_IMAGE_CREATE_FRAGMENT_DENSITY_MAP_OFFSET_BIT_QCOM:
+ return "VK_IMAGE_CREATE_FRAGMENT_DENSITY_MAP_OFFSET_BIT_QCOM";
+ case VK_IMAGE_CREATE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_BIT_EXT:
+ return "VK_IMAGE_CREATE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_BIT_EXT";
+ case VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT:
+ return "VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT";
+ case VK_IMAGE_CREATE_PROTECTED_BIT:
+ return "VK_IMAGE_CREATE_PROTECTED_BIT";
+ case VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT:
+ return "VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT";
+ case VK_IMAGE_CREATE_SPARSE_ALIASED_BIT:
+ return "VK_IMAGE_CREATE_SPARSE_ALIASED_BIT";
+ case VK_IMAGE_CREATE_SPARSE_BINDING_BIT:
+ return "VK_IMAGE_CREATE_SPARSE_BINDING_BIT";
+ case VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT:
+ return "VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT";
+ case VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT:
+ return "VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT";
+ case VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT:
+ return "VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT";
+ default:
+ return "Unhandled VkImageCreateFlagBits";
+ }
+}
+
+static inline std::string string_VkImageCreateFlags(VkImageCreateFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkImageCreateFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkImageCreateFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkSampleCountFlagBits(VkSampleCountFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_SAMPLE_COUNT_16_BIT:
+ return "VK_SAMPLE_COUNT_16_BIT";
+ case VK_SAMPLE_COUNT_1_BIT:
+ return "VK_SAMPLE_COUNT_1_BIT";
+ case VK_SAMPLE_COUNT_2_BIT:
+ return "VK_SAMPLE_COUNT_2_BIT";
+ case VK_SAMPLE_COUNT_32_BIT:
+ return "VK_SAMPLE_COUNT_32_BIT";
+ case VK_SAMPLE_COUNT_4_BIT:
+ return "VK_SAMPLE_COUNT_4_BIT";
+ case VK_SAMPLE_COUNT_64_BIT:
+ return "VK_SAMPLE_COUNT_64_BIT";
+ case VK_SAMPLE_COUNT_8_BIT:
+ return "VK_SAMPLE_COUNT_8_BIT";
+ default:
+ return "Unhandled VkSampleCountFlagBits";
+ }
+}
+
+static inline std::string string_VkSampleCountFlags(VkSampleCountFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkSampleCountFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkSampleCountFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkImageTiling(VkImageTiling input_value)
+{
+ switch (input_value)
+ {
+ case VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT:
+ return "VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT";
+ case VK_IMAGE_TILING_LINEAR:
+ return "VK_IMAGE_TILING_LINEAR";
+ case VK_IMAGE_TILING_OPTIMAL:
+ return "VK_IMAGE_TILING_OPTIMAL";
+ default:
+ return "Unhandled VkImageTiling";
+ }
+}
+
+static inline const char* string_VkImageType(VkImageType input_value)
+{
+ switch (input_value)
+ {
+ case VK_IMAGE_TYPE_1D:
+ return "VK_IMAGE_TYPE_1D";
+ case VK_IMAGE_TYPE_2D:
+ return "VK_IMAGE_TYPE_2D";
+ case VK_IMAGE_TYPE_3D:
+ return "VK_IMAGE_TYPE_3D";
+ default:
+ return "Unhandled VkImageType";
+ }
+}
+
+static inline const char* string_VkImageUsageFlagBits(VkImageUsageFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_IMAGE_USAGE_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT:
+ return "VK_IMAGE_USAGE_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT";
+ case VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT:
+ return "VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT";
+ case VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT:
+ return "VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT";
+ case VK_IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT:
+ return "VK_IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT";
+ case VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR:
+ return "VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR";
+ case VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT:
+ return "VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT";
+ case VK_IMAGE_USAGE_INVOCATION_MASK_BIT_HUAWEI:
+ return "VK_IMAGE_USAGE_INVOCATION_MASK_BIT_HUAWEI";
+ case VK_IMAGE_USAGE_SAMPLED_BIT:
+ return "VK_IMAGE_USAGE_SAMPLED_BIT";
+ case VK_IMAGE_USAGE_SAMPLE_BLOCK_MATCH_BIT_QCOM:
+ return "VK_IMAGE_USAGE_SAMPLE_BLOCK_MATCH_BIT_QCOM";
+ case VK_IMAGE_USAGE_SAMPLE_WEIGHT_BIT_QCOM:
+ return "VK_IMAGE_USAGE_SAMPLE_WEIGHT_BIT_QCOM";
+ case VK_IMAGE_USAGE_STORAGE_BIT:
+ return "VK_IMAGE_USAGE_STORAGE_BIT";
+ case VK_IMAGE_USAGE_TRANSFER_DST_BIT:
+ return "VK_IMAGE_USAGE_TRANSFER_DST_BIT";
+ case VK_IMAGE_USAGE_TRANSFER_SRC_BIT:
+ return "VK_IMAGE_USAGE_TRANSFER_SRC_BIT";
+ case VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT:
+ return "VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT";
+ case VK_IMAGE_USAGE_VIDEO_DECODE_DPB_BIT_KHR:
+ return "VK_IMAGE_USAGE_VIDEO_DECODE_DPB_BIT_KHR";
+ case VK_IMAGE_USAGE_VIDEO_DECODE_DST_BIT_KHR:
+ return "VK_IMAGE_USAGE_VIDEO_DECODE_DST_BIT_KHR";
+ case VK_IMAGE_USAGE_VIDEO_DECODE_SRC_BIT_KHR:
+ return "VK_IMAGE_USAGE_VIDEO_DECODE_SRC_BIT_KHR";
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_IMAGE_USAGE_VIDEO_ENCODE_DPB_BIT_KHR:
+ return "VK_IMAGE_USAGE_VIDEO_ENCODE_DPB_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_IMAGE_USAGE_VIDEO_ENCODE_DST_BIT_KHR:
+ return "VK_IMAGE_USAGE_VIDEO_ENCODE_DST_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR:
+ return "VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+ default:
+ return "Unhandled VkImageUsageFlagBits";
+ }
+}
+
+static inline std::string string_VkImageUsageFlags(VkImageUsageFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkImageUsageFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkImageUsageFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkInstanceCreateFlagBits(VkInstanceCreateFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_INSTANCE_CREATE_ENUMERATE_PORTABILITY_BIT_KHR:
+ return "VK_INSTANCE_CREATE_ENUMERATE_PORTABILITY_BIT_KHR";
+ default:
+ return "Unhandled VkInstanceCreateFlagBits";
+ }
+}
+
+static inline std::string string_VkInstanceCreateFlags(VkInstanceCreateFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkInstanceCreateFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkInstanceCreateFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkMemoryHeapFlagBits(VkMemoryHeapFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_MEMORY_HEAP_DEVICE_LOCAL_BIT:
+ return "VK_MEMORY_HEAP_DEVICE_LOCAL_BIT";
+ case VK_MEMORY_HEAP_MULTI_INSTANCE_BIT:
+ return "VK_MEMORY_HEAP_MULTI_INSTANCE_BIT";
+ default:
+ return "Unhandled VkMemoryHeapFlagBits";
+ }
+}
+
+static inline std::string string_VkMemoryHeapFlags(VkMemoryHeapFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkMemoryHeapFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkMemoryHeapFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkMemoryPropertyFlagBits(VkMemoryPropertyFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD:
+ return "VK_MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD";
+ case VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT:
+ return "VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT";
+ case VK_MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD:
+ return "VK_MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD";
+ case VK_MEMORY_PROPERTY_HOST_CACHED_BIT:
+ return "VK_MEMORY_PROPERTY_HOST_CACHED_BIT";
+ case VK_MEMORY_PROPERTY_HOST_COHERENT_BIT:
+ return "VK_MEMORY_PROPERTY_HOST_COHERENT_BIT";
+ case VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT:
+ return "VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT";
+ case VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT:
+ return "VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT";
+ case VK_MEMORY_PROPERTY_PROTECTED_BIT:
+ return "VK_MEMORY_PROPERTY_PROTECTED_BIT";
+ case VK_MEMORY_PROPERTY_RDMA_CAPABLE_BIT_NV:
+ return "VK_MEMORY_PROPERTY_RDMA_CAPABLE_BIT_NV";
+ default:
+ return "Unhandled VkMemoryPropertyFlagBits";
+ }
+}
+
+static inline std::string string_VkMemoryPropertyFlags(VkMemoryPropertyFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkMemoryPropertyFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkMemoryPropertyFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkPhysicalDeviceType(VkPhysicalDeviceType input_value)
+{
+ switch (input_value)
+ {
+ case VK_PHYSICAL_DEVICE_TYPE_CPU:
+ return "VK_PHYSICAL_DEVICE_TYPE_CPU";
+ case VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU:
+ return "VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU";
+ case VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU:
+ return "VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU";
+ case VK_PHYSICAL_DEVICE_TYPE_OTHER:
+ return "VK_PHYSICAL_DEVICE_TYPE_OTHER";
+ case VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU:
+ return "VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU";
+ default:
+ return "Unhandled VkPhysicalDeviceType";
+ }
+}
+
+static inline const char* string_VkQueueFlagBits(VkQueueFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_QUEUE_COMPUTE_BIT:
+ return "VK_QUEUE_COMPUTE_BIT";
+ case VK_QUEUE_GRAPHICS_BIT:
+ return "VK_QUEUE_GRAPHICS_BIT";
+ case VK_QUEUE_OPTICAL_FLOW_BIT_NV:
+ return "VK_QUEUE_OPTICAL_FLOW_BIT_NV";
+ case VK_QUEUE_PROTECTED_BIT:
+ return "VK_QUEUE_PROTECTED_BIT";
+ case VK_QUEUE_SPARSE_BINDING_BIT:
+ return "VK_QUEUE_SPARSE_BINDING_BIT";
+ case VK_QUEUE_TRANSFER_BIT:
+ return "VK_QUEUE_TRANSFER_BIT";
+ case VK_QUEUE_VIDEO_DECODE_BIT_KHR:
+ return "VK_QUEUE_VIDEO_DECODE_BIT_KHR";
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_QUEUE_VIDEO_ENCODE_BIT_KHR:
+ return "VK_QUEUE_VIDEO_ENCODE_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+ default:
+ return "Unhandled VkQueueFlagBits";
+ }
+}
+
+static inline std::string string_VkQueueFlags(VkQueueFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkQueueFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkQueueFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkDeviceQueueCreateFlagBits(VkDeviceQueueCreateFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT:
+ return "VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT";
+ default:
+ return "Unhandled VkDeviceQueueCreateFlagBits";
+ }
+}
+
+static inline std::string string_VkDeviceQueueCreateFlags(VkDeviceQueueCreateFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkDeviceQueueCreateFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkDeviceQueueCreateFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkPipelineStageFlagBits(VkPipelineStageFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR:
+ return "VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR";
+ case VK_PIPELINE_STAGE_ALL_COMMANDS_BIT:
+ return "VK_PIPELINE_STAGE_ALL_COMMANDS_BIT";
+ case VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT:
+ return "VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT";
+ case VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT:
+ return "VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT";
+ case VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT:
+ return "VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT";
+ case VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV:
+ return "VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV";
+ case VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT:
+ return "VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT";
+ case VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT:
+ return "VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT";
+ case VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT:
+ return "VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT";
+ case VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT:
+ return "VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT";
+ case VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT:
+ return "VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT";
+ case VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT:
+ return "VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT";
+ case VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR:
+ return "VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR";
+ case VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT:
+ return "VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT";
+ case VK_PIPELINE_STAGE_HOST_BIT:
+ return "VK_PIPELINE_STAGE_HOST_BIT";
+ case VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT:
+ return "VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT";
+ case VK_PIPELINE_STAGE_MESH_SHADER_BIT_EXT:
+ return "VK_PIPELINE_STAGE_MESH_SHADER_BIT_EXT";
+ case VK_PIPELINE_STAGE_NONE:
+ return "VK_PIPELINE_STAGE_NONE";
+ case VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR:
+ return "VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR";
+ case VK_PIPELINE_STAGE_TASK_SHADER_BIT_EXT:
+ return "VK_PIPELINE_STAGE_TASK_SHADER_BIT_EXT";
+ case VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT:
+ return "VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT";
+ case VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT:
+ return "VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT";
+ case VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT:
+ return "VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT";
+ case VK_PIPELINE_STAGE_TRANSFER_BIT:
+ return "VK_PIPELINE_STAGE_TRANSFER_BIT";
+ case VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT:
+ return "VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT";
+ case VK_PIPELINE_STAGE_VERTEX_INPUT_BIT:
+ return "VK_PIPELINE_STAGE_VERTEX_INPUT_BIT";
+ case VK_PIPELINE_STAGE_VERTEX_SHADER_BIT:
+ return "VK_PIPELINE_STAGE_VERTEX_SHADER_BIT";
+ default:
+ return "Unhandled VkPipelineStageFlagBits";
+ }
+}
+
+static inline std::string string_VkPipelineStageFlags(VkPipelineStageFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkPipelineStageFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkPipelineStageFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkSparseMemoryBindFlagBits(VkSparseMemoryBindFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_SPARSE_MEMORY_BIND_METADATA_BIT:
+ return "VK_SPARSE_MEMORY_BIND_METADATA_BIT";
+ default:
+ return "Unhandled VkSparseMemoryBindFlagBits";
+ }
+}
+
+static inline std::string string_VkSparseMemoryBindFlags(VkSparseMemoryBindFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkSparseMemoryBindFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkSparseMemoryBindFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkSparseImageFormatFlagBits(VkSparseImageFormatFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT:
+ return "VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT";
+ case VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT:
+ return "VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT";
+ case VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT:
+ return "VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT";
+ default:
+ return "Unhandled VkSparseImageFormatFlagBits";
+ }
+}
+
+static inline std::string string_VkSparseImageFormatFlags(VkSparseImageFormatFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkSparseImageFormatFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkSparseImageFormatFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkFenceCreateFlagBits(VkFenceCreateFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_FENCE_CREATE_SIGNALED_BIT:
+ return "VK_FENCE_CREATE_SIGNALED_BIT";
+ default:
+ return "Unhandled VkFenceCreateFlagBits";
+ }
+}
+
+static inline std::string string_VkFenceCreateFlags(VkFenceCreateFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkFenceCreateFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkFenceCreateFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkEventCreateFlagBits(VkEventCreateFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_EVENT_CREATE_DEVICE_ONLY_BIT:
+ return "VK_EVENT_CREATE_DEVICE_ONLY_BIT";
+ default:
+ return "Unhandled VkEventCreateFlagBits";
+ }
+}
+
+static inline std::string string_VkEventCreateFlags(VkEventCreateFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkEventCreateFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkEventCreateFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkQueryPipelineStatisticFlagBits(VkQueryPipelineStatisticFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT:
+ return "VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT";
+ case VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT:
+ return "VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT";
+ case VK_QUERY_PIPELINE_STATISTIC_CLUSTER_CULLING_SHADER_INVOCATIONS_BIT_HUAWEI:
+ return "VK_QUERY_PIPELINE_STATISTIC_CLUSTER_CULLING_SHADER_INVOCATIONS_BIT_HUAWEI";
+ case VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT:
+ return "VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT";
+ case VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT:
+ return "VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT";
+ case VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT:
+ return "VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT";
+ case VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT:
+ return "VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT";
+ case VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT:
+ return "VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT";
+ case VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT:
+ return "VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT";
+ case VK_QUERY_PIPELINE_STATISTIC_MESH_SHADER_INVOCATIONS_BIT_EXT:
+ return "VK_QUERY_PIPELINE_STATISTIC_MESH_SHADER_INVOCATIONS_BIT_EXT";
+ case VK_QUERY_PIPELINE_STATISTIC_TASK_SHADER_INVOCATIONS_BIT_EXT:
+ return "VK_QUERY_PIPELINE_STATISTIC_TASK_SHADER_INVOCATIONS_BIT_EXT";
+ case VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT:
+ return "VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT";
+ case VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT:
+ return "VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT";
+ case VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT:
+ return "VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT";
+ default:
+ return "Unhandled VkQueryPipelineStatisticFlagBits";
+ }
+}
+
+static inline std::string string_VkQueryPipelineStatisticFlags(VkQueryPipelineStatisticFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkQueryPipelineStatisticFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkQueryPipelineStatisticFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkQueryType(VkQueryType input_value)
+{
+ switch (input_value)
+ {
+ case VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR:
+ return "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR";
+ case VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV:
+ return "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV";
+ case VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_BOTTOM_LEVEL_POINTERS_KHR:
+ return "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_BOTTOM_LEVEL_POINTERS_KHR";
+ case VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR:
+ return "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR";
+ case VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SIZE_KHR:
+ return "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SIZE_KHR";
+ case VK_QUERY_TYPE_MESH_PRIMITIVES_GENERATED_EXT:
+ return "VK_QUERY_TYPE_MESH_PRIMITIVES_GENERATED_EXT";
+ case VK_QUERY_TYPE_MICROMAP_COMPACTED_SIZE_EXT:
+ return "VK_QUERY_TYPE_MICROMAP_COMPACTED_SIZE_EXT";
+ case VK_QUERY_TYPE_MICROMAP_SERIALIZATION_SIZE_EXT:
+ return "VK_QUERY_TYPE_MICROMAP_SERIALIZATION_SIZE_EXT";
+ case VK_QUERY_TYPE_OCCLUSION:
+ return "VK_QUERY_TYPE_OCCLUSION";
+ case VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL:
+ return "VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL";
+ case VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR:
+ return "VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR";
+ case VK_QUERY_TYPE_PIPELINE_STATISTICS:
+ return "VK_QUERY_TYPE_PIPELINE_STATISTICS";
+ case VK_QUERY_TYPE_PRIMITIVES_GENERATED_EXT:
+ return "VK_QUERY_TYPE_PRIMITIVES_GENERATED_EXT";
+ case VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR:
+ return "VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR";
+ case VK_QUERY_TYPE_TIMESTAMP:
+ return "VK_QUERY_TYPE_TIMESTAMP";
+ case VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT:
+ return "VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT";
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_QUERY_TYPE_VIDEO_ENCODE_BITSTREAM_BUFFER_RANGE_KHR:
+ return "VK_QUERY_TYPE_VIDEO_ENCODE_BITSTREAM_BUFFER_RANGE_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+ default:
+ return "Unhandled VkQueryType";
+ }
+}
+
+static inline const char* string_VkQueryResultFlagBits(VkQueryResultFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_QUERY_RESULT_64_BIT:
+ return "VK_QUERY_RESULT_64_BIT";
+ case VK_QUERY_RESULT_PARTIAL_BIT:
+ return "VK_QUERY_RESULT_PARTIAL_BIT";
+ case VK_QUERY_RESULT_WAIT_BIT:
+ return "VK_QUERY_RESULT_WAIT_BIT";
+ case VK_QUERY_RESULT_WITH_AVAILABILITY_BIT:
+ return "VK_QUERY_RESULT_WITH_AVAILABILITY_BIT";
+ case VK_QUERY_RESULT_WITH_STATUS_BIT_KHR:
+ return "VK_QUERY_RESULT_WITH_STATUS_BIT_KHR";
+ default:
+ return "Unhandled VkQueryResultFlagBits";
+ }
+}
+
+static inline std::string string_VkQueryResultFlags(VkQueryResultFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkQueryResultFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkQueryResultFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkBufferCreateFlagBits(VkBufferCreateFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_BUFFER_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT:
+ return "VK_BUFFER_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT";
+ case VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT:
+ return "VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT";
+ case VK_BUFFER_CREATE_PROTECTED_BIT:
+ return "VK_BUFFER_CREATE_PROTECTED_BIT";
+ case VK_BUFFER_CREATE_SPARSE_ALIASED_BIT:
+ return "VK_BUFFER_CREATE_SPARSE_ALIASED_BIT";
+ case VK_BUFFER_CREATE_SPARSE_BINDING_BIT:
+ return "VK_BUFFER_CREATE_SPARSE_BINDING_BIT";
+ case VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT:
+ return "VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT";
+ default:
+ return "Unhandled VkBufferCreateFlagBits";
+ }
+}
+
+static inline std::string string_VkBufferCreateFlags(VkBufferCreateFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkBufferCreateFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkBufferCreateFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkBufferUsageFlagBits(VkBufferUsageFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR:
+ return "VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR";
+ case VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR:
+ return "VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR";
+ case VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT:
+ return "VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT";
+ case VK_BUFFER_USAGE_INDEX_BUFFER_BIT:
+ return "VK_BUFFER_USAGE_INDEX_BUFFER_BIT";
+ case VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT:
+ return "VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT";
+ case VK_BUFFER_USAGE_MICROMAP_BUILD_INPUT_READ_ONLY_BIT_EXT:
+ return "VK_BUFFER_USAGE_MICROMAP_BUILD_INPUT_READ_ONLY_BIT_EXT";
+ case VK_BUFFER_USAGE_MICROMAP_STORAGE_BIT_EXT:
+ return "VK_BUFFER_USAGE_MICROMAP_STORAGE_BIT_EXT";
+ case VK_BUFFER_USAGE_PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_BIT_EXT:
+ return "VK_BUFFER_USAGE_PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_BIT_EXT";
+ case VK_BUFFER_USAGE_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXT:
+ return "VK_BUFFER_USAGE_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXT";
+ case VK_BUFFER_USAGE_SAMPLER_DESCRIPTOR_BUFFER_BIT_EXT:
+ return "VK_BUFFER_USAGE_SAMPLER_DESCRIPTOR_BUFFER_BIT_EXT";
+ case VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR:
+ return "VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR";
+ case VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT:
+ return "VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT";
+ case VK_BUFFER_USAGE_STORAGE_BUFFER_BIT:
+ return "VK_BUFFER_USAGE_STORAGE_BUFFER_BIT";
+ case VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT:
+ return "VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT";
+ case VK_BUFFER_USAGE_TRANSFER_DST_BIT:
+ return "VK_BUFFER_USAGE_TRANSFER_DST_BIT";
+ case VK_BUFFER_USAGE_TRANSFER_SRC_BIT:
+ return "VK_BUFFER_USAGE_TRANSFER_SRC_BIT";
+ case VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT:
+ return "VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT";
+ case VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT:
+ return "VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT";
+ case VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT:
+ return "VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT";
+ case VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT:
+ return "VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT";
+ case VK_BUFFER_USAGE_VERTEX_BUFFER_BIT:
+ return "VK_BUFFER_USAGE_VERTEX_BUFFER_BIT";
+ case VK_BUFFER_USAGE_VIDEO_DECODE_DST_BIT_KHR:
+ return "VK_BUFFER_USAGE_VIDEO_DECODE_DST_BIT_KHR";
+ case VK_BUFFER_USAGE_VIDEO_DECODE_SRC_BIT_KHR:
+ return "VK_BUFFER_USAGE_VIDEO_DECODE_SRC_BIT_KHR";
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_BUFFER_USAGE_VIDEO_ENCODE_DST_BIT_KHR:
+ return "VK_BUFFER_USAGE_VIDEO_ENCODE_DST_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_BUFFER_USAGE_VIDEO_ENCODE_SRC_BIT_KHR:
+ return "VK_BUFFER_USAGE_VIDEO_ENCODE_SRC_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+ default:
+ return "Unhandled VkBufferUsageFlagBits";
+ }
+}
+
+static inline std::string string_VkBufferUsageFlags(VkBufferUsageFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkBufferUsageFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkBufferUsageFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkSharingMode(VkSharingMode input_value)
+{
+ switch (input_value)
+ {
+ case VK_SHARING_MODE_CONCURRENT:
+ return "VK_SHARING_MODE_CONCURRENT";
+ case VK_SHARING_MODE_EXCLUSIVE:
+ return "VK_SHARING_MODE_EXCLUSIVE";
+ default:
+ return "Unhandled VkSharingMode";
+ }
+}
+
+static inline const char* string_VkComponentSwizzle(VkComponentSwizzle input_value)
+{
+ switch (input_value)
+ {
+ case VK_COMPONENT_SWIZZLE_A:
+ return "VK_COMPONENT_SWIZZLE_A";
+ case VK_COMPONENT_SWIZZLE_B:
+ return "VK_COMPONENT_SWIZZLE_B";
+ case VK_COMPONENT_SWIZZLE_G:
+ return "VK_COMPONENT_SWIZZLE_G";
+ case VK_COMPONENT_SWIZZLE_IDENTITY:
+ return "VK_COMPONENT_SWIZZLE_IDENTITY";
+ case VK_COMPONENT_SWIZZLE_ONE:
+ return "VK_COMPONENT_SWIZZLE_ONE";
+ case VK_COMPONENT_SWIZZLE_R:
+ return "VK_COMPONENT_SWIZZLE_R";
+ case VK_COMPONENT_SWIZZLE_ZERO:
+ return "VK_COMPONENT_SWIZZLE_ZERO";
+ default:
+ return "Unhandled VkComponentSwizzle";
+ }
+}
+
+static inline const char* string_VkImageViewCreateFlagBits(VkImageViewCreateFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_IMAGE_VIEW_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT:
+ return "VK_IMAGE_VIEW_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT";
+ case VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DEFERRED_BIT_EXT:
+ return "VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DEFERRED_BIT_EXT";
+ case VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT:
+ return "VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT";
+ default:
+ return "Unhandled VkImageViewCreateFlagBits";
+ }
+}
+
+static inline std::string string_VkImageViewCreateFlags(VkImageViewCreateFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkImageViewCreateFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkImageViewCreateFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkImageViewType(VkImageViewType input_value)
+{
+ switch (input_value)
+ {
+ case VK_IMAGE_VIEW_TYPE_1D:
+ return "VK_IMAGE_VIEW_TYPE_1D";
+ case VK_IMAGE_VIEW_TYPE_1D_ARRAY:
+ return "VK_IMAGE_VIEW_TYPE_1D_ARRAY";
+ case VK_IMAGE_VIEW_TYPE_2D:
+ return "VK_IMAGE_VIEW_TYPE_2D";
+ case VK_IMAGE_VIEW_TYPE_2D_ARRAY:
+ return "VK_IMAGE_VIEW_TYPE_2D_ARRAY";
+ case VK_IMAGE_VIEW_TYPE_3D:
+ return "VK_IMAGE_VIEW_TYPE_3D";
+ case VK_IMAGE_VIEW_TYPE_CUBE:
+ return "VK_IMAGE_VIEW_TYPE_CUBE";
+ case VK_IMAGE_VIEW_TYPE_CUBE_ARRAY:
+ return "VK_IMAGE_VIEW_TYPE_CUBE_ARRAY";
+ default:
+ return "Unhandled VkImageViewType";
+ }
+}
+
+static inline const char* string_VkPipelineCacheCreateFlagBits(VkPipelineCacheCreateFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT:
+ return "VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT";
+ default:
+ return "Unhandled VkPipelineCacheCreateFlagBits";
+ }
+}
+
+static inline std::string string_VkPipelineCacheCreateFlags(VkPipelineCacheCreateFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkPipelineCacheCreateFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkPipelineCacheCreateFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkBlendFactor(VkBlendFactor input_value)
+{
+ switch (input_value)
+ {
+ case VK_BLEND_FACTOR_CONSTANT_ALPHA:
+ return "VK_BLEND_FACTOR_CONSTANT_ALPHA";
+ case VK_BLEND_FACTOR_CONSTANT_COLOR:
+ return "VK_BLEND_FACTOR_CONSTANT_COLOR";
+ case VK_BLEND_FACTOR_DST_ALPHA:
+ return "VK_BLEND_FACTOR_DST_ALPHA";
+ case VK_BLEND_FACTOR_DST_COLOR:
+ return "VK_BLEND_FACTOR_DST_COLOR";
+ case VK_BLEND_FACTOR_ONE:
+ return "VK_BLEND_FACTOR_ONE";
+ case VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA:
+ return "VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA";
+ case VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR:
+ return "VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR";
+ case VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA:
+ return "VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA";
+ case VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR:
+ return "VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR";
+ case VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA:
+ return "VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA";
+ case VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR:
+ return "VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR";
+ case VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA:
+ return "VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA";
+ case VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR:
+ return "VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR";
+ case VK_BLEND_FACTOR_SRC1_ALPHA:
+ return "VK_BLEND_FACTOR_SRC1_ALPHA";
+ case VK_BLEND_FACTOR_SRC1_COLOR:
+ return "VK_BLEND_FACTOR_SRC1_COLOR";
+ case VK_BLEND_FACTOR_SRC_ALPHA:
+ return "VK_BLEND_FACTOR_SRC_ALPHA";
+ case VK_BLEND_FACTOR_SRC_ALPHA_SATURATE:
+ return "VK_BLEND_FACTOR_SRC_ALPHA_SATURATE";
+ case VK_BLEND_FACTOR_SRC_COLOR:
+ return "VK_BLEND_FACTOR_SRC_COLOR";
+ case VK_BLEND_FACTOR_ZERO:
+ return "VK_BLEND_FACTOR_ZERO";
+ default:
+ return "Unhandled VkBlendFactor";
+ }
+}
+
+static inline const char* string_VkBlendOp(VkBlendOp input_value)
+{
+ switch (input_value)
+ {
+ case VK_BLEND_OP_ADD:
+ return "VK_BLEND_OP_ADD";
+ case VK_BLEND_OP_BLUE_EXT:
+ return "VK_BLEND_OP_BLUE_EXT";
+ case VK_BLEND_OP_COLORBURN_EXT:
+ return "VK_BLEND_OP_COLORBURN_EXT";
+ case VK_BLEND_OP_COLORDODGE_EXT:
+ return "VK_BLEND_OP_COLORDODGE_EXT";
+ case VK_BLEND_OP_CONTRAST_EXT:
+ return "VK_BLEND_OP_CONTRAST_EXT";
+ case VK_BLEND_OP_DARKEN_EXT:
+ return "VK_BLEND_OP_DARKEN_EXT";
+ case VK_BLEND_OP_DIFFERENCE_EXT:
+ return "VK_BLEND_OP_DIFFERENCE_EXT";
+ case VK_BLEND_OP_DST_ATOP_EXT:
+ return "VK_BLEND_OP_DST_ATOP_EXT";
+ case VK_BLEND_OP_DST_EXT:
+ return "VK_BLEND_OP_DST_EXT";
+ case VK_BLEND_OP_DST_IN_EXT:
+ return "VK_BLEND_OP_DST_IN_EXT";
+ case VK_BLEND_OP_DST_OUT_EXT:
+ return "VK_BLEND_OP_DST_OUT_EXT";
+ case VK_BLEND_OP_DST_OVER_EXT:
+ return "VK_BLEND_OP_DST_OVER_EXT";
+ case VK_BLEND_OP_EXCLUSION_EXT:
+ return "VK_BLEND_OP_EXCLUSION_EXT";
+ case VK_BLEND_OP_GREEN_EXT:
+ return "VK_BLEND_OP_GREEN_EXT";
+ case VK_BLEND_OP_HARDLIGHT_EXT:
+ return "VK_BLEND_OP_HARDLIGHT_EXT";
+ case VK_BLEND_OP_HARDMIX_EXT:
+ return "VK_BLEND_OP_HARDMIX_EXT";
+ case VK_BLEND_OP_HSL_COLOR_EXT:
+ return "VK_BLEND_OP_HSL_COLOR_EXT";
+ case VK_BLEND_OP_HSL_HUE_EXT:
+ return "VK_BLEND_OP_HSL_HUE_EXT";
+ case VK_BLEND_OP_HSL_LUMINOSITY_EXT:
+ return "VK_BLEND_OP_HSL_LUMINOSITY_EXT";
+ case VK_BLEND_OP_HSL_SATURATION_EXT:
+ return "VK_BLEND_OP_HSL_SATURATION_EXT";
+ case VK_BLEND_OP_INVERT_EXT:
+ return "VK_BLEND_OP_INVERT_EXT";
+ case VK_BLEND_OP_INVERT_OVG_EXT:
+ return "VK_BLEND_OP_INVERT_OVG_EXT";
+ case VK_BLEND_OP_INVERT_RGB_EXT:
+ return "VK_BLEND_OP_INVERT_RGB_EXT";
+ case VK_BLEND_OP_LIGHTEN_EXT:
+ return "VK_BLEND_OP_LIGHTEN_EXT";
+ case VK_BLEND_OP_LINEARBURN_EXT:
+ return "VK_BLEND_OP_LINEARBURN_EXT";
+ case VK_BLEND_OP_LINEARDODGE_EXT:
+ return "VK_BLEND_OP_LINEARDODGE_EXT";
+ case VK_BLEND_OP_LINEARLIGHT_EXT:
+ return "VK_BLEND_OP_LINEARLIGHT_EXT";
+ case VK_BLEND_OP_MAX:
+ return "VK_BLEND_OP_MAX";
+ case VK_BLEND_OP_MIN:
+ return "VK_BLEND_OP_MIN";
+ case VK_BLEND_OP_MINUS_CLAMPED_EXT:
+ return "VK_BLEND_OP_MINUS_CLAMPED_EXT";
+ case VK_BLEND_OP_MINUS_EXT:
+ return "VK_BLEND_OP_MINUS_EXT";
+ case VK_BLEND_OP_MULTIPLY_EXT:
+ return "VK_BLEND_OP_MULTIPLY_EXT";
+ case VK_BLEND_OP_OVERLAY_EXT:
+ return "VK_BLEND_OP_OVERLAY_EXT";
+ case VK_BLEND_OP_PINLIGHT_EXT:
+ return "VK_BLEND_OP_PINLIGHT_EXT";
+ case VK_BLEND_OP_PLUS_CLAMPED_ALPHA_EXT:
+ return "VK_BLEND_OP_PLUS_CLAMPED_ALPHA_EXT";
+ case VK_BLEND_OP_PLUS_CLAMPED_EXT:
+ return "VK_BLEND_OP_PLUS_CLAMPED_EXT";
+ case VK_BLEND_OP_PLUS_DARKER_EXT:
+ return "VK_BLEND_OP_PLUS_DARKER_EXT";
+ case VK_BLEND_OP_PLUS_EXT:
+ return "VK_BLEND_OP_PLUS_EXT";
+ case VK_BLEND_OP_RED_EXT:
+ return "VK_BLEND_OP_RED_EXT";
+ case VK_BLEND_OP_REVERSE_SUBTRACT:
+ return "VK_BLEND_OP_REVERSE_SUBTRACT";
+ case VK_BLEND_OP_SCREEN_EXT:
+ return "VK_BLEND_OP_SCREEN_EXT";
+ case VK_BLEND_OP_SOFTLIGHT_EXT:
+ return "VK_BLEND_OP_SOFTLIGHT_EXT";
+ case VK_BLEND_OP_SRC_ATOP_EXT:
+ return "VK_BLEND_OP_SRC_ATOP_EXT";
+ case VK_BLEND_OP_SRC_EXT:
+ return "VK_BLEND_OP_SRC_EXT";
+ case VK_BLEND_OP_SRC_IN_EXT:
+ return "VK_BLEND_OP_SRC_IN_EXT";
+ case VK_BLEND_OP_SRC_OUT_EXT:
+ return "VK_BLEND_OP_SRC_OUT_EXT";
+ case VK_BLEND_OP_SRC_OVER_EXT:
+ return "VK_BLEND_OP_SRC_OVER_EXT";
+ case VK_BLEND_OP_SUBTRACT:
+ return "VK_BLEND_OP_SUBTRACT";
+ case VK_BLEND_OP_VIVIDLIGHT_EXT:
+ return "VK_BLEND_OP_VIVIDLIGHT_EXT";
+ case VK_BLEND_OP_XOR_EXT:
+ return "VK_BLEND_OP_XOR_EXT";
+ case VK_BLEND_OP_ZERO_EXT:
+ return "VK_BLEND_OP_ZERO_EXT";
+ default:
+ return "Unhandled VkBlendOp";
+ }
+}
+
+static inline const char* string_VkColorComponentFlagBits(VkColorComponentFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_COLOR_COMPONENT_A_BIT:
+ return "VK_COLOR_COMPONENT_A_BIT";
+ case VK_COLOR_COMPONENT_B_BIT:
+ return "VK_COLOR_COMPONENT_B_BIT";
+ case VK_COLOR_COMPONENT_G_BIT:
+ return "VK_COLOR_COMPONENT_G_BIT";
+ case VK_COLOR_COMPONENT_R_BIT:
+ return "VK_COLOR_COMPONENT_R_BIT";
+ default:
+ return "Unhandled VkColorComponentFlagBits";
+ }
+}
+
+static inline std::string string_VkColorComponentFlags(VkColorComponentFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkColorComponentFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkColorComponentFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkCompareOp(VkCompareOp input_value)
+{
+ switch (input_value)
+ {
+ case VK_COMPARE_OP_ALWAYS:
+ return "VK_COMPARE_OP_ALWAYS";
+ case VK_COMPARE_OP_EQUAL:
+ return "VK_COMPARE_OP_EQUAL";
+ case VK_COMPARE_OP_GREATER:
+ return "VK_COMPARE_OP_GREATER";
+ case VK_COMPARE_OP_GREATER_OR_EQUAL:
+ return "VK_COMPARE_OP_GREATER_OR_EQUAL";
+ case VK_COMPARE_OP_LESS:
+ return "VK_COMPARE_OP_LESS";
+ case VK_COMPARE_OP_LESS_OR_EQUAL:
+ return "VK_COMPARE_OP_LESS_OR_EQUAL";
+ case VK_COMPARE_OP_NEVER:
+ return "VK_COMPARE_OP_NEVER";
+ case VK_COMPARE_OP_NOT_EQUAL:
+ return "VK_COMPARE_OP_NOT_EQUAL";
+ default:
+ return "Unhandled VkCompareOp";
+ }
+}
+
+static inline const char* string_VkPipelineCreateFlagBits(VkPipelineCreateFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT:
+ return "VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT";
+ case VK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR:
+ return "VK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR";
+ case VK_PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR:
+ return "VK_PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR";
+ case VK_PIPELINE_CREATE_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT:
+ return "VK_PIPELINE_CREATE_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT";
+ case VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV:
+ return "VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV";
+ case VK_PIPELINE_CREATE_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT:
+ return "VK_PIPELINE_CREATE_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT";
+ case VK_PIPELINE_CREATE_DERIVATIVE_BIT:
+ return "VK_PIPELINE_CREATE_DERIVATIVE_BIT";
+ case VK_PIPELINE_CREATE_DESCRIPTOR_BUFFER_BIT_EXT:
+ return "VK_PIPELINE_CREATE_DESCRIPTOR_BUFFER_BIT_EXT";
+ case VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT:
+ return "VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT";
+ case VK_PIPELINE_CREATE_DISPATCH_BASE_BIT:
+ return "VK_PIPELINE_CREATE_DISPATCH_BASE_BIT";
+ case VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT:
+ return "VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT";
+ case VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT:
+ return "VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT";
+ case VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV:
+ return "VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV";
+ case VK_PIPELINE_CREATE_LIBRARY_BIT_KHR:
+ return "VK_PIPELINE_CREATE_LIBRARY_BIT_KHR";
+ case VK_PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT:
+ return "VK_PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT";
+ case VK_PIPELINE_CREATE_NO_PROTECTED_ACCESS_BIT_EXT:
+ return "VK_PIPELINE_CREATE_NO_PROTECTED_ACCESS_BIT_EXT";
+ case VK_PIPELINE_CREATE_PROTECTED_ACCESS_ONLY_BIT_EXT:
+ return "VK_PIPELINE_CREATE_PROTECTED_ACCESS_ONLY_BIT_EXT";
+ case VK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV:
+ return "VK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV";
+ case VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR:
+ return "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR";
+ case VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR:
+ return "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR";
+ case VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR:
+ return "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR";
+ case VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR:
+ return "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR";
+ case VK_PIPELINE_CREATE_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT:
+ return "VK_PIPELINE_CREATE_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT";
+ case VK_PIPELINE_CREATE_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR:
+ return "VK_PIPELINE_CREATE_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR";
+ case VK_PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR:
+ return "VK_PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR";
+ case VK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR:
+ return "VK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR";
+ case VK_PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT:
+ return "VK_PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT";
+ case VK_PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR:
+ return "VK_PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR";
+ case VK_PIPELINE_CREATE_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT:
+ return "VK_PIPELINE_CREATE_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT";
+ case VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT:
+ return "VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT";
+ default:
+ return "Unhandled VkPipelineCreateFlagBits";
+ }
+}
+
+static inline std::string string_VkPipelineCreateFlags(VkPipelineCreateFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkPipelineCreateFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkPipelineCreateFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkPipelineShaderStageCreateFlagBits(VkPipelineShaderStageCreateFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT:
+ return "VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT";
+ case VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT:
+ return "VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT";
+ default:
+ return "Unhandled VkPipelineShaderStageCreateFlagBits";
+ }
+}
+
+static inline std::string string_VkPipelineShaderStageCreateFlags(VkPipelineShaderStageCreateFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkPipelineShaderStageCreateFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkPipelineShaderStageCreateFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkShaderStageFlagBits(VkShaderStageFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_SHADER_STAGE_ALL:
+ return "VK_SHADER_STAGE_ALL";
+ case VK_SHADER_STAGE_ALL_GRAPHICS:
+ return "VK_SHADER_STAGE_ALL_GRAPHICS";
+ case VK_SHADER_STAGE_ANY_HIT_BIT_KHR:
+ return "VK_SHADER_STAGE_ANY_HIT_BIT_KHR";
+ case VK_SHADER_STAGE_CALLABLE_BIT_KHR:
+ return "VK_SHADER_STAGE_CALLABLE_BIT_KHR";
+ case VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR:
+ return "VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR";
+ case VK_SHADER_STAGE_CLUSTER_CULLING_BIT_HUAWEI:
+ return "VK_SHADER_STAGE_CLUSTER_CULLING_BIT_HUAWEI";
+ case VK_SHADER_STAGE_COMPUTE_BIT:
+ return "VK_SHADER_STAGE_COMPUTE_BIT";
+ case VK_SHADER_STAGE_FRAGMENT_BIT:
+ return "VK_SHADER_STAGE_FRAGMENT_BIT";
+ case VK_SHADER_STAGE_GEOMETRY_BIT:
+ return "VK_SHADER_STAGE_GEOMETRY_BIT";
+ case VK_SHADER_STAGE_INTERSECTION_BIT_KHR:
+ return "VK_SHADER_STAGE_INTERSECTION_BIT_KHR";
+ case VK_SHADER_STAGE_MESH_BIT_EXT:
+ return "VK_SHADER_STAGE_MESH_BIT_EXT";
+ case VK_SHADER_STAGE_MISS_BIT_KHR:
+ return "VK_SHADER_STAGE_MISS_BIT_KHR";
+ case VK_SHADER_STAGE_RAYGEN_BIT_KHR:
+ return "VK_SHADER_STAGE_RAYGEN_BIT_KHR";
+ case VK_SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI:
+ return "VK_SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI";
+ case VK_SHADER_STAGE_TASK_BIT_EXT:
+ return "VK_SHADER_STAGE_TASK_BIT_EXT";
+ case VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT:
+ return "VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT";
+ case VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT:
+ return "VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT";
+ case VK_SHADER_STAGE_VERTEX_BIT:
+ return "VK_SHADER_STAGE_VERTEX_BIT";
+ default:
+ return "Unhandled VkShaderStageFlagBits";
+ }
+}
+
+static inline std::string string_VkShaderStageFlags(VkShaderStageFlags input_value)
+{
+ if (input_value == VK_SHADER_STAGE_ALL) { return "VK_SHADER_STAGE_ALL"; }
+ if (input_value == VK_SHADER_STAGE_ALL_GRAPHICS) { return "VK_SHADER_STAGE_ALL_GRAPHICS"; }
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkShaderStageFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkShaderStageFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkCullModeFlagBits(VkCullModeFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_CULL_MODE_BACK_BIT:
+ return "VK_CULL_MODE_BACK_BIT";
+ case VK_CULL_MODE_FRONT_AND_BACK:
+ return "VK_CULL_MODE_FRONT_AND_BACK";
+ case VK_CULL_MODE_FRONT_BIT:
+ return "VK_CULL_MODE_FRONT_BIT";
+ case VK_CULL_MODE_NONE:
+ return "VK_CULL_MODE_NONE";
+ default:
+ return "Unhandled VkCullModeFlagBits";
+ }
+}
+
+static inline std::string string_VkCullModeFlags(VkCullModeFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkCullModeFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkCullModeFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkDynamicState(VkDynamicState input_value)
+{
+ switch (input_value)
+ {
+ case VK_DYNAMIC_STATE_ALPHA_TO_COVERAGE_ENABLE_EXT:
+ return "VK_DYNAMIC_STATE_ALPHA_TO_COVERAGE_ENABLE_EXT";
+ case VK_DYNAMIC_STATE_ALPHA_TO_ONE_ENABLE_EXT:
+ return "VK_DYNAMIC_STATE_ALPHA_TO_ONE_ENABLE_EXT";
+ case VK_DYNAMIC_STATE_BLEND_CONSTANTS:
+ return "VK_DYNAMIC_STATE_BLEND_CONSTANTS";
+ case VK_DYNAMIC_STATE_COLOR_BLEND_ADVANCED_EXT:
+ return "VK_DYNAMIC_STATE_COLOR_BLEND_ADVANCED_EXT";
+ case VK_DYNAMIC_STATE_COLOR_BLEND_ENABLE_EXT:
+ return "VK_DYNAMIC_STATE_COLOR_BLEND_ENABLE_EXT";
+ case VK_DYNAMIC_STATE_COLOR_BLEND_EQUATION_EXT:
+ return "VK_DYNAMIC_STATE_COLOR_BLEND_EQUATION_EXT";
+ case VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT:
+ return "VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT";
+ case VK_DYNAMIC_STATE_COLOR_WRITE_MASK_EXT:
+ return "VK_DYNAMIC_STATE_COLOR_WRITE_MASK_EXT";
+ case VK_DYNAMIC_STATE_CONSERVATIVE_RASTERIZATION_MODE_EXT:
+ return "VK_DYNAMIC_STATE_CONSERVATIVE_RASTERIZATION_MODE_EXT";
+ case VK_DYNAMIC_STATE_COVERAGE_MODULATION_MODE_NV:
+ return "VK_DYNAMIC_STATE_COVERAGE_MODULATION_MODE_NV";
+ case VK_DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_ENABLE_NV:
+ return "VK_DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_ENABLE_NV";
+ case VK_DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_NV:
+ return "VK_DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_NV";
+ case VK_DYNAMIC_STATE_COVERAGE_REDUCTION_MODE_NV:
+ return "VK_DYNAMIC_STATE_COVERAGE_REDUCTION_MODE_NV";
+ case VK_DYNAMIC_STATE_COVERAGE_TO_COLOR_ENABLE_NV:
+ return "VK_DYNAMIC_STATE_COVERAGE_TO_COLOR_ENABLE_NV";
+ case VK_DYNAMIC_STATE_COVERAGE_TO_COLOR_LOCATION_NV:
+ return "VK_DYNAMIC_STATE_COVERAGE_TO_COLOR_LOCATION_NV";
+ case VK_DYNAMIC_STATE_CULL_MODE:
+ return "VK_DYNAMIC_STATE_CULL_MODE";
+ case VK_DYNAMIC_STATE_DEPTH_BIAS:
+ return "VK_DYNAMIC_STATE_DEPTH_BIAS";
+ case VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE:
+ return "VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE";
+ case VK_DYNAMIC_STATE_DEPTH_BOUNDS:
+ return "VK_DYNAMIC_STATE_DEPTH_BOUNDS";
+ case VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE:
+ return "VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE";
+ case VK_DYNAMIC_STATE_DEPTH_CLAMP_ENABLE_EXT:
+ return "VK_DYNAMIC_STATE_DEPTH_CLAMP_ENABLE_EXT";
+ case VK_DYNAMIC_STATE_DEPTH_CLIP_ENABLE_EXT:
+ return "VK_DYNAMIC_STATE_DEPTH_CLIP_ENABLE_EXT";
+ case VK_DYNAMIC_STATE_DEPTH_CLIP_NEGATIVE_ONE_TO_ONE_EXT:
+ return "VK_DYNAMIC_STATE_DEPTH_CLIP_NEGATIVE_ONE_TO_ONE_EXT";
+ case VK_DYNAMIC_STATE_DEPTH_COMPARE_OP:
+ return "VK_DYNAMIC_STATE_DEPTH_COMPARE_OP";
+ case VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE:
+ return "VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE";
+ case VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE:
+ return "VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE";
+ case VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT:
+ return "VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT";
+ case VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV:
+ return "VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV";
+ case VK_DYNAMIC_STATE_EXTRA_PRIMITIVE_OVERESTIMATION_SIZE_EXT:
+ return "VK_DYNAMIC_STATE_EXTRA_PRIMITIVE_OVERESTIMATION_SIZE_EXT";
+ case VK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR:
+ return "VK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR";
+ case VK_DYNAMIC_STATE_FRONT_FACE:
+ return "VK_DYNAMIC_STATE_FRONT_FACE";
+ case VK_DYNAMIC_STATE_LINE_RASTERIZATION_MODE_EXT:
+ return "VK_DYNAMIC_STATE_LINE_RASTERIZATION_MODE_EXT";
+ case VK_DYNAMIC_STATE_LINE_STIPPLE_ENABLE_EXT:
+ return "VK_DYNAMIC_STATE_LINE_STIPPLE_ENABLE_EXT";
+ case VK_DYNAMIC_STATE_LINE_STIPPLE_EXT:
+ return "VK_DYNAMIC_STATE_LINE_STIPPLE_EXT";
+ case VK_DYNAMIC_STATE_LINE_WIDTH:
+ return "VK_DYNAMIC_STATE_LINE_WIDTH";
+ case VK_DYNAMIC_STATE_LOGIC_OP_ENABLE_EXT:
+ return "VK_DYNAMIC_STATE_LOGIC_OP_ENABLE_EXT";
+ case VK_DYNAMIC_STATE_LOGIC_OP_EXT:
+ return "VK_DYNAMIC_STATE_LOGIC_OP_EXT";
+ case VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT:
+ return "VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT";
+ case VK_DYNAMIC_STATE_POLYGON_MODE_EXT:
+ return "VK_DYNAMIC_STATE_POLYGON_MODE_EXT";
+ case VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE:
+ return "VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE";
+ case VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY:
+ return "VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY";
+ case VK_DYNAMIC_STATE_PROVOKING_VERTEX_MODE_EXT:
+ return "VK_DYNAMIC_STATE_PROVOKING_VERTEX_MODE_EXT";
+ case VK_DYNAMIC_STATE_RASTERIZATION_SAMPLES_EXT:
+ return "VK_DYNAMIC_STATE_RASTERIZATION_SAMPLES_EXT";
+ case VK_DYNAMIC_STATE_RASTERIZATION_STREAM_EXT:
+ return "VK_DYNAMIC_STATE_RASTERIZATION_STREAM_EXT";
+ case VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE:
+ return "VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE";
+ case VK_DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR:
+ return "VK_DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR";
+ case VK_DYNAMIC_STATE_REPRESENTATIVE_FRAGMENT_TEST_ENABLE_NV:
+ return "VK_DYNAMIC_STATE_REPRESENTATIVE_FRAGMENT_TEST_ENABLE_NV";
+ case VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_ENABLE_EXT:
+ return "VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_ENABLE_EXT";
+ case VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT:
+ return "VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT";
+ case VK_DYNAMIC_STATE_SAMPLE_MASK_EXT:
+ return "VK_DYNAMIC_STATE_SAMPLE_MASK_EXT";
+ case VK_DYNAMIC_STATE_SCISSOR:
+ return "VK_DYNAMIC_STATE_SCISSOR";
+ case VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT:
+ return "VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT";
+ case VK_DYNAMIC_STATE_SHADING_RATE_IMAGE_ENABLE_NV:
+ return "VK_DYNAMIC_STATE_SHADING_RATE_IMAGE_ENABLE_NV";
+ case VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK:
+ return "VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK";
+ case VK_DYNAMIC_STATE_STENCIL_OP:
+ return "VK_DYNAMIC_STATE_STENCIL_OP";
+ case VK_DYNAMIC_STATE_STENCIL_REFERENCE:
+ return "VK_DYNAMIC_STATE_STENCIL_REFERENCE";
+ case VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE:
+ return "VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE";
+ case VK_DYNAMIC_STATE_STENCIL_WRITE_MASK:
+ return "VK_DYNAMIC_STATE_STENCIL_WRITE_MASK";
+ case VK_DYNAMIC_STATE_TESSELLATION_DOMAIN_ORIGIN_EXT:
+ return "VK_DYNAMIC_STATE_TESSELLATION_DOMAIN_ORIGIN_EXT";
+ case VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE:
+ return "VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE";
+ case VK_DYNAMIC_STATE_VERTEX_INPUT_EXT:
+ return "VK_DYNAMIC_STATE_VERTEX_INPUT_EXT";
+ case VK_DYNAMIC_STATE_VIEWPORT:
+ return "VK_DYNAMIC_STATE_VIEWPORT";
+ case VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV:
+ return "VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV";
+ case VK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV:
+ return "VK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV";
+ case VK_DYNAMIC_STATE_VIEWPORT_SWIZZLE_NV:
+ return "VK_DYNAMIC_STATE_VIEWPORT_SWIZZLE_NV";
+ case VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT:
+ return "VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT";
+ case VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_ENABLE_NV:
+ return "VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_ENABLE_NV";
+ case VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV:
+ return "VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV";
+ default:
+ return "Unhandled VkDynamicState";
+ }
+}
+
+static inline const char* string_VkFrontFace(VkFrontFace input_value)
+{
+ switch (input_value)
+ {
+ case VK_FRONT_FACE_CLOCKWISE:
+ return "VK_FRONT_FACE_CLOCKWISE";
+ case VK_FRONT_FACE_COUNTER_CLOCKWISE:
+ return "VK_FRONT_FACE_COUNTER_CLOCKWISE";
+ default:
+ return "Unhandled VkFrontFace";
+ }
+}
+
+static inline const char* string_VkVertexInputRate(VkVertexInputRate input_value)
+{
+ switch (input_value)
+ {
+ case VK_VERTEX_INPUT_RATE_INSTANCE:
+ return "VK_VERTEX_INPUT_RATE_INSTANCE";
+ case VK_VERTEX_INPUT_RATE_VERTEX:
+ return "VK_VERTEX_INPUT_RATE_VERTEX";
+ default:
+ return "Unhandled VkVertexInputRate";
+ }
+}
+
+static inline const char* string_VkPrimitiveTopology(VkPrimitiveTopology input_value)
+{
+ switch (input_value)
+ {
+ case VK_PRIMITIVE_TOPOLOGY_LINE_LIST:
+ return "VK_PRIMITIVE_TOPOLOGY_LINE_LIST";
+ case VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY:
+ return "VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY";
+ case VK_PRIMITIVE_TOPOLOGY_LINE_STRIP:
+ return "VK_PRIMITIVE_TOPOLOGY_LINE_STRIP";
+ case VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY:
+ return "VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY";
+ case VK_PRIMITIVE_TOPOLOGY_PATCH_LIST:
+ return "VK_PRIMITIVE_TOPOLOGY_PATCH_LIST";
+ case VK_PRIMITIVE_TOPOLOGY_POINT_LIST:
+ return "VK_PRIMITIVE_TOPOLOGY_POINT_LIST";
+ case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN:
+ return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN";
+ case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST:
+ return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST";
+ case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY:
+ return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY";
+ case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP:
+ return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP";
+ case VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY:
+ return "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY";
+ default:
+ return "Unhandled VkPrimitiveTopology";
+ }
+}
+
+static inline const char* string_VkPolygonMode(VkPolygonMode input_value)
+{
+ switch (input_value)
+ {
+ case VK_POLYGON_MODE_FILL:
+ return "VK_POLYGON_MODE_FILL";
+ case VK_POLYGON_MODE_FILL_RECTANGLE_NV:
+ return "VK_POLYGON_MODE_FILL_RECTANGLE_NV";
+ case VK_POLYGON_MODE_LINE:
+ return "VK_POLYGON_MODE_LINE";
+ case VK_POLYGON_MODE_POINT:
+ return "VK_POLYGON_MODE_POINT";
+ default:
+ return "Unhandled VkPolygonMode";
+ }
+}
+
+static inline const char* string_VkPipelineDepthStencilStateCreateFlagBits(VkPipelineDepthStencilStateCreateFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT:
+ return "VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT";
+ case VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT:
+ return "VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT";
+ default:
+ return "Unhandled VkPipelineDepthStencilStateCreateFlagBits";
+ }
+}
+
+static inline std::string string_VkPipelineDepthStencilStateCreateFlags(VkPipelineDepthStencilStateCreateFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkPipelineDepthStencilStateCreateFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkPipelineDepthStencilStateCreateFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkStencilOp(VkStencilOp input_value)
+{
+ switch (input_value)
+ {
+ case VK_STENCIL_OP_DECREMENT_AND_CLAMP:
+ return "VK_STENCIL_OP_DECREMENT_AND_CLAMP";
+ case VK_STENCIL_OP_DECREMENT_AND_WRAP:
+ return "VK_STENCIL_OP_DECREMENT_AND_WRAP";
+ case VK_STENCIL_OP_INCREMENT_AND_CLAMP:
+ return "VK_STENCIL_OP_INCREMENT_AND_CLAMP";
+ case VK_STENCIL_OP_INCREMENT_AND_WRAP:
+ return "VK_STENCIL_OP_INCREMENT_AND_WRAP";
+ case VK_STENCIL_OP_INVERT:
+ return "VK_STENCIL_OP_INVERT";
+ case VK_STENCIL_OP_KEEP:
+ return "VK_STENCIL_OP_KEEP";
+ case VK_STENCIL_OP_REPLACE:
+ return "VK_STENCIL_OP_REPLACE";
+ case VK_STENCIL_OP_ZERO:
+ return "VK_STENCIL_OP_ZERO";
+ default:
+ return "Unhandled VkStencilOp";
+ }
+}
+
+static inline const char* string_VkPipelineColorBlendStateCreateFlagBits(VkPipelineColorBlendStateCreateFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_EXT:
+ return "VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_EXT";
+ default:
+ return "Unhandled VkPipelineColorBlendStateCreateFlagBits";
+ }
+}
+
+static inline std::string string_VkPipelineColorBlendStateCreateFlags(VkPipelineColorBlendStateCreateFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkPipelineColorBlendStateCreateFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkPipelineColorBlendStateCreateFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkLogicOp(VkLogicOp input_value)
+{
+ switch (input_value)
+ {
+ case VK_LOGIC_OP_AND:
+ return "VK_LOGIC_OP_AND";
+ case VK_LOGIC_OP_AND_INVERTED:
+ return "VK_LOGIC_OP_AND_INVERTED";
+ case VK_LOGIC_OP_AND_REVERSE:
+ return "VK_LOGIC_OP_AND_REVERSE";
+ case VK_LOGIC_OP_CLEAR:
+ return "VK_LOGIC_OP_CLEAR";
+ case VK_LOGIC_OP_COPY:
+ return "VK_LOGIC_OP_COPY";
+ case VK_LOGIC_OP_COPY_INVERTED:
+ return "VK_LOGIC_OP_COPY_INVERTED";
+ case VK_LOGIC_OP_EQUIVALENT:
+ return "VK_LOGIC_OP_EQUIVALENT";
+ case VK_LOGIC_OP_INVERT:
+ return "VK_LOGIC_OP_INVERT";
+ case VK_LOGIC_OP_NAND:
+ return "VK_LOGIC_OP_NAND";
+ case VK_LOGIC_OP_NOR:
+ return "VK_LOGIC_OP_NOR";
+ case VK_LOGIC_OP_NO_OP:
+ return "VK_LOGIC_OP_NO_OP";
+ case VK_LOGIC_OP_OR:
+ return "VK_LOGIC_OP_OR";
+ case VK_LOGIC_OP_OR_INVERTED:
+ return "VK_LOGIC_OP_OR_INVERTED";
+ case VK_LOGIC_OP_OR_REVERSE:
+ return "VK_LOGIC_OP_OR_REVERSE";
+ case VK_LOGIC_OP_SET:
+ return "VK_LOGIC_OP_SET";
+ case VK_LOGIC_OP_XOR:
+ return "VK_LOGIC_OP_XOR";
+ default:
+ return "Unhandled VkLogicOp";
+ }
+}
+
+static inline const char* string_VkPipelineLayoutCreateFlagBits(VkPipelineLayoutCreateFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT:
+ return "VK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT";
+ default:
+ return "Unhandled VkPipelineLayoutCreateFlagBits";
+ }
+}
+
+static inline std::string string_VkPipelineLayoutCreateFlags(VkPipelineLayoutCreateFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkPipelineLayoutCreateFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkPipelineLayoutCreateFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkBorderColor(VkBorderColor input_value)
+{
+ switch (input_value)
+ {
+ case VK_BORDER_COLOR_FLOAT_CUSTOM_EXT:
+ return "VK_BORDER_COLOR_FLOAT_CUSTOM_EXT";
+ case VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK:
+ return "VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK";
+ case VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE:
+ return "VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE";
+ case VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK:
+ return "VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK";
+ case VK_BORDER_COLOR_INT_CUSTOM_EXT:
+ return "VK_BORDER_COLOR_INT_CUSTOM_EXT";
+ case VK_BORDER_COLOR_INT_OPAQUE_BLACK:
+ return "VK_BORDER_COLOR_INT_OPAQUE_BLACK";
+ case VK_BORDER_COLOR_INT_OPAQUE_WHITE:
+ return "VK_BORDER_COLOR_INT_OPAQUE_WHITE";
+ case VK_BORDER_COLOR_INT_TRANSPARENT_BLACK:
+ return "VK_BORDER_COLOR_INT_TRANSPARENT_BLACK";
+ default:
+ return "Unhandled VkBorderColor";
+ }
+}
+
+static inline const char* string_VkFilter(VkFilter input_value)
+{
+ switch (input_value)
+ {
+ case VK_FILTER_CUBIC_EXT:
+ return "VK_FILTER_CUBIC_EXT";
+ case VK_FILTER_LINEAR:
+ return "VK_FILTER_LINEAR";
+ case VK_FILTER_NEAREST:
+ return "VK_FILTER_NEAREST";
+ default:
+ return "Unhandled VkFilter";
+ }
+}
+
+static inline const char* string_VkSamplerAddressMode(VkSamplerAddressMode input_value)
+{
+ switch (input_value)
+ {
+ case VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER:
+ return "VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER";
+ case VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE:
+ return "VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE";
+ case VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT:
+ return "VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT";
+ case VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE:
+ return "VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE";
+ case VK_SAMPLER_ADDRESS_MODE_REPEAT:
+ return "VK_SAMPLER_ADDRESS_MODE_REPEAT";
+ default:
+ return "Unhandled VkSamplerAddressMode";
+ }
+}
+
+static inline const char* string_VkSamplerCreateFlagBits(VkSamplerCreateFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_SAMPLER_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT:
+ return "VK_SAMPLER_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT";
+ case VK_SAMPLER_CREATE_IMAGE_PROCESSING_BIT_QCOM:
+ return "VK_SAMPLER_CREATE_IMAGE_PROCESSING_BIT_QCOM";
+ case VK_SAMPLER_CREATE_NON_SEAMLESS_CUBE_MAP_BIT_EXT:
+ return "VK_SAMPLER_CREATE_NON_SEAMLESS_CUBE_MAP_BIT_EXT";
+ case VK_SAMPLER_CREATE_SUBSAMPLED_BIT_EXT:
+ return "VK_SAMPLER_CREATE_SUBSAMPLED_BIT_EXT";
+ case VK_SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT:
+ return "VK_SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT";
+ default:
+ return "Unhandled VkSamplerCreateFlagBits";
+ }
+}
+
+static inline std::string string_VkSamplerCreateFlags(VkSamplerCreateFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkSamplerCreateFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkSamplerCreateFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkSamplerMipmapMode(VkSamplerMipmapMode input_value)
+{
+ switch (input_value)
+ {
+ case VK_SAMPLER_MIPMAP_MODE_LINEAR:
+ return "VK_SAMPLER_MIPMAP_MODE_LINEAR";
+ case VK_SAMPLER_MIPMAP_MODE_NEAREST:
+ return "VK_SAMPLER_MIPMAP_MODE_NEAREST";
+ default:
+ return "Unhandled VkSamplerMipmapMode";
+ }
+}
+
+static inline const char* string_VkDescriptorPoolCreateFlagBits(VkDescriptorPoolCreateFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT:
+ return "VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT";
+ case VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_EXT:
+ return "VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_EXT";
+ case VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT:
+ return "VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT";
+ default:
+ return "Unhandled VkDescriptorPoolCreateFlagBits";
+ }
+}
+
+static inline std::string string_VkDescriptorPoolCreateFlags(VkDescriptorPoolCreateFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkDescriptorPoolCreateFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkDescriptorPoolCreateFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkDescriptorType(VkDescriptorType input_value)
+{
+ switch (input_value)
+ {
+ case VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR:
+ return "VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR";
+ case VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV:
+ return "VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV";
+ case VK_DESCRIPTOR_TYPE_BLOCK_MATCH_IMAGE_QCOM:
+ return "VK_DESCRIPTOR_TYPE_BLOCK_MATCH_IMAGE_QCOM";
+ case VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER:
+ return "VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER";
+ case VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK:
+ return "VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK";
+ case VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT:
+ return "VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT";
+ case VK_DESCRIPTOR_TYPE_MUTABLE_EXT:
+ return "VK_DESCRIPTOR_TYPE_MUTABLE_EXT";
+ case VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE:
+ return "VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE";
+ case VK_DESCRIPTOR_TYPE_SAMPLER:
+ return "VK_DESCRIPTOR_TYPE_SAMPLER";
+ case VK_DESCRIPTOR_TYPE_SAMPLE_WEIGHT_IMAGE_QCOM:
+ return "VK_DESCRIPTOR_TYPE_SAMPLE_WEIGHT_IMAGE_QCOM";
+ case VK_DESCRIPTOR_TYPE_STORAGE_BUFFER:
+ return "VK_DESCRIPTOR_TYPE_STORAGE_BUFFER";
+ case VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC:
+ return "VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC";
+ case VK_DESCRIPTOR_TYPE_STORAGE_IMAGE:
+ return "VK_DESCRIPTOR_TYPE_STORAGE_IMAGE";
+ case VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER:
+ return "VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER";
+ case VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER:
+ return "VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER";
+ case VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC:
+ return "VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC";
+ case VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER:
+ return "VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER";
+ default:
+ return "Unhandled VkDescriptorType";
+ }
+}
+
+static inline const char* string_VkDescriptorSetLayoutCreateFlagBits(VkDescriptorSetLayoutCreateFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_DESCRIPTOR_SET_LAYOUT_CREATE_DESCRIPTOR_BUFFER_BIT_EXT:
+ return "VK_DESCRIPTOR_SET_LAYOUT_CREATE_DESCRIPTOR_BUFFER_BIT_EXT";
+ case VK_DESCRIPTOR_SET_LAYOUT_CREATE_EMBEDDED_IMMUTABLE_SAMPLERS_BIT_EXT:
+ return "VK_DESCRIPTOR_SET_LAYOUT_CREATE_EMBEDDED_IMMUTABLE_SAMPLERS_BIT_EXT";
+ case VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_EXT:
+ return "VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_EXT";
+ case VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR:
+ return "VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR";
+ case VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT:
+ return "VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT";
+ default:
+ return "Unhandled VkDescriptorSetLayoutCreateFlagBits";
+ }
+}
+
+static inline std::string string_VkDescriptorSetLayoutCreateFlags(VkDescriptorSetLayoutCreateFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkDescriptorSetLayoutCreateFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkDescriptorSetLayoutCreateFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkAttachmentDescriptionFlagBits(VkAttachmentDescriptionFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT:
+ return "VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT";
+ default:
+ return "Unhandled VkAttachmentDescriptionFlagBits";
+ }
+}
+
+static inline std::string string_VkAttachmentDescriptionFlags(VkAttachmentDescriptionFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkAttachmentDescriptionFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkAttachmentDescriptionFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkAttachmentLoadOp(VkAttachmentLoadOp input_value)
+{
+ switch (input_value)
+ {
+ case VK_ATTACHMENT_LOAD_OP_CLEAR:
+ return "VK_ATTACHMENT_LOAD_OP_CLEAR";
+ case VK_ATTACHMENT_LOAD_OP_DONT_CARE:
+ return "VK_ATTACHMENT_LOAD_OP_DONT_CARE";
+ case VK_ATTACHMENT_LOAD_OP_LOAD:
+ return "VK_ATTACHMENT_LOAD_OP_LOAD";
+ case VK_ATTACHMENT_LOAD_OP_NONE_EXT:
+ return "VK_ATTACHMENT_LOAD_OP_NONE_EXT";
+ default:
+ return "Unhandled VkAttachmentLoadOp";
+ }
+}
+
+static inline const char* string_VkAttachmentStoreOp(VkAttachmentStoreOp input_value)
+{
+ switch (input_value)
+ {
+ case VK_ATTACHMENT_STORE_OP_DONT_CARE:
+ return "VK_ATTACHMENT_STORE_OP_DONT_CARE";
+ case VK_ATTACHMENT_STORE_OP_NONE:
+ return "VK_ATTACHMENT_STORE_OP_NONE";
+ case VK_ATTACHMENT_STORE_OP_STORE:
+ return "VK_ATTACHMENT_STORE_OP_STORE";
+ default:
+ return "Unhandled VkAttachmentStoreOp";
+ }
+}
+
+static inline const char* string_VkDependencyFlagBits(VkDependencyFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_DEPENDENCY_BY_REGION_BIT:
+ return "VK_DEPENDENCY_BY_REGION_BIT";
+ case VK_DEPENDENCY_DEVICE_GROUP_BIT:
+ return "VK_DEPENDENCY_DEVICE_GROUP_BIT";
+ case VK_DEPENDENCY_FEEDBACK_LOOP_BIT_EXT:
+ return "VK_DEPENDENCY_FEEDBACK_LOOP_BIT_EXT";
+ case VK_DEPENDENCY_VIEW_LOCAL_BIT:
+ return "VK_DEPENDENCY_VIEW_LOCAL_BIT";
+ default:
+ return "Unhandled VkDependencyFlagBits";
+ }
+}
+
+static inline std::string string_VkDependencyFlags(VkDependencyFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkDependencyFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkDependencyFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkFramebufferCreateFlagBits(VkFramebufferCreateFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT:
+ return "VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT";
+ default:
+ return "Unhandled VkFramebufferCreateFlagBits";
+ }
+}
+
+static inline std::string string_VkFramebufferCreateFlags(VkFramebufferCreateFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkFramebufferCreateFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkFramebufferCreateFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkPipelineBindPoint(VkPipelineBindPoint input_value)
+{
+ switch (input_value)
+ {
+ case VK_PIPELINE_BIND_POINT_COMPUTE:
+ return "VK_PIPELINE_BIND_POINT_COMPUTE";
+ case VK_PIPELINE_BIND_POINT_GRAPHICS:
+ return "VK_PIPELINE_BIND_POINT_GRAPHICS";
+ case VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR:
+ return "VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR";
+ case VK_PIPELINE_BIND_POINT_SUBPASS_SHADING_HUAWEI:
+ return "VK_PIPELINE_BIND_POINT_SUBPASS_SHADING_HUAWEI";
+ default:
+ return "Unhandled VkPipelineBindPoint";
+ }
+}
+
+static inline const char* string_VkRenderPassCreateFlagBits(VkRenderPassCreateFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM:
+ return "VK_RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM";
+ default:
+ return "Unhandled VkRenderPassCreateFlagBits";
+ }
+}
+
+static inline std::string string_VkRenderPassCreateFlags(VkRenderPassCreateFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkRenderPassCreateFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkRenderPassCreateFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkSubpassDescriptionFlagBits(VkSubpassDescriptionFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_SUBPASS_DESCRIPTION_ENABLE_LEGACY_DITHERING_BIT_EXT:
+ return "VK_SUBPASS_DESCRIPTION_ENABLE_LEGACY_DITHERING_BIT_EXT";
+ case VK_SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM:
+ return "VK_SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM";
+ case VK_SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX:
+ return "VK_SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX";
+ case VK_SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX:
+ return "VK_SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX";
+ case VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_EXT:
+ return "VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_EXT";
+ case VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT:
+ return "VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT";
+ case VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT:
+ return "VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT";
+ case VK_SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM:
+ return "VK_SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM";
+ default:
+ return "Unhandled VkSubpassDescriptionFlagBits";
+ }
+}
+
+static inline std::string string_VkSubpassDescriptionFlags(VkSubpassDescriptionFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkSubpassDescriptionFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkSubpassDescriptionFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkCommandPoolCreateFlagBits(VkCommandPoolCreateFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_COMMAND_POOL_CREATE_PROTECTED_BIT:
+ return "VK_COMMAND_POOL_CREATE_PROTECTED_BIT";
+ case VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT:
+ return "VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT";
+ case VK_COMMAND_POOL_CREATE_TRANSIENT_BIT:
+ return "VK_COMMAND_POOL_CREATE_TRANSIENT_BIT";
+ default:
+ return "Unhandled VkCommandPoolCreateFlagBits";
+ }
+}
+
+static inline std::string string_VkCommandPoolCreateFlags(VkCommandPoolCreateFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkCommandPoolCreateFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkCommandPoolCreateFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkCommandPoolResetFlagBits(VkCommandPoolResetFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT:
+ return "VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT";
+ default:
+ return "Unhandled VkCommandPoolResetFlagBits";
+ }
+}
+
+static inline std::string string_VkCommandPoolResetFlags(VkCommandPoolResetFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkCommandPoolResetFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkCommandPoolResetFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkCommandBufferLevel(VkCommandBufferLevel input_value)
+{
+ switch (input_value)
+ {
+ case VK_COMMAND_BUFFER_LEVEL_PRIMARY:
+ return "VK_COMMAND_BUFFER_LEVEL_PRIMARY";
+ case VK_COMMAND_BUFFER_LEVEL_SECONDARY:
+ return "VK_COMMAND_BUFFER_LEVEL_SECONDARY";
+ default:
+ return "Unhandled VkCommandBufferLevel";
+ }
+}
+
+static inline const char* string_VkCommandBufferUsageFlagBits(VkCommandBufferUsageFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT:
+ return "VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT";
+ case VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT:
+ return "VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT";
+ case VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT:
+ return "VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT";
+ default:
+ return "Unhandled VkCommandBufferUsageFlagBits";
+ }
+}
+
+static inline std::string string_VkCommandBufferUsageFlags(VkCommandBufferUsageFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkCommandBufferUsageFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkCommandBufferUsageFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkQueryControlFlagBits(VkQueryControlFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_QUERY_CONTROL_PRECISE_BIT:
+ return "VK_QUERY_CONTROL_PRECISE_BIT";
+ default:
+ return "Unhandled VkQueryControlFlagBits";
+ }
+}
+
+static inline std::string string_VkQueryControlFlags(VkQueryControlFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkQueryControlFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkQueryControlFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkCommandBufferResetFlagBits(VkCommandBufferResetFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT:
+ return "VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT";
+ default:
+ return "Unhandled VkCommandBufferResetFlagBits";
+ }
+}
+
+static inline std::string string_VkCommandBufferResetFlags(VkCommandBufferResetFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkCommandBufferResetFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkCommandBufferResetFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkIndexType(VkIndexType input_value)
+{
+ switch (input_value)
+ {
+ case VK_INDEX_TYPE_NONE_KHR:
+ return "VK_INDEX_TYPE_NONE_KHR";
+ case VK_INDEX_TYPE_UINT16:
+ return "VK_INDEX_TYPE_UINT16";
+ case VK_INDEX_TYPE_UINT32:
+ return "VK_INDEX_TYPE_UINT32";
+ case VK_INDEX_TYPE_UINT8_EXT:
+ return "VK_INDEX_TYPE_UINT8_EXT";
+ default:
+ return "Unhandled VkIndexType";
+ }
+}
+
+static inline const char* string_VkStencilFaceFlagBits(VkStencilFaceFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_STENCIL_FACE_BACK_BIT:
+ return "VK_STENCIL_FACE_BACK_BIT";
+ case VK_STENCIL_FACE_FRONT_AND_BACK:
+ return "VK_STENCIL_FACE_FRONT_AND_BACK";
+ case VK_STENCIL_FACE_FRONT_BIT:
+ return "VK_STENCIL_FACE_FRONT_BIT";
+ default:
+ return "Unhandled VkStencilFaceFlagBits";
+ }
+}
+
+static inline std::string string_VkStencilFaceFlags(VkStencilFaceFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkStencilFaceFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkStencilFaceFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkSubpassContents(VkSubpassContents input_value)
+{
+ switch (input_value)
+ {
+ case VK_SUBPASS_CONTENTS_INLINE:
+ return "VK_SUBPASS_CONTENTS_INLINE";
+ case VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS:
+ return "VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS";
+ default:
+ return "Unhandled VkSubpassContents";
+ }
+}
+
+static inline const char* string_VkSubgroupFeatureFlagBits(VkSubgroupFeatureFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_SUBGROUP_FEATURE_ARITHMETIC_BIT:
+ return "VK_SUBGROUP_FEATURE_ARITHMETIC_BIT";
+ case VK_SUBGROUP_FEATURE_BALLOT_BIT:
+ return "VK_SUBGROUP_FEATURE_BALLOT_BIT";
+ case VK_SUBGROUP_FEATURE_BASIC_BIT:
+ return "VK_SUBGROUP_FEATURE_BASIC_BIT";
+ case VK_SUBGROUP_FEATURE_CLUSTERED_BIT:
+ return "VK_SUBGROUP_FEATURE_CLUSTERED_BIT";
+ case VK_SUBGROUP_FEATURE_PARTITIONED_BIT_NV:
+ return "VK_SUBGROUP_FEATURE_PARTITIONED_BIT_NV";
+ case VK_SUBGROUP_FEATURE_QUAD_BIT:
+ return "VK_SUBGROUP_FEATURE_QUAD_BIT";
+ case VK_SUBGROUP_FEATURE_SHUFFLE_BIT:
+ return "VK_SUBGROUP_FEATURE_SHUFFLE_BIT";
+ case VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT:
+ return "VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT";
+ case VK_SUBGROUP_FEATURE_VOTE_BIT:
+ return "VK_SUBGROUP_FEATURE_VOTE_BIT";
+ default:
+ return "Unhandled VkSubgroupFeatureFlagBits";
+ }
+}
+
+static inline std::string string_VkSubgroupFeatureFlags(VkSubgroupFeatureFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkSubgroupFeatureFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkSubgroupFeatureFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkPeerMemoryFeatureFlagBits(VkPeerMemoryFeatureFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_PEER_MEMORY_FEATURE_COPY_DST_BIT:
+ return "VK_PEER_MEMORY_FEATURE_COPY_DST_BIT";
+ case VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT:
+ return "VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT";
+ case VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT:
+ return "VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT";
+ case VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT:
+ return "VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT";
+ default:
+ return "Unhandled VkPeerMemoryFeatureFlagBits";
+ }
+}
+
+static inline std::string string_VkPeerMemoryFeatureFlags(VkPeerMemoryFeatureFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkPeerMemoryFeatureFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkPeerMemoryFeatureFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkMemoryAllocateFlagBits(VkMemoryAllocateFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT:
+ return "VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT";
+ case VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT:
+ return "VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT";
+ case VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT:
+ return "VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT";
+ default:
+ return "Unhandled VkMemoryAllocateFlagBits";
+ }
+}
+
+static inline std::string string_VkMemoryAllocateFlags(VkMemoryAllocateFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkMemoryAllocateFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkMemoryAllocateFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkPointClippingBehavior(VkPointClippingBehavior input_value)
+{
+ switch (input_value)
+ {
+ case VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES:
+ return "VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES";
+ case VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY:
+ return "VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY";
+ default:
+ return "Unhandled VkPointClippingBehavior";
+ }
+}
+
+static inline const char* string_VkTessellationDomainOrigin(VkTessellationDomainOrigin input_value)
+{
+ switch (input_value)
+ {
+ case VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT:
+ return "VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT";
+ case VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT:
+ return "VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT";
+ default:
+ return "Unhandled VkTessellationDomainOrigin";
+ }
+}
+
+static inline const char* string_VkSamplerYcbcrModelConversion(VkSamplerYcbcrModelConversion input_value)
+{
+ switch (input_value)
+ {
+ case VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY:
+ return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY";
+ case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020:
+ return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020";
+ case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601:
+ return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601";
+ case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709:
+ return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709";
+ case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY:
+ return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY";
+ default:
+ return "Unhandled VkSamplerYcbcrModelConversion";
+ }
+}
+
+static inline const char* string_VkSamplerYcbcrRange(VkSamplerYcbcrRange input_value)
+{
+ switch (input_value)
+ {
+ case VK_SAMPLER_YCBCR_RANGE_ITU_FULL:
+ return "VK_SAMPLER_YCBCR_RANGE_ITU_FULL";
+ case VK_SAMPLER_YCBCR_RANGE_ITU_NARROW:
+ return "VK_SAMPLER_YCBCR_RANGE_ITU_NARROW";
+ default:
+ return "Unhandled VkSamplerYcbcrRange";
+ }
+}
+
+static inline const char* string_VkChromaLocation(VkChromaLocation input_value)
+{
+ switch (input_value)
+ {
+ case VK_CHROMA_LOCATION_COSITED_EVEN:
+ return "VK_CHROMA_LOCATION_COSITED_EVEN";
+ case VK_CHROMA_LOCATION_MIDPOINT:
+ return "VK_CHROMA_LOCATION_MIDPOINT";
+ default:
+ return "Unhandled VkChromaLocation";
+ }
+}
+
+static inline const char* string_VkDescriptorUpdateTemplateType(VkDescriptorUpdateTemplateType input_value)
+{
+ switch (input_value)
+ {
+ case VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET:
+ return "VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET";
+ case VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR:
+ return "VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR";
+ default:
+ return "Unhandled VkDescriptorUpdateTemplateType";
+ }
+}
+
+static inline const char* string_VkExternalMemoryHandleTypeFlagBits(VkExternalMemoryHandleTypeFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID:
+ return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID";
+ case VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT:
+ return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT";
+ case VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT:
+ return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT";
+ case VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT:
+ return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT";
+ case VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT:
+ return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT";
+ case VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT:
+ return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT";
+ case VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT:
+ return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT";
+ case VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT:
+ return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT";
+ case VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT:
+ return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT";
+ case VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT:
+ return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT";
+ case VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT:
+ return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT";
+ case VK_EXTERNAL_MEMORY_HANDLE_TYPE_RDMA_ADDRESS_BIT_NV:
+ return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_RDMA_ADDRESS_BIT_NV";
+ case VK_EXTERNAL_MEMORY_HANDLE_TYPE_ZIRCON_VMO_BIT_FUCHSIA:
+ return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_ZIRCON_VMO_BIT_FUCHSIA";
+ default:
+ return "Unhandled VkExternalMemoryHandleTypeFlagBits";
+ }
+}
+
+static inline std::string string_VkExternalMemoryHandleTypeFlags(VkExternalMemoryHandleTypeFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkExternalMemoryHandleTypeFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkExternalMemoryHandleTypeFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkExternalMemoryFeatureFlagBits(VkExternalMemoryFeatureFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT:
+ return "VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT";
+ case VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT:
+ return "VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT";
+ case VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT:
+ return "VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT";
+ default:
+ return "Unhandled VkExternalMemoryFeatureFlagBits";
+ }
+}
+
+static inline std::string string_VkExternalMemoryFeatureFlags(VkExternalMemoryFeatureFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkExternalMemoryFeatureFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkExternalMemoryFeatureFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkExternalFenceHandleTypeFlagBits(VkExternalFenceHandleTypeFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT:
+ return "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT";
+ case VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT:
+ return "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT";
+ case VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT:
+ return "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT";
+ case VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT:
+ return "VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT";
+ default:
+ return "Unhandled VkExternalFenceHandleTypeFlagBits";
+ }
+}
+
+static inline std::string string_VkExternalFenceHandleTypeFlags(VkExternalFenceHandleTypeFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkExternalFenceHandleTypeFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkExternalFenceHandleTypeFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkExternalFenceFeatureFlagBits(VkExternalFenceFeatureFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT:
+ return "VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT";
+ case VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT:
+ return "VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT";
+ default:
+ return "Unhandled VkExternalFenceFeatureFlagBits";
+ }
+}
+
+static inline std::string string_VkExternalFenceFeatureFlags(VkExternalFenceFeatureFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkExternalFenceFeatureFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkExternalFenceFeatureFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkFenceImportFlagBits(VkFenceImportFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_FENCE_IMPORT_TEMPORARY_BIT:
+ return "VK_FENCE_IMPORT_TEMPORARY_BIT";
+ default:
+ return "Unhandled VkFenceImportFlagBits";
+ }
+}
+
+static inline std::string string_VkFenceImportFlags(VkFenceImportFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkFenceImportFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkFenceImportFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkSemaphoreImportFlagBits(VkSemaphoreImportFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_SEMAPHORE_IMPORT_TEMPORARY_BIT:
+ return "VK_SEMAPHORE_IMPORT_TEMPORARY_BIT";
+ default:
+ return "Unhandled VkSemaphoreImportFlagBits";
+ }
+}
+
+static inline std::string string_VkSemaphoreImportFlags(VkSemaphoreImportFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkSemaphoreImportFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkSemaphoreImportFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkExternalSemaphoreHandleTypeFlagBits(VkExternalSemaphoreHandleTypeFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT:
+ return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT";
+ case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT:
+ return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT";
+ case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT:
+ return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT";
+ case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT:
+ return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT";
+ case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT:
+ return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT";
+ case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_ZIRCON_EVENT_BIT_FUCHSIA:
+ return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_ZIRCON_EVENT_BIT_FUCHSIA";
+ default:
+ return "Unhandled VkExternalSemaphoreHandleTypeFlagBits";
+ }
+}
+
+static inline std::string string_VkExternalSemaphoreHandleTypeFlags(VkExternalSemaphoreHandleTypeFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkExternalSemaphoreHandleTypeFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkExternalSemaphoreHandleTypeFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkExternalSemaphoreFeatureFlagBits(VkExternalSemaphoreFeatureFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT:
+ return "VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT";
+ case VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT:
+ return "VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT";
+ default:
+ return "Unhandled VkExternalSemaphoreFeatureFlagBits";
+ }
+}
+
+static inline std::string string_VkExternalSemaphoreFeatureFlags(VkExternalSemaphoreFeatureFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkExternalSemaphoreFeatureFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkExternalSemaphoreFeatureFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkDriverId(VkDriverId input_value)
+{
+ switch (input_value)
+ {
+ case VK_DRIVER_ID_AMD_OPEN_SOURCE:
+ return "VK_DRIVER_ID_AMD_OPEN_SOURCE";
+ case VK_DRIVER_ID_AMD_PROPRIETARY:
+ return "VK_DRIVER_ID_AMD_PROPRIETARY";
+ case VK_DRIVER_ID_ARM_PROPRIETARY:
+ return "VK_DRIVER_ID_ARM_PROPRIETARY";
+ case VK_DRIVER_ID_BROADCOM_PROPRIETARY:
+ return "VK_DRIVER_ID_BROADCOM_PROPRIETARY";
+ case VK_DRIVER_ID_COREAVI_PROPRIETARY:
+ return "VK_DRIVER_ID_COREAVI_PROPRIETARY";
+ case VK_DRIVER_ID_GGP_PROPRIETARY:
+ return "VK_DRIVER_ID_GGP_PROPRIETARY";
+ case VK_DRIVER_ID_GOOGLE_SWIFTSHADER:
+ return "VK_DRIVER_ID_GOOGLE_SWIFTSHADER";
+ case VK_DRIVER_ID_IMAGINATION_OPEN_SOURCE_MESA:
+ return "VK_DRIVER_ID_IMAGINATION_OPEN_SOURCE_MESA";
+ case VK_DRIVER_ID_IMAGINATION_PROPRIETARY:
+ return "VK_DRIVER_ID_IMAGINATION_PROPRIETARY";
+ case VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA:
+ return "VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA";
+ case VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS:
+ return "VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS";
+ case VK_DRIVER_ID_JUICE_PROPRIETARY:
+ return "VK_DRIVER_ID_JUICE_PROPRIETARY";
+ case VK_DRIVER_ID_MESA_DOZEN:
+ return "VK_DRIVER_ID_MESA_DOZEN";
+ case VK_DRIVER_ID_MESA_LLVMPIPE:
+ return "VK_DRIVER_ID_MESA_LLVMPIPE";
+ case VK_DRIVER_ID_MESA_NVK:
+ return "VK_DRIVER_ID_MESA_NVK";
+ case VK_DRIVER_ID_MESA_PANVK:
+ return "VK_DRIVER_ID_MESA_PANVK";
+ case VK_DRIVER_ID_MESA_RADV:
+ return "VK_DRIVER_ID_MESA_RADV";
+ case VK_DRIVER_ID_MESA_TURNIP:
+ return "VK_DRIVER_ID_MESA_TURNIP";
+ case VK_DRIVER_ID_MESA_V3DV:
+ return "VK_DRIVER_ID_MESA_V3DV";
+ case VK_DRIVER_ID_MESA_VENUS:
+ return "VK_DRIVER_ID_MESA_VENUS";
+ case VK_DRIVER_ID_MOLTENVK:
+ return "VK_DRIVER_ID_MOLTENVK";
+ case VK_DRIVER_ID_NVIDIA_PROPRIETARY:
+ return "VK_DRIVER_ID_NVIDIA_PROPRIETARY";
+ case VK_DRIVER_ID_QUALCOMM_PROPRIETARY:
+ return "VK_DRIVER_ID_QUALCOMM_PROPRIETARY";
+ case VK_DRIVER_ID_SAMSUNG_PROPRIETARY:
+ return "VK_DRIVER_ID_SAMSUNG_PROPRIETARY";
+ case VK_DRIVER_ID_VERISILICON_PROPRIETARY:
+ return "VK_DRIVER_ID_VERISILICON_PROPRIETARY";
+ default:
+ return "Unhandled VkDriverId";
+ }
+}
+
+static inline const char* string_VkShaderFloatControlsIndependence(VkShaderFloatControlsIndependence input_value)
+{
+ switch (input_value)
+ {
+ case VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY:
+ return "VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY";
+ case VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL:
+ return "VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL";
+ case VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE:
+ return "VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE";
+ default:
+ return "Unhandled VkShaderFloatControlsIndependence";
+ }
+}
+
+static inline const char* string_VkResolveModeFlagBits(VkResolveModeFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_RESOLVE_MODE_AVERAGE_BIT:
+ return "VK_RESOLVE_MODE_AVERAGE_BIT";
+ case VK_RESOLVE_MODE_MAX_BIT:
+ return "VK_RESOLVE_MODE_MAX_BIT";
+ case VK_RESOLVE_MODE_MIN_BIT:
+ return "VK_RESOLVE_MODE_MIN_BIT";
+ case VK_RESOLVE_MODE_NONE:
+ return "VK_RESOLVE_MODE_NONE";
+ case VK_RESOLVE_MODE_SAMPLE_ZERO_BIT:
+ return "VK_RESOLVE_MODE_SAMPLE_ZERO_BIT";
+ default:
+ return "Unhandled VkResolveModeFlagBits";
+ }
+}
+
+static inline std::string string_VkResolveModeFlags(VkResolveModeFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkResolveModeFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkResolveModeFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkDescriptorBindingFlagBits(VkDescriptorBindingFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT:
+ return "VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT";
+ case VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT:
+ return "VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT";
+ case VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT:
+ return "VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT";
+ case VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT:
+ return "VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT";
+ default:
+ return "Unhandled VkDescriptorBindingFlagBits";
+ }
+}
+
+static inline std::string string_VkDescriptorBindingFlags(VkDescriptorBindingFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkDescriptorBindingFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkDescriptorBindingFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkSamplerReductionMode(VkSamplerReductionMode input_value)
+{
+ switch (input_value)
+ {
+ case VK_SAMPLER_REDUCTION_MODE_MAX:
+ return "VK_SAMPLER_REDUCTION_MODE_MAX";
+ case VK_SAMPLER_REDUCTION_MODE_MIN:
+ return "VK_SAMPLER_REDUCTION_MODE_MIN";
+ case VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE:
+ return "VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE";
+ default:
+ return "Unhandled VkSamplerReductionMode";
+ }
+}
+
+static inline const char* string_VkSemaphoreType(VkSemaphoreType input_value)
+{
+ switch (input_value)
+ {
+ case VK_SEMAPHORE_TYPE_BINARY:
+ return "VK_SEMAPHORE_TYPE_BINARY";
+ case VK_SEMAPHORE_TYPE_TIMELINE:
+ return "VK_SEMAPHORE_TYPE_TIMELINE";
+ default:
+ return "Unhandled VkSemaphoreType";
+ }
+}
+
+static inline const char* string_VkSemaphoreWaitFlagBits(VkSemaphoreWaitFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_SEMAPHORE_WAIT_ANY_BIT:
+ return "VK_SEMAPHORE_WAIT_ANY_BIT";
+ default:
+ return "Unhandled VkSemaphoreWaitFlagBits";
+ }
+}
+
+static inline std::string string_VkSemaphoreWaitFlags(VkSemaphoreWaitFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkSemaphoreWaitFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkSemaphoreWaitFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkPipelineCreationFeedbackFlagBits(VkPipelineCreationFeedbackFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT:
+ return "VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT";
+ case VK_PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT:
+ return "VK_PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT";
+ case VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT:
+ return "VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT";
+ default:
+ return "Unhandled VkPipelineCreationFeedbackFlagBits";
+ }
+}
+
+static inline std::string string_VkPipelineCreationFeedbackFlags(VkPipelineCreationFeedbackFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkPipelineCreationFeedbackFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkPipelineCreationFeedbackFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkToolPurposeFlagBits(VkToolPurposeFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT:
+ return "VK_TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT";
+ case VK_TOOL_PURPOSE_DEBUG_MARKERS_BIT_EXT:
+ return "VK_TOOL_PURPOSE_DEBUG_MARKERS_BIT_EXT";
+ case VK_TOOL_PURPOSE_DEBUG_REPORTING_BIT_EXT:
+ return "VK_TOOL_PURPOSE_DEBUG_REPORTING_BIT_EXT";
+ case VK_TOOL_PURPOSE_MODIFYING_FEATURES_BIT:
+ return "VK_TOOL_PURPOSE_MODIFYING_FEATURES_BIT";
+ case VK_TOOL_PURPOSE_PROFILING_BIT:
+ return "VK_TOOL_PURPOSE_PROFILING_BIT";
+ case VK_TOOL_PURPOSE_TRACING_BIT:
+ return "VK_TOOL_PURPOSE_TRACING_BIT";
+ case VK_TOOL_PURPOSE_VALIDATION_BIT:
+ return "VK_TOOL_PURPOSE_VALIDATION_BIT";
+ default:
+ return "Unhandled VkToolPurposeFlagBits";
+ }
+}
+
+static inline std::string string_VkToolPurposeFlags(VkToolPurposeFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkToolPurposeFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkToolPurposeFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkPipelineStageFlagBits2(uint64_t input_value)
+{
+ switch (input_value)
+ {
+ case VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_COPY_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_COPY_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT:
+ return "VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT";
+ case VK_PIPELINE_STAGE_2_ALL_GRAPHICS_BIT:
+ return "VK_PIPELINE_STAGE_2_ALL_GRAPHICS_BIT";
+ case VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT:
+ return "VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT";
+ case VK_PIPELINE_STAGE_2_BLIT_BIT:
+ return "VK_PIPELINE_STAGE_2_BLIT_BIT";
+ case VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT:
+ return "VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT";
+ case VK_PIPELINE_STAGE_2_CLEAR_BIT:
+ return "VK_PIPELINE_STAGE_2_CLEAR_BIT";
+ case VK_PIPELINE_STAGE_2_CLUSTER_CULLING_SHADER_BIT_HUAWEI:
+ return "VK_PIPELINE_STAGE_2_CLUSTER_CULLING_SHADER_BIT_HUAWEI";
+ case VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT:
+ return "VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT";
+ case VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV:
+ return "VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV";
+ case VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT:
+ return "VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT";
+ case VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT:
+ return "VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT";
+ case VK_PIPELINE_STAGE_2_COPY_BIT:
+ return "VK_PIPELINE_STAGE_2_COPY_BIT";
+ case VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT:
+ return "VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT";
+ case VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT:
+ return "VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT";
+ case VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT:
+ return "VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT";
+ case VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT:
+ return "VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT";
+ case VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT:
+ return "VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT";
+ case VK_PIPELINE_STAGE_2_HOST_BIT:
+ return "VK_PIPELINE_STAGE_2_HOST_BIT";
+ case VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT:
+ return "VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT";
+ case VK_PIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI:
+ return "VK_PIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI";
+ case VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT:
+ return "VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT";
+ case VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_EXT:
+ return "VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_EXT";
+ case VK_PIPELINE_STAGE_2_MICROMAP_BUILD_BIT_EXT:
+ return "VK_PIPELINE_STAGE_2_MICROMAP_BUILD_BIT_EXT";
+ case VK_PIPELINE_STAGE_2_NONE:
+ return "VK_PIPELINE_STAGE_2_NONE";
+ case VK_PIPELINE_STAGE_2_OPTICAL_FLOW_BIT_NV:
+ return "VK_PIPELINE_STAGE_2_OPTICAL_FLOW_BIT_NV";
+ case VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT:
+ return "VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT";
+ case VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_RESOLVE_BIT:
+ return "VK_PIPELINE_STAGE_2_RESOLVE_BIT";
+ case VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI:
+ return "VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI";
+ case VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_EXT:
+ return "VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_EXT";
+ case VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT:
+ return "VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT";
+ case VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT:
+ return "VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT";
+ case VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT:
+ return "VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT";
+ case VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT:
+ return "VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT";
+ case VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT:
+ return "VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT";
+ case VK_PIPELINE_STAGE_2_VERTEX_INPUT_BIT:
+ return "VK_PIPELINE_STAGE_2_VERTEX_INPUT_BIT";
+ case VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT:
+ return "VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT";
+ case VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR";
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+ default:
+ return "Unhandled VkPipelineStageFlagBits2";
+ }
+}
+
+static inline std::string string_VkPipelineStageFlags2(VkPipelineStageFlags2 input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkPipelineStageFlagBits2(static_cast(1ULL << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkPipelineStageFlagBits2(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkAccessFlagBits2(uint64_t input_value)
+{
+ switch (input_value)
+ {
+ case VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR:
+ return "VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR";
+ case VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR:
+ return "VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR";
+ case VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT:
+ return "VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT";
+ case VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT:
+ return "VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT";
+ case VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT:
+ return "VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT";
+ case VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV:
+ return "VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV";
+ case VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV:
+ return "VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV";
+ case VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT:
+ return "VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT";
+ case VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT:
+ return "VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT";
+ case VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT:
+ return "VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT";
+ case VK_ACCESS_2_DESCRIPTOR_BUFFER_READ_BIT_EXT:
+ return "VK_ACCESS_2_DESCRIPTOR_BUFFER_READ_BIT_EXT";
+ case VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT:
+ return "VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT";
+ case VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR:
+ return "VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR";
+ case VK_ACCESS_2_HOST_READ_BIT:
+ return "VK_ACCESS_2_HOST_READ_BIT";
+ case VK_ACCESS_2_HOST_WRITE_BIT:
+ return "VK_ACCESS_2_HOST_WRITE_BIT";
+ case VK_ACCESS_2_INDEX_READ_BIT:
+ return "VK_ACCESS_2_INDEX_READ_BIT";
+ case VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT:
+ return "VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT";
+ case VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT:
+ return "VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT";
+ case VK_ACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI:
+ return "VK_ACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI";
+ case VK_ACCESS_2_MEMORY_READ_BIT:
+ return "VK_ACCESS_2_MEMORY_READ_BIT";
+ case VK_ACCESS_2_MEMORY_WRITE_BIT:
+ return "VK_ACCESS_2_MEMORY_WRITE_BIT";
+ case VK_ACCESS_2_MICROMAP_READ_BIT_EXT:
+ return "VK_ACCESS_2_MICROMAP_READ_BIT_EXT";
+ case VK_ACCESS_2_MICROMAP_WRITE_BIT_EXT:
+ return "VK_ACCESS_2_MICROMAP_WRITE_BIT_EXT";
+ case VK_ACCESS_2_NONE:
+ return "VK_ACCESS_2_NONE";
+ case VK_ACCESS_2_OPTICAL_FLOW_READ_BIT_NV:
+ return "VK_ACCESS_2_OPTICAL_FLOW_READ_BIT_NV";
+ case VK_ACCESS_2_OPTICAL_FLOW_WRITE_BIT_NV:
+ return "VK_ACCESS_2_OPTICAL_FLOW_WRITE_BIT_NV";
+ case VK_ACCESS_2_SHADER_BINDING_TABLE_READ_BIT_KHR:
+ return "VK_ACCESS_2_SHADER_BINDING_TABLE_READ_BIT_KHR";
+ case VK_ACCESS_2_SHADER_READ_BIT:
+ return "VK_ACCESS_2_SHADER_READ_BIT";
+ case VK_ACCESS_2_SHADER_SAMPLED_READ_BIT:
+ return "VK_ACCESS_2_SHADER_SAMPLED_READ_BIT";
+ case VK_ACCESS_2_SHADER_STORAGE_READ_BIT:
+ return "VK_ACCESS_2_SHADER_STORAGE_READ_BIT";
+ case VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT:
+ return "VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT";
+ case VK_ACCESS_2_SHADER_WRITE_BIT:
+ return "VK_ACCESS_2_SHADER_WRITE_BIT";
+ case VK_ACCESS_2_TRANSFER_READ_BIT:
+ return "VK_ACCESS_2_TRANSFER_READ_BIT";
+ case VK_ACCESS_2_TRANSFER_WRITE_BIT:
+ return "VK_ACCESS_2_TRANSFER_WRITE_BIT";
+ case VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT:
+ return "VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT";
+ case VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT:
+ return "VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT";
+ case VK_ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT:
+ return "VK_ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT";
+ case VK_ACCESS_2_UNIFORM_READ_BIT:
+ return "VK_ACCESS_2_UNIFORM_READ_BIT";
+ case VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT:
+ return "VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT";
+ case VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR:
+ return "VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR";
+ case VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR:
+ return "VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR";
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR:
+ return "VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR:
+ return "VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+ default:
+ return "Unhandled VkAccessFlagBits2";
+ }
+}
+
+static inline std::string string_VkAccessFlags2(VkAccessFlags2 input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkAccessFlagBits2(static_cast(1ULL << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkAccessFlagBits2(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkSubmitFlagBits(VkSubmitFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_SUBMIT_PROTECTED_BIT:
+ return "VK_SUBMIT_PROTECTED_BIT";
+ default:
+ return "Unhandled VkSubmitFlagBits";
+ }
+}
+
+static inline std::string string_VkSubmitFlags(VkSubmitFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkSubmitFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkSubmitFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkRenderingFlagBits(VkRenderingFlagBits input_value)
+{
+ switch (input_value)
+ {
+ case VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT:
+ return "VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT";
+ case VK_RENDERING_ENABLE_LEGACY_DITHERING_BIT_EXT:
+ return "VK_RENDERING_ENABLE_LEGACY_DITHERING_BIT_EXT";
+ case VK_RENDERING_RESUMING_BIT:
+ return "VK_RENDERING_RESUMING_BIT";
+ case VK_RENDERING_SUSPENDING_BIT:
+ return "VK_RENDERING_SUSPENDING_BIT";
+ default:
+ return "Unhandled VkRenderingFlagBits";
+ }
+}
+
+static inline std::string string_VkRenderingFlags(VkRenderingFlags input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkRenderingFlagBits(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkRenderingFlagBits(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkFormatFeatureFlagBits2(uint64_t input_value)
+{
+ switch (input_value)
+ {
+ case VK_FORMAT_FEATURE_2_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR:
+ return "VK_FORMAT_FEATURE_2_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR";
+ case VK_FORMAT_FEATURE_2_BLIT_DST_BIT:
+ return "VK_FORMAT_FEATURE_2_BLIT_DST_BIT";
+ case VK_FORMAT_FEATURE_2_BLIT_SRC_BIT:
+ return "VK_FORMAT_FEATURE_2_BLIT_SRC_BIT";
+ case VK_FORMAT_FEATURE_2_BLOCK_MATCHING_BIT_QCOM:
+ return "VK_FORMAT_FEATURE_2_BLOCK_MATCHING_BIT_QCOM";
+ case VK_FORMAT_FEATURE_2_BOX_FILTER_SAMPLED_BIT_QCOM:
+ return "VK_FORMAT_FEATURE_2_BOX_FILTER_SAMPLED_BIT_QCOM";
+ case VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BIT:
+ return "VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BIT";
+ case VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BLEND_BIT:
+ return "VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BLEND_BIT";
+ case VK_FORMAT_FEATURE_2_COSITED_CHROMA_SAMPLES_BIT:
+ return "VK_FORMAT_FEATURE_2_COSITED_CHROMA_SAMPLES_BIT";
+ case VK_FORMAT_FEATURE_2_DEPTH_STENCIL_ATTACHMENT_BIT:
+ return "VK_FORMAT_FEATURE_2_DEPTH_STENCIL_ATTACHMENT_BIT";
+ case VK_FORMAT_FEATURE_2_DISJOINT_BIT:
+ return "VK_FORMAT_FEATURE_2_DISJOINT_BIT";
+ case VK_FORMAT_FEATURE_2_FRAGMENT_DENSITY_MAP_BIT_EXT:
+ return "VK_FORMAT_FEATURE_2_FRAGMENT_DENSITY_MAP_BIT_EXT";
+ case VK_FORMAT_FEATURE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR:
+ return "VK_FORMAT_FEATURE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR";
+ case VK_FORMAT_FEATURE_2_LINEAR_COLOR_ATTACHMENT_BIT_NV:
+ return "VK_FORMAT_FEATURE_2_LINEAR_COLOR_ATTACHMENT_BIT_NV";
+ case VK_FORMAT_FEATURE_2_MIDPOINT_CHROMA_SAMPLES_BIT:
+ return "VK_FORMAT_FEATURE_2_MIDPOINT_CHROMA_SAMPLES_BIT";
+ case VK_FORMAT_FEATURE_2_OPTICAL_FLOW_COST_BIT_NV:
+ return "VK_FORMAT_FEATURE_2_OPTICAL_FLOW_COST_BIT_NV";
+ case VK_FORMAT_FEATURE_2_OPTICAL_FLOW_IMAGE_BIT_NV:
+ return "VK_FORMAT_FEATURE_2_OPTICAL_FLOW_IMAGE_BIT_NV";
+ case VK_FORMAT_FEATURE_2_OPTICAL_FLOW_VECTOR_BIT_NV:
+ return "VK_FORMAT_FEATURE_2_OPTICAL_FLOW_VECTOR_BIT_NV";
+ case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_BIT:
+ return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_BIT";
+ case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_DEPTH_COMPARISON_BIT:
+ return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_DEPTH_COMPARISON_BIT";
+ case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_CUBIC_BIT:
+ return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_CUBIC_BIT";
+ case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_LINEAR_BIT:
+ return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_LINEAR_BIT";
+ case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_MINMAX_BIT:
+ return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_MINMAX_BIT";
+ case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT:
+ return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT";
+ case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT:
+ return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT";
+ case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT:
+ return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT";
+ case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT:
+ return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT";
+ case VK_FORMAT_FEATURE_2_STORAGE_IMAGE_ATOMIC_BIT:
+ return "VK_FORMAT_FEATURE_2_STORAGE_IMAGE_ATOMIC_BIT";
+ case VK_FORMAT_FEATURE_2_STORAGE_IMAGE_BIT:
+ return "VK_FORMAT_FEATURE_2_STORAGE_IMAGE_BIT";
+ case VK_FORMAT_FEATURE_2_STORAGE_READ_WITHOUT_FORMAT_BIT:
+ return "VK_FORMAT_FEATURE_2_STORAGE_READ_WITHOUT_FORMAT_BIT";
+ case VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_ATOMIC_BIT:
+ return "VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_ATOMIC_BIT";
+ case VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_BIT:
+ return "VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_BIT";
+ case VK_FORMAT_FEATURE_2_STORAGE_WRITE_WITHOUT_FORMAT_BIT:
+ return "VK_FORMAT_FEATURE_2_STORAGE_WRITE_WITHOUT_FORMAT_BIT";
+ case VK_FORMAT_FEATURE_2_TRANSFER_DST_BIT:
+ return "VK_FORMAT_FEATURE_2_TRANSFER_DST_BIT";
+ case VK_FORMAT_FEATURE_2_TRANSFER_SRC_BIT:
+ return "VK_FORMAT_FEATURE_2_TRANSFER_SRC_BIT";
+ case VK_FORMAT_FEATURE_2_UNIFORM_TEXEL_BUFFER_BIT:
+ return "VK_FORMAT_FEATURE_2_UNIFORM_TEXEL_BUFFER_BIT";
+ case VK_FORMAT_FEATURE_2_VERTEX_BUFFER_BIT:
+ return "VK_FORMAT_FEATURE_2_VERTEX_BUFFER_BIT";
+ case VK_FORMAT_FEATURE_2_VIDEO_DECODE_DPB_BIT_KHR:
+ return "VK_FORMAT_FEATURE_2_VIDEO_DECODE_DPB_BIT_KHR";
+ case VK_FORMAT_FEATURE_2_VIDEO_DECODE_OUTPUT_BIT_KHR:
+ return "VK_FORMAT_FEATURE_2_VIDEO_DECODE_OUTPUT_BIT_KHR";
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_FORMAT_FEATURE_2_VIDEO_ENCODE_DPB_BIT_KHR:
+ return "VK_FORMAT_FEATURE_2_VIDEO_ENCODE_DPB_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_FORMAT_FEATURE_2_VIDEO_ENCODE_INPUT_BIT_KHR:
+ return "VK_FORMAT_FEATURE_2_VIDEO_ENCODE_INPUT_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+ case VK_FORMAT_FEATURE_2_WEIGHT_IMAGE_BIT_QCOM:
+ return "VK_FORMAT_FEATURE_2_WEIGHT_IMAGE_BIT_QCOM";
+ case VK_FORMAT_FEATURE_2_WEIGHT_SAMPLED_IMAGE_BIT_QCOM:
+ return "VK_FORMAT_FEATURE_2_WEIGHT_SAMPLED_IMAGE_BIT_QCOM";
+ default:
+ return "Unhandled VkFormatFeatureFlagBits2";
+ }
+}
+
+static inline std::string string_VkFormatFeatureFlags2(VkFormatFeatureFlags2 input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkFormatFeatureFlagBits2(static_cast(1ULL << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkFormatFeatureFlagBits2(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkSurfaceTransformFlagBitsKHR(VkSurfaceTransformFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR:
+ return "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR";
+ case VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR:
+ return "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR";
+ case VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR:
+ return "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR";
+ case VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR:
+ return "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR";
+ case VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR:
+ return "VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR";
+ case VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR:
+ return "VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR";
+ case VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR:
+ return "VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR";
+ case VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR:
+ return "VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR";
+ case VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR:
+ return "VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR";
+ default:
+ return "Unhandled VkSurfaceTransformFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkSurfaceTransformFlagsKHR(VkSurfaceTransformFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkSurfaceTransformFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkSurfaceTransformFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkPresentModeKHR(VkPresentModeKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_PRESENT_MODE_FIFO_KHR:
+ return "VK_PRESENT_MODE_FIFO_KHR";
+ case VK_PRESENT_MODE_FIFO_RELAXED_KHR:
+ return "VK_PRESENT_MODE_FIFO_RELAXED_KHR";
+ case VK_PRESENT_MODE_IMMEDIATE_KHR:
+ return "VK_PRESENT_MODE_IMMEDIATE_KHR";
+ case VK_PRESENT_MODE_MAILBOX_KHR:
+ return "VK_PRESENT_MODE_MAILBOX_KHR";
+ case VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR:
+ return "VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR";
+ case VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR:
+ return "VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR";
+ default:
+ return "Unhandled VkPresentModeKHR";
+ }
+}
+
+static inline const char* string_VkColorSpaceKHR(VkColorSpaceKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT:
+ return "VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT";
+ case VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT:
+ return "VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT";
+ case VK_COLOR_SPACE_BT2020_LINEAR_EXT:
+ return "VK_COLOR_SPACE_BT2020_LINEAR_EXT";
+ case VK_COLOR_SPACE_BT709_LINEAR_EXT:
+ return "VK_COLOR_SPACE_BT709_LINEAR_EXT";
+ case VK_COLOR_SPACE_BT709_NONLINEAR_EXT:
+ return "VK_COLOR_SPACE_BT709_NONLINEAR_EXT";
+ case VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT:
+ return "VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT";
+ case VK_COLOR_SPACE_DISPLAY_NATIVE_AMD:
+ return "VK_COLOR_SPACE_DISPLAY_NATIVE_AMD";
+ case VK_COLOR_SPACE_DISPLAY_P3_LINEAR_EXT:
+ return "VK_COLOR_SPACE_DISPLAY_P3_LINEAR_EXT";
+ case VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT:
+ return "VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT";
+ case VK_COLOR_SPACE_DOLBYVISION_EXT:
+ return "VK_COLOR_SPACE_DOLBYVISION_EXT";
+ case VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT:
+ return "VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT";
+ case VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT:
+ return "VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT";
+ case VK_COLOR_SPACE_HDR10_HLG_EXT:
+ return "VK_COLOR_SPACE_HDR10_HLG_EXT";
+ case VK_COLOR_SPACE_HDR10_ST2084_EXT:
+ return "VK_COLOR_SPACE_HDR10_ST2084_EXT";
+ case VK_COLOR_SPACE_PASS_THROUGH_EXT:
+ return "VK_COLOR_SPACE_PASS_THROUGH_EXT";
+ case VK_COLOR_SPACE_SRGB_NONLINEAR_KHR:
+ return "VK_COLOR_SPACE_SRGB_NONLINEAR_KHR";
+ default:
+ return "Unhandled VkColorSpaceKHR";
+ }
+}
+
+static inline const char* string_VkCompositeAlphaFlagBitsKHR(VkCompositeAlphaFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR:
+ return "VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR";
+ case VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR:
+ return "VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR";
+ case VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR:
+ return "VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR";
+ case VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR:
+ return "VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR";
+ default:
+ return "Unhandled VkCompositeAlphaFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkCompositeAlphaFlagsKHR(VkCompositeAlphaFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkCompositeAlphaFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkCompositeAlphaFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkSwapchainCreateFlagBitsKHR(VkSwapchainCreateFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_SWAPCHAIN_CREATE_DEFERRED_MEMORY_ALLOCATION_BIT_EXT:
+ return "VK_SWAPCHAIN_CREATE_DEFERRED_MEMORY_ALLOCATION_BIT_EXT";
+ case VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR:
+ return "VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR";
+ case VK_SWAPCHAIN_CREATE_PROTECTED_BIT_KHR:
+ return "VK_SWAPCHAIN_CREATE_PROTECTED_BIT_KHR";
+ case VK_SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR:
+ return "VK_SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR";
+ default:
+ return "Unhandled VkSwapchainCreateFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkSwapchainCreateFlagsKHR(VkSwapchainCreateFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkSwapchainCreateFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkSwapchainCreateFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkDeviceGroupPresentModeFlagBitsKHR(VkDeviceGroupPresentModeFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR:
+ return "VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR";
+ case VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR:
+ return "VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR";
+ case VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR:
+ return "VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR";
+ case VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR:
+ return "VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR";
+ default:
+ return "Unhandled VkDeviceGroupPresentModeFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkDeviceGroupPresentModeFlagsKHR(VkDeviceGroupPresentModeFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkDeviceGroupPresentModeFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkDeviceGroupPresentModeFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkDisplayPlaneAlphaFlagBitsKHR(VkDisplayPlaneAlphaFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR:
+ return "VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR";
+ case VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR:
+ return "VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR";
+ case VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR:
+ return "VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR";
+ case VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR:
+ return "VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR";
+ default:
+ return "Unhandled VkDisplayPlaneAlphaFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkDisplayPlaneAlphaFlagsKHR(VkDisplayPlaneAlphaFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkDisplayPlaneAlphaFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkDisplayPlaneAlphaFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkVideoCodecOperationFlagBitsKHR(VkVideoCodecOperationFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_CODEC_OPERATION_DECODE_H264_BIT_KHR:
+ return "VK_VIDEO_CODEC_OPERATION_DECODE_H264_BIT_KHR";
+ case VK_VIDEO_CODEC_OPERATION_DECODE_H265_BIT_KHR:
+ return "VK_VIDEO_CODEC_OPERATION_DECODE_H265_BIT_KHR";
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_VIDEO_CODEC_OPERATION_ENCODE_H264_BIT_EXT:
+ return "VK_VIDEO_CODEC_OPERATION_ENCODE_H264_BIT_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_VIDEO_CODEC_OPERATION_ENCODE_H265_BIT_EXT:
+ return "VK_VIDEO_CODEC_OPERATION_ENCODE_H265_BIT_EXT";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+ case VK_VIDEO_CODEC_OPERATION_NONE_KHR:
+ return "VK_VIDEO_CODEC_OPERATION_NONE_KHR";
+ default:
+ return "Unhandled VkVideoCodecOperationFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkVideoCodecOperationFlagsKHR(VkVideoCodecOperationFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoCodecOperationFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoCodecOperationFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkVideoChromaSubsamplingFlagBitsKHR(VkVideoChromaSubsamplingFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_CHROMA_SUBSAMPLING_420_BIT_KHR:
+ return "VK_VIDEO_CHROMA_SUBSAMPLING_420_BIT_KHR";
+ case VK_VIDEO_CHROMA_SUBSAMPLING_422_BIT_KHR:
+ return "VK_VIDEO_CHROMA_SUBSAMPLING_422_BIT_KHR";
+ case VK_VIDEO_CHROMA_SUBSAMPLING_444_BIT_KHR:
+ return "VK_VIDEO_CHROMA_SUBSAMPLING_444_BIT_KHR";
+ case VK_VIDEO_CHROMA_SUBSAMPLING_INVALID_KHR:
+ return "VK_VIDEO_CHROMA_SUBSAMPLING_INVALID_KHR";
+ case VK_VIDEO_CHROMA_SUBSAMPLING_MONOCHROME_BIT_KHR:
+ return "VK_VIDEO_CHROMA_SUBSAMPLING_MONOCHROME_BIT_KHR";
+ default:
+ return "Unhandled VkVideoChromaSubsamplingFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkVideoChromaSubsamplingFlagsKHR(VkVideoChromaSubsamplingFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoChromaSubsamplingFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoChromaSubsamplingFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkVideoComponentBitDepthFlagBitsKHR(VkVideoComponentBitDepthFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_COMPONENT_BIT_DEPTH_10_BIT_KHR:
+ return "VK_VIDEO_COMPONENT_BIT_DEPTH_10_BIT_KHR";
+ case VK_VIDEO_COMPONENT_BIT_DEPTH_12_BIT_KHR:
+ return "VK_VIDEO_COMPONENT_BIT_DEPTH_12_BIT_KHR";
+ case VK_VIDEO_COMPONENT_BIT_DEPTH_8_BIT_KHR:
+ return "VK_VIDEO_COMPONENT_BIT_DEPTH_8_BIT_KHR";
+ case VK_VIDEO_COMPONENT_BIT_DEPTH_INVALID_KHR:
+ return "VK_VIDEO_COMPONENT_BIT_DEPTH_INVALID_KHR";
+ default:
+ return "Unhandled VkVideoComponentBitDepthFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkVideoComponentBitDepthFlagsKHR(VkVideoComponentBitDepthFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoComponentBitDepthFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoComponentBitDepthFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkVideoCapabilityFlagBitsKHR(VkVideoCapabilityFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_CAPABILITY_PROTECTED_CONTENT_BIT_KHR:
+ return "VK_VIDEO_CAPABILITY_PROTECTED_CONTENT_BIT_KHR";
+ case VK_VIDEO_CAPABILITY_SEPARATE_REFERENCE_IMAGES_BIT_KHR:
+ return "VK_VIDEO_CAPABILITY_SEPARATE_REFERENCE_IMAGES_BIT_KHR";
+ default:
+ return "Unhandled VkVideoCapabilityFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkVideoCapabilityFlagsKHR(VkVideoCapabilityFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoCapabilityFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoCapabilityFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkVideoSessionCreateFlagBitsKHR(VkVideoSessionCreateFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_SESSION_CREATE_PROTECTED_CONTENT_BIT_KHR:
+ return "VK_VIDEO_SESSION_CREATE_PROTECTED_CONTENT_BIT_KHR";
+ default:
+ return "Unhandled VkVideoSessionCreateFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkVideoSessionCreateFlagsKHR(VkVideoSessionCreateFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoSessionCreateFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoSessionCreateFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkVideoCodingControlFlagBitsKHR(VkVideoCodingControlFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_VIDEO_CODING_CONTROL_ENCODE_RATE_CONTROL_BIT_KHR:
+ return "VK_VIDEO_CODING_CONTROL_ENCODE_RATE_CONTROL_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_VIDEO_CODING_CONTROL_ENCODE_RATE_CONTROL_LAYER_BIT_KHR:
+ return "VK_VIDEO_CODING_CONTROL_ENCODE_RATE_CONTROL_LAYER_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+ case VK_VIDEO_CODING_CONTROL_RESET_BIT_KHR:
+ return "VK_VIDEO_CODING_CONTROL_RESET_BIT_KHR";
+ default:
+ return "Unhandled VkVideoCodingControlFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkVideoCodingControlFlagsKHR(VkVideoCodingControlFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoCodingControlFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoCodingControlFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkQueryResultStatusKHR(VkQueryResultStatusKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_QUERY_RESULT_STATUS_COMPLETE_KHR:
+ return "VK_QUERY_RESULT_STATUS_COMPLETE_KHR";
+ case VK_QUERY_RESULT_STATUS_ERROR_KHR:
+ return "VK_QUERY_RESULT_STATUS_ERROR_KHR";
+ case VK_QUERY_RESULT_STATUS_NOT_READY_KHR:
+ return "VK_QUERY_RESULT_STATUS_NOT_READY_KHR";
+ default:
+ return "Unhandled VkQueryResultStatusKHR";
+ }
+}
+
+static inline const char* string_VkVideoDecodeCapabilityFlagBitsKHR(VkVideoDecodeCapabilityFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_COINCIDE_BIT_KHR:
+ return "VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_COINCIDE_BIT_KHR";
+ case VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_DISTINCT_BIT_KHR:
+ return "VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_DISTINCT_BIT_KHR";
+ default:
+ return "Unhandled VkVideoDecodeCapabilityFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkVideoDecodeCapabilityFlagsKHR(VkVideoDecodeCapabilityFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoDecodeCapabilityFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoDecodeCapabilityFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkVideoDecodeUsageFlagBitsKHR(VkVideoDecodeUsageFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_DECODE_USAGE_DEFAULT_KHR:
+ return "VK_VIDEO_DECODE_USAGE_DEFAULT_KHR";
+ case VK_VIDEO_DECODE_USAGE_OFFLINE_BIT_KHR:
+ return "VK_VIDEO_DECODE_USAGE_OFFLINE_BIT_KHR";
+ case VK_VIDEO_DECODE_USAGE_STREAMING_BIT_KHR:
+ return "VK_VIDEO_DECODE_USAGE_STREAMING_BIT_KHR";
+ case VK_VIDEO_DECODE_USAGE_TRANSCODING_BIT_KHR:
+ return "VK_VIDEO_DECODE_USAGE_TRANSCODING_BIT_KHR";
+ default:
+ return "Unhandled VkVideoDecodeUsageFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkVideoDecodeUsageFlagsKHR(VkVideoDecodeUsageFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoDecodeUsageFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoDecodeUsageFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkVideoDecodeH264PictureLayoutFlagBitsKHR(VkVideoDecodeH264PictureLayoutFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_INTERLACED_INTERLEAVED_LINES_BIT_KHR:
+ return "VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_INTERLACED_INTERLEAVED_LINES_BIT_KHR";
+ case VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_INTERLACED_SEPARATE_PLANES_BIT_KHR:
+ return "VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_INTERLACED_SEPARATE_PLANES_BIT_KHR";
+ case VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_PROGRESSIVE_KHR:
+ return "VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_PROGRESSIVE_KHR";
+ default:
+ return "Unhandled VkVideoDecodeH264PictureLayoutFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkVideoDecodeH264PictureLayoutFlagsKHR(VkVideoDecodeH264PictureLayoutFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoDecodeH264PictureLayoutFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoDecodeH264PictureLayoutFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkRenderingFlagBitsKHR(VkRenderingFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT:
+ return "VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT";
+ case VK_RENDERING_ENABLE_LEGACY_DITHERING_BIT_EXT:
+ return "VK_RENDERING_ENABLE_LEGACY_DITHERING_BIT_EXT";
+ case VK_RENDERING_RESUMING_BIT:
+ return "VK_RENDERING_RESUMING_BIT";
+ case VK_RENDERING_SUSPENDING_BIT:
+ return "VK_RENDERING_SUSPENDING_BIT";
+ default:
+ return "Unhandled VkRenderingFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkRenderingFlagsKHR(VkRenderingFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkRenderingFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkRenderingFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkPeerMemoryFeatureFlagBitsKHR(VkPeerMemoryFeatureFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_PEER_MEMORY_FEATURE_COPY_DST_BIT:
+ return "VK_PEER_MEMORY_FEATURE_COPY_DST_BIT";
+ case VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT:
+ return "VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT";
+ case VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT:
+ return "VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT";
+ case VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT:
+ return "VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT";
+ default:
+ return "Unhandled VkPeerMemoryFeatureFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkPeerMemoryFeatureFlagsKHR(VkPeerMemoryFeatureFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkPeerMemoryFeatureFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkPeerMemoryFeatureFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkMemoryAllocateFlagBitsKHR(VkMemoryAllocateFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT:
+ return "VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT";
+ case VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT:
+ return "VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT";
+ case VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT:
+ return "VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT";
+ default:
+ return "Unhandled VkMemoryAllocateFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkMemoryAllocateFlagsKHR(VkMemoryAllocateFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkMemoryAllocateFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkMemoryAllocateFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkExternalMemoryHandleTypeFlagBitsKHR(VkExternalMemoryHandleTypeFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID:
+ return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID";
+ case VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT:
+ return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT";
+ case VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT:
+ return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT";
+ case VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT:
+ return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT";
+ case VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT:
+ return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT";
+ case VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT:
+ return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT";
+ case VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT:
+ return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT";
+ case VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT:
+ return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT";
+ case VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT:
+ return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT";
+ case VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT:
+ return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT";
+ case VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT:
+ return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT";
+ case VK_EXTERNAL_MEMORY_HANDLE_TYPE_RDMA_ADDRESS_BIT_NV:
+ return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_RDMA_ADDRESS_BIT_NV";
+ case VK_EXTERNAL_MEMORY_HANDLE_TYPE_ZIRCON_VMO_BIT_FUCHSIA:
+ return "VK_EXTERNAL_MEMORY_HANDLE_TYPE_ZIRCON_VMO_BIT_FUCHSIA";
+ default:
+ return "Unhandled VkExternalMemoryHandleTypeFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkExternalMemoryHandleTypeFlagsKHR(VkExternalMemoryHandleTypeFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkExternalMemoryHandleTypeFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkExternalMemoryHandleTypeFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkExternalMemoryFeatureFlagBitsKHR(VkExternalMemoryFeatureFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT:
+ return "VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT";
+ case VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT:
+ return "VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT";
+ case VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT:
+ return "VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT";
+ default:
+ return "Unhandled VkExternalMemoryFeatureFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkExternalMemoryFeatureFlagsKHR(VkExternalMemoryFeatureFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkExternalMemoryFeatureFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkExternalMemoryFeatureFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkExternalSemaphoreHandleTypeFlagBitsKHR(VkExternalSemaphoreHandleTypeFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT:
+ return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT";
+ case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT:
+ return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT";
+ case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT:
+ return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT";
+ case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT:
+ return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT";
+ case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT:
+ return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT";
+ case VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_ZIRCON_EVENT_BIT_FUCHSIA:
+ return "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_ZIRCON_EVENT_BIT_FUCHSIA";
+ default:
+ return "Unhandled VkExternalSemaphoreHandleTypeFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkExternalSemaphoreHandleTypeFlagsKHR(VkExternalSemaphoreHandleTypeFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkExternalSemaphoreHandleTypeFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkExternalSemaphoreHandleTypeFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkExternalSemaphoreFeatureFlagBitsKHR(VkExternalSemaphoreFeatureFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT:
+ return "VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT";
+ case VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT:
+ return "VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT";
+ default:
+ return "Unhandled VkExternalSemaphoreFeatureFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkExternalSemaphoreFeatureFlagsKHR(VkExternalSemaphoreFeatureFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkExternalSemaphoreFeatureFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkExternalSemaphoreFeatureFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkSemaphoreImportFlagBitsKHR(VkSemaphoreImportFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_SEMAPHORE_IMPORT_TEMPORARY_BIT:
+ return "VK_SEMAPHORE_IMPORT_TEMPORARY_BIT";
+ default:
+ return "Unhandled VkSemaphoreImportFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkSemaphoreImportFlagsKHR(VkSemaphoreImportFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkSemaphoreImportFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkSemaphoreImportFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkDescriptorUpdateTemplateTypeKHR(VkDescriptorUpdateTemplateTypeKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET:
+ return "VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET";
+ case VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR:
+ return "VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR";
+ default:
+ return "Unhandled VkDescriptorUpdateTemplateTypeKHR";
+ }
+}
+
+static inline const char* string_VkExternalFenceHandleTypeFlagBitsKHR(VkExternalFenceHandleTypeFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT:
+ return "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT";
+ case VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT:
+ return "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT";
+ case VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT:
+ return "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT";
+ case VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT:
+ return "VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT";
+ default:
+ return "Unhandled VkExternalFenceHandleTypeFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkExternalFenceHandleTypeFlagsKHR(VkExternalFenceHandleTypeFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkExternalFenceHandleTypeFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkExternalFenceHandleTypeFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkExternalFenceFeatureFlagBitsKHR(VkExternalFenceFeatureFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT:
+ return "VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT";
+ case VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT:
+ return "VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT";
+ default:
+ return "Unhandled VkExternalFenceFeatureFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkExternalFenceFeatureFlagsKHR(VkExternalFenceFeatureFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkExternalFenceFeatureFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkExternalFenceFeatureFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkFenceImportFlagBitsKHR(VkFenceImportFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_FENCE_IMPORT_TEMPORARY_BIT:
+ return "VK_FENCE_IMPORT_TEMPORARY_BIT";
+ default:
+ return "Unhandled VkFenceImportFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkFenceImportFlagsKHR(VkFenceImportFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkFenceImportFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkFenceImportFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkPerformanceCounterUnitKHR(VkPerformanceCounterUnitKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_PERFORMANCE_COUNTER_UNIT_AMPS_KHR:
+ return "VK_PERFORMANCE_COUNTER_UNIT_AMPS_KHR";
+ case VK_PERFORMANCE_COUNTER_UNIT_BYTES_KHR:
+ return "VK_PERFORMANCE_COUNTER_UNIT_BYTES_KHR";
+ case VK_PERFORMANCE_COUNTER_UNIT_BYTES_PER_SECOND_KHR:
+ return "VK_PERFORMANCE_COUNTER_UNIT_BYTES_PER_SECOND_KHR";
+ case VK_PERFORMANCE_COUNTER_UNIT_CYCLES_KHR:
+ return "VK_PERFORMANCE_COUNTER_UNIT_CYCLES_KHR";
+ case VK_PERFORMANCE_COUNTER_UNIT_GENERIC_KHR:
+ return "VK_PERFORMANCE_COUNTER_UNIT_GENERIC_KHR";
+ case VK_PERFORMANCE_COUNTER_UNIT_HERTZ_KHR:
+ return "VK_PERFORMANCE_COUNTER_UNIT_HERTZ_KHR";
+ case VK_PERFORMANCE_COUNTER_UNIT_KELVIN_KHR:
+ return "VK_PERFORMANCE_COUNTER_UNIT_KELVIN_KHR";
+ case VK_PERFORMANCE_COUNTER_UNIT_NANOSECONDS_KHR:
+ return "VK_PERFORMANCE_COUNTER_UNIT_NANOSECONDS_KHR";
+ case VK_PERFORMANCE_COUNTER_UNIT_PERCENTAGE_KHR:
+ return "VK_PERFORMANCE_COUNTER_UNIT_PERCENTAGE_KHR";
+ case VK_PERFORMANCE_COUNTER_UNIT_VOLTS_KHR:
+ return "VK_PERFORMANCE_COUNTER_UNIT_VOLTS_KHR";
+ case VK_PERFORMANCE_COUNTER_UNIT_WATTS_KHR:
+ return "VK_PERFORMANCE_COUNTER_UNIT_WATTS_KHR";
+ default:
+ return "Unhandled VkPerformanceCounterUnitKHR";
+ }
+}
+
+static inline const char* string_VkPerformanceCounterScopeKHR(VkPerformanceCounterScopeKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR:
+ return "VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR";
+ case VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_KHR:
+ return "VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_KHR";
+ case VK_PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR:
+ return "VK_PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR";
+ default:
+ return "Unhandled VkPerformanceCounterScopeKHR";
+ }
+}
+
+static inline const char* string_VkPerformanceCounterStorageKHR(VkPerformanceCounterStorageKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_PERFORMANCE_COUNTER_STORAGE_FLOAT32_KHR:
+ return "VK_PERFORMANCE_COUNTER_STORAGE_FLOAT32_KHR";
+ case VK_PERFORMANCE_COUNTER_STORAGE_FLOAT64_KHR:
+ return "VK_PERFORMANCE_COUNTER_STORAGE_FLOAT64_KHR";
+ case VK_PERFORMANCE_COUNTER_STORAGE_INT32_KHR:
+ return "VK_PERFORMANCE_COUNTER_STORAGE_INT32_KHR";
+ case VK_PERFORMANCE_COUNTER_STORAGE_INT64_KHR:
+ return "VK_PERFORMANCE_COUNTER_STORAGE_INT64_KHR";
+ case VK_PERFORMANCE_COUNTER_STORAGE_UINT32_KHR:
+ return "VK_PERFORMANCE_COUNTER_STORAGE_UINT32_KHR";
+ case VK_PERFORMANCE_COUNTER_STORAGE_UINT64_KHR:
+ return "VK_PERFORMANCE_COUNTER_STORAGE_UINT64_KHR";
+ default:
+ return "Unhandled VkPerformanceCounterStorageKHR";
+ }
+}
+
+static inline const char* string_VkPerformanceCounterDescriptionFlagBitsKHR(VkPerformanceCounterDescriptionFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_BIT_KHR:
+ return "VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_BIT_KHR";
+ case VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_BIT_KHR:
+ return "VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_BIT_KHR";
+ default:
+ return "Unhandled VkPerformanceCounterDescriptionFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkPerformanceCounterDescriptionFlagsKHR(VkPerformanceCounterDescriptionFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkPerformanceCounterDescriptionFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkPerformanceCounterDescriptionFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkPointClippingBehaviorKHR(VkPointClippingBehaviorKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES:
+ return "VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES";
+ case VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY:
+ return "VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY";
+ default:
+ return "Unhandled VkPointClippingBehaviorKHR";
+ }
+}
+
+static inline const char* string_VkTessellationDomainOriginKHR(VkTessellationDomainOriginKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT:
+ return "VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT";
+ case VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT:
+ return "VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT";
+ default:
+ return "Unhandled VkTessellationDomainOriginKHR";
+ }
+}
+
+static inline const char* string_VkSamplerYcbcrModelConversionKHR(VkSamplerYcbcrModelConversionKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY:
+ return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY";
+ case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020:
+ return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020";
+ case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601:
+ return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601";
+ case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709:
+ return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709";
+ case VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY:
+ return "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY";
+ default:
+ return "Unhandled VkSamplerYcbcrModelConversionKHR";
+ }
+}
+
+static inline const char* string_VkSamplerYcbcrRangeKHR(VkSamplerYcbcrRangeKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_SAMPLER_YCBCR_RANGE_ITU_FULL:
+ return "VK_SAMPLER_YCBCR_RANGE_ITU_FULL";
+ case VK_SAMPLER_YCBCR_RANGE_ITU_NARROW:
+ return "VK_SAMPLER_YCBCR_RANGE_ITU_NARROW";
+ default:
+ return "Unhandled VkSamplerYcbcrRangeKHR";
+ }
+}
+
+static inline const char* string_VkChromaLocationKHR(VkChromaLocationKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_CHROMA_LOCATION_COSITED_EVEN:
+ return "VK_CHROMA_LOCATION_COSITED_EVEN";
+ case VK_CHROMA_LOCATION_MIDPOINT:
+ return "VK_CHROMA_LOCATION_MIDPOINT";
+ default:
+ return "Unhandled VkChromaLocationKHR";
+ }
+}
+
+static inline const char* string_VkQueueGlobalPriorityKHR(VkQueueGlobalPriorityKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_QUEUE_GLOBAL_PRIORITY_HIGH_KHR:
+ return "VK_QUEUE_GLOBAL_PRIORITY_HIGH_KHR";
+ case VK_QUEUE_GLOBAL_PRIORITY_LOW_KHR:
+ return "VK_QUEUE_GLOBAL_PRIORITY_LOW_KHR";
+ case VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_KHR:
+ return "VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_KHR";
+ case VK_QUEUE_GLOBAL_PRIORITY_REALTIME_KHR:
+ return "VK_QUEUE_GLOBAL_PRIORITY_REALTIME_KHR";
+ default:
+ return "Unhandled VkQueueGlobalPriorityKHR";
+ }
+}
+
+static inline const char* string_VkDriverIdKHR(VkDriverIdKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_DRIVER_ID_AMD_OPEN_SOURCE:
+ return "VK_DRIVER_ID_AMD_OPEN_SOURCE";
+ case VK_DRIVER_ID_AMD_PROPRIETARY:
+ return "VK_DRIVER_ID_AMD_PROPRIETARY";
+ case VK_DRIVER_ID_ARM_PROPRIETARY:
+ return "VK_DRIVER_ID_ARM_PROPRIETARY";
+ case VK_DRIVER_ID_BROADCOM_PROPRIETARY:
+ return "VK_DRIVER_ID_BROADCOM_PROPRIETARY";
+ case VK_DRIVER_ID_COREAVI_PROPRIETARY:
+ return "VK_DRIVER_ID_COREAVI_PROPRIETARY";
+ case VK_DRIVER_ID_GGP_PROPRIETARY:
+ return "VK_DRIVER_ID_GGP_PROPRIETARY";
+ case VK_DRIVER_ID_GOOGLE_SWIFTSHADER:
+ return "VK_DRIVER_ID_GOOGLE_SWIFTSHADER";
+ case VK_DRIVER_ID_IMAGINATION_OPEN_SOURCE_MESA:
+ return "VK_DRIVER_ID_IMAGINATION_OPEN_SOURCE_MESA";
+ case VK_DRIVER_ID_IMAGINATION_PROPRIETARY:
+ return "VK_DRIVER_ID_IMAGINATION_PROPRIETARY";
+ case VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA:
+ return "VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA";
+ case VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS:
+ return "VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS";
+ case VK_DRIVER_ID_JUICE_PROPRIETARY:
+ return "VK_DRIVER_ID_JUICE_PROPRIETARY";
+ case VK_DRIVER_ID_MESA_DOZEN:
+ return "VK_DRIVER_ID_MESA_DOZEN";
+ case VK_DRIVER_ID_MESA_LLVMPIPE:
+ return "VK_DRIVER_ID_MESA_LLVMPIPE";
+ case VK_DRIVER_ID_MESA_NVK:
+ return "VK_DRIVER_ID_MESA_NVK";
+ case VK_DRIVER_ID_MESA_PANVK:
+ return "VK_DRIVER_ID_MESA_PANVK";
+ case VK_DRIVER_ID_MESA_RADV:
+ return "VK_DRIVER_ID_MESA_RADV";
+ case VK_DRIVER_ID_MESA_TURNIP:
+ return "VK_DRIVER_ID_MESA_TURNIP";
+ case VK_DRIVER_ID_MESA_V3DV:
+ return "VK_DRIVER_ID_MESA_V3DV";
+ case VK_DRIVER_ID_MESA_VENUS:
+ return "VK_DRIVER_ID_MESA_VENUS";
+ case VK_DRIVER_ID_MOLTENVK:
+ return "VK_DRIVER_ID_MOLTENVK";
+ case VK_DRIVER_ID_NVIDIA_PROPRIETARY:
+ return "VK_DRIVER_ID_NVIDIA_PROPRIETARY";
+ case VK_DRIVER_ID_QUALCOMM_PROPRIETARY:
+ return "VK_DRIVER_ID_QUALCOMM_PROPRIETARY";
+ case VK_DRIVER_ID_SAMSUNG_PROPRIETARY:
+ return "VK_DRIVER_ID_SAMSUNG_PROPRIETARY";
+ case VK_DRIVER_ID_VERISILICON_PROPRIETARY:
+ return "VK_DRIVER_ID_VERISILICON_PROPRIETARY";
+ default:
+ return "Unhandled VkDriverIdKHR";
+ }
+}
+
+static inline const char* string_VkShaderFloatControlsIndependenceKHR(VkShaderFloatControlsIndependenceKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY:
+ return "VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY";
+ case VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL:
+ return "VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL";
+ case VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE:
+ return "VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE";
+ default:
+ return "Unhandled VkShaderFloatControlsIndependenceKHR";
+ }
+}
+
+static inline const char* string_VkResolveModeFlagBitsKHR(VkResolveModeFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_RESOLVE_MODE_AVERAGE_BIT:
+ return "VK_RESOLVE_MODE_AVERAGE_BIT";
+ case VK_RESOLVE_MODE_MAX_BIT:
+ return "VK_RESOLVE_MODE_MAX_BIT";
+ case VK_RESOLVE_MODE_MIN_BIT:
+ return "VK_RESOLVE_MODE_MIN_BIT";
+ case VK_RESOLVE_MODE_NONE:
+ return "VK_RESOLVE_MODE_NONE";
+ case VK_RESOLVE_MODE_SAMPLE_ZERO_BIT:
+ return "VK_RESOLVE_MODE_SAMPLE_ZERO_BIT";
+ default:
+ return "Unhandled VkResolveModeFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkResolveModeFlagsKHR(VkResolveModeFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkResolveModeFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkResolveModeFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkSemaphoreTypeKHR(VkSemaphoreTypeKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_SEMAPHORE_TYPE_BINARY:
+ return "VK_SEMAPHORE_TYPE_BINARY";
+ case VK_SEMAPHORE_TYPE_TIMELINE:
+ return "VK_SEMAPHORE_TYPE_TIMELINE";
+ default:
+ return "Unhandled VkSemaphoreTypeKHR";
+ }
+}
+
+static inline const char* string_VkSemaphoreWaitFlagBitsKHR(VkSemaphoreWaitFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_SEMAPHORE_WAIT_ANY_BIT:
+ return "VK_SEMAPHORE_WAIT_ANY_BIT";
+ default:
+ return "Unhandled VkSemaphoreWaitFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkSemaphoreWaitFlagsKHR(VkSemaphoreWaitFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkSemaphoreWaitFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkSemaphoreWaitFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkFragmentShadingRateCombinerOpKHR(VkFragmentShadingRateCombinerOpKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_KHR:
+ return "VK_FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_KHR";
+ case VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MAX_KHR:
+ return "VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MAX_KHR";
+ case VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MIN_KHR:
+ return "VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MIN_KHR";
+ case VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MUL_KHR:
+ return "VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MUL_KHR";
+ case VK_FRAGMENT_SHADING_RATE_COMBINER_OP_REPLACE_KHR:
+ return "VK_FRAGMENT_SHADING_RATE_COMBINER_OP_REPLACE_KHR";
+ default:
+ return "Unhandled VkFragmentShadingRateCombinerOpKHR";
+ }
+}
+
+static inline const char* string_VkPipelineExecutableStatisticFormatKHR(VkPipelineExecutableStatisticFormatKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_BOOL32_KHR:
+ return "VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_BOOL32_KHR";
+ case VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_FLOAT64_KHR:
+ return "VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_FLOAT64_KHR";
+ case VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_INT64_KHR:
+ return "VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_INT64_KHR";
+ case VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_UINT64_KHR:
+ return "VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_UINT64_KHR";
+ default:
+ return "Unhandled VkPipelineExecutableStatisticFormatKHR";
+ }
+}
+
+
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+
+static inline const char* string_VkVideoEncodeCapabilityFlagBitsKHR(VkVideoEncodeCapabilityFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_ENCODE_CAPABILITY_PRECEDING_EXTERNALLY_ENCODED_BYTES_BIT_KHR:
+ return "VK_VIDEO_ENCODE_CAPABILITY_PRECEDING_EXTERNALLY_ENCODED_BYTES_BIT_KHR";
+ default:
+ return "Unhandled VkVideoEncodeCapabilityFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkVideoEncodeCapabilityFlagsKHR(VkVideoEncodeCapabilityFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoEncodeCapabilityFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoEncodeCapabilityFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+#endif // VK_ENABLE_BETA_EXTENSIONS
+
+
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+
+static inline const char* string_VkVideoEncodeRateControlModeFlagBitsKHR(VkVideoEncodeRateControlModeFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_ENCODE_RATE_CONTROL_MODE_CBR_BIT_KHR:
+ return "VK_VIDEO_ENCODE_RATE_CONTROL_MODE_CBR_BIT_KHR";
+ case VK_VIDEO_ENCODE_RATE_CONTROL_MODE_NONE_BIT_KHR:
+ return "VK_VIDEO_ENCODE_RATE_CONTROL_MODE_NONE_BIT_KHR";
+ case VK_VIDEO_ENCODE_RATE_CONTROL_MODE_VBR_BIT_KHR:
+ return "VK_VIDEO_ENCODE_RATE_CONTROL_MODE_VBR_BIT_KHR";
+ default:
+ return "Unhandled VkVideoEncodeRateControlModeFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkVideoEncodeRateControlModeFlagsKHR(VkVideoEncodeRateControlModeFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoEncodeRateControlModeFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoEncodeRateControlModeFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+#endif // VK_ENABLE_BETA_EXTENSIONS
+
+
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+
+static inline const char* string_VkVideoEncodeUsageFlagBitsKHR(VkVideoEncodeUsageFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_ENCODE_USAGE_CONFERENCING_BIT_KHR:
+ return "VK_VIDEO_ENCODE_USAGE_CONFERENCING_BIT_KHR";
+ case VK_VIDEO_ENCODE_USAGE_DEFAULT_KHR:
+ return "VK_VIDEO_ENCODE_USAGE_DEFAULT_KHR";
+ case VK_VIDEO_ENCODE_USAGE_RECORDING_BIT_KHR:
+ return "VK_VIDEO_ENCODE_USAGE_RECORDING_BIT_KHR";
+ case VK_VIDEO_ENCODE_USAGE_STREAMING_BIT_KHR:
+ return "VK_VIDEO_ENCODE_USAGE_STREAMING_BIT_KHR";
+ case VK_VIDEO_ENCODE_USAGE_TRANSCODING_BIT_KHR:
+ return "VK_VIDEO_ENCODE_USAGE_TRANSCODING_BIT_KHR";
+ default:
+ return "Unhandled VkVideoEncodeUsageFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkVideoEncodeUsageFlagsKHR(VkVideoEncodeUsageFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoEncodeUsageFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoEncodeUsageFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+#endif // VK_ENABLE_BETA_EXTENSIONS
+
+
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+
+static inline const char* string_VkVideoEncodeContentFlagBitsKHR(VkVideoEncodeContentFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_ENCODE_CONTENT_CAMERA_BIT_KHR:
+ return "VK_VIDEO_ENCODE_CONTENT_CAMERA_BIT_KHR";
+ case VK_VIDEO_ENCODE_CONTENT_DEFAULT_KHR:
+ return "VK_VIDEO_ENCODE_CONTENT_DEFAULT_KHR";
+ case VK_VIDEO_ENCODE_CONTENT_DESKTOP_BIT_KHR:
+ return "VK_VIDEO_ENCODE_CONTENT_DESKTOP_BIT_KHR";
+ case VK_VIDEO_ENCODE_CONTENT_RENDERED_BIT_KHR:
+ return "VK_VIDEO_ENCODE_CONTENT_RENDERED_BIT_KHR";
+ default:
+ return "Unhandled VkVideoEncodeContentFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkVideoEncodeContentFlagsKHR(VkVideoEncodeContentFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoEncodeContentFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoEncodeContentFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+#endif // VK_ENABLE_BETA_EXTENSIONS
+
+
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+
+static inline const char* string_VkVideoEncodeTuningModeKHR(VkVideoEncodeTuningModeKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_ENCODE_TUNING_MODE_DEFAULT_KHR:
+ return "VK_VIDEO_ENCODE_TUNING_MODE_DEFAULT_KHR";
+ case VK_VIDEO_ENCODE_TUNING_MODE_HIGH_QUALITY_KHR:
+ return "VK_VIDEO_ENCODE_TUNING_MODE_HIGH_QUALITY_KHR";
+ case VK_VIDEO_ENCODE_TUNING_MODE_LOSSLESS_KHR:
+ return "VK_VIDEO_ENCODE_TUNING_MODE_LOSSLESS_KHR";
+ case VK_VIDEO_ENCODE_TUNING_MODE_LOW_LATENCY_KHR:
+ return "VK_VIDEO_ENCODE_TUNING_MODE_LOW_LATENCY_KHR";
+ case VK_VIDEO_ENCODE_TUNING_MODE_ULTRA_LOW_LATENCY_KHR:
+ return "VK_VIDEO_ENCODE_TUNING_MODE_ULTRA_LOW_LATENCY_KHR";
+ default:
+ return "Unhandled VkVideoEncodeTuningModeKHR";
+ }
+}
+#endif // VK_ENABLE_BETA_EXTENSIONS
+
+static inline const char* string_VkPipelineStageFlagBits2KHR(uint64_t input_value)
+{
+ switch (input_value)
+ {
+ case VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_COPY_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_COPY_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT:
+ return "VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT";
+ case VK_PIPELINE_STAGE_2_ALL_GRAPHICS_BIT:
+ return "VK_PIPELINE_STAGE_2_ALL_GRAPHICS_BIT";
+ case VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT:
+ return "VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT";
+ case VK_PIPELINE_STAGE_2_BLIT_BIT:
+ return "VK_PIPELINE_STAGE_2_BLIT_BIT";
+ case VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT:
+ return "VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT";
+ case VK_PIPELINE_STAGE_2_CLEAR_BIT:
+ return "VK_PIPELINE_STAGE_2_CLEAR_BIT";
+ case VK_PIPELINE_STAGE_2_CLUSTER_CULLING_SHADER_BIT_HUAWEI:
+ return "VK_PIPELINE_STAGE_2_CLUSTER_CULLING_SHADER_BIT_HUAWEI";
+ case VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT:
+ return "VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT";
+ case VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV:
+ return "VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV";
+ case VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT:
+ return "VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT";
+ case VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT:
+ return "VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT";
+ case VK_PIPELINE_STAGE_2_COPY_BIT:
+ return "VK_PIPELINE_STAGE_2_COPY_BIT";
+ case VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT:
+ return "VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT";
+ case VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT:
+ return "VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT";
+ case VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT:
+ return "VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT";
+ case VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT:
+ return "VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT";
+ case VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT:
+ return "VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT";
+ case VK_PIPELINE_STAGE_2_HOST_BIT:
+ return "VK_PIPELINE_STAGE_2_HOST_BIT";
+ case VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT:
+ return "VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT";
+ case VK_PIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI:
+ return "VK_PIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI";
+ case VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT:
+ return "VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT";
+ case VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_EXT:
+ return "VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_EXT";
+ case VK_PIPELINE_STAGE_2_MICROMAP_BUILD_BIT_EXT:
+ return "VK_PIPELINE_STAGE_2_MICROMAP_BUILD_BIT_EXT";
+ case VK_PIPELINE_STAGE_2_NONE:
+ return "VK_PIPELINE_STAGE_2_NONE";
+ case VK_PIPELINE_STAGE_2_OPTICAL_FLOW_BIT_NV:
+ return "VK_PIPELINE_STAGE_2_OPTICAL_FLOW_BIT_NV";
+ case VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT:
+ return "VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT";
+ case VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR";
+ case VK_PIPELINE_STAGE_2_RESOLVE_BIT:
+ return "VK_PIPELINE_STAGE_2_RESOLVE_BIT";
+ case VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI:
+ return "VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI";
+ case VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_EXT:
+ return "VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_EXT";
+ case VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT:
+ return "VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT";
+ case VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT:
+ return "VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT";
+ case VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT:
+ return "VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT";
+ case VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT:
+ return "VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT";
+ case VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT:
+ return "VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT";
+ case VK_PIPELINE_STAGE_2_VERTEX_INPUT_BIT:
+ return "VK_PIPELINE_STAGE_2_VERTEX_INPUT_BIT";
+ case VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT:
+ return "VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT";
+ case VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR";
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR:
+ return "VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+ default:
+ return "Unhandled VkPipelineStageFlagBits2KHR";
+ }
+}
+
+static inline std::string string_VkPipelineStageFlags2KHR(VkPipelineStageFlags2KHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkPipelineStageFlagBits2KHR(static_cast(1ULL << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkPipelineStageFlagBits2KHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkAccessFlagBits2KHR(uint64_t input_value)
+{
+ switch (input_value)
+ {
+ case VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR:
+ return "VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR";
+ case VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR:
+ return "VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR";
+ case VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT:
+ return "VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT";
+ case VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT:
+ return "VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT";
+ case VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT:
+ return "VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT";
+ case VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV:
+ return "VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV";
+ case VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV:
+ return "VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV";
+ case VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT:
+ return "VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT";
+ case VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT:
+ return "VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT";
+ case VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT:
+ return "VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT";
+ case VK_ACCESS_2_DESCRIPTOR_BUFFER_READ_BIT_EXT:
+ return "VK_ACCESS_2_DESCRIPTOR_BUFFER_READ_BIT_EXT";
+ case VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT:
+ return "VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT";
+ case VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR:
+ return "VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR";
+ case VK_ACCESS_2_HOST_READ_BIT:
+ return "VK_ACCESS_2_HOST_READ_BIT";
+ case VK_ACCESS_2_HOST_WRITE_BIT:
+ return "VK_ACCESS_2_HOST_WRITE_BIT";
+ case VK_ACCESS_2_INDEX_READ_BIT:
+ return "VK_ACCESS_2_INDEX_READ_BIT";
+ case VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT:
+ return "VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT";
+ case VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT:
+ return "VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT";
+ case VK_ACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI:
+ return "VK_ACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI";
+ case VK_ACCESS_2_MEMORY_READ_BIT:
+ return "VK_ACCESS_2_MEMORY_READ_BIT";
+ case VK_ACCESS_2_MEMORY_WRITE_BIT:
+ return "VK_ACCESS_2_MEMORY_WRITE_BIT";
+ case VK_ACCESS_2_MICROMAP_READ_BIT_EXT:
+ return "VK_ACCESS_2_MICROMAP_READ_BIT_EXT";
+ case VK_ACCESS_2_MICROMAP_WRITE_BIT_EXT:
+ return "VK_ACCESS_2_MICROMAP_WRITE_BIT_EXT";
+ case VK_ACCESS_2_NONE:
+ return "VK_ACCESS_2_NONE";
+ case VK_ACCESS_2_OPTICAL_FLOW_READ_BIT_NV:
+ return "VK_ACCESS_2_OPTICAL_FLOW_READ_BIT_NV";
+ case VK_ACCESS_2_OPTICAL_FLOW_WRITE_BIT_NV:
+ return "VK_ACCESS_2_OPTICAL_FLOW_WRITE_BIT_NV";
+ case VK_ACCESS_2_SHADER_BINDING_TABLE_READ_BIT_KHR:
+ return "VK_ACCESS_2_SHADER_BINDING_TABLE_READ_BIT_KHR";
+ case VK_ACCESS_2_SHADER_READ_BIT:
+ return "VK_ACCESS_2_SHADER_READ_BIT";
+ case VK_ACCESS_2_SHADER_SAMPLED_READ_BIT:
+ return "VK_ACCESS_2_SHADER_SAMPLED_READ_BIT";
+ case VK_ACCESS_2_SHADER_STORAGE_READ_BIT:
+ return "VK_ACCESS_2_SHADER_STORAGE_READ_BIT";
+ case VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT:
+ return "VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT";
+ case VK_ACCESS_2_SHADER_WRITE_BIT:
+ return "VK_ACCESS_2_SHADER_WRITE_BIT";
+ case VK_ACCESS_2_TRANSFER_READ_BIT:
+ return "VK_ACCESS_2_TRANSFER_READ_BIT";
+ case VK_ACCESS_2_TRANSFER_WRITE_BIT:
+ return "VK_ACCESS_2_TRANSFER_WRITE_BIT";
+ case VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT:
+ return "VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT";
+ case VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT:
+ return "VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT";
+ case VK_ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT:
+ return "VK_ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT";
+ case VK_ACCESS_2_UNIFORM_READ_BIT:
+ return "VK_ACCESS_2_UNIFORM_READ_BIT";
+ case VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT:
+ return "VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT";
+ case VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR:
+ return "VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR";
+ case VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR:
+ return "VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR";
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR:
+ return "VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR:
+ return "VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+ default:
+ return "Unhandled VkAccessFlagBits2KHR";
+ }
+}
+
+static inline std::string string_VkAccessFlags2KHR(VkAccessFlags2KHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkAccessFlagBits2KHR(static_cast(1ULL << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkAccessFlagBits2KHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkSubmitFlagBitsKHR(VkSubmitFlagBitsKHR input_value)
+{
+ switch (input_value)
+ {
+ case VK_SUBMIT_PROTECTED_BIT:
+ return "VK_SUBMIT_PROTECTED_BIT";
+ default:
+ return "Unhandled VkSubmitFlagBitsKHR";
+ }
+}
+
+static inline std::string string_VkSubmitFlagsKHR(VkSubmitFlagsKHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkSubmitFlagBitsKHR(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkSubmitFlagBitsKHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkFormatFeatureFlagBits2KHR(uint64_t input_value)
+{
+ switch (input_value)
+ {
+ case VK_FORMAT_FEATURE_2_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR:
+ return "VK_FORMAT_FEATURE_2_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR";
+ case VK_FORMAT_FEATURE_2_BLIT_DST_BIT:
+ return "VK_FORMAT_FEATURE_2_BLIT_DST_BIT";
+ case VK_FORMAT_FEATURE_2_BLIT_SRC_BIT:
+ return "VK_FORMAT_FEATURE_2_BLIT_SRC_BIT";
+ case VK_FORMAT_FEATURE_2_BLOCK_MATCHING_BIT_QCOM:
+ return "VK_FORMAT_FEATURE_2_BLOCK_MATCHING_BIT_QCOM";
+ case VK_FORMAT_FEATURE_2_BOX_FILTER_SAMPLED_BIT_QCOM:
+ return "VK_FORMAT_FEATURE_2_BOX_FILTER_SAMPLED_BIT_QCOM";
+ case VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BIT:
+ return "VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BIT";
+ case VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BLEND_BIT:
+ return "VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BLEND_BIT";
+ case VK_FORMAT_FEATURE_2_COSITED_CHROMA_SAMPLES_BIT:
+ return "VK_FORMAT_FEATURE_2_COSITED_CHROMA_SAMPLES_BIT";
+ case VK_FORMAT_FEATURE_2_DEPTH_STENCIL_ATTACHMENT_BIT:
+ return "VK_FORMAT_FEATURE_2_DEPTH_STENCIL_ATTACHMENT_BIT";
+ case VK_FORMAT_FEATURE_2_DISJOINT_BIT:
+ return "VK_FORMAT_FEATURE_2_DISJOINT_BIT";
+ case VK_FORMAT_FEATURE_2_FRAGMENT_DENSITY_MAP_BIT_EXT:
+ return "VK_FORMAT_FEATURE_2_FRAGMENT_DENSITY_MAP_BIT_EXT";
+ case VK_FORMAT_FEATURE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR:
+ return "VK_FORMAT_FEATURE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR";
+ case VK_FORMAT_FEATURE_2_LINEAR_COLOR_ATTACHMENT_BIT_NV:
+ return "VK_FORMAT_FEATURE_2_LINEAR_COLOR_ATTACHMENT_BIT_NV";
+ case VK_FORMAT_FEATURE_2_MIDPOINT_CHROMA_SAMPLES_BIT:
+ return "VK_FORMAT_FEATURE_2_MIDPOINT_CHROMA_SAMPLES_BIT";
+ case VK_FORMAT_FEATURE_2_OPTICAL_FLOW_COST_BIT_NV:
+ return "VK_FORMAT_FEATURE_2_OPTICAL_FLOW_COST_BIT_NV";
+ case VK_FORMAT_FEATURE_2_OPTICAL_FLOW_IMAGE_BIT_NV:
+ return "VK_FORMAT_FEATURE_2_OPTICAL_FLOW_IMAGE_BIT_NV";
+ case VK_FORMAT_FEATURE_2_OPTICAL_FLOW_VECTOR_BIT_NV:
+ return "VK_FORMAT_FEATURE_2_OPTICAL_FLOW_VECTOR_BIT_NV";
+ case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_BIT:
+ return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_BIT";
+ case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_DEPTH_COMPARISON_BIT:
+ return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_DEPTH_COMPARISON_BIT";
+ case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_CUBIC_BIT:
+ return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_CUBIC_BIT";
+ case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_LINEAR_BIT:
+ return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_LINEAR_BIT";
+ case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_MINMAX_BIT:
+ return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_MINMAX_BIT";
+ case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT:
+ return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT";
+ case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT:
+ return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT";
+ case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT:
+ return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT";
+ case VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT:
+ return "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT";
+ case VK_FORMAT_FEATURE_2_STORAGE_IMAGE_ATOMIC_BIT:
+ return "VK_FORMAT_FEATURE_2_STORAGE_IMAGE_ATOMIC_BIT";
+ case VK_FORMAT_FEATURE_2_STORAGE_IMAGE_BIT:
+ return "VK_FORMAT_FEATURE_2_STORAGE_IMAGE_BIT";
+ case VK_FORMAT_FEATURE_2_STORAGE_READ_WITHOUT_FORMAT_BIT:
+ return "VK_FORMAT_FEATURE_2_STORAGE_READ_WITHOUT_FORMAT_BIT";
+ case VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_ATOMIC_BIT:
+ return "VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_ATOMIC_BIT";
+ case VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_BIT:
+ return "VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_BIT";
+ case VK_FORMAT_FEATURE_2_STORAGE_WRITE_WITHOUT_FORMAT_BIT:
+ return "VK_FORMAT_FEATURE_2_STORAGE_WRITE_WITHOUT_FORMAT_BIT";
+ case VK_FORMAT_FEATURE_2_TRANSFER_DST_BIT:
+ return "VK_FORMAT_FEATURE_2_TRANSFER_DST_BIT";
+ case VK_FORMAT_FEATURE_2_TRANSFER_SRC_BIT:
+ return "VK_FORMAT_FEATURE_2_TRANSFER_SRC_BIT";
+ case VK_FORMAT_FEATURE_2_UNIFORM_TEXEL_BUFFER_BIT:
+ return "VK_FORMAT_FEATURE_2_UNIFORM_TEXEL_BUFFER_BIT";
+ case VK_FORMAT_FEATURE_2_VERTEX_BUFFER_BIT:
+ return "VK_FORMAT_FEATURE_2_VERTEX_BUFFER_BIT";
+ case VK_FORMAT_FEATURE_2_VIDEO_DECODE_DPB_BIT_KHR:
+ return "VK_FORMAT_FEATURE_2_VIDEO_DECODE_DPB_BIT_KHR";
+ case VK_FORMAT_FEATURE_2_VIDEO_DECODE_OUTPUT_BIT_KHR:
+ return "VK_FORMAT_FEATURE_2_VIDEO_DECODE_OUTPUT_BIT_KHR";
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_FORMAT_FEATURE_2_VIDEO_ENCODE_DPB_BIT_KHR:
+ return "VK_FORMAT_FEATURE_2_VIDEO_ENCODE_DPB_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+ case VK_FORMAT_FEATURE_2_VIDEO_ENCODE_INPUT_BIT_KHR:
+ return "VK_FORMAT_FEATURE_2_VIDEO_ENCODE_INPUT_BIT_KHR";
+#endif // VK_ENABLE_BETA_EXTENSIONS
+ case VK_FORMAT_FEATURE_2_WEIGHT_IMAGE_BIT_QCOM:
+ return "VK_FORMAT_FEATURE_2_WEIGHT_IMAGE_BIT_QCOM";
+ case VK_FORMAT_FEATURE_2_WEIGHT_SAMPLED_IMAGE_BIT_QCOM:
+ return "VK_FORMAT_FEATURE_2_WEIGHT_SAMPLED_IMAGE_BIT_QCOM";
+ default:
+ return "Unhandled VkFormatFeatureFlagBits2KHR";
+ }
+}
+
+static inline std::string string_VkFormatFeatureFlags2KHR(VkFormatFeatureFlags2KHR input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkFormatFeatureFlagBits2KHR(static_cast(1ULL << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkFormatFeatureFlagBits2KHR(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkDebugReportFlagBitsEXT(VkDebugReportFlagBitsEXT input_value)
+{
+ switch (input_value)
+ {
+ case VK_DEBUG_REPORT_DEBUG_BIT_EXT:
+ return "VK_DEBUG_REPORT_DEBUG_BIT_EXT";
+ case VK_DEBUG_REPORT_ERROR_BIT_EXT:
+ return "VK_DEBUG_REPORT_ERROR_BIT_EXT";
+ case VK_DEBUG_REPORT_INFORMATION_BIT_EXT:
+ return "VK_DEBUG_REPORT_INFORMATION_BIT_EXT";
+ case VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT:
+ return "VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT";
+ case VK_DEBUG_REPORT_WARNING_BIT_EXT:
+ return "VK_DEBUG_REPORT_WARNING_BIT_EXT";
+ default:
+ return "Unhandled VkDebugReportFlagBitsEXT";
+ }
+}
+
+static inline std::string string_VkDebugReportFlagsEXT(VkDebugReportFlagsEXT input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkDebugReportFlagBitsEXT(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkDebugReportFlagBitsEXT(static_cast(0)));
+ return ret;
+}
+
+static inline const char* string_VkDebugReportObjectTypeEXT(VkDebugReportObjectTypeEXT input_value)
+{
+ switch (input_value)
+ {
+ case VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_CU_FUNCTION_NVX_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_CU_FUNCTION_NVX_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_CU_MODULE_NVX_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_CU_MODULE_NVX_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT";
+ case VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT:
+ return "VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT";
+ default:
+ return "Unhandled VkDebugReportObjectTypeEXT";
+ }
+}
+
+static inline const char* string_VkRasterizationOrderAMD(VkRasterizationOrderAMD input_value)
+{
+ switch (input_value)
+ {
+ case VK_RASTERIZATION_ORDER_RELAXED_AMD:
+ return "VK_RASTERIZATION_ORDER_RELAXED_AMD";
+ case VK_RASTERIZATION_ORDER_STRICT_AMD:
+ return "VK_RASTERIZATION_ORDER_STRICT_AMD";
+ default:
+ return "Unhandled VkRasterizationOrderAMD";
+ }
+}
+
+
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+
+static inline const char* string_VkVideoEncodeH264CapabilityFlagBitsEXT(VkVideoEncodeH264CapabilityFlagBitsEXT input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_B_FRAME_IN_L1_LIST_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_B_FRAME_IN_L1_LIST_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_CABAC_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_CABAC_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_CAVLC_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_CAVLC_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_CHROMA_QP_OFFSET_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_CHROMA_QP_OFFSET_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_DISABLED_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_DISABLED_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_ENABLED_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_ENABLED_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_PARTIAL_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_PARTIAL_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_DIFFERENT_SLICE_TYPE_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_DIFFERENT_SLICE_TYPE_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_DIRECT_8X8_INFERENCE_DISABLED_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_DIRECT_8X8_INFERENCE_DISABLED_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_DIRECT_8X8_INFERENCE_ENABLED_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_DIRECT_8X8_INFERENCE_ENABLED_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_DISABLE_DIRECT_SPATIAL_MV_PRED_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_DISABLE_DIRECT_SPATIAL_MV_PRED_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_HRD_COMPLIANCE_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_HRD_COMPLIANCE_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_MULTIPLE_SLICE_PER_FRAME_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_MULTIPLE_SLICE_PER_FRAME_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_PIC_INIT_QP_MINUS26_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_PIC_INIT_QP_MINUS26_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_QPPRIME_Y_ZERO_TRANSFORM_BYPASS_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_QPPRIME_Y_ZERO_TRANSFORM_BYPASS_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_ROW_UNALIGNED_SLICE_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_ROW_UNALIGNED_SLICE_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_SCALING_LISTS_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_SCALING_LISTS_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_SECOND_CHROMA_QP_OFFSET_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_SECOND_CHROMA_QP_OFFSET_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_SEPARATE_COLOUR_PLANE_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_SEPARATE_COLOUR_PLANE_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_SLICE_MB_COUNT_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_SLICE_MB_COUNT_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_TRANSFORM_8X8_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_TRANSFORM_8X8_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_BIPRED_EXPLICIT_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_BIPRED_EXPLICIT_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_BIPRED_IMPLICIT_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_BIPRED_IMPLICIT_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_PRED_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_PRED_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_PRED_NO_TABLE_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_PRED_NO_TABLE_BIT_EXT";
+ default:
+ return "Unhandled VkVideoEncodeH264CapabilityFlagBitsEXT";
+ }
+}
+
+static inline std::string string_VkVideoEncodeH264CapabilityFlagsEXT(VkVideoEncodeH264CapabilityFlagsEXT input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoEncodeH264CapabilityFlagBitsEXT(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoEncodeH264CapabilityFlagBitsEXT(static_cast(0)));
+ return ret;
+}
+#endif // VK_ENABLE_BETA_EXTENSIONS
+
+
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+
+static inline const char* string_VkVideoEncodeH264InputModeFlagBitsEXT(VkVideoEncodeH264InputModeFlagBitsEXT input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_ENCODE_H264_INPUT_MODE_FRAME_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_INPUT_MODE_FRAME_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_INPUT_MODE_NON_VCL_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_INPUT_MODE_NON_VCL_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_INPUT_MODE_SLICE_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_INPUT_MODE_SLICE_BIT_EXT";
+ default:
+ return "Unhandled VkVideoEncodeH264InputModeFlagBitsEXT";
+ }
+}
+
+static inline std::string string_VkVideoEncodeH264InputModeFlagsEXT(VkVideoEncodeH264InputModeFlagsEXT input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoEncodeH264InputModeFlagBitsEXT(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoEncodeH264InputModeFlagBitsEXT(static_cast(0)));
+ return ret;
+}
+#endif // VK_ENABLE_BETA_EXTENSIONS
+
+
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+
+static inline const char* string_VkVideoEncodeH264OutputModeFlagBitsEXT(VkVideoEncodeH264OutputModeFlagBitsEXT input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_ENCODE_H264_OUTPUT_MODE_FRAME_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_OUTPUT_MODE_FRAME_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_OUTPUT_MODE_NON_VCL_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_OUTPUT_MODE_NON_VCL_BIT_EXT";
+ case VK_VIDEO_ENCODE_H264_OUTPUT_MODE_SLICE_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H264_OUTPUT_MODE_SLICE_BIT_EXT";
+ default:
+ return "Unhandled VkVideoEncodeH264OutputModeFlagBitsEXT";
+ }
+}
+
+static inline std::string string_VkVideoEncodeH264OutputModeFlagsEXT(VkVideoEncodeH264OutputModeFlagsEXT input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoEncodeH264OutputModeFlagBitsEXT(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoEncodeH264OutputModeFlagBitsEXT(static_cast(0)));
+ return ret;
+}
+#endif // VK_ENABLE_BETA_EXTENSIONS
+
+
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+
+static inline const char* string_VkVideoEncodeH264RateControlStructureEXT(VkVideoEncodeH264RateControlStructureEXT input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_ENCODE_H264_RATE_CONTROL_STRUCTURE_DYADIC_EXT:
+ return "VK_VIDEO_ENCODE_H264_RATE_CONTROL_STRUCTURE_DYADIC_EXT";
+ case VK_VIDEO_ENCODE_H264_RATE_CONTROL_STRUCTURE_FLAT_EXT:
+ return "VK_VIDEO_ENCODE_H264_RATE_CONTROL_STRUCTURE_FLAT_EXT";
+ case VK_VIDEO_ENCODE_H264_RATE_CONTROL_STRUCTURE_UNKNOWN_EXT:
+ return "VK_VIDEO_ENCODE_H264_RATE_CONTROL_STRUCTURE_UNKNOWN_EXT";
+ default:
+ return "Unhandled VkVideoEncodeH264RateControlStructureEXT";
+ }
+}
+#endif // VK_ENABLE_BETA_EXTENSIONS
+
+
+#ifdef VK_ENABLE_BETA_EXTENSIONS
+
+static inline const char* string_VkVideoEncodeH265CapabilityFlagBitsEXT(VkVideoEncodeH265CapabilityFlagBitsEXT input_value)
+{
+ switch (input_value)
+ {
+ case VK_VIDEO_ENCODE_H265_CAPABILITY_B_FRAME_IN_L1_LIST_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H265_CAPABILITY_B_FRAME_IN_L1_LIST_BIT_EXT";
+ case VK_VIDEO_ENCODE_H265_CAPABILITY_DEBLOCKING_FILTER_OVERRIDE_ENABLED_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H265_CAPABILITY_DEBLOCKING_FILTER_OVERRIDE_ENABLED_BIT_EXT";
+ case VK_VIDEO_ENCODE_H265_CAPABILITY_DEPENDENT_SLICE_SEGMENT_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H265_CAPABILITY_DEPENDENT_SLICE_SEGMENT_BIT_EXT";
+ case VK_VIDEO_ENCODE_H265_CAPABILITY_DIFFERENT_SLICE_TYPE_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H265_CAPABILITY_DIFFERENT_SLICE_TYPE_BIT_EXT";
+ case VK_VIDEO_ENCODE_H265_CAPABILITY_ENTROPY_CODING_SYNC_ENABLED_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H265_CAPABILITY_ENTROPY_CODING_SYNC_ENABLED_BIT_EXT";
+ case VK_VIDEO_ENCODE_H265_CAPABILITY_HRD_COMPLIANCE_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H265_CAPABILITY_HRD_COMPLIANCE_BIT_EXT";
+ case VK_VIDEO_ENCODE_H265_CAPABILITY_INIT_QP_MINUS26_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H265_CAPABILITY_INIT_QP_MINUS26_BIT_EXT";
+ case VK_VIDEO_ENCODE_H265_CAPABILITY_LOG2_PARALLEL_MERGE_LEVEL_MINUS2_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H265_CAPABILITY_LOG2_PARALLEL_MERGE_LEVEL_MINUS2_BIT_EXT";
+ case VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_SLICE_PER_TILE_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_SLICE_PER_TILE_BIT_EXT";
+ case VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_TILE_PER_FRAME_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_TILE_PER_FRAME_BIT_EXT";
+ case VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_TILE_PER_SLICE_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_TILE_PER_SLICE_BIT_EXT";
+ case VK_VIDEO_ENCODE_H265_CAPABILITY_PCM_ENABLE_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H265_CAPABILITY_PCM_ENABLE_BIT_EXT";
+ case VK_VIDEO_ENCODE_H265_CAPABILITY_PPS_SLICE_CHROMA_QP_OFFSETS_PRESENT_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H265_CAPABILITY_PPS_SLICE_CHROMA_QP_OFFSETS_PRESENT_BIT_EXT";
+ case VK_VIDEO_ENCODE_H265_CAPABILITY_ROW_UNALIGNED_SLICE_SEGMENT_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H265_CAPABILITY_ROW_UNALIGNED_SLICE_SEGMENT_BIT_EXT";
+ case VK_VIDEO_ENCODE_H265_CAPABILITY_SAMPLE_ADAPTIVE_OFFSET_ENABLED_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H265_CAPABILITY_SAMPLE_ADAPTIVE_OFFSET_ENABLED_BIT_EXT";
+ case VK_VIDEO_ENCODE_H265_CAPABILITY_SCALING_LISTS_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H265_CAPABILITY_SCALING_LISTS_BIT_EXT";
+ case VK_VIDEO_ENCODE_H265_CAPABILITY_SEPARATE_COLOUR_PLANE_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H265_CAPABILITY_SEPARATE_COLOUR_PLANE_BIT_EXT";
+ case VK_VIDEO_ENCODE_H265_CAPABILITY_SIGN_DATA_HIDING_ENABLED_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H265_CAPABILITY_SIGN_DATA_HIDING_ENABLED_BIT_EXT";
+ case VK_VIDEO_ENCODE_H265_CAPABILITY_SLICE_SEGMENT_CTB_COUNT_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H265_CAPABILITY_SLICE_SEGMENT_CTB_COUNT_BIT_EXT";
+ case VK_VIDEO_ENCODE_H265_CAPABILITY_SPS_TEMPORAL_MVP_ENABLED_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H265_CAPABILITY_SPS_TEMPORAL_MVP_ENABLED_BIT_EXT";
+ case VK_VIDEO_ENCODE_H265_CAPABILITY_TRANSFORM_SKIP_DISABLED_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H265_CAPABILITY_TRANSFORM_SKIP_DISABLED_BIT_EXT";
+ case VK_VIDEO_ENCODE_H265_CAPABILITY_TRANSFORM_SKIP_ENABLED_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H265_CAPABILITY_TRANSFORM_SKIP_ENABLED_BIT_EXT";
+ case VK_VIDEO_ENCODE_H265_CAPABILITY_TRANSQUANT_BYPASS_ENABLED_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H265_CAPABILITY_TRANSQUANT_BYPASS_ENABLED_BIT_EXT";
+ case VK_VIDEO_ENCODE_H265_CAPABILITY_WEIGHTED_BIPRED_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H265_CAPABILITY_WEIGHTED_BIPRED_BIT_EXT";
+ case VK_VIDEO_ENCODE_H265_CAPABILITY_WEIGHTED_PRED_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H265_CAPABILITY_WEIGHTED_PRED_BIT_EXT";
+ case VK_VIDEO_ENCODE_H265_CAPABILITY_WEIGHTED_PRED_NO_TABLE_BIT_EXT:
+ return "VK_VIDEO_ENCODE_H265_CAPABILITY_WEIGHTED_PRED_NO_TABLE_BIT_EXT";
+ default:
+ return "Unhandled VkVideoEncodeH265CapabilityFlagBitsEXT";
+ }
+}
+
+static inline std::string string_VkVideoEncodeH265CapabilityFlagsEXT(VkVideoEncodeH265CapabilityFlagsEXT input_value)
+{
+ std::string ret;
+ int index = 0;
+ while(input_value) {
+ if (input_value & 1) {
+ if( !ret.empty()) ret.append("|");
+ ret.append(string_VkVideoEncodeH265CapabilityFlagBitsEXT(static_cast(1U << index)));
+ }
+ ++index;
+ input_value >>= 1;
+ }
+ if( ret.empty()) ret.append(string_VkVideoEncodeH265CapabilityFlagBitsEXT(static_cast