Commit Graph

1005 Commits

Author SHA1 Message Date
Andreas Süßenbach 32bd2b7ab7
Adjust order for loading vulkan library by the DynamicLoader for MacOS. (#2231) 2025-07-30 17:19:43 +02:00
Andreas Süßenbach d16c62670b
Mark deprecated struct members as deprecated. (#2230) 2025-07-30 09:36:58 +02:00
Andreas Süßenbach 167bb6afe0
Remove outdated flag VULKAN_HPP_TESTS_BUILD_ONLY_DYNAMIC (#2228) 2025-07-24 19:26:03 +02:00
Andreas Süßenbach 7dfe7d3ad9
Extend support of VULKAN_HPP_NO_EXCEPTIONS in the raii-namespace (#2226) 2025-07-22 13:48:50 +02:00
github-actions[bot] 11bab25e31
Update Vulkan-Headers to v1.4.323 (#2222)
Co-authored-by: GitHub <noreply@github.com>
2025-07-21 08:50:32 +02:00
Andreas Süßenbach 8e34112311
Guard header inclusion in vulkan_video.hpp by __has_include. (#2219) 2025-07-17 12:07:03 +02:00
Andreas Süßenbach da67e807a8
Remove redundant occurrences of VULKAN_HPP_NAMESPACE:: and VULKAN_HPP_RAII_NAMESPACE:: in vulkan_raii.hpp (#2213) 2025-07-14 16:26:20 +02:00
github-actions[bot] 13da06128f
Update Vulkan-Headers to v1.4.322 (#2214)
Co-authored-by: GitHub <noreply@github.com>
2025-07-14 13:40:42 +02:00
Jan Kuhlmann e04460f454
remove faulty macro guard (#2212) 2025-07-09 17:24:43 +02:00
Andreas Süßenbach daeae97daf
Remove redundant occurrences of VULKAN_HPP_NAMESPACE:: in vulkan_to_string.hpp (#2211) 2025-07-08 12:46:22 +02:00
Andreas Süßenbach 68baf3c00f
Remove redundant occurrences of VULKAN_HPP_NAMESPACE:: in vulkan_structs.hpp (#2210) 2025-07-07 17:09:33 +02:00
github-actions[bot] 7824358518
Update Vulkan-Headers to v1.4.321 (#2209)
Co-authored-by: GitHub <noreply@github.com>
2025-07-07 11:28:32 +02:00
Andreas Süßenbach 2010d85fb4
Remove redundant occurrences of VULKAN_HPP_NAMESPACE:: in vulkan_shared.hpp (#2207) 2025-07-03 10:29:37 +02:00
LEE KYOUNGHEON de8730fd22
Use ref qualifier for RAII handles to prevent creating reference to a temporary. (#2159)
* Use ref qualifier to prevent creating reference to a temporary.

* Return const rvalue reference.
2025-07-02 18:05:25 +02:00
Andreas Süßenbach fe0190241c
Remove redundant occurrences of VULKAN_HPP_NAMESPACE:: in vulkan_handles.hpp (#2206) 2025-07-02 15:07:55 +02:00
Andreas Süßenbach 3444a16cfb
Remove redundant occurrences of VULKAN_HPP_NAMESPACE:: in vulkan_funcs.hpp and other headers (#2205) 2025-07-01 17:24:19 +02:00
github-actions[bot] de509342b4
Update Vulkan-Headers to v1.4.320 (#2202)
Co-authored-by: GitHub <noreply@github.com>
2025-06-30 11:17:30 +02:00
Andreas Süßenbach 32f2957efc
Remove redundant occurrences of VULKAN_HPP_NAMESPACE:: in vulkan_format_traits.hpp (#2200) 2025-06-26 13:40:36 +02:00
Andreas Süßenbach 4ccc5d34ba
Determine the headers to include in vulkan_video.hpp by the extensions names and the protections to use by the extensions comment. (#2196) 2025-06-26 08:05:15 +02:00
Andreas Süßenbach 1c6215ddfd
Remove redundant occurrences of VULKAN_HPP_NAMESPACE:: in vulkan_enums.hpp. (#2195) 2025-06-25 11:10:19 +02:00
Andreas Süßenbach 05f5b9a060
Handle new command attribute "export". (#2194) 2025-06-24 18:35:26 +02:00
github-actions[bot] a31d678939
Update Vulkan-Headers to v1.4.319 (#2193)
Co-authored-by: GitHub <noreply@github.com>
2025-06-24 10:26:51 +02:00
Andreas Süßenbach dfed90530b
Cleanup work on compare operators (#2169)
* Cleanup work on compare operators

* Use defaulted spaceship operators for handles if available, otherwise use set of explicit comparison operators.
2025-06-24 08:31:14 +02:00
Andreas Süßenbach c143eb293c
Remove redundant occurrences of VULKAN_HPP_NAMESPACE:: in vulkan.hpp. (#2191) 2025-06-18 13:32:51 +02:00
github-actions[bot] 5bac8fc8fc
Update Vulkan-Headers to v1.4.318 (#2185)
Co-authored-by: GitHub <noreply@github.com>
2025-06-16 11:45:04 +02:00
Andreas Süßenbach ae6f3c1184
Include missing header type_traits to vulkan_enums.hpp (#2180) 2025-06-12 15:43:51 +02:00
Andreas Süßenbach ad71cabe2c
Include two new video codec headers in vulkan_video.hpp. (#2179) 2025-06-12 08:22:28 +02:00
github-actions[bot] 51a648fa9a
Update Vulkan-Headers to v1.4.317 (#2174)
Co-authored-by: GitHub <noreply@github.com>
2025-06-11 11:07:32 +02:00
btmxh d5b553d969
Add support for vulkan_video.cppm module (#2162)
* Add support for vulkan_video.cppm module

Fix #2151

* Add a module version for the Video test

Currently this add vulkan_video.cppm to the VulkanHppModule target,
which might not be what we want (maybe guard this by an option(), or add
another target like VulkanVideoHppModule, etc.).

* Add a separate target for `vulkan_video.cppm`

* Extract common logic to `vulkan_hpp__setup_module`

* Fix several CMakeLists.txt issues

- Add `vulkan_video.cppm` to `VK_GENERATED_VULKAN_HEADERS`.
- Remove unnecessary ${ARGN} quotes.
- Move version checks out of `vulkan_hpp__setup_module`.
- Separate `FILE_SET_NAME` from `FILE_SET`.
2025-05-15 18:11:27 +02:00
Andreas Süßenbach 54cc539ab5
Add functions vk::isColor() and vk::getAllFormats() (#2166) 2025-05-14 08:41:20 +02:00
btmxh 715aab1337
Fix undefined `assert` when using `std` module (#2165)
* Fix undefined `assert` when using `std` module

Fix #2164

* Move include `<cassert>` to before `<string.h>
2025-05-14 08:40:11 +02:00
Jan Kuhlmann 9e748f985b
C++20 Module: Exporting PFN_* symbols (#2158)
* exporting PFN_* symbols in cppm

* changed fnc signature and removed unnecessary assignment

* forgot one

* moved exports to bottom of cppm
2025-05-13 11:28:32 +02:00
github-actions[bot] 557e25cdd9
Update Vulkan-Headers to v1.4.315 (#2161)
Co-authored-by: GitHub <noreply@github.com>
2025-05-13 10:49:53 +02:00
Andreas Süßenbach 91109e1e2f
Add new functions getColorFormats, hasRedComponent, hasGreenComponent, hasBlueComponent, and hasAlphaComponent to vulkan_format_traits.hpp (#2163) 2025-05-12 16:54:37 +02:00
Andreas Süßenbach 02b78071f1
Refactor format traits generation (#2160) 2025-05-07 16:24:40 +02:00
github-actions[bot] 9a2cd93085
Update Vulkan-Headers to v1.4.314 (#2153)
Co-authored-by: GitHub <noreply@github.com>
2025-05-06 09:51:16 +02:00
Jan Kuhlmann ee121fe6a4
C++20 Module: Fixing dynamic dispatch on Windows MSVC (#2146)
* export defaultDispatchLoaderDynamic symbol

* improved default dispatcher symbol export

* fixed formatting
2025-04-30 08:37:32 +02:00
Andreas Süßenbach 3f281b80b4
Add documentation of new format trait functions (#2144) 2025-04-30 08:35:45 +02:00
Andreas Süßenbach a804eaa9b2
Add missing alias classes for raii-handle wrappers (#2148) 2025-04-29 13:41:12 +02:00
Andreas Süßenbach 66da6f2b87
Introduce new format traits functions (#2143) 2025-04-23 10:54:17 +02:00
Andreas Süßenbach bdf1304837
Add some special handling for command vkExportMetalObjectsEXT (#2142) 2025-04-22 11:49:46 +02:00
github-actions[bot] 028a01abfc
Update Vulkan-Headers to v1.4.313 (#2140)
Co-authored-by: GitHub <noreply@github.com>
2025-04-22 09:55:06 +02:00
Andreas Süßenbach ee361cf520
Add BitsType to vk::Flags to get from vk::*Flags to vk::*FlagBits at compile-time (#2139) 2025-04-17 18:11:15 +02:00
Andreas Süßenbach 16915b3fa4
Add using WrappedType to FlagTraits<*FlagBits> to generically get from vk::*FlagBits to Vk*FlagBits at compile-time. (#2138) 2025-04-17 10:39:11 +02:00
Andreas Süßenbach fda93ae3fb
Include cassert unconditionally (#2134) 2025-04-10 13:56:09 +02:00
Andreas Süßenbach a428958b7f
Check language feature macro for existence before using it (#2133) 2025-04-10 10:49:25 +02:00
github-actions[bot] 7eb8eacec5
Update Vulkan-Headers to v1.4.312 (#2127)
Co-authored-by: GitHub <noreply@github.com>
2025-04-07 11:33:00 +02:00
Andreas Süßenbach 450a047750
Extend depends handling of extensions to allow multiple sets of dependencies for the very same vulkan version. (#2126) 2025-04-03 20:21:11 +02:00
Andreas Süßenbach 63eff3a2e0
Re-introduce extension dependencies inspection (#2124)
* Re-introduce extension dependencies inspection.
2025-04-03 09:06:58 +02:00
Andreas Süßenbach 6f7fcdfbc7
Simplified member name generation for raii handles (#2120) 2025-03-31 15:51:25 +02:00
github-actions[bot] 1fd397b801
Update Vulkan-Headers to v1.4.311 (#2114)
Co-authored-by: GitHub <noreply@github.com>
2025-03-25 10:37:38 +01:00
Andreas Süßenbach b19b7d7afb
Make the vk::to_string functions constexpr with C++20 and above. (#2101) 2025-03-13 13:44:44 +01:00
Jan Kuhlmann fd13995952
temporarily remove extension dependency inspection (#2099) 2025-03-11 16:59:02 +01:00
github-actions[bot] 1ce3fcac8b
Update Vulkan-Headers to v1.4.310 (#2097)
Co-authored-by: GitHub <noreply@github.com>
2025-03-10 17:53:35 +01:00
Victor Chernyakin fe203f86d0
Optimize `to_string` functions for enums (#2096)
* Optimize `to_string` functions for enums

* Fix `-Wunused-parameter` warning
2025-03-06 17:30:20 +01:00
Andreas Süßenbach da9db0c8a0
Replace some more "vk::" by "VULKAN_HPP_NAMESPACE::" (#2095) 2025-03-06 17:19:37 +01:00
Andreas Süßenbach 325602c26a
Remove extension dependency inspection functions (temporarily) (#2094) 2025-03-06 17:17:32 +01:00
Andreas Süßenbach 8f9db1bad6
Minor cleanup work (#2090) 2025-02-24 18:02:40 +01:00
github-actions[bot] 16da8bd29e
Update Vulkan-Headers to v1.4.309 (#2088)
Co-authored-by: GitHub <noreply@github.com>
2025-02-24 11:46:40 +01:00
Jan Kuhlmann be9459f9c3
properly export VkGeometryInstanceFlagsKHR symbol (#2085) 2025-02-24 11:08:07 +01:00
Piers Daniell 0236fbad7d
Add additional type conversion operators to the struct classes to make it easier to interoperate with the Vulkan C API (#2087)
* Add type conversion operators to the structs

This improves compatibility with the Vulkan C API so applications can
easily use the vulkan_structs.hpp classes with the C API seamlessly.

* Minor fixes
2025-02-24 09:35:16 +01:00
Jan Kuhlmann 03f07338be
Suppress clang warning `-Wcast-function-type` for shared destroy (#2078)
* supress clang warning for shared destroy

* ignore demoted to -Wcast-function-type

* ignore warning only for clang13 and up

* only pop warning if previously pushed
2025-02-19 09:05:30 +01:00
Jan Kuhlmann 85036c964c
C++20 module: Hide to_string behind VULKAN_HPP_NO_TO_STRING (#2077)
* hide to_string behind VULKAN_HPP_NO_TO_STRING

* adjusted generated cppm
2025-02-18 08:20:17 +01:00
Yilong Li 9dbf676cdb
vulkan_handles: Remove the redundant semicolon after ctor definition (#2073)
Semicolons after in-class function definitions are redundant, and may
trigger the "-Wextra-semi" warning of compilers, for example:

* gcc: https://gcc.gnu.org/onlinedocs/gcc/C_002b_002b-Dialect-Options.html#index-Wextra-semi
* clang: https://clang.llvm.org/docs/DiagnosticsReference.html#wextra-semi

This change removes the redundant semicolon in the code generator and
the generated hpp file.

Bug: https://fxbug.dev/378964821
2025-02-17 14:36:07 +01:00
Andreas Süßenbach 3ec3e1c8d1
Add support for clang_format options version 17 (#2063) 2025-02-06 13:20:09 +01:00
Andreas Süßenbach 3f2fe22281
Add support for clang_format options version 16. (#2062) 2025-02-05 13:44:36 +01:00
Andreas Süßenbach d9c7a3b836
Add links into https://registry.khronos.org/vulkan/specs/latest/man/html for relevant data types (#2061) 2025-02-04 11:13:58 +01:00
github-actions[bot] 6b05ffe121
Update Vulkan-Headers to v1.4.307 (#2058)
Co-authored-by: GitHub <noreply@github.com>
2025-02-03 11:44:22 +01:00
github-actions[bot] bc11a75f32
Update Vulkan-Headers to v1.4.306 (#2055)
Co-authored-by: GitHub <noreply@github.com>
2025-01-27 10:21:23 +01:00
Andreas Süßenbach 6578bfcc88
Update Vulkan-Headers to v1.4.305 (#2049) 2025-01-21 10:53:23 +01:00
Andreas Süßenbach 03c775461b
Use VULKAN_HPP_NO_CONSTRUCTORS and VULKAN_HPP_NO_SETTERS as documented in the readme. (#2041) 2025-01-09 15:45:43 +01:00
Andreas Süßenbach 8ca59e086c
Update Vulkan-Headers to v1.4.304 (#2039) 2025-01-09 12:33:24 +01:00
Andreas Süßenbach ed47b1d9ad
Remove special assertion on eFreeDescriptorSet in function Device::createDescriptorPool (#2038) 2025-01-08 19:47:53 +01:00
Andreas Süßenbach 752778463e
Parallelize the generation of the files. (#2035) 2025-01-08 11:53:08 +01:00
Andreas Süßenbach 264d35b58c
Introduce vk::PFN_VoidFunction as a replacement of PFN_vkVoidFunction (#2033) 2025-01-06 18:04:33 +01:00
Andreas Süßenbach d5f49e5a7b
Change using WIN32 to _WIN32 (#2032) 2025-01-06 14:20:22 +01:00
Andreas Süßenbach 0d89df69b3
Export the C-type VkGeometryInstanceFlagsKHR in vulkan.cppm. (#2023) 2025-01-06 10:16:51 +01:00
Andreas Süßenbach 1055cb5e78
Add funcpointer types to vulkan.cppm. (#2022) 2024-12-12 15:20:37 +01:00
Andreas Süßenbach d5a18dc87e
Introduce vk-version of the funcpointers (#2020) 2024-12-12 09:46:53 +01:00
Andreas Süßenbach 07cdcb909d
Adjust namespace of compare operators on vk-handles. (#2013) 2024-12-11 09:33:07 +01:00
Andreas Süßenbach 22a2be853c
Export detail::getDispatchLoaderStatic in vulkan.cppm (#2008) 2024-12-11 09:28:49 +01:00
Andreas Süßenbach bdd57b78fa
Include vulkan_to_string.hpp in vulkan.cppm (#2017) 2024-12-10 17:46:29 +01:00
Andreas Süßenbach a29adc0147
Include vulkan.hpp, instead of vulkan_enums.hpp in vulkan_to_string.hpp. (#2016) 2024-12-10 17:44:47 +01:00
Andreas Süßenbach c2c49478e9
Re-add compare operators of vk-handles, needed for 32bit builds. (#2010) 2024-12-06 09:56:10 +01:00
github-actions[bot] 20ecea9574
Update Vulkan-Headers to v1.4.303 (#2006)
Co-authored-by: GitHub <noreply@github.com>
2024-12-04 10:30:35 +01:00
Andreas Süßenbach 265b317356
Extend enum value alias handling. (#2004) 2024-12-02 13:50:53 +01:00
Andreas Süßenbach 1e92bf4fcd
Add inclusion of new encode file to VideoHppGenerator, add compile test for video. (#2002) 2024-12-02 08:51:02 +01:00
Andreas Süßenbach 06b91cfdc2
Add comparison operators for vk::raii handles, remove them for vk handles (#2001) 2024-11-28 08:50:43 +01:00
Andreas Süßenbach cdfa83ab79
Add specializations of std::hash for all the structs and handles in the vk-namespace. (#1994) 2024-11-26 11:08:49 +01:00
Andreas Süßenbach d433715af0
Extend cases when vk::detail::DispatchLoaderStatic is defined. (#1995) 2024-11-14 12:19:22 +01:00
Andreas Süßenbach a4d53f4a22
Move extension inspection template to a snippet file. (#1992) 2024-11-11 11:41:24 +01:00
Andreas Süßenbach 43f7a18b02
Adjust loading procedure of the vk::detail::DynamicLoader on MacOS (#1991) 2024-11-05 19:52:08 +01:00
github-actions[bot] 6902b578be
Update Vulkan-Headers to v1.3.301 (#1990)
Co-authored-by: GitHub <noreply@github.com>
2024-11-05 11:47:23 +01:00
Andreas Süßenbach 6e5489fcd9
Move all the management helper classes for SharedHandles and UniqueHandles into namespace detail. (#1984) 2024-10-30 08:14:48 +01:00
Andreas Süßenbach ed3cf7ac51
Move all the dispatcher related classes into namespace detail (#1983) 2024-10-29 08:13:51 +01:00
github-actions[bot] 24dee1ce75
Update Vulkan-Headers to v1.3.300 (#1981)
Co-authored-by: GitHub <noreply@github.com>
2024-10-28 12:45:25 +01:00
Andreas Süßenbach e80b3fae8a
Restrict commands taking an allocator as template argument to allocators of the correct data type (#1980) 2024-10-24 16:29:00 +02:00
Andreas Süßenbach eecf79d57f
Add some special handling debug code for vk::raii::DescriptorPool (#1978) 2024-10-24 08:18:43 +02:00
github-actions[bot] 8444972909
Update Vulkan-Headers to v1.3.299 (#1974)
Co-authored-by: GitHub <noreply@github.com>
2024-10-21 14:58:14 +02:00
github-actions[bot] 8592ed9743
Update Vulkan-Headers to v1.3.298 (#1971)
Co-authored-by: GitHub <noreply@github.com>
2024-10-14 12:32:50 +02:00