Commit Graph

457 Commits

Author SHA1 Message Date
asuessenbach
40dbf184fc Update to VK_HEADER_VERSION 167. 2021-01-21 09:43:44 +01:00
asuessenbach
2e2782448c Introduce new function StructureChain::isLinked<>() 2021-01-20 14:09:52 +01:00
Andreas Süßenbach
b9ec269ab2
Merge pull request #845 from mtavenrath/fix_warnings
Fix compiler warnings on gcc/clang
2021-01-19 08:38:45 +01:00
Markus Tavenrath
160dc916f9 Change structure member sType to non-const to allow default assignment operator. Make copy constructor and copy assignment default. The latter is required for C++20 designated initializers. Delegate the constructor from C-type to the copy constructor by casting rhs accordingly. Fix warnings on gcc/clang. 2021-01-18 12:25:50 +01:00
Andreas Süßenbach
92c91a9f46
Merge pull request #853 from asuessenbach/StorageAPI
Guard definition of VULKAN_HPP_STORAGE_API by an if !defined(); extend internal support to gcc and clang.
2021-01-18 11:30:00 +01:00
asuessenbach
376dd7aff3 Guard definition of VULKAN_HPP_STORAGE_API by an if !defined(); extend internal support to gcc and clang.
+ mention that define in the README.md
2021-01-14 14:32:01 +01:00
asuessenbach
dcc775eb53 Make ArrayProxyNoTemporaries complete by marking all constructors getting rvalue references as deleted. 2021-01-14 11:49:35 +01:00
asuessenbach
983c8795e6 Introduce configuration flag VULKAN_HPP_FLAGS_MASK_TYPE_AS_PUBLIC. 2021-01-12 10:04:13 +01:00
asuessenbach
5defbab14b Update to VK_HEADER_VERSION 166. 2021-01-04 10:06:24 +01:00
asuessenbach
45e06d1753 Special handling for detecting mutual exclusive len usage on structures. 2020-12-14 16:18:23 +01:00
asuessenbach
a0f6203570 Update to VK_HEADER_VERSION 165 2020-12-14 13:26:02 +01:00
asuessenbach
4bc8906990 Make structure information "obsolete" a vector of bool.
+ remove an obsolete assertion
2020-12-10 11:12:55 +01:00
asuessenbach
fad90eadf6 Update to VK_HEADER_VERSION 164. 2020-12-08 10:28:51 +01:00
asuessenbach
696206b0aa Remove obsolete helper object ObjectReleaseExt. 2020-12-07 14:32:20 +01:00
asuessenbach
de79787457 Fix issue on name construction for objtypeenum attribute 2020-12-07 09:26:48 +01:00
asuessenbach
40bc006527 Update to VK_HEADER_VERSION 163. 2020-12-01 10:09:03 +01:00
asuessenbach
8d8436cc51 Update to VK_HEADER_VERSION 162. 2020-11-23 09:46:41 +01:00
asuessenbach
28422de041 Introduce VULKAN_HPP_NO_SPACESHIP_OPERATOR to disable operator<=>() for all structs and classes. 2020-11-17 15:31:13 +01:00
asuessenbach
04b4e5a077 Update to VK_HEADER_VERSION 161.
+ changed two now outdated warnings into error checks
+ removed VS2019 builds for now due to an internal compiler error!
2020-11-16 14:53:05 +01:00
Andreas Süßenbach
009e56beb1
Merge pull request #820 from asuessenbach/160
Update to VK_HEADER_VERSION 160.
2020-11-09 13:39:31 +01:00
asuessenbach
6b2c310cf8 Update to VK_HEADER_VERSION 160. 2020-11-09 10:04:02 +01:00
asuessenbach
e159e685d4 Add missing const-qualifier in the static_cast in function T const & StructureChain::getFeatures2() const. 2020-11-09 09:55:45 +01:00
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
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
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
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
asuessenbach
dc4777a206 Refactor commands that enumerate handles (no unique versions) 2020-10-21 10:14:51 +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
asuessenbach
53fe4d445f Refactor commands that get a handle which has no create or destroy function. 2020-10-19 23:13:57 +02: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
87fc3571c6 Refactor simple functions getting a single value 2020-10-05 15:55:13 +02:00
asuessenbach
1629bf53e2 Update to VK_HEADER_VERSION 156. 2020-10-05 10:10:39 +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
3b30cb3a9c Update to VK_HEADER_VERSION 155. 2020-09-28 10:30: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
Andreas Süßenbach
745e1342bd
Merge pull request #745 from asuessenbach/154
Update to VK_HEADER_VERSION 154.
2020-09-23 11:52:18 +02:00
asuessenbach
6d89283b79 Update to VK_HEADER_VERSION 154. 2020-09-23 10:00:13 +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
45813fe9c8 Update to VK_HEADER_VERSION 153. 2020-09-15 10:31:32 +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
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
987fbd8ee1
Merge pull request #716 from asuessenbach/151
Update to VK_HEADER_VERSION 151.
2020-08-17 13:52:26 +02:00
asuessenbach
e76b61e2e0 Update to VK_HEADER_VERSION 151. 2020-08-17 10:29:59 +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
406aeaf72c Update to VK_HEADER_VERSION 150 2020-08-11 08:33:48 +02:00
asuessenbach
042e64ccfa Update to VK_HEADER_VERSION 149 2020-08-04 09:59:51 +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