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
asuessenbach
b54860a92b
Add support of attribute "protect" for enum values, third part
2021-06-30 15:10:17 +02:00
asuessenbach
a4bae802d4
Update to VK_HEADER_VERSION 183.
2021-06-29 08:44:03 +02:00
asuessenbach
71e67fa32d
Introduce operator bool() and operator!() on vk::raii handle wrapper classes
...
Only if VULKAN_HPP_RAII_ENABLE_DEFAULT_CONSTRUCTORS is defined, as otherwise those checks are not meaningful.
2021-06-23 11:37:51 +02:00
asuessenbach
9c0c2095d7
Update to VK_HEADER_VERSION 182.
2021-06-22 09:40:12 +02:00
asuessenbach
9fbd3e3552
Introduce VULKAN_HPP_RAII_ENABLE_DEFAULT_CONSTRUCTORS
2021-06-17 17:11:12 +02:00
asuessenbach
74cb47eb82
Split vulkan.hpp into multiple sub-headers
2021-06-14 15:35:34 +02:00
asuessenbach
1c7a24b3b2
Update to VK_HEADER_VERSION 181.
2021-06-14 09:11:42 +02:00
asuessenbach
b0bf764266
Re-arranged handling of FlagBits not listed as required for a Flags.
2021-06-08 11:08:11 +02:00
Andreas Süßenbach
d3888a84f1
Merge pull request #981 from asuessenbach/cleanup
...
Minor cleanup work.
2021-06-07 15:18:58 +02:00
asuessenbach
d795efa30a
Minor cleanup work.
2021-06-07 10:26:00 +02:00
asuessenbach
43e3b2245a
Update to VK_HEADER_VERSION 180.
2021-06-07 09:25:15 +02:00
asuessenbach
f2d623cb7a
Correct postfix tag of some enums.
2021-06-01 19:48:06 +02:00
scribam
189f4ebf1f
Support BSD operating systems
2021-05-31 10:28:16 +02:00
asuessenbach
47af02da37
Correct enum values for some video decode enums.
2021-05-28 19:56:12 +02:00
asuessenbach
4019ef40a5
Cleanup on usage of generateProtection().
2021-05-27 11:08:04 +02:00
asuessenbach
d0fa2d4247
Reorder member functions by features and extensions.
2021-05-26 09:59:30 +02:00
Andreas Süßenbach
4333c04bdd
Merge pull request #969 from asuessenbach/noexcept
...
Make move-constructors and move-assignment operators of vk::raii handle classes noexcept.
2021-05-26 08:26:28 +02:00
asuessenbach
7debcfa416
Make move-constructors and move-assignment operators of vk::raii handle classes noexcept.
2021-05-25 15:40:26 +02:00
asuessenbach
cdce3140cd
Update to VK_HEADER_VERSION 179.
2021-05-25 14:18:48 +02:00
asuessenbach
35ce74025c
Update to VK_HEADER_VERSION 178.
2021-05-11 09:15:45 +02:00
asuessenbach
7e0c9d16e8
Reorder bitmasks by features and extensions.
2021-05-03 09:22:47 +02:00
asuessenbach
9450883e0e
Reorder enums by features and extensions.
2021-04-29 16:23:21 +02:00
Andreas Süßenbach
acb75fe9dc
Merge pull request #951 from asuessenbach/sort
...
Correct sorting extensions by number
2021-04-29 08:05:15 +02:00
asuessenbach
7492af0630
Correct sorting extensions by number
2021-04-28 15:43:41 +02:00
asuessenbach
59165f1383
Simplified handling of alias commands
2021-04-28 13:35:14 +02:00
asuessenbach
e47c3c8b84
Reorder commands in DispatchLoaderStatic.
2021-04-28 08:17:11 +02:00
asuessenbach
89df7a1a7b
Add check on structures never listed as required in any feature or extension.
2021-04-27 09:06:55 +02:00
asuessenbach
8de126f0f7
Update to VK_HEADER_VERSION 177
2021-04-26 10:10:41 +02:00
asuessenbach
ab15e49b00
Relax check on mutual exclusive arrays as part of a structure to allow all empty as well.
2021-04-22 10:47:26 +02:00
asuessenbach
d58fa53496
Introduce vk::raii::InstanceDispatcher and vk::raii::DeviceDispatcher
2021-04-21 15:31:48 +02:00
asuessenbach
72284f4c71
Update to VK_HEADER_VERSION 176.
2021-04-19 09:29:52 +02:00
asuessenbach
af54ea22a8
Update to VK_HEADER_VERSION 175.
2021-04-15 15:40:22 +02:00
asuessenbach
d9bb97d9ec
Correct enum values for AccessFlagBits2KHR and PipelineStageFlagBits2KHR.
...
All those values erroneously started with "e2", instead of just "e".
2021-04-13 12:25:10 +02:00
Andreas Süßenbach
36635b899c
Merge pull request #932 from asuessenbach/asTuple
...
Add missing ResultValue<std::vector<UniqueHandle<Type, Dispatch>>>::asTuple()
2021-04-13 08:25:24 +02:00
asuessenbach
7f01d662de
Replace dispatcher in vk::rai::Context by helper class vk::raii::ContextDispatcher
2021-04-12 16:17:22 +02:00
asuessenbach
e7805795e1
Add missing ResultValue<std::vector<UniqueHandle<Type, Dispatch>>>::asTuple()
2021-04-12 16:03:50 +02:00
asuessenbach
ae49faf6b8
Allow older version of clang-format.
2021-03-30 13:39:15 +02:00
asuessenbach
3b04005776
Update to VK_HEADER_VERSION 174.
2021-03-30 10:48:34 +02:00
asuessenbach
d55facfd9e
Update to VK_HEADER_VERSION 173.
2021-03-22 09:53:35 +01:00
asuessenbach
d973957ab5
Add assertion on valid function pointer for functions depending on extensions.
2021-03-16 10:09:05 +01:00
asuessenbach
3a776dd1d8
Update to VK_HEADER_VERSION 172.
2021-03-09 09:13:32 +01:00
Andreas Süßenbach
1db86d0204
Merge pull request #898 from asuessenbach/inline
...
Add missing VULKAN_HPP_INLINE to function definitions
2021-03-03 08:21:18 +01:00
asuessenbach
f06419b905
Add missing VULKAN_HPP_INLINE to function definitions
2021-03-02 13:51:22 +01:00
asuessenbach
6121475ba1
Introduce support of "encode" and "decode" for attribute <queues> of a command
...
+ improved formatting of bitmasks and enums
2021-03-02 12:23:50 +01:00
asuessenbach
5c33370234
Update to VK_HEADER_VERSION 171
2021-03-02 09:06:31 +01:00
asuessenbach
c376dff68c
Add placeholder dummy function pointers in DispatchLoaderDynamic for not defined platforms.
...
- Prevents function offset differences in case of (erroneous) different definitions of platform in different translation units.
Resolves #887
2021-03-01 12:30:23 +01:00
asuessenbach
2cb1c19c7f
Introduce raii-compliant handle wrapper classes.
2021-02-22 16:19:12 +01:00
asuessenbach
9d6d783372
Update to VK_HEADER_VERSION 170.
2021-02-16 09:55:19 +01:00
asuessenbach
a86b568866
Add some missing "VULKAN_HPP_NAMESPACE::".
2021-02-10 10:50:44 +01:00
asuessenbach
5576841441
Changed defaults for ArrayProxy arguments from VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT to VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT.
2021-02-09 11:42:23 +01:00
asuessenbach
450f8d88bd
Update to VK_HEADER_VERSION 169.
2021-02-03 08:22:24 +01:00
asuessenbach
fe73611127
Update to VK_HEADER_VERSION 168.
2021-01-26 08:47:17 +01:00
asuessenbach
3c7123f506
Add platform protection on enum value level.
2021-01-25 19:52:54 +01:00
asuessenbach
8a21c2e0eb
Fix function StructureChain::unlink().
2021-01-21 16:56:14 +01:00
asuessenbach
40dbf184fc
Update to VK_HEADER_VERSION 167.
2021-01-21 09:43:44 +01:00
asuessenbach
2e2782448c
Introduce new function StructureChain::isLinked<>()
2021-01-20 14:09:52 +01:00
Andreas Süßenbach
b9ec269ab2
Merge pull request #845 from mtavenrath/fix_warnings
...
Fix compiler warnings on gcc/clang
2021-01-19 08:38:45 +01:00
Markus Tavenrath
160dc916f9
Change structure member sType to non-const to allow default assignment operator. Make copy constructor and copy assignment default. The latter is required for C++20 designated initializers. Delegate the constructor from C-type to the copy constructor by casting rhs accordingly. Fix warnings on gcc/clang.
2021-01-18 12:25:50 +01:00
Andreas Süßenbach
92c91a9f46
Merge pull request #853 from asuessenbach/StorageAPI
...
Guard definition of VULKAN_HPP_STORAGE_API by an if !defined(); extend internal support to gcc and clang.
2021-01-18 11:30:00 +01:00
asuessenbach
376dd7aff3
Guard definition of VULKAN_HPP_STORAGE_API by an if !defined(); extend internal support to gcc and clang.
...
+ mention that define in the README.md
2021-01-14 14:32:01 +01:00
asuessenbach
dcc775eb53
Make ArrayProxyNoTemporaries complete by marking all constructors getting rvalue references as deleted.
2021-01-14 11:49:35 +01:00
asuessenbach
983c8795e6
Introduce configuration flag VULKAN_HPP_FLAGS_MASK_TYPE_AS_PUBLIC.
2021-01-12 10:04:13 +01:00
asuessenbach
5defbab14b
Update to VK_HEADER_VERSION 166.
2021-01-04 10:06:24 +01:00
asuessenbach
45e06d1753
Special handling for detecting mutual exclusive len usage on structures.
2020-12-14 16:18:23 +01:00
asuessenbach
a0f6203570
Update to VK_HEADER_VERSION 165
2020-12-14 13:26:02 +01:00
asuessenbach
4bc8906990
Make structure information "obsolete" a vector of bool.
...
+ remove an obsolete assertion
2020-12-10 11:12:55 +01:00
asuessenbach
fad90eadf6
Update to VK_HEADER_VERSION 164.
2020-12-08 10:28:51 +01:00
asuessenbach
696206b0aa
Remove obsolete helper object ObjectReleaseExt.
2020-12-07 14:32:20 +01:00
asuessenbach
de79787457
Fix issue on name construction for objtypeenum attribute
2020-12-07 09:26:48 +01:00
asuessenbach
40bc006527
Update to VK_HEADER_VERSION 163.
2020-12-01 10:09:03 +01:00
asuessenbach
8d8436cc51
Update to VK_HEADER_VERSION 162.
2020-11-23 09:46:41 +01:00
asuessenbach
28422de041
Introduce VULKAN_HPP_NO_SPACESHIP_OPERATOR to disable operator<=>() for all structs and classes.
2020-11-17 15:31:13 +01:00
asuessenbach
04b4e5a077
Update to VK_HEADER_VERSION 161.
...
+ changed two now outdated warnings into error checks
+ removed VS2019 builds for now due to an internal compiler error!
2020-11-16 14:53:05 +01:00
Andreas Süßenbach
009e56beb1
Merge pull request #820 from asuessenbach/160
...
Update to VK_HEADER_VERSION 160.
2020-11-09 13:39:31 +01:00
asuessenbach
6b2c310cf8
Update to VK_HEADER_VERSION 160.
2020-11-09 10:04:02 +01:00
asuessenbach
e159e685d4
Add missing const-qualifier in the static_cast in function T const & StructureChain::getFeatures2() const.
2020-11-09 09:55:45 +01:00