Commit Graph

611 Commits

Author SHA1 Message Date
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
asuessenbach
eecfe9bf42 Extend operator==() and operator<=>() on structures to compare null-terminated string members 2022-01-05 16:20:13 +01:00
Andreas Süßenbach
a5070c4094
Merge pull request #1170 from amaiorano/fix-hash-null-terminated-strings
Fix std::hash specializations for null-terminated strings
2022-01-04 12:08:35 +01:00
Andreas Süßenbach
cb5347205f
Merge pull request #1173 from asuessenbach/deprecated
Remove deprecated version of function Device::getCalibratedTimestampsEXT().
2022-01-04 08:51:22 +01:00
Antonio Maiorano
e84bb64746 Fix std::hash specializations for null-terminated strings
Instead of hashing the pointer, hash the string contents.

Fixes: https://github.com/KhronosGroup/Vulkan-Hpp/issues/1169
2022-01-03 14:26:34 -05:00
asuessenbach
10e8f07e85 Remove deprecated version of function Device::getCalibratedTimestampsEXT(). 2022-01-03 15:33:51 +01:00
asuessenbach
edc0ce883f Restrict reflect() on structures to non-GCC and GCC version above 7.5. 2022-01-03 14:17:12 +01:00
GitHub
1cac07f124 Update Vulkan-Headers to v1.2.203 2021-12-21 00:40:37 +00:00
asuessenbach
ce3eb55ada Introduce simple reflection function on vk-structs
Used that to simplify comparison operators.
2021-12-16 14:35:17 +01:00
asuessenbach
cdb64cdefd Generate std::hash specializations into the new file vulkan_hash.hpp, requiring C++14 for std::hash specializations of the vulkan structures. 2021-12-13 17:00:00 +01:00
GitHub
c109b8b2f4 Update Vulkan-Headers to v1.2.202 2021-12-08 00:38:42 +00:00
asuessenbach
6fdeaa8001 Make struct cast operators explicit. 2021-12-07 10:39:23 +01:00
asuessenbach
3515c720fc Introduce support of std::hash for vk-structures. 2021-12-02 23:28:26 +01:00
GitHub
09cc1f69c8 Update Vulkan-Headers to v1.2.201 2021-12-02 00:35:54 +00:00
asuessenbach
5d5182ce70 Introduce a couple of trait functions on vk::Format. 2021-11-29 10:00:19 +01:00
Andreas Süßenbach
a29a6894de
Merge pull request #1149 from KhronosGroup/update-vulkan-headers-pr
Update Vulkan-Headers to v1.2.200
2021-11-24 13:51:36 +01:00
asuessenbach
8e3a52edc0 Filter out to get vkGetInstanceProcAddr in vk::raii::InstanceDispatcher
Since Vulkan 1.2 this can return nullptr!
2021-11-24 08:42:52 +01:00
GitHub
303bdb2238 Update Vulkan-Headers to v1.2.200 2021-11-24 00:36:04 +00:00
asuessenbach
0c311a7589 Adjust comments in ArrayProxy and ArrayProxyNoTemporaries tests. 2021-11-22 15:11:03 +01:00
GitHub
66d80093dc Update Vulkan-Headers to v1.2.199 2021-11-17 00:35:21 +00:00
asuessenbach
a3807fb92b Use VULKAN_HPP_ENABLE_DYNAMIC_LOADER_TOOL with vk::raii::Context
-> vk::raii::Context constructor now either gets
     no argument as before, loading vkGetInstanceProcAddr via an internal DynamicLoader;
     or a PFN_vkGetInstanceProcAddr, using that to fill the dispatcher
+ changed the sample RAII_Samples/RayTracing to work with VULKAN_HPP_ENABLE_DYNAMIC_LOADER_TOOL defined to be zero
+ fixed the missing destructor call in most of the move assignments of the vk::raii classes
2021-11-16 18:07:19 +01:00
asuessenbach
bf73d74aa9 Remove deprecated versions of function PhysicalDevice::enumerateQueueFamilyPerformanceQueryCountersKHR 2021-11-16 13:29:50 +01:00
Andreas Süßenbach
9b94931267
Merge pull request #1137 from asuessenbach/link
Fix wrong linking in copied StructureChains with unlinked elements
2021-11-16 08:40:42 +01:00
asuessenbach
75bf4a0f93 Fix allocator name in generateCommandResultEnumerateChained()
+ correctly format vulkan_structs.hpp
2021-11-15 23:25:42 +01:00
Andreas Süßenbach
323c921a19
Merge pull request #1132 from Saalvage/more-constexpr
More support for constexpr
2021-11-15 17:59:19 +01:00
asuessenbach
5009b39f57 Fix wrong linking in copied StructureChains with unlinked elements 2021-11-15 17:50:18 +01:00
asuessenbach
b5d312187c Add support of functions enumerating chained structure data.
+ slightly reordered error handling in enumerating functions.
2021-11-15 15:05:17 +01:00
Salvage
4017a99055
More constexpr support! 2021-11-12 02:59:37 +01:00
GitHub
7ee89386ba Update Vulkan-Headers to v1.2.198 2021-11-10 00:35:52 +00:00
asuessenbach
0beeac873a Remove dumb parent-pointer in raii-objects. 2021-11-08 17:31:36 +01:00
asuessenbach
533129308a Change m_dispatcher in vk::raii::Context, vk::raii::Instance and vk::raii::Device from member to std::unique_ptr<> 2021-11-04 13:53:43 +01:00
GitHub
4b9b902b59 Update Vulkan-Headers to v1.2.197 2021-11-03 00:34:42 +00:00
Andreas Süßenbach
95fbfbe36d
Merge pull request #1115 from asuessenbach/throw
Change function throwResultException from static to anonymous namespace
2021-10-25 17:57:45 +02:00
asuessenbach
c5218f5a82 Change function throwResultException from static to anonymous namespace 2021-10-25 15:44:42 +02:00
asuessenbach
e725ff31bd Refactor parent member of the vk::raii classes. 2021-10-25 13:37:43 +02:00
asuessenbach
26630f0691 Provide generated vulkan.hpp for #1109 2021-10-25 10:51:37 +02:00
asuessenbach
5a4eceb0ab Introduce factory methods for the RAII handle classes. 2021-10-18 13:42:45 +02:00
GitHub
1144b65e7a Update Vulkan-Headers to v1.2.196 2021-10-14 00:34:01 +00:00
asuessenbach
c3f32b8538 Introduce constructors on nullptr_t for the RAII handle classes. 2021-10-11 17:49:13 +02:00
asuessenbach
dcb654bc0b Minor cleanup work.
+ changed CXX_STANDARD for VulkanHppGenerator from 14 to 17.
2021-10-11 10:20:26 +02:00
asuessenbach
bc942e42da Add 'inline' to static getDispatchLoaderStatic() 2021-10-07 10:22:19 +02:00
asuessenbach
6db58639f8 Add support of functions taking and returning a vector of data 2021-10-06 12:51:26 +02:00
GitHub
a67c40379d Update Vulkan-Headers to v1.2.195 2021-10-06 00:37:42 +00:00
asuessenbach
cc3549ec58 Change 32-bit test in ArrayWrapper1D to using VK_USE_64_BIT_PTR_DEFINES. 2021-10-04 11:08:19 +02:00
GitHub
b88b27ad64 Update Vulkan-Headers to v1.2.194 2021-09-29 00:34:11 +00:00
asuessenbach
11f18e8502 Add "singular" version of functions returning a vector of values and one value, now returning just a pair of values 2021-09-27 15:32:23 +02:00
asuessenbach
992de7d190 Update to VK_HEADER_VERSION 193. 2021-09-22 09:24:36 +02:00
asuessenbach
f3d91d6ca9 Update to VK_HEADER_VERSION 192. 2021-09-16 09:18:47 +02:00
asuessenbach
13bdb2ff69 Introducde getDispatchLoaderStatic() to prevent dangling pointers in debug builds 2021-09-08 13:38:56 +02:00
asuessenbach
dea1345852 Introduce VULKAN_HPP_STATIC_ASSERT. 2021-09-07 13:47:18 +02:00
asuessenbach
8b7852b390 Update to VK_HEADER_VERSION 191 2021-09-07 10:20:55 +02:00
asuessenbach
b563641fa6 Remove constexpr specifier from defaulted struct assignment operators.
Those operators are implicitly declared as constexpr, if they are constexpr-compatible.
2021-09-01 10:02:25 +02:00
asuessenbach
d645cbb056 Introduce NativeType to get the C-type from the corresponding Cpp-type.
This name is defined for Handles, Structures, and Unions.
2021-08-31 14:58:34 +02:00
asuessenbach
303f044d43 Update to VK_HEADER_VERSION 190. 2021-08-30 16:03:05 +02:00
asuessenbach
bc67967db5 Update to VK_HEADER_VERSION 189. 2021-08-30 14:44:47 +02:00
asuessenbach
9d7ade83f2 Minor cleanup work. 2021-08-05 17:28:06 +02:00
asuessenbach
af80b7aee8 Introduce constructors of ArrayProxy and ArrayProxyNoTemporaries from std::span (C++20) 2021-08-05 13:37:49 +02:00
asuessenbach
6bbd64aaa5 Minor cleanup work. 2021-08-04 13:34:08 +02:00
asuessenbach
6e1a3de4d2 Update to VK_HEADER_VERSION 187 2021-08-04 10:45:53 +02:00
asuessenbach
b8476a29af Update to VK_HEADER_VERSION 186. 2021-07-28 08:28:16 +02:00
asuessenbach
3247dce132 Change dispatcher default argument in ObjectDestroy, ObjectFree, ObjectRelease, and PoolFree constructor VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT 2021-07-27 14:33:25 +02:00
asuessenbach
93cfc93fa6 Minor cleanup work. 2021-07-26 11:05:07 +02:00
asuessenbach
5117c83ad9 Add placeholder members to Dispatchers to keep the relative position of other members constant when compiling for different platforms 2021-07-22 12:00:44 +02:00
asuessenbach
4a3c6d024d Gather commands and types per require-block in features and extensions 2021-07-21 17:09:21 +02:00
asuessenbach
b9ee920bbf Update to VK_HEADER_VERSION 185. 2021-07-21 09:13:46 +02:00
Andreas Süßenbach
7255bfef39
Merge pull request #1020 from asuessenbach/versioncheck
Introduce version check in function wrappers
2021-07-21 08:19:23 +02:00
asuessenbach
987bd214e5 Introduce version check in function wrappers
The assertions fire when the dispatcher and the actual function call is compiled with different VK_HEADER_VERSION.
2021-07-20 15:38:54 +02:00
asuessenbach
488780dfd4 Introduce struct hash<vk::Flags<BitType>>
Allows the use of any vk::*Flags type as the key in a std::unordered_map
2021-07-19 12:12:12 +02:00
asuessenbach
4190218813 Minor cleanup work. 2021-07-19 10:37:44 +02:00
asuessenbach
ff6985fd34 Minor cleanup work. 2021-07-11 00:10:25 +02:00
asuessenbach
f2525a2cce Minor cleanup work. 2021-07-08 09:36:02 +02:00
asuessenbach
7a534998ba Improve command name determination of second level commands in RAII handle wrappers. 2021-07-07 09:03:54 +02:00
asuessenbach
98f6375374 Update to VK_HEADER_VERSION 184. 2021-07-06 09:03:42 +02:00