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
Andreas Süßenbach
4d53dac22b
Replace usage of std::forward_as_tuple by std::tie. ( #501 )
2020-02-03 15:55:06 +01:00
Andreas Süßenbach
8c9e881dfe
Change init functions of DispatchLoaderDynamic to use a DynamicLoader specified by a template argument. ( #503 )
2020-02-03 15:52:53 +01:00
Anatoliy V. Tomilov
7efe3d096b
use VULKAN_HPP_ASSERT instead of raw assert in generated code ( #498 )
...
* use VULKAN_HPP_ASSERT instead of raw assert in generated code
* update generated vulkan.hpp to match generator changes
2020-01-30 09:57:51 +01:00
Andreas Süßenbach
bca5adc12d
Change return of StructureChain::get() from tuple of values to tuple of references ( #495 )
...
Resolves #494
2020-01-29 10:00:41 +01:00
Andreas Süßenbach
f1668a6e28
Remove template parameter defaultValue from Flags. ( #492 )
...
Flags always default to just no FlagBits set.
2020-01-21 12:01:35 +01:00
Andreas Süßenbach
33b244859b
Add specific initialization of Flags and FlagBits. ( #489 )
...
Resolves #488 .
2020-01-16 12:12:31 +01:00
Alex Hirsch
bb5b19deda
Fix regression in ObjectDestroy default argument ( #485 )
2020-01-16 08:50:50 +01:00
Andreas Süßenbach
7e81c7bddf
Improve construction of success check and return type of enhanced functions returning a vector of UniqueHandles ( #484 )
2020-01-15 16:54:55 +01:00
Andreas Süßenbach
129f82dd90
Extend check to determine the returnParameterIndex. ( #482 )
2020-01-14 16:06:50 +01:00
Andreas Süßenbach
a75cf874c7
Filter aliases of enum values that originally belong to aliases of the enum class. ( #483 )
2020-01-14 16:05:05 +01:00
Andreas Süßenbach
e49f02013a
Mark every non-enhanced function with VULKAN_HPP_NOEXCEPT. ( #481 )
2020-01-14 10:37:54 +01:00
Andreas Süßenbach
65450515ee
Added a couple of features: ( #480 )
...
+ support for 2D arrays
+ support for bitfield members in a structure (slightly restricted: no default member initializers and for any vk::*FlagBits member Vk*FlagBits would be used)
+ aliases to enums are listed by using declarations
+ for aliases to handle types, an aliased Unique handle type is added by a using declaration
+ a check in determining an enhanced return type is extended
2020-01-13 15:00:59 +01:00
Andreas Süßenbach
979af1b46e
Added test on existence of ObjectType enum value corresponding to handle type in extensions. ( #477 )
2020-01-10 10:18:55 +01:00
Andreas Süßenbach
8d62969b4d
Fix arraySize for array-valued return parameter. ( #476 )
2020-01-09 16:21:41 +01:00
Andreas Süßenbach
1911d18790
Completed set of operators on Flags ( #475 )
2020-01-09 09:44:41 +01:00
Andreas Süßenbach
55517484be
Add optional attribute "specialuse", currently ignored. ( #474 )
2020-01-08 14:29:26 +01:00
Markus Tavenrath
d5f58e07dd
Add error message when referencing undefined type requirements ( #473 )
2020-01-07 16:50:46 +01:00
Andreas Süßenbach
4ee2d61ef6
Improve operator==() of structs ( #472 )
...
When a struct holds a fixed size array of stuff, and the member variable right before that array is the count (determined by its specific name) for that array, we now only compare that number of stuff.
Resolves #456
2020-01-07 16:28:50 +01:00
Andreas Süßenbach
0b3af1ee76
Add is_error_code_enum only if VULKAN_HPP_NO_EXCEPTIONS is not defined. ( #471 )
2020-01-06 15:55:31 +01:00
Markus Tavenrath
499d4bb33d
Bring back default arguments to ObjectDestroy class. Update header to Vulkan 1.130 ( #468 )
...
Fix issue #467
2020-01-03 10:59:59 +01:00
Andreas Süßenbach
021c7499a0
Cleanup on usage of static vs. dynamic loading ( #462 )
2019-12-23 08:45:40 +01:00
Andreas Süßenbach
0b01a8a74c
Introduce default initializers for member variables, simplify default values for constructor arguments ( #455 )
2019-12-12 11:40:21 +01:00
Andreas Süßenbach
3f82338d9f
Fix ambiguous constructor of ObjectDestroy with vk::NoParent. ( #451 )
...
Resolves #450
2019-12-04 08:34:58 +01:00
Andreas Süßenbach
2a05d74c23
Change every occurance of vk:: to VULKAN_HPP_NAMESPACE:: ( #448 )
...
Resolves #447
2019-12-02 10:06:44 +01:00
Andreas Süßenbach
07edfc45d6
Introduce default constructors for UniqueHandle, ObjectDestroy, and ObjectFree ( #446 )
2019-11-28 16:01:22 +01:00
Andreas Süßenbach
f2058303cb
Introduce functions vk::StructureChain::unlink<ClassType>() and vk::StructureChain::relink<ClassType>(). ( #441 )
...
Resolves #439 .
2019-11-28 15:58:15 +01:00
Andreas Süßenbach
e40eb90980
Remove not needed operator==() and operator!=() on *FlagBits ( #442 )
...
Resolves #436
2019-11-27 11:41:21 +01:00
Andreas Süßenbach
d2a116b57f
Correct operator=() by using offsetof instead of sizeof to determine size of memory to copy. ( #437 )
2019-11-19 17:44:16 +01:00
Andreas Süßenbach
e850963599
Extend functions returning a std::vector<vk::StructureChain> to use an additional local vector for getting the information, and then copy the heads of the StructureChains over to the return vector ( #432 )
...
Fixes #400
2019-11-13 10:04:50 +01:00
Markus Tavenrath
661d2a9a7c
Include windows.h on windows platforms in case the DynamicLoader is enabled. ( #431 )
2019-11-11 17:23:35 +01:00
Andreas Süßenbach
581b7cb227
Add [[noreturn]] and remove VULKAN_HPP_INLINE to/from function throwResultException ( #430 )
...
Resolves issue #406
2019-11-07 15:42:10 +01:00
Andreas Süßenbach
3fc2ea47fd
Replace namespace layout stuff by a simple const for the sType member of the structures ( #428 )
...
+ reshape of constructors and assignment operators of structs.
2019-11-07 08:22:47 +01:00
Andreas Süßenbach
cea5d7fae3
Add unique-versions of "Register"-functions (currently just registerEventEXTUnique and registerDisplayEventEXTUnique) ( #421 )
2019-11-06 14:45:13 +01:00
Warpten
5512f6df92
Implement support for unicode in Windows projects using vk::DynamicLoader
. ( #422 )
2019-11-06 14:44:33 +01:00
Markus Tavenrath
96b0bfdf0d
Fix DynamicLoader on 32-bit platforms ( #427 )
2019-11-06 13:52:41 +01:00
Andreas Süßenbach
9f7b06cbd1
Remove VULKAN_HPP_NOEXCEPT from functions that throw a LogicError. ( #416 )
2019-10-30 10:10:32 +01:00
mocabe
68b11f1e90
Disable CTAD on ArrayProxy's constructors ( #405 )
...
* Disable CTAD on ArrayProxy's reference constructor
* Disable CTAD on ArrayProxy's initializer_list ctor
2019-10-29 16:00:03 +01:00