Commit Graph

783 Commits

Author SHA1 Message Date
Andreas Süßenbach
49a288231b
Add missing braces in union constructors on array members. (#1469) 2022-12-13 10:03:05 +01:00
Andreas Süßenbach
23a13e4707
Add support of clang_format version 13 and 14. (#1468) 2022-12-12 17:30:35 +01:00
github-actions[bot]
d3728e63a1
Update Vulkan-Headers to v1.3.237 (#1466)
Co-authored-by: GitHub <noreply@github.com>
Co-authored-by: Andreas Süßenbach <asuessenbach@nvidia.com>
2022-12-12 10:13:44 +01:00
GitHub
fb561d8092 Update Vulkan-Headers to v1.3.236 2022-12-06 00:11:19 +00:00
asuessenbach
561354a79b Unify command set handling. 2022-11-29 13:38:36 +01:00
asuessenbach
556c0d3434 Introduce additional constructor for unions holding a fixed size array of data. 2022-11-24 08:59:50 +01:00
asuessenbach
9eab4b61e1 Add format trait function compatibilityClass() 2022-11-23 10:51:18 +01:00
GitHub
aed619647c Update Vulkan-Headers to v1.3.235 2022-11-18 00:12:31 +00:00
asuessenbach
1b61fc6cf7 Use std::equal to compare array of null-terminated strings in structs. 2022-11-17 14:05:55 +01:00
asuessenbach
412471771a Fix include guard of vulkan_static_assertions.hpp 2022-11-16 08:38:00 +01:00
asuessenbach
73276f2c26 Remove outdated conditions around two init functions of the DispatchLoaderDynamic. 2022-11-14 12:28:20 +01:00
asuessenbach
196978705e Extent support of functions returning some typed value 2022-11-14 10:06:49 +01:00
GitHub
c873ad307d Update Vulkan-Headers to v1.3.234 2022-11-11 00:12:48 +00:00
Andreas Süßenbach
d6493eae1d
Merge pull request #1438 from asuessenbach/flags
Fix Flags<T>::operator~()
2022-11-07 14:27:38 +01:00
asuessenbach
040686faae Fix Flags<T>::operator~() 2022-11-07 11:28:15 +01:00
GitHub
92c36643f1 Update Vulkan-Headers to v1.3.233 2022-11-07 00:12:52 +00:00
GitHub
dcc1d9562f Update Vulkan-Headers to v1.3.232 2022-10-28 00:12:55 +00:00
asuessenbach
2382684a69 Move explicitly defaulted copy assignment operators of structs into !defined(VULKAN_HPP_NO_STRUCT_CONSTRUCTORS) section
To explicitly default the copy assignment operator is only needed, if there are other constructors. Otherwise, some compilers warn about it.
2022-10-26 08:56:25 +02:00
asuessenbach
d5ad2e1883 Introduce function release() to all vk::raii::HandleTypes. 2022-10-25 12:11:29 +02:00
asuessenbach
1ab5fa6550 Support structs holding arrays of data, where the data size is given by a pointer-type.
In that case, no improved constructor and no improved setters are generated.

Plus some minor cleanup.
2022-10-24 10:39:19 +02:00
asuessenbach
4bf02b2588 Reorganized generating bitmasks in vulkan_enums.hpp. 2022-10-17 16:10:36 +02:00
GitHub
738e7c1423 Update Vulkan-Headers to v1.3.231 2022-10-14 00:16:32 +00:00
asuessenbach
302389d550 Templatized bitwise operators on FlagBits. 2022-10-10 11:04:27 +02:00
asuessenbach
a49fd51629 Minor cleanup on bitmask generation. 2022-10-05 16:58:40 +02:00
asuessenbach
a55e3eb2a0 Cleanup on protection handling
+ some other minor cleanup
2022-10-05 09:28:37 +02:00
asuessenbach
f5be57e498 Corrected handling of mutual exclusive arrays in constructors of structures VkAccelerationStructureTrianglesOpacityMicromapEXT and VkMicromapBuildInfoEXT 2022-10-04 11:34:04 +02:00
GitHub
3b5961d5ce Update Vulkan-Headers to v1.3.230 2022-09-30 00:20:29 +00:00
GitHub
917ba7cbb0 Update Vulkan-Headers to v1.3.229 2022-09-23 00:12:32 +00:00
asuessenbach
6fe966c6d9 Fix inconsistency with return type of vk::raii::SwapchainKHR::getImages()
+ some minor cleanup
2022-09-21 10:08:07 +02:00
GitHub
27b37765e7 Update Vulkan-Headers to v1.3.228 2022-09-16 00:13:32 +00:00
asuessenbach
d0317af5a9 [raii] Add missing handling of successCode in move-construction and move-assignment of multi-successCode handles. 2022-09-14 12:21:26 +02:00
Andreas Süßenbach
984ab4e846
Merge pull request #1407 from asuessenbach/algorithm
Unconditionally include <algorithm> in vulkan.hpp.
2022-09-13 08:29:20 +02:00
asuessenbach
ac1eda539c Unconditionally include <algorithm> in vulkan.hpp. 2022-09-12 17:10:56 +02:00
asuessenbach
34725b3192 Introduce helper class vk::StridedArrayProxy; use it on functions with parameters having the 'stride' attribute. 2022-09-12 16:53:44 +02:00
GitHub
6fd5e6dd72 Update Vulkan-Headers to v1.3.227 2022-09-09 00:11:55 +00:00
GitHub
5c406ec531 Update Vulkan-Headers to v1.3.226 2022-09-02 00:12:10 +00:00
Stephan Seitz
1e67e5aba4 fix: use feature test macros for usage of <format>
Fixes #1394
2022-08-29 23:12:25 +02:00
Stephan Seitz
8afaf0e2d0 fix: include <utility> in vulkan_raii.hpp for std::exchange 2022-08-29 23:12:25 +02:00
GitHub
33dad92cec Update Vulkan-Headers to v1.3.225 2022-08-24 08:40:49 +02:00
asuessenbach
5480d192f5 Refactor the CMakeLists for all the samples; use vulkan.hpp/vulkan_raii.hpp as precompiled header. 2022-08-10 15:29:28 +02:00
asuessenbach
6e5824e21a Update to Vulkan-Headers v1.3.224 2022-08-08 09:47:30 +02:00
asuessenbach
e8bf9bed9a Move all the static_assertions from vulkan_handles.hpp and vulkan_structs.hpp into the new header vulkan_static_assertions.hpp 2022-08-03 11:53:57 +02:00
asuessenbach
a8a2c5f910 Refactor top-level file generation function. 2022-08-02 10:00:16 +02:00
Andreas Süßenbach
f50243e683
Merge pull request #1372 from asuessenbach/refactor
Refactor top-level function to generate vulkan.hpp
2022-08-01 17:40:22 +02:00
asuessenbach
893d6847bb Refactor top-level function to generate vulkan.hpp 2022-08-01 16:40:15 +02:00
asuessenbach
cb4a573b42 Combine two types of commands into one generation function 2022-08-01 14:53:06 +02:00
Andreas Süßenbach
b95c02b89d
Merge pull request #1370 from asuessenbach/function
Combine two types of commands into one generation function
2022-08-01 13:54:24 +02:00
asuessenbach
e8179c8f49 Combine two types of commands into one generation function 2022-08-01 11:32:05 +02:00
asuessenbach
9c4a906d07 Add "videocoding" as an optional attribute for commands. 2022-08-01 10:11:45 +02:00
GitHub
e31e673550 Update Vulkan-Headers to v1.3.223 2022-07-29 00:09:57 +00:00
asuessenbach
056abda3e2 Reduce number of included headers 2022-07-27 16:39:37 +02:00
asuessenbach
3aae157e5b Move the vk::to_string functions into a separate header vulkan_to_string.hpp. 2022-07-26 11:19:42 +02:00
asuessenbach
527e52a1bd Introduce VULKAN_HPP_NO_TO_STRING to optionally remove the various vk::to_string functions.
Also extend the samples to hold some local version of the needed to_string functions in case VULKAN_HPP_NO_TO_STRING is defined.
2022-07-25 17:11:30 +02:00
GitHub
3e449ebc53 Update Vulkan-Headers to v1.3.222 2022-07-22 00:12:13 +00:00
asuessenbach
75f02617cb Revert struct conversion operators to be implicit. 2022-07-19 08:18:22 +02:00
GitHub
e6ea601adb Update Vulkan-Headers to v1.3.221 2022-07-15 00:12:11 +00:00
asuessenbach
bc6d481a5b Remove some dead code. 2022-07-11 13:54:33 +02:00
github-actions[bot]
85fba669da
Update Vulkan-Headers to v1.3.220 (#1349)
Co-authored-by: GitHub <noreply@github.com>
2022-07-11 10:35:37 +02:00
asuessenbach
0d9ca30378 Removed some dead code. 2022-07-04 10:59:55 +02:00
GitHub
93f8b6b541 Update Vulkan-Headers to v1.3.219 2022-07-01 00:11:04 +00:00
asuessenbach
2ddd380a23 Combine two types of commands into one generation function 2022-06-29 08:13:42 +02:00
asuessenbach
39be44dc65 Combine two types of commands into one generation function 2022-06-28 13:33:36 +02:00
asuessenbach
429e610f7e Combine two types of commands into one generation function 2022-06-28 08:41:36 +02:00
asuessenbach
448efe9edb Combine two types of commands into one generation function 2022-06-27 10:03:03 +02:00
asuessenbach
5075c94b8a Combine two types of commands into one generation function 2022-06-23 11:42:03 +02:00
asuessenbach
b7146538a5 Combine two types of commands into one generation function 2022-06-21 09:22:03 +02:00
asuessenbach
2c536b75b9 Combine two types of commands into one generation function 2022-06-20 12:26:30 +02:00
Andreas Süßenbach
94244d51d5
Merge pull request #1329 from asuessenbach/spaceship
Change used check for using spaceship operator from "impl" to "lib".
2022-06-20 11:28:48 +02:00
Andreas Süßenbach
aac15a2790
Merge pull request #1328 from asuessenbach/function
Combine two types of commands into one generation function
2022-06-20 11:27:10 +02:00
asuessenbach
cbb02bf5ab Change used check for using spaceship operator from "impl" to "lib". 2022-06-20 09:32:27 +02:00
GitHub
2b55b3382d Update Vulkan-Headers to v1.3.218 2022-06-17 00:09:45 +00:00
asuessenbach
de7127a963 Combine two types of commands into one generation function 2022-06-15 11:57:25 +02:00
asuessenbach
66fc081783 Combine two types of commands into one generation function 2022-06-14 10:53:50 +02:00
asuessenbach
4630feb760 Combine two types of commands into one generation function 2022-06-14 09:08:56 +02:00
Andreas Süßenbach
15788c576c
Merge pull request #1322 from asuessenbach/spaceship
Remove spaceship operator for structures containing function pointers
2022-06-13 12:05:51 +02:00
Andreas Süßenbach
3c80f9a60b
Merge pull request #1321 from asuessenbach/function
Combine two types of commands into one generation function
2022-06-13 11:08:13 +02:00
asuessenbach
67f9357bb8 Remove spaceship operator for structures containing function pointers 2022-06-13 10:54:04 +02:00
GitHub
1dc2a0eeaf Update Vulkan-Headers to v1.3.217 2022-06-10 00:09:44 +00:00
asuessenbach
a7d6e1be5d Combine two types of commands into one generation function 2022-06-08 16:39:15 +02:00
asuessenbach
484373a54a Combine two types of commands into one generation function 2022-06-08 08:53:11 +02:00
asuessenbach
d691f5f0e8 Combine two types of commands into one generation function 2022-06-07 18:02:52 +02:00
GitHub
dd45c179bb Update Vulkan-Headers to v1.3.216 2022-06-03 00:09:17 +00:00
asuessenbach
5c571c1b9a Combine two types of commands into one generation function 2022-05-25 20:21:21 +02:00
GitHub
e777f1d1d2 Update Vulkan-Headers to v1.3.215 2022-05-25 00:11:11 +00:00
asuessenbach
b35993287e Combine two types of commands into one generation function 2022-05-24 09:01:00 +02:00
asuessenbach
d7a1a254d4 Combine two types of commands into one generation function 2022-05-23 10:31:40 +02:00
asuessenbach
e3e124e5e2 Combine two types of commands into one generation function 2022-05-19 08:34:26 +02:00
asuessenbach
3f240ea665 Combine two types of commands into one generation function 2022-05-18 09:24:39 +02:00
GitHub
21e1f09d49 Update Vulkan-Headers to v1.3.214 2022-05-18 00:10:20 +00:00
asuessenbach
66c3c89d8e Combine two types of commands into one generation function 2022-05-17 10:35:57 +02:00
asuessenbach
66953f4039 Combine two types of commands into one generation function 2022-05-11 10:00:53 +02:00
GitHub
21448e0ace Update Vulkan-Headers to v1.3.213 2022-05-11 00:09:28 +00:00
asuessenbach
a591ef69e3 (re-)add support of commands enumerating a chained structure type. 2022-05-04 09:55:27 +02:00
asuessenbach
f9ad86aef8 Remove deprecated implicit-cast operators on vk::ResultValue. 2022-05-03 09:47:58 +02:00
asuessenbach
145c10e945 Combine two types of commands into one generation function 2022-05-02 17:01:38 +02:00
asuessenbach
b45a44b479 Combine two types of commands into one generation function 2022-04-28 16:32:33 +02:00
asuessenbach
74fd07216e Combine two types of commands into one generation function 2022-04-27 13:37:28 +02:00
asuessenbach
e5921db439 Combine two types of commands into one generation function 2022-04-26 12:35:15 +02:00
GitHub
0495d69c6d Update Vulkan-Headers to v1.3.212 2022-04-22 00:10:35 +00:00
asuessenbach
90afc89e66 Combine two types of commands into one generation function 2022-04-21 11:27:39 +02:00
Andreas Süßenbach
828ac8e246
Merge pull request #1288 from phantom10111/array-proxy-with-raw-arrays
Add ArrayProxy constructors with support for raw array with size
2022-04-19 17:38:31 +02:00
Andreas Süßenbach
e9c343c402
Merge pull request #1289 from asuessenbach/function
Combine two types of commands into one generation function
2022-04-19 13:34:44 +02:00
asuessenbach
769827ed3d Combine two types of commands into one generation function 2022-04-19 11:59:33 +02:00
phantom10111
5df998c0d6 Add ArrayProxy constructors with support for raw array with size
There's a little known C language family feature, which makes it
possible to take a pointer or reference to an array with size. Use this
feature to add constructors to ArrayProxy and ArrayProxyNoTemporaries
which can wrap raw arrays and deduce their size automatically.
2022-04-19 11:49:09 +02:00
phantom10111
9e95c0072d Make type conversions implicit for dispatchable handles
Vulkan handles are not typesafe on 32-bit platforms, but only for
non-dispachable handles. Dispatchable handles are opaque struct pointers
on all platforms, and thus typesafe.

This commit makes all conversions for dispatchable handles implicit,
regardless of VULKAN_HPP_TYPESAFE_CONVERSION setting.
2022-04-15 11:24:30 +02:00
asuessenbach
9c99d1b2ce Combine two types of commands into one generation function 2022-04-14 08:03:15 +02:00
asuessenbach
4ba01be8d1 Combine two types of commands into one generation function. 2022-04-13 09:45:31 +02:00
asuessenbach
956cda998b Combine two types of commands into one generation function. 2022-04-12 13:56:21 +02:00
asuessenbach
26e2fc42c8 Combine two types of commands into one generation function. 2022-04-07 16:04:26 +02:00
asuessenbach
d50485c5c7 Combine two types of commands into one generation function. 2022-04-07 08:48:55 +02:00
GitHub
da42600e06 Update Vulkan-Headers to v1.3.211 2022-04-06 00:09:05 +00:00
asuessenbach
dd6deccf52 Add missing allocator template argument in createResultValue helper functions working on std::vector<UniqueHandle> types. 2022-04-04 10:00:13 +02:00
asuessenbach
333083e44e Combine two types of commands into one generation function. 2022-03-31 09:52:06 +02:00
asuessenbach
5190cd09ff Update Vulkan-Headers to v1.3.210 2022-03-30 11:52:35 +02:00
asuessenbach
16a44bb94f Re-add accidentally removed version of createResultValue
+ add test project for UniqueHandles.
2022-03-30 09:45:51 +02:00
asuessenbach
a8d47f4694 Combine two types of commands into one generation function. 2022-03-28 17:52:45 +02:00
asuessenbach
439ac7fe26 Update Vulkan-Headers to v1.3.209 2022-03-24 09:51:10 +01:00
asuessenbach
d90c6cbbfc Add pNext as optional last argument to constructors of structs that hold a pNext. 2022-03-23 17:08:19 +01:00
asuessenbach
23c11fe38d Introduce copy constructor and assignment operator for vk::raii classes that hold handles without a destructor. 2022-03-22 13:53:21 +01:00
asuessenbach
a104fd65d3 Combine two types of commands into one generation function. 2022-03-16 13:51:43 +01:00
asuessenbach
dfffc95731 Update Vulkan-Headers to v1.3.208 2022-03-16 12:19:09 +01:00
asuessenbach
c761497d36 Update Vulkan-Headers to v1.3.207 2022-03-16 09:09:01 +01:00
asuessenbach
ae11e13e0b Combine two types of commands into one generation function.
Generation of functions that return a VkResult and either get some data or not are combined into one function.

+ some minor cleanup
2022-03-15 11:58:55 +01:00
Andreas Süßenbach
582bade14d
Merge pull request #1242 from asuessenbach/deprecated
Remove deprecated cpp_type.
2022-03-15 08:52:49 +01:00
asuessenbach
cf5ecd7cc6 Remove deprecated cpp_type. 2022-03-14 15:13:33 +01:00
asuessenbach
f58ffe385f Combine two types of commands into one generation function.
Generation of functions that get a StructureChain or some value are combined into one function.
2022-03-14 14:54:56 +01:00
asuessenbach
611365b986 Updated clang_format options 2022-03-09 12:28:52 +01:00
asuessenbach
4fd8ad4baa Minor cleanup work in command generation. 2022-03-09 10:13:51 +01:00
asuessenbach
ffead3984d Add some support of attribute "altlen" on command parameters. 2022-03-02 09:51:12 +01:00
GitHub
eccc252a98 Update Vulkan-Headers to v1.3.206 2022-03-01 00:09:13 +00:00
asuessenbach
5fe410279a Change ColumnLimit with clang-format from 120 to 160. 2022-02-28 10:11:04 +01:00
Andreas Süßenbach
cccf0a62b7
Merge pull request #1212 from asuessenbach/formatTraits
Extract trait functions on vk::Format into the additional header vulkan_format_traits.hpp.
2022-02-21 11:35:53 +01:00
asuessenbach
1c39502170 Extract trait functions on vk::Format into the additional header vulkan_format_traits.hpp. 2022-02-21 10:11:25 +01:00
GitHub
47520a1025 Update Vulkan-Headers to v1.3.206 2022-02-19 00:07:27 +00:00
asuessenbach
3e1e23914e Hide functions reflect() behind VULKAN_HPP_USE_REFLECT. 2022-02-17 09:53:32 +01:00
Andreas Süßenbach
12dac7ffaa
Merge pull request #1208 from asuessenbach/vector
Introduce explicit default construction on nullptr_t for vector-based raii-classes.
2022-02-16 14:08:24 +01:00
asuessenbach
782c4aa46c Introduce explicit default construction on nullptr_t for vector-based raii-classes. 2022-02-16 09:51:18 +01:00
asuessenbach
815afe1f70 Introduce trait function componentName() and componentNumericFormat() on vk::Format. 2022-02-15 14:47:38 +01:00
asuessenbach
b8522e483c Introduce member function clear() for raii-classes. 2022-02-15 10:50:52 +01:00
asuessenbach
b1a822983d Introduce member function swap() for raii-classes. 2022-02-14 15:11:46 +01:00
asuessenbach
1b12dd8cbb Enclose "free" in parenthesis to prevent interference with MSVC's debug free 2022-02-10 09:49:24 +01:00
Andreas Süßenbach
8507dba945
Merge pull request #1196 from asuessenbach/deprecated
Remove support of all functions marked as deprecated.
2022-02-07 15:41:40 +01:00
Andreas Süßenbach
bc5b7fb5fe
Merge pull request #1194 from KhronosGroup/update-vulkan-headers-pr
Update Vulkan-Headers to v1.3.205
2022-02-07 13:56:40 +01:00
asuessenbach
c25e890527 Remove support of all functions marked as deprecated. 2022-02-07 10:09:46 +01:00
GitHub
1e95dfbb80 Update Vulkan-Headers to v1.3.205 2022-02-06 00:45:04 +00:00
asuessenbach
7135c7e1a3 Remove the 'allFlags' from the general FlagTraits struct to catch unintentional usage with something different than a supported FlagBitsType. 2022-02-03 17:34:43 +01:00
asuessenbach
4e28bf7060 Check in with corrected braces for std::arrays.
Code generator was corrected in #1186.
2022-02-03 09:57:53 +01:00
GitHub
85c2c9d72e Update Vulkan-Headers to v1.3.204 2022-01-26 00:42:08 +00:00
asuessenbach
c29a549f8c Generalize command generation for a specific type of commands
Commands returning a VkResult, with multiple success codes and at least one error code, that get no non-const pointers and zero or more input vectors are generalized into one function.
2022-01-24 10:19:23 +01:00
asuessenbach
350a74f1e1 Generalize command generation for a specific type of commands
Commands returning void, that get no non-const pointers but one or more const pointers or vectors are generalized into one function.
2022-01-13 16:16:16 +01:00