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
8a921fc90c
Explicitly mark a call to std::system() as void.
2022-03-14 10:56:20 +01:00
asuessenbach
2148249e0f
Minor cleanup work in command generation.
2022-03-10 17:41:47 +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
Andreas Süßenbach
d493aa4ab6
Merge pull request #1234 from theHamsta/fix-warnings
...
chore(warnings): fix warnings about unused variables in Release mode
2022-03-08 13:57:29 +01:00
Stephan Seitz
c747ca4588
chore(warnings): fix warnings about unused variables in Release mode
...
```
/home/stephan/projects/Vulkan-Hpp/VulkanHppGenerator.cpp:9105:12: error: unused variable 'constructorCommandIt' [-Werror,-Wunused-variable]
auto constructorCommandIt = m_commands.find( handle.second.constructorIts.front()->first );
^
/home/stephan/projects/Vulkan-Hpp/VulkanHppGenerator.cpp:9732:12: error: unused variable 'handleIt' [-Werror,-Wunused-variable]
auto handleIt = m_handles.find( "Vk" + parentType );
```
2022-03-08 11:46:03 +01:00
asuessenbach
7be761b203
Add template parameter support to generateCommandVoidGetChain.
2022-03-08 09:11:11 +01:00
asuessenbach
04cca4cfbc
Add template parameter support to generateCommandVoidGetValue.
2022-03-07 12:19:32 +01:00
asuessenbach
02cd5ee1c9
Combine two types of commands into one generation function.
2022-03-02 17:57:36 +01:00
asuessenbach
ffead3984d
Add some support of attribute "altlen" on command parameters.
2022-03-02 09:51:12 +01:00
asuessenbach
eb9aa3d948
Add support of functions getting a pointer to void.
2022-03-01 09:21:33 +01:00
asuessenbach
5fe410279a
Change ColumnLimit with clang-format from 120 to 160.
2022-02-28 10:11:04 +01:00
asuessenbach
85510bf12c
Combine two types of commands into one generation function.
2022-02-24 09:09:45 +01:00
asuessenbach
fe8fad5d96
Combine two types of commands into one generation function.
2022-02-23 08:31:36 +01:00
asuessenbach
7f58864c78
Combine two types of command into one generation function.
2022-02-22 10:03:17 +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
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
asuessenbach
6f2dd058a0
Unified generation of a special type of commands.
...
Commands returning a VkResult with one or more error codes specified, getting no non-const pointer and zero or more vectors are combined into one function, no matter if it is specified to have one or more success codes.
2022-02-09 09:27:30 +01:00
asuessenbach
c25e890527
Remove support of all functions marked as deprecated.
2022-02-07 10:09:46 +01: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
Andreas Süßenbach
bac1a58f80
Merge pull request #1188 from asuessenbach/function
...
Generalize command generation for a specific type of commands
2022-02-02 15:34:40 +01:00
Andreas Süßenbach
5156ca24af
Merge pull request #1186 from sugoi1/master
...
Fix 'missing braces around initializer' warnings in vulkan_enums.hpp
2022-02-02 12:11:04 +01:00
asuessenbach
4ebd8a8b2c
Generalize command generation for a specific type of commands
...
Commands returning some value (not a VkResult), that get no non-const pointers, no input vectors, but zero or more const-pointers of any type are generalized into one function.
2022-02-02 10:46:38 +01:00
sugoi1
4ecb073416
Update VulkanHppGenerator.cpp
2022-01-28 11:06:17 -05:00
asuessenbach
7e1161da9b
Generalize command generation for a specific type of commands
...
Commands returning void, that are supposed to enumerate one vector of data is generalized to also support void-data by a templated type.
2022-01-26 14:24:06 +01: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
b643095d78
Generalize command generation for a specific type of commands
...
Commands returning a VkResult, with a single success code 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-19 08:45:28 +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
192bf5f3ed
Generalize command generation for a specific type of commands
...
Commands returning a VkResult with a single success- and multiple error codes, that get no non-const pointers and no vectors, and any number of const pointers is generalized to support const void pointer as well, replacing those arguments by const& on a templated type.
2022-01-11 09:45:35 +01:00
asuessenbach
6cbe0ba5e2
Generalize command generation for a specific type of commands
...
Commands returning a VkResult with a single success- and multiple error codes, that get no non-const pointers and no vectors, just one const pointer is generalized to support a const void pointer as well, replacing that argument to a const& on a templated type.
2022-01-10 11:50:11 +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
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
asuessenbach
78379f769d
Check for correct formats specifications only if formats are specified.
2021-12-08 08:42:04 +01:00
asuessenbach
6fdeaa8001
Make struct cast operators explicit.
2021-12-07 10:39:23 +01:00
asuessenbach
55651f5120
Downgrade <formats> tag from required to optional.
2021-12-06 17:18:42 +01:00
asuessenbach
3515c720fc
Introduce support of std::hash for vk-structures.
2021-12-02 23:28:26 +01:00
asuessenbach
e9b463000e
Enable check on planeIndex in format components
2021-12-02 12:27:34 +01:00
asuessenbach
5d5182ce70
Introduce a couple of trait functions on vk::Format.
2021-11-29 10:00:19 +01:00
asuessenbach
3abe5cb0df
Extended checks on VkFormat.
2021-11-25 10:23:19 +01:00
Andreas Süßenbach
736b33c650
Merge pull request #1150 from asuessenbach/fix
...
Filter out to get vkGetInstanceProcAddr in vk::raii::InstanceDispatcher
2021-11-24 12:25:42 +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
asuessenbach
976debbd80
Add support for new elements <formats> in vk.xml.
2021-11-23 13:23:14 +01:00
asuessenbach
0c311a7589
Adjust comments in ArrayProxy and ArrayProxyNoTemporaries tests.
2021-11-22 15:11:03 +01:00
Niels Möller
f500c42658
Generalize ArrayProxy and ArrayProxyNoTemporaries constructors
...
Add new constructors that accept any vector-like type (with
compatible .data() and .size() methods). Replaces the more specific
constructors accepting std::array, std::vector and std::span.
2021-11-17 14:26:17 +01: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
6d5e90ec59
Merge pull request #1140 from asuessenbach/fix
...
Fix vector constructor argument in generateCommandResultEnumerateChained()
2021-11-16 11:46:08 +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
bb7e7b3089
Fix vector constructor argument in generateCommandResultEnumerateChained()
2021-11-16 08:38:51 +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
asuessenbach
e5f9ef470e
Minor cleanup work.
2021-11-11 16:00:22 +01:00
Andreas Süßenbach
f352a3efd8
Merge pull request #1128 from asuessenbach/version
...
Check for "VK_API_VERSION_m_n" or "VK_VERSION_m_n" in SPIRVCapabilities and SPIRVExtensions
2021-11-09 11:04:29 +01:00
asuessenbach
08bbbe892f
Check for "VK_API_VERSION_m_n" or "VK_VERSION_m_n" in SPIRVCapabilities and SPIRVExtensions
2021-11-09 08:57:08 +01:00
asuessenbach
2a55e8ef2f
Minor cleanup work.
2021-11-09 08:40:53 +01: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
asuessenbach
c2a3cfad1a
Extend enum type search in readEnums.
2021-11-02 18:55:43 +01:00
asuessenbach
c7838676bd
Minor cleanup work.
2021-11-02 09:31:32 +01: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
Andreas Süßenbach
7361d443a3
Merge pull request #1109 from dneto0/dont-crash-gipa
...
Don't overwrite vkGetInstanceProcAddress
2021-10-25 10:47:48 +02:00
asuessenbach
714b953e51
Minor cleanup work.
2021-10-25 09:30:04 +02:00
David Neto
935e5e68fa
Don't overwrite vkGetInstanceProcAddress
...
The vk::DispatchLoaderDynamic::init(vk::VkInstance) method should note
use vkGetInstanceProcAddr to overwrite vkGetInstanceProcAddr itself.
vkGetInstanceProcAddr( a_valid_instance, "vkGetInstanceProcAddr" ) is
required to return NULL.
Fixes: 1108
2021-10-22 04:03:31 -04:00
asuessenbach
5a4eceb0ab
Introduce factory methods for the RAII handle classes.
2021-10-18 13:42:45 +02:00
asuessenbach
7645e4eb82
Minor cleanup work.
2021-10-18 10:35:17 +02:00
asuessenbach
8d23f0ed8c
Fix handling of "void *" in generateCommandResultGetValue
2021-10-14 13:44:44 +02: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
Andreas Süßenbach
0799e35086
Merge pull request #1093 from asuessenbach/disabled
...
Improve handling of disabled extensions.
2021-10-06 15:30:03 +02:00
asuessenbach
fadacdf87b
Improve handling of disabled extensions.
2021-10-06 14:00:40 +02:00
asuessenbach
6db58639f8
Add support of functions taking and returning a vector of data
2021-10-06 12:51:26 +02:00
Andreas Süßenbach
b4db8a9d5a
Merge pull request #1089 from asuessenbach/cleanup
...
Some more code cleanup
2021-10-04 13:57:52 +02:00
asuessenbach
0122305ce8
Some more code cleanup
2021-10-04 12:10:04 +02: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
asuessenbach
3fdf58cd5f
Minor cleanup work.
2021-10-04 09:34:57 +02: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
f555afeac6
Refactor command generation of RAII handles.
2021-09-27 11:30:20 +02:00
asuessenbach
62ee069886
Minor cleanup work.
2021-09-23 14:00:07 +02:00
asuessenbach
80acc02777
Refactor command generation.
2021-09-22 17:25:22 +02:00
asuessenbach
4e055c376d
Move argument type check of func pointers to final check.
2021-09-21 14:20:24 +02:00