Commit Graph

581 Commits

Author SHA1 Message Date
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