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
asuessenbach
b39d6aa44d
Refactor RAII-handle constructor generation.
2021-09-21 08:36:04 +02:00
asuessenbach
65e9dd2e3c
Minor cleanup work.
2021-09-18 22:55:31 +02:00
asuessenbach
025a4f5751
Remove wrong 'typename' from commands returning two values.
2021-09-14 17:47:39 +02:00
asuessenbach
dd1855a820
Add support for commands returning two values.
2021-09-14 15:38:35 +02:00
asuessenbach
f17ff86a97
Remove restriction on get-commands to start with 'vkGet'
2021-09-14 08:37:27 +02:00
asuessenbach
48d6492647
Minor cleanup work.
2021-09-13 14:49:02 +02:00
asuessenbach
1415ec96d9
Removed check on missing enum values as selections of a union, which is allowed.
2021-09-13 09:51:14 +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
c13b8f56bf
Refactor commands generation.
2021-09-06 14:38:17 +02:00
asuessenbach
de750926dd
Downgrade attribute "extends" of enum alias elements from required to optional.
2021-09-06 09:18:28 +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
c71b0e5100
Fix extension name used to protect types.
2021-08-31 11:57:48 +02:00
asuessenbach
2c982ce501
Fix extension name used to check consistency of enum values.
2021-08-31 10:36:53 +02:00
asuessenbach
303f044d43
Update to VK_HEADER_VERSION 190.
2021-08-30 16:03:05 +02:00
Andreas Süßenbach
7f0f77749d
Merge pull request #1048 from asuessenbach/build
...
Resolve two release build issues.
2021-08-09 13:51:31 +02:00
Andreas Süßenbach
07a99a0d67
Merge pull request #1047 from asuessenbach/altlen
...
Use "altlen" attribute instead of "len", if present.
2021-08-09 11:58:35 +02:00
asuessenbach
03bf775566
Resolve two release build issues.
2021-08-09 11:39:35 +02:00
asuessenbach
e03d7d093d
Use "altlen" attribute instead of "len", if present.
2021-08-09 11:02:35 +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
584e7115e8
Rearrange handling of struct aliases.
2021-08-05 09:21:55 +02:00
asuessenbach
5532ac3b67
move checks on StructureAliases before checks on Structures.
2021-08-04 17:17:27 +02:00
asuessenbach
35a43611f8
Improved some checks on structures/aliases
2021-08-04 15:28:59 +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
5066b7b488
Minor cleanup work.
2021-08-02 10:17:22 +02:00
asuessenbach
9bd672bc89
Minor cleanup work.
2021-07-29 16:29:53 +02:00
asuessenbach
6f067eecac
Filter constructors for unions with multiple elements of the same type.
2021-07-28 09:13:25 +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
c3da5fa53d
Add check for BitFlags that are required by a Flags bitmask but not listed with any feature or extension.
2021-07-27 10:07:02 +02:00
asuessenbach
e014778535
Add support for functions returning two values, with multiple succes codes
2021-07-26 14:51:10 +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
c9955dc16f
Correct platform check on required extensions.
2021-07-21 11:49:04 +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
a790cfecf2
Minor cleanup work.
2021-07-08 17:30:53 +02:00
asuessenbach
f2525a2cce
Minor cleanup work.
2021-07-08 09:36:02 +02:00
asuessenbach
0bdb0cdcab
Make functions returning a single value of type void (getting a void* as argument) a templated function.
2021-07-07 10:36:13 +02:00
asuessenbach
7a534998ba
Improve command name determination of second level commands in RAII handle wrappers.
2021-07-07 09:03:54 +02:00
Andreas Süßenbach
793f70dbad
Merge pull request #1010 from hannes-harnisch/master
...
Adding configuration option to disable struct/union setters and union constructors
2021-07-06 14:25:51 +02:00
Hannes Harnisch
9df9d582f5
Adding ifdefs for NO_STRUCT_SETTERS
2021-07-05 16:14:43 +02:00
asuessenbach
6d1d53c857
Minor cleanup work.
2021-07-05 09:29:12 +02:00
asuessenbach
b54860a92b
Add support of attribute "protect" for enum values, third part
2021-06-30 15:10:17 +02:00
asuessenbach
3b46f5c497
Add support of attribute "protect" for enum values, second part
2021-06-30 11:14:15 +02:00
Andreas Süßenbach
4dcc1f06b4
Merge pull request #1006 from asuessenbach/protect
...
Add support of attribute "protect" for enum values.
2021-06-30 10:50:32 +02:00
asuessenbach
7e37cfb5d7
Add support of attribute "protect" for enum values.
2021-06-30 09:58:58 +02:00
asuessenbach
5c3e410592
Add prefix and postfix support for basetype.
2021-06-30 08:56:05 +02:00
asuessenbach
d486ccccf1
Minor cleanup work
2021-06-28 09:26:42 +02:00
asuessenbach
6fa59ce5af
Improve handling of struct members of type pointer-to-pointer-to-something
2021-06-24 14:24:49 +02:00
asuessenbach
00485f94bf
Improve filtering of aliases of enum values that map to the very same vk:: enum value.
2021-06-24 11:09:49 +02:00
asuessenbach
45bad15ee5
Generalize check on enum alias chaining.
2021-06-23 17:15:33 +02:00
Andreas Süßenbach
f7c7f821a4
Merge pull request #996 from asuessenbach/bool
...
Introduce operator bool() and operator!() on vk::raii handle wrapper classes
2021-06-23 13:21:53 +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
e05bea9f13
Add support of attribute "values" for struct members of type uint32_t.
2021-06-23 10:59:55 +02:00
Andreas Süßenbach
da2ecae452
Merge pull request #993 from asuessenbach/structureAlias
...
Move check on structureAlias from reading to final correctness check.
2021-06-22 11:49:45 +02:00
asuessenbach
cb87348898
Move check on structureAlias from reading to final correctness check.
2021-06-22 10:15:24 +02:00
asuessenbach
9c0c2095d7
Update to VK_HEADER_VERSION 182.
2021-06-22 09:40:12 +02:00
asuessenbach
de9688cce6
Minor cleanup work.
2021-06-21 09:29:48 +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
1ad4a23234
Minor cleanup work
2021-06-14 09:26:26 +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
Andreas Süßenbach
f5307046ae
Merge pull request #976 from asuessenbach/check
...
Turn an assertion on identifying a command into a check.
2021-06-01 08:13:20 +02:00
asuessenbach
5834d61145
Turn an assertion on identifying a command into a check.
...
+ some minor cleanup work.
2021-05-31 18:12:24 +02:00
asuessenbach
54b363320a
Adjustments in AppVeyor build.
2021-05-31 17:46:07 +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
7316e08630
Filter (implicitly) required "FlagBits"-enums that are explicitly listed later on in an extension.
2021-05-25 17:54:51 +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
Simon Zeni
b88ab0ef37
Add vkGetDrmDisplayEXT to the list of function deleted by ObjectRelease
2021-05-25 11:29:23 +02:00
asuessenbach
35ce74025c
Update to VK_HEADER_VERSION 178.
2021-05-11 09:15:45 +02:00
asuessenbach
3922b25e9f
Add check for multiple listing of types in a feature.
2021-05-06 10:41:57 +02:00
asuessenbach
6fef0916b4
Add some detail for a specific suspect case of not supported creation functions.
2021-05-05 13:51:32 +02:00
asuessenbach
183d08fed7
Add check on commands that do not return a VkResult, but specify errorcodes or successcodes.
2021-05-05 09:28:00 +02:00
asuessenbach
e370ab5178
Move check on known enum alias value from readEnum to final checkCorrectness.
2021-05-04 17:08:24 +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
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
6a72c6f43a
Correct data type in singular version of one generated function flavor.
2021-04-20 09:02:59 +02:00
asuessenbach
aca79e075d
Refactor command generation logic.
2021-04-19 15:57:23 +02:00
asuessenbach
11b851dc20
Correct capitalization of allocateInitializer used in vector-returning functions with provided allocator.
2021-04-19 10:03:58 +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
bd7a3e8ab7
Merge pull request #933 from rosasco-wk/master
...
Add Fuchsia platform defines
2021-04-13 08:31:33 +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
John Rosasco
d790fb8c76
Add std::move to createResult
2021-04-12 11:40:41 -07:00
John Rosasco
188329cc4f
Add Fuchsia platform defines
2021-04-12 11:27:39 -07: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
352dfbf430
Add support for functions with a new parameter pattern.
2021-04-12 12:38:04 +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
Andreas Süßenbach
026e07639f
Merge pull request #923 from asuessenbach/type
...
Add "type" as an optional attribute for enums.
2021-03-29 16:52:36 +02:00
asuessenbach
9f930fe2fd
Add "type" as an optional attribute for enums.
2021-03-29 10:27:09 +02:00
asuessenbach
5e2edc10e0
Reduce parents of a handle from a vector to a single element
2021-03-29 10:11:19 +02:00
asuessenbach
4d806569ab
Remove an outdated check.
2021-03-22 12:51:12 +01:00
asuessenbach
afb0adce5b
Add support of define VK_USE_64_BIT_PTR_DEFINES.
2021-03-22 09:38:14 +01:00
asuessenbach
d973957ab5
Add assertion on valid function pointer for functions depending on extensions.
2021-03-16 10:09:05 +01:00
asuessenbach
7cae06b5bc
Introduce support of a function with multiple success codes, returning two values, and non-zero error codes.
2021-03-10 17:03:47 +01:00
Andreas Süßenbach
dbe01543d6
Merge pull request #906 from asuessenbach/relax
...
Relax an assertion.
2021-03-10 15:43:08 +01:00
asuessenbach
3cc1aae3f8
Relax an assertion.
2021-03-10 12:34:47 +01:00
asuessenbach
dd9664b6a9
Reshaped check on mutually exclusive arrays in structs.
2021-03-10 09:48:20 +01:00
Yiwei Zhang
238093f1c6
Fix enum array initializer using enum constant
2021-03-09 10:12:24 +00:00
asuessenbach
7318a091be
Make attribute provisional="true" imply attribute platform="provisional"
2021-03-03 08:47:05 +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
Andreas Süßenbach
e7bec052db
Merge pull request #890 from mgorchak-blackberry/master
...
Add support for QNX.
2021-02-26 18:48:49 +01:00
Mike Gorchak
15f591fada
Add support for QNX.
2021-02-24 11:47:19 -05:00
asuessenbach
7888f82bda
Add support for functions getting a value and returning a VkBool32.
2021-02-24 15:47:30 +01:00
asuessenbach
2cb1c19c7f
Introduce raii-compliant handle wrapper classes.
2021-02-22 16:19:12 +01:00
asuessenbach
14651d6d73
Change an assertion into an error check.
2021-02-22 14:00:51 +01:00
asuessenbach
0441b87c6c
Add support for bitmask attribute "bitvalues" and enum attribute "bitwidth".
2021-02-10 13:47:13 +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
3c7123f506
Add platform protection on enum value level.
2021-01-25 19:52:54 +01:00
asuessenbach
db7e75bf06
Remove error checks on unknown enums for disabled extensions.
2021-01-21 22:33:36 +01:00
Andreas Süßenbach
d421b3fbf6
Merge pull request #863 from asuessenbach/command
...
Add support for functions getting two values with more than one allowed success code.
2021-01-21 22:11:17 +01:00
asuessenbach
0d9f2fb882
Add support for functions getting two values with more than one allowed success code.
2021-01-21 18:11:51 +01:00
asuessenbach
8a21c2e0eb
Fix function StructureChain::unlink().
2021-01-21 16:56:14 +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
6021a83770
Merge pull request #855 from tomilov/fix-werror
...
[linux][warnings] Fix -Werror=unused-but-set-variable on GCC 10.2, Linux
2021-01-18 12:07:03 +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
Anatoliy Tomilov
c45058764e
[linux][warnings] Fix -Werror=unused-but-set-variable on GCC 10.2, Linux
...
Variable definition moved into a block where it is conditionally used.
2021-01-15 07:29:00 +05: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
6e86de19ab
Remove error checks on unknown types and commands for disabled extensions.
2021-01-06 12:35:56 +01:00
asuessenbach
e5be32f093
Fix construction of implicit function argument from class member.
2020-12-17 11:21:51 +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
Markus Tavenrath
301bbf08dd
Add special handling for new VK_NV_acquire_winrt_display extension
2020-12-04 23:57:48 +01:00
asuessenbach
40bc006527
Update to VK_HEADER_VERSION 163.
2020-12-01 10:09:03 +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
96fe7ed2c6
Fixed a typo in functions enumerating chained structures.
2020-11-17 11:57:50 +01:00
asuessenbach
16ace53e02
Add support for functions that enumerate chained structures.
2020-11-17 09:51:55 +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
asuessenbach
06c708fc24
Removed an outdated assertion.
2020-11-12 16:42:38 +01:00
asuessenbach
eb9370922b
Replace check on (deprecated) VkDebugReportObjectTypeEXT enum values with check on VkObjectType values.
2020-11-10 10:26:05 +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
asuessenbach
864d1854fc
Cleanup on call arguments construction.
2020-11-04 10:26:39 +01:00
Andreas Süßenbach
a5b62787fe
Merge pull request #815 from asuessenbach/159
...
Update to VK_HEADER_VERSION 159.
2020-11-02 17:15:18 +01:00
asuessenbach
8a53e8da06
Update to VK_HEADER_VERSION 159.
2020-11-02 15:15:35 +01:00
asuessenbach
2a700aaa74
Removed default arguments from standard versions of functions, and the shortened function versions of destroy* and free*
...
This is needed to prevent compiler ambiguities!
2020-11-02 11:51:07 +01:00
Andreas Süßenbach
9003d5fc18
Merge pull request #810 from asuessenbach/constVectorIndirect
...
Adding support for functions with a const pointer input with its len specified by a structure member.
2020-10-29 17:37:10 +01:00
asuessenbach
50cc580941
Adding support for functions with a const pointer input with its len specified by a structure member.
2020-10-28 10:18:05 +01:00
Krzysztof Kurek
0eb17d3f86
Default Flags' copy functions
...
User-provided copy constructor and copy assignment operators prevent the class' ABI from being trivial.
2020-10-27 22:09:14 +01:00
Andreas Süßenbach
cf92bfea25
Merge pull request #807 from asuessenbach/toHexString
...
Introduce helper function toHexString used in to_string functions on invalid values.
2020-10-27 12:30:27 +01:00
asuessenbach
987d6a4d98
Final cleanup on command generation refactoring.
2020-10-26 16:16:48 +01:00
asuessenbach
244a096d77
Introduce helper function toHexString used in to_string functions on invalid values.
2020-10-26 10:58:50 +01:00
asuessenbach
e4f8003dbd
Refactor commands handling pointers to alien data types
...
+ some dead code elimination
2020-10-25 22:00:53 +01:00
asuessenbach
e973e585c7
Refactor commands enumerating a vector of chained structures.
2020-10-23 22:10:33 +02:00
asuessenbach
1a7e754609
Correct size and pointer arguments for singular versions of a command
2020-10-22 13:27:02 +02:00
Andreas Süßenbach
62a9e28264
Merge pull request #799 from asuessenbach/ArrayProxy
...
Stop mapping const pointer command arguments with indirect len specifiation to ArrayProxy.
2020-10-22 10:20:08 +02:00
asuessenbach
c48441d223
Stop mapping const pointer command arguments with indirect len specifiation to ArrayProxy.
2020-10-22 09:36:45 +02:00
asuessenbach
243e0fa7aa
Refactor commands getting a pointer to a IDirectFB.
2020-10-21 23:12:54 +02:00
asuessenbach
5168ba6a11
Refactor command that returns a vector of data and potentially gets vector(s) of data as input.
2020-10-21 16:25:12 +02:00
Andreas Süßenbach
ede635596c
Merge pull request #794 from asuessenbach/refactor
...
Refactor commands that enumerate handles (no unique versions)
2020-10-21 13:35:13 +02:00
asuessenbach
dc4777a206
Refactor commands that enumerate handles (no unique versions)
2020-10-21 10:14:51 +02:00
xantares
2cb33d744a
Fix T & ArrayWrapper1D::operator[](int index)
...
With MinGW I get the following error, because constexpr clashes with const:
vulkan.hpp:544:30: error: ‘constexpr T& vk::ArrayWrapper1D<T, N>::operator const’
cannot be overloaded with ‘constexpr const T& vk::ArrayWrapper1D<T, N>::operator const’
544 | VULKAN_HPP_CONSTEXPR T & operator[](int index) VULKAN_HPP_NOEXCEPT
2020-10-21 09:11:26 +02:00
Andreas Süßenbach
ffafec88ca
Merge pull request #790 from asuessenbach/refactor
...
Refactor commands that enumerate some oqaque data behind a void pointer.
2020-10-21 08:47:52 +02:00
Andreas Süßenbach
3dce283fa7
Merge pull request #789 from asuessenbach/StructureChain
...
Introduce default template type for functions StructureChain::get<T,Which>
2020-10-21 08:47:26 +02:00
asuessenbach
1da76e4b4a
Refactor commands that enumerate some oqaque data behind a void pointer.
2020-10-20 23:30:53 +02:00
Andreas Süßenbach
55a27c7dfa
Merge pull request #787 from asuessenbach/refactor
...
Refactor commands enumerating some non-handle, non-StructureChain data type.
2020-10-20 23:03:37 +02:00
asuessenbach
80fa34bfb5
Introduce default template type for functions StructureChain::get<T,Which>
...
allows
auto root = structureChain.get();
instead of
auto root = structureChain.get<RootStructure>();
2020-10-20 15:47:57 +02:00
asuessenbach
75ce35813d
Refactor commands enumerating some non-handle, non-StructureChain data type.
2020-10-20 14:24:39 +02:00
asuessenbach
2e95313c1d
fix some warnings (errors) on release build.
2020-10-20 10:05:18 +02:00
Andreas Süßenbach
32c994335a
Merge pull request #783 from asuessenbach/refactor
...
Refactor commands that get a handle which has no create or destroy function.
2020-10-20 09:26:21 +02:00
Andreas Süßenbach
9bea192d1a
Merge pull request #782 from dj2/build
...
Fixup build errors.
2020-10-19 23:19:29 +02:00
asuessenbach
53fe4d445f
Refactor commands that get a handle which has no create or destroy function.
2020-10-19 23:13:57 +02:00
dan sinclair
2b7f7c32ef
fix non-release build
2020-10-19 12:03:49 -04:00
dan sinclair
88e0bc07f7
Fixup build errors.
...
When building in Release mode there are several build errors due to use
`-Wall -Werror` and having undefined variables. This CL wraps the
various variables which are only used in `assert` calls to be behind
`#if !defined(NDEBUG)` preprocessor checks.
2020-10-19 11:59:16 -04:00
asuessenbach
57de549b73
Refactor commands returning some value with no enhancements available.
2020-10-19 15:43:29 +02:00
asuessenbach
32a21fb4ed
Update to VK_HEADER_VERSION 158.
2020-10-19 13:53:34 +02:00
asuessenbach
2b47c6f9e5
Refactor command that returns a vector of values and a single value.
2020-10-19 10:15:50 +02:00
asuessenbach
1a851d00af
Refactor commands returning some value
2020-10-15 14:50:52 +02:00
Andreas Süßenbach
b7f58f87b9
Merge pull request #775 from asuessenbach/refactor
...
Refactor commands returning a StructureChain and a Result.
2020-10-15 11:07:28 +02:00
asuessenbach
74498b2b9e
Refactor commands returning a StructureChain and a Result.
2020-10-15 09:09:35 +02:00
asuessenbach
8d1c84b3f5
Set warnings as errors for the generator, the samples, and the tests.
2020-10-14 17:44:16 +02:00
asuessenbach
85e17d053b
Refactor commands potentially returning a StructureChain.
2020-10-14 12:24:02 +02:00
asuessenbach
28cc3e6ae7
Refactor simple functions returning some value.
2020-10-13 14:39:12 +02:00
asuessenbach
3c19a37922
Update to VK_HEADER_VERSION 157
...
+ Turn warning on never used VkStructureType enum value into an error.
2020-10-13 10:13:57 +02:00
asuessenbach
c77158525b
Refactor trivial functions returning a VkResult.
2020-10-12 23:09:07 +02:00
asuessenbach
1050424e85
Refactor functions returning a vector of handles, that might as well be just one.
2020-10-12 17:06:55 +02:00
Krzysztof Kurek
66ae5c7419
Remove m_success from vk::DynamicLoader
2020-10-09 21:55:38 +02:00
asuessenbach
d1c03d5ba8
Refactor command consuming two vectors.
2020-10-08 17:05:14 +02:00
asuessenbach
45c187997b
Refactor functions returning a vector of handles.
2020-10-08 11:44:50 +02:00
asuessenbach
9dec09ac6e
Refactor handle getting functions
2020-10-07 11:54:52 +02:00
asuessenbach
b8b620b118
Refactor command classification code.
2020-10-06 09:54:18 +02:00
asuessenbach
87fc3571c6
Refactor simple functions getting a single value
2020-10-05 15:55:13 +02:00
Andreas Süßenbach
28a18d49cb
Merge pull request #758 from asuessenbach/noexcept
...
Correct usage of noexcept on functions that need to check vector sizes.
2020-09-30 11:29:18 +02:00
Andreas Süßenbach
f7dce6bc5b
Merge pull request #757 from asuessenbach/refactor
...
Refactor simple functions with more than one success code.
2020-09-30 10:58:09 +02:00
Andreas Süßenbach
d9f768874c
Merge pull request #756 from asuessenbach/allocator
...
Correct actual name of vectorAllocator in generated function bodies.
2020-09-30 10:16:19 +02:00
asuessenbach
152353da3e
Correct usage of noexcept on functions that need to check vector sizes.
2020-09-30 10:13:51 +02:00
asuessenbach
bb0de4db93
Refactor simple functions with more than one success code.
2020-09-30 09:32:02 +02:00
Andreas Süßenbach
5fd780c189
Merge pull request #755 from mtavenrath/clang10
...
Fix clang 10 related compile time issues
2020-09-30 09:15:30 +02:00
asuessenbach
a77b68ce05
Correct actual name of vectorAllocator in generated function bodies.
2020-09-30 09:13:44 +02:00
Markus Tavenrath
46a80d0a07
Fix clang 10 related compile time issues
2020-09-29 13:55:57 +02:00
asuessenbach
8219ca081d
Refactor generation of simple commands with up to one vector parameter
2020-09-29 12:21:27 +02:00
asuessenbach
b6e6294fb9
Refactor function generation of void-functions enumerating a single vector of data.
2020-09-28 16:34:50 +02:00
asuessenbach
63aa7ede28
Improved handling of function parameters with array sizes.
2020-09-27 00:33:38 +02:00
asuessenbach
865069ccc3
correct value-check of parameters
...
+ add missing array sizes for parameters
2020-09-25 23:45:55 +02:00
asuessenbach
1f31648973
Refactor some trivial functions
2020-09-25 09:02:37 +02:00
asuessenbach
0d02918ce8
refactor more functions into the simple void case.
2020-09-24 11:47:18 +02:00
asuessenbach
4d21e2b210
refactor command generation of two-vector getting functions returning void
2020-09-23 09:52:21 +02:00
asuessenbach
5f5ce584ac
refactor generation of trivial void functions
2020-09-22 10:22:19 +02:00
asuessenbach
542d2903f4
refactor generation of simple void-functions
2020-09-21 23:18:24 +02:00
asuessenbach
860c2b1d4b
refactored generation of simple commands
2020-09-21 12:26:54 +02:00
asuessenbach
0b8e4cb938
Introduce helper function ResultValue<UniqueHandle<Type, Dispatch>>::asTuple()
...
Allows coding like this:
vk::Result result;
vk::UniquePipeline pipeline;
std::tie( result, pipeline ) =
device->createGraphicsPipelineUnique( nullptr, graphicsPipelineCreateInfo ).asTuple();
2020-09-16 09:36:37 +02:00
asuessenbach
d6dfdb547e
Correct version of two-step function returning two vectors of data
...
+ mark wrong version as deprecated (C++14)
2020-09-15 22:54:44 +02:00
asuessenbach
ae88e94ab4
Reintroduce support of separator '::' for len attributes.
2020-09-03 16:36:39 +02:00
asuessenbach
77b401d4a9
correct enhanced version of vkGetQueryPoolResults
...
- mark wrong version as deprecated (C++14)
- introduce new version returning ResultValue<vector<T,Allocator>>
- introduce new singular version returning ResultValue<T>
2020-09-03 14:20:32 +02:00
asuessenbach
587833bb5d
Make the name of the singular version in appendCommandFixedSizeVector singular.
2020-09-02 17:22:26 +02:00
asuessenbach
0db791c687
Special handling for commands that get a size and a void-pointer to write data into
...
- marked previous function that got an ArrayProxy as deprecated (C++14)
- introduce a new function returning a std::vector of the given size
- introduce a new function returning a single value
2020-09-02 15:00:06 +02:00
asuessenbach
ee38444318
Simplified assignment operator of structs
2020-09-01 10:32:05 +02:00
asuessenbach
9aaa6481e5
Update to VK_HEADER_VERSION 152.
2020-08-27 09:03:06 +02:00
asuessenbach
fa613080a7
Introduce mapping between DebugReportObjectType enum value and the corresponding cpp handle type.
...
+ new type trait isVulkanHandleType<>
2020-08-24 10:30:05 +02:00
asuessenbach
2af32d03e0
[DispatchLoaderDynamic] get aliases of functions if getting the function pointer failed
2020-08-19 11:54:25 +02:00
asuessenbach
f168fe6931
Remove superfluous assertion.
2020-08-19 09:00:10 +02:00
asuessenbach
e2f7065c5d
cleanup on helper class PoolFree.
2020-08-17 16:54:45 +02:00
asuessenbach
b9a1af5aa1
Cleanup on helper classes ObjectDestroy and ObjectFree
2020-08-17 14:26:25 +02:00
Andreas Süßenbach
803110efef
Merge pull request #715 from asuessenbach/localVariable
...
Improve handling of local Variables in enhanced simple functions.
2020-08-17 13:50:16 +02:00
asuessenbach
03eb851f81
Improve handling of local Variables in enhanced simple functions.
2020-08-17 10:21:39 +02:00
asuessenbach
ee389e42e3
Introduce VULKAN_HPP_NO_DEFAULT_DISPATCHER to not have a default argument for the last argument of each function.
2020-08-13 16:46:42 +02:00
asuessenbach
958f9d476c
Additionally guard spaceship-operator by check for existence of std-header <compare>
2020-07-28 09:15:31 +02:00
asuessenbach
99f990afa1
Extend template argument list for functions returning a std::vector<Stuff> to help compilers detecting the correct function.
...
+ change the order of Allocator and Dispatch template arguments for functions returning a std::vector<UniqueStuff>, as the Allocator needs to use the Dispatch in those cases!
2020-07-23 18:14:05 +02:00
asuessenbach
0ff1e674ee
Reordered listing of structures and handles
...
-> no need to forward declare the structures any more
2020-07-23 10:02:16 +02:00
asuessenbach
fba2516d9c
Remove implicit cast operators on ResultValue<T>
...
As it turned out to not provide a complete solution to the C++-API-change issue on logical-change of the C-API, we simply remove those implicit cast operators. That is, accessing the result and the value need to be explicit.
2020-07-22 16:49:42 +02:00
asuessenbach
4cdc51ba0f
Introduce usage of [[nodiscard]] with C++17
2020-07-22 10:59:12 +02:00
Andreas Süßenbach
46aa4e0e95
Merge pull request #672 from asuessenbach/errorMessage
...
Slightly improve two error messages.
2020-07-14 08:53:35 +02:00
asuessenbach
d76563fb3d
Slightly improve two error messages.
2020-07-13 17:17:56 +02:00
asuessenbach
178dbd1367
Simplify determination of returnParameterIndex
...
Resolves #670 .
2020-07-13 16:04:03 +02:00
asuessenbach
abce7c90cd
Remove (most of) the special handling of structure members named "sType", replace it by handling of structure members with a "values" attribute with a single element.
2020-07-13 11:55:16 +02:00
asuessenbach
6bcd2759b0
Add support of struct member attribute <values> to specify a default.
2020-07-10 10:48:26 +02:00
Andreas Süßenbach
ad7cbb2c77
Merge pull request #667 from asuessenbach/663
...
Guard use of ArrayProxyNoTemporaries with structure setter functions
2020-07-09 14:19:44 +02:00
asuessenbach
db7695f18f
Guard use of ArrayProxyNoTemporaries with structure setter functions
2020-07-09 12:20:43 +02:00
asuessenbach
d86303c0e4
Introduce structure constructors using ArrayProxyNoTemporaries
2020-07-09 12:03:03 +02:00
asuessenbach
b06457a74b
Simplified struct setter functions on a union.
2020-07-06 14:52:22 +02:00
asuessenbach
5ef6c1c43f
Extend set of strings ignored in attribute <len>
2020-07-02 17:38:56 +02:00
asuessenbach
8ae008dba8
Change all functions with ArrayProxy[NoTemporaries] as arguments to take by const & instead of by value.
2020-07-02 12:03:13 +02:00
Andreas Süßenbach
4c576dee25
Merge pull request #654 from asuessenbach/ArrayProxyNoTemporaries
...
Introduce helper class ArrayProxyNoTemporaries and structure setter functions using that.
2020-07-02 10:53:55 +02:00
Andreas Süßenbach
5da023d17a
Merge pull request #650 from mocabe/ArrayWrapper1D-conversion
...
Small fix for ArrayWrapper1D's conversion operators
2020-07-02 09:20:02 +02:00
asuessenbach
8ddea43942
Introduce helper class ArrayProxyNoTemporaries and structure setter functions using that.
...
Resolves #62 !
2020-07-01 16:39:25 +02:00
Andreas Süßenbach
d4774ad6e8
Merge pull request #649 from mocabe/assert-on-result
...
Add VULKAN_HPP_ASSERT_ON_RESULT
2020-06-30 09:00:35 +02:00
Andreas Süßenbach
9ac53acc8a
Merge pull request #648 from mtavenrath/shared_default
...
Add defines to put the storage for a DispatchLoaderDynamic in a DLL.
2020-06-30 08:58:37 +02:00
asuessenbach
be6fcc0612
Turn Conformance Mode on for Visual Studio builds
...
+ reorganize library loading and still keep windows.h out.
Resolves #600
Resolves #629
2020-06-29 10:16:40 +02:00
Markus Tavenrath
34076925af
Add defines to put the storage for a DispatchLoaderDynamic in a DLL.
2020-06-29 09:21:28 +02:00
asuessenbach
c1a769dba9
Improve interpretation of type postfixes.
2020-06-25 15:20:37 +02:00
mocabe
ec562ec33a
[HPP] Replace some asserts to VULKAN_HPP_ASSERT_ON_RESULT
2020-06-25 21:19:01 +09:00
mocabe
f0767988c9
[HPP] Add VULKAN_HPP_ASSERT_ON_RESULT
2020-06-25 21:16:43 +09:00
mocabe
237d51d478
[HPP] Remove const and noexcept from string conversion operators of ArrayWrapper1D
2020-06-25 01:45:35 +09:00
asuessenbach
db58507063
Introduce VULKAN_HPP_NO_STRUCT_CONSTRUCTORS so support designated initializers.
...
You have to define VULKAN_HPP_NO_STRUCT_CONSTRUCTORS to remove all the struct constructors from vulkan.hpp, so that you can use designated initializers on them.
Of course, makes only sense with C++20.
2020-06-24 11:28:43 +02:00
asuessenbach
f2c1304f17
Update and adjustments to VK_HEADER_VERSION 145.
2020-06-22 09:49:18 +02:00
Andreas Süßenbach
6b72356c2a
Merge pull request #642 from byzin/fix-if-condition-of-result-unique-handle3
...
Fix if condition of result unique handle
2020-06-22 09:25:51 +02:00
Andreas Süßenbach
0c0fe6fbd0
Merge pull request #641 from byzin/replace-hardcoded-namespace2
...
Replace hardcoded namesapce 'vk::' to 'VULKAN_HPP_NAMESPACE'.
2020-06-22 09:24:54 +02:00
Sho Ikeda
eb905026e6
Cleanup code.
2020-06-18 23:46:11 +09:00
Sho Ikeda
7e9f9b6aac
Fix the #if condition of ResultValue<UniqueHandle>.
2020-06-18 23:38:53 +09:00
Sho Ikeda
3abb9592f7
Replace hardcoded namesapce 'vk::' to 'VULKAN_HPP_NAMESPACE'.
2020-06-18 23:06:58 +09:00
asuessenbach
92bc17981b
Provide default arguments in ObjectFree constructor for allocationCallbacks and dispatcher.
2020-06-18 11:00:22 +02:00
asuessenbach
1075096d8c
Introduce cast-operator to std::string and std::string_view on ArrayWrapper1D<char,N>
...
-> needed to add all the relational operators on <char,N> as well to keep the compiler happy!
2020-06-17 16:42:38 +02:00
Andreas Süßenbach
8c2d6d7d05
Merge pull request #634 from asuessenbach/ResultValue
...
Add cast operator to reference of UniqueHandle of ResultValue<UniqueHandle>
2020-06-17 13:35:30 +02:00
asuessenbach
3724bfd0f5
Add cast operator to reference of UniqueHandle of ResultValue<UniqueHandle>.
2020-06-17 11:44:12 +02:00
asuessenbach
d0a42307b6
Resolve deprecated-warnings on cpp_type.
2020-06-17 09:32:52 +02:00
asuessenbach
c6a48460e8
Use memcmp instead of operator==() to compare unknown types from external headers, as they might not support that operator.
2020-06-16 11:49:20 +02:00
asuessenbach
0bc12cc0c1
Support optional ArrayProxy as function arguments
2020-06-15 13:55:23 +02:00
asuessenbach
f87c9330e7
Extend check against protect attribute for types that are required by multiple extensions.
2020-06-15 10:09:07 +02:00
asuessenbach
381494ed3f
Update and adjustments to VK_VULKAN_HEADER 143
2020-06-15 08:03:17 +02:00
mocabe
36869db461
[HPP] Add operator T const&&() to ResultValue
2020-06-02 08:45:57 +02:00
mocabe
b36fe941f4
[HPP] Add missing ref-qualifier for conversion operator of ResultValue
2020-06-02 08:45:57 +02:00
Markus Tavenrath
e2066fa002
Add support for optional non-char arrays
2020-05-26 13:54:03 +02:00
asuessenbach
8958396a0c
Add support for "allowduplicate" attribute on chainable structures.
2020-05-25 09:36:20 +02:00
asuessenbach
75819e5dce
Improve VkIndexType typeTraits handling.
2020-05-19 15:31:07 +02:00
asuessenbach
cc6162991a
Improve extension protection string handling.
2020-05-19 14:34:41 +02:00
asuessenbach
895c5766bc
Add some workarounds to not include windows.h on _WIN32 platform.
2020-05-13 16:23:19 +02:00
asuessenbach
f79f43498e
Extend DynamicLoader loading policy
2020-05-13 11:26:43 +02:00
asuessenbach
d2a23f5086
Change library name to load on linux to "libvulkan.so.1".
2020-05-11 12:00:39 +02:00
Alexandros Frantzis
18da9fdcfd
Provide rvalue cast operator for ResultValue
...
Allows objects returned as ResultValue (instead of
ResultValueType::type) to be moved without requiring
additional casting or explicit use of ResultValue::value.
Resolves #589
2020-05-05 15:45:10 +03:00
Andreas Süßenbach
94c33a5e2c
Merge pull request #597 from asuessenbach/ArrayProxy
...
Reintroduce ArrayProxy constructors with std::array and std::vector
2020-05-05 13:50:49 +02:00
asuessenbach
f15f2f382b
Reintroduce ArrayProxy constructors with std::array and std::vector
2020-05-05 11:34:02 +02:00
asuessenbach
a037ea241c
Downgraded check on attribute "requires" in "extension" elements to a warning.
2020-05-05 08:57:50 +02:00
Andreas Süßenbach
f56e99e5b8
Merge pull request #593 from asuessenbach/140
...
Update to and adjustments for VK_HEADER_VERSION 140.
2020-05-05 08:38:35 +02:00
asuessenbach
bc6eba91f6
Trim tokenized sub-strings.
2020-05-04 17:19:44 +02:00
asuessenbach
daa20d0d90
Update to and adjustments for VK_HEADER_VERSION 140.
2020-05-04 16:46:47 +02:00
asuessenbach
dc1a7ce93e
Add filter for identical alias enum values
2020-04-30 14:28:48 +02:00
asuessenbach
94888c9959
Correct handling of enum aliases
2020-04-30 11:30:17 +02:00
asuessenbach
c6f4dfb79b
Correct default initializer for array of enums.
2020-04-29 11:45:10 +02:00
asuessenbach
89190683c8
Add checks on member sType of structs:
...
- only members named <sType> are supposed to have a <values> attribute
- no <values> attribute is allowed to occur more than once.
2020-04-29 09:04:21 +02:00
asuessenbach
f0d58bd24b
Add support for basetypes without any type information
2020-04-27 21:01:21 +02:00
asuessenbach
d12585de6c
Use attribute [[deprecated]] only if __cplusplus >= 201402L.
2020-04-27 13:39:14 +02:00
asuessenbach
5953d65c16
Use [[deprecated]] only if __has_cpp_attribute(deprecated) is true
2020-04-26 00:25:35 +02:00
asuessenbach
c7c375eb98
Unify type traits handling of Handles, Structures, and IndexTypes.
2020-04-24 09:57:37 +02:00
asuessenbach
ac272a10ff
Make compound assignment operators on Flags<> constexpr with C++14.
2020-04-24 09:54:36 +02:00
asuessenbach
f5e59484a6
Introduce usage of clang-format to format vulkan.hpp and the other sources.
2020-04-23 10:55:02 +02:00
asuessenbach
5cb6084118
Adjust structure and union constructors and setter functions to correctly handle sType of a member of that structure/union.
2020-04-21 08:49:17 +02:00
asuessenbach
ccb4ca22b9
Adjustments for VK_HEADER_VERSION 138.
2020-04-17 20:17:45 +02:00
asuessenbach
d40c96b45e
[WIP] test on ArrayProxy
2020-04-15 16:42:41 +02:00
asuessenbach
2ca96ade5b
Update to and adjustments for VK_HEADER_VERSION 137.
2020-04-08 08:13:01 +02:00
Andreas Süßenbach
eaa8ba4f01
Merge pull request #558 from asuessenbach/hash
...
Provide std::hash<vk::HandleType> to make handles hashable.
2020-04-07 09:12:04 +02:00
asuessenbach
cc77b67bb8
Provide std::hash<vk::HandleType> to make handles hashable.
2020-04-06 10:41:42 +02:00
asuessenbach
407542705f
Change allocation of vectors of UniqueHandles to not rely on std::vector<>::data() returning a valid pointer after calling std::vector<>::reserve().
2020-04-06 10:14:20 +02:00
asuessenbach
a5e8a7ccb8
Update to and adjustments for VK_HEADER_VERSION 136.
2020-03-30 12:13:07 +02:00
asuessenbach
732274919b
Correct actual function called by aliased member functions
2020-03-25 17:13:03 +01:00
asuessenbach
0ea8a527ba
Introduce ArrayWrapper?D, replacing ConstExpression?DArrayCopy
...
+ no explicit copy constructor of structs needed any more
+ removed assignment operator of structs that don't hold a const sType member (for those, we still need the assignment operator!)
+ simplified operator==() of structs (pre C++20)
+ resolved some 32bit warnings
2020-03-25 12:35:35 +01:00
asuessenbach
8c6ac21d27
Relax criterion on determining enhanced return type.
2020-03-24 09:43:50 +01:00
asuessenbach
bebb3a86bd
Update to VK_HEADER_VERSION 135
2020-03-19 09:13:41 +01:00
asuessenbach
7826e58909
Add missing handling of unions in readExtensionRequireType.
2020-03-13 08:54:54 +01:00
Andreas Süßenbach
7d5c399cd7
Merge pull request #533 from asuessenbach/disabled
...
Improve handling of disabled extensions.
2020-03-12 10:18:44 +01:00
asuessenbach
402816919b
Add a check on having a valid value for struct members sType.
2020-03-10 16:19:37 +01:00
asuessenbach
8be8282458
Add support of array-sized function arguments
2020-03-10 15:40:05 +01:00
asuessenbach
41cece140e
Yet another correction on braces for arrays of enums.
2020-03-10 14:26:36 +01:00
asuessenbach
d5dba659b4
Correct braces around array of enum initializers.
2020-03-10 12:46:45 +01:00
asuessenbach
434c0326f4
Support arrays of enums in structures.
2020-03-10 11:47:09 +01:00
asuessenbach
594acb2ecd
Improve handling of disabled extensions.
...
(Partly) resolves #531
2020-03-10 10:06:33 +01:00
asuessenbach
87cecae683
Update of vk.xml to version 134; resolve warnings
...
Resolves #535
2020-03-10 10:00:06 +01:00
asuessenbach
cd554ce9e0
Introduce support of VkFlags64
...
+ add support of structExtends via alias'ed structures
+ add support of alias'ed commands via already alias'ed commands
2020-03-04 15:29:06 +01:00
asuessenbach
1b22ac9658
Introduce spaceship operator<=> on Flags with C++20, replacing all the relational operators
...
+ replace variables/struct members named "requires" with "requirements"
2020-03-03 14:02:32 +01:00
Mike Barriault
4f56a424c6
Add const versions of StructureChain::get
2020-03-02 21:32:06 +00:00
asuessenbach
f43626d8a1
Move aliased platform specific stuff out of the platform protection.
2020-03-02 14:09:47 +01:00
asuessenbach
862c0abdc7
Correct filtering of struct elements.
2020-02-27 09:50:28 +01:00
asuessenbach
0d65f6a142
Reduced exception on encountering an unknown element to a warning.
2020-02-27 08:58:57 +01:00
asuessenbach
5d124b6d4a
Add "enabled" as accepted value for attribute "supported" in extension element
2020-02-26 08:43:29 +01:00
asuessenbach
28d6e3e665
Extend check for attributes "deprecatedby" and "obsoletedby" to include features as well
2020-02-25 13:53:27 +01:00
asuessenbach
947583a1e5
Replace explicit template parameter MaskType for Flags types by std::underlying_type<BitType>::type and specify the underlying type for the FlagBits types
...
Resolves #507
2020-02-25 13:36:05 +01:00
asuessenbach
cbff9067dc
Define VULKAN_HPP_NO_SMART_HANDLE if VULKAN_HPP_DISABLE_ENHANCED_MODE is defined.
...
Resolves #509 .
2020-02-25 10:30:41 +01:00
Andreas Süßenbach
f9d90dfd1c
Some more checks
2020-02-25 10:29:13 +01:00
asuessenbach
241e70e9cd
Correct ConstExpression2DArrayCopy
...
+ introduce new test ArrayCopy
2020-02-24 12:05:49 +01:00
Andreas Süßenbach
8dda61900d
Merge pull request #518 from jackoalan/dynamic-loader-move-assign
...
Use std::swap for DynamicLibrary move assign
2020-02-24 10:19:27 +01:00
asuessenbach
c05772e82d
Correct const usage in ConstExpression1DArrayCopy
2020-02-23 00:20:45 +01:00
Jack Andersen
44b1ea9202
Use std::swap for DynamicLibrary move assign
2020-02-21 20:08:03 -10:00
asuessenbach
dc954e0f6d
Restructure ConstExpressionNDArrayCopy classes
2020-02-21 09:55:25 +01:00
asuessenbach
0af9093389
Extend ConstExpression2DArrayCopy to support const T src[N][M].
2020-02-19 18:50:49 +01:00
Dan Sinclair
0fe05fa95d
Update tinyxml2
2020-02-18 09:28:50 -05:00
Jack Andersen
b4f482572f
Add move semantics to DynamicLoader
2020-02-17 11:52:57 -10:00
Andreas Süßenbach
b08af45046
Resolve warnings from gcc.
...
Resolves #505
2020-02-13 10:27:30 +01:00
Andreas Süßenbach
f1d3380e31
Add assignment operator for all structs
...
Resolves #505
2020-02-13 10:27:30 +01:00
asuessenbach
7feffc1b9d
Add/Reshape copy constructors for structs and unions.
...
Allows usage of constexpr on those constructors.
Resolves #493
2020-02-06 11:15:57 +01:00
Andreas Süßenbach
cf39cd4f0c
Introduce helper function check() to ease throwing on spec error detection. ( #502 )
...
* Introduce helper function check() to ease throwing on spec error detection.
* Use some more checks
* Some more checks
2020-02-04 10:35:33 +01:00