Markus Tavenrath
48d540a23d
Add vk::DynamicLoader and simplify usage of vk::DispatchLoaderDynamic. Update Vulkan-Headers to 1.1.123 ( #387 )
2019-09-24 12:12:49 +02:00
Andreas Süßenbach
e2268eadb6
Introduce usage of constexpr for constructors of structs. ( #385 )
2019-09-23 15:57:48 +02:00
Andreas Süßenbach
a9a4860591
Resolve instantiation issue with structures that are flagged as returnedonly ( #382 )
...
- make layout-structure default constructor an empty function
- introduce default constructor for the corresponding (non-layout) structure, delegating to the layout-structure's constructor
- introduce copy- and assignment constructors from the corresponding vulkan-structure, delegating to the copy- and assignment constructor from the layout-structure
2019-09-18 08:47:17 +02:00
Andreas Süßenbach
a12c3807de
cleanup on stringstream usage. ( #376 )
2019-08-27 09:02:49 +02:00
Andreas Süßenbach
b3ecf52eae
Update to version 1.1.120. ( #374 )
2019-08-19 14:24:56 +02:00
Andreas Süßenbach
4ac6dc4760
Fix wrong naming of complex union member types. ( #371 )
2019-08-15 09:50:26 +02:00
Andreas Süßenbach
c247cd6372
Update to vk.xml version 116. ( #364 )
2019-07-25 13:52:42 +02:00
Andreas Süßenbach
b01f3c0bb5
Introduce namespace layout to have structures with private member sType that still are still standard_layout conformant. ( #360 )
2019-07-23 09:28:14 +02:00
Andreas Süßenbach
b0bfcfdab5
Add a static const(expr) member vk::ObjectType to the vk object classes; add a type_trait cpp_type<> to get the cpp-type from a vk::ObjectType. ( #356 )
2019-07-09 09:24:14 +02:00
Andreas Süßenbach
712acf08f8
Filter out multi-bit values for to_string function on FlagBits. ( #355 )
2019-07-03 13:53:44 +02:00
Andreas Süßenbach
f91fc93fc5
Add CType to handle wrapper classes. ( #354 )
2019-07-03 13:49:40 +02:00
Andreas Süßenbach
89a56017a8
replace memcpy in generated copy and assignment operators of VkStructures by reinterpreted assignments. ( #348 )
...
Fixes #342
2019-06-25 09:43:54 +02:00
past-due
ed11cd8eb8
Add explicit casts to DispatchLoaderDynamic::init(vk::Instance const&, vk::Device const&) ( #344 )
2019-06-24 09:14:17 +02:00
Matthew Pohlmann
c5c5fea2dd
Use VULKAN_HPP_ASSERT instead of assert ( #332 )
...
* Use VULKAN_HPP_ASSERT instead of assert
Update `DispatchLoaderDynamic::init(...)` to use the `VULKAN_HPP_ASSERT` macro instead of a plain `assert`.
* Update vulkan.hpp
2019-06-12 08:17:41 +02:00
Andreas Süßenbach
a6ad0f1eff
Re-introduce vulkan/vulkan.hpp; adjust include order to use that header in samples and tests ( #340 )
2019-06-11 13:25:36 +02:00
Markus Tavenrath
50e0a941e9
Use new Vulkan-Headers repository. Don't generate createReturnValue function call if the return type is void. ( #335 )
2019-06-06 13:13:38 +02:00
Markus Tavenrath
d2a1056a56
Add support for Vulkan header version 109 ( #333 )
2019-05-30 09:18:32 +02:00
Frank Richter
0e76bc68e3
Support compilation with VK_NO_PROTOTYPES defined ( #328 )
...
* Add checks for VK_NO_PROTOTYPES so the can still compile if that is defined
2019-05-21 14:57:52 +02:00
Andreas Süßenbach
d566d2200c
Add helper function to copy a vector of UniqueHandles into a vector of UniqueHandle::element_type. ( #327 )
2019-05-16 08:07:36 +02:00
Jarrett Johnson
61e92d4842
Add type alias for underlying type of vk::UniqueHandle ( #326 )
...
* Add type alias for underlying type of vk::UniqueHandle
* Type alias to UniqueHandle
* Unique Handle Type alias moved
2019-05-09 09:22:10 +02:00
Andreas Süßenbach
d4ddb0a2cd
Add error check before filling a vector of UniqueHandles from just created handles. ( #319 )
2019-04-08 11:33:49 +02:00
Andreas Süßenbach
48ceca69f3
Improve alias handling of enums and structs: ( #305 )
...
- Extend and unify alias handling on feature and extension enums
- Extend aliases of enums handling to accept two levels of aliasing
- Extend aliases of structures to allow mulitple aliases of the same structure
- Simplify forward declarations to just declare all structures and aliases
2019-03-18 20:48:10 +01:00
Andreas Süßenbach
70c837fba2
Add DispatchLoaderDynamic constructor for use with linked vulkan library. ( #300 )
2019-03-13 15:33:33 +01:00
Andreas Süßenbach
e935e6291e
Update to Vulkan 1.1.103 ( #298 )
2019-03-12 09:32:39 +01:00
Andreas Süßenbach
018ebdd87f
Fix construction of multiple flags in to_string() functions. ( #293 )
...
Fix construction of multiple flags in to_string() functions based on Wunkolos proposal.
2019-02-25 10:46:51 +01:00
Andreas Süßenbach
efe676ab66
Handle aliased enum values with different extension tag as their base value. ( #290 )
...
+ update Vulkan-Docs to version 1.1.100.
2019-02-13 12:18:49 +01:00
Andreas Süßenbach
9a4f863d6e
Add missing return statement to to_string functions on *Flags. ( #287 )
2019-02-05 10:59:17 +01:00
Andreas Süßenbach
67ffe214e3
Change API of class DipatchLoaderDynamic to be based on vkInstance etc. instead of vk::Instance; add test to show how to use it. ( #284 )
2019-01-22 09:03:03 +01:00
Andreas Süßenbach
00e6f162a8
Update to Vulkan 1.1.98 ( #283 )
2019-01-14 14:10:08 +01:00
Andreas Süßenbach
a147b07737
Cleanup code generation with focus on removing the need to sort all dependencies before writing them.
2019-01-09 11:55:11 +01:00
Andreas Süßenbach
b4080fb425
Correct usage of UniqueHandle<Type,Dispatch> in functions returning vectors of UniqueHandle<Type>. ( #278 )
2018-12-05 15:53:54 +01:00
Andreas Süßenbach
e765318a3d
Correct usage of platform/protect information. ( #276 )
...
+ update to version 1.1.94
2018-12-03 14:33:37 +01:00
Andreas Süßenbach
80518392d5
Introduced NoException test and resolved some warnings on unused parameters in the createResultValue functions. ( #275 )
2018-12-03 14:30:36 +01:00
Andreas Süßenbach
a616542f3c
Fix issue with unused parameter "vectorAllocator" in some functions. ( #277 )
...
+ update to version 94.
2018-11-29 13:21:24 +01:00
Mike Cowan
95fde2253b
Use std::move when calling createResultValue with NO_EXCEPTIONS ( #273 )
2018-11-27 13:03:20 +01:00
Andreas Süßenbach
f99407cf28
Check result in two-step functions like enumeratePhysicalDevices ( #270 )
...
Resolves issue #265
2018-11-07 21:46:18 -05:00
Andreas Süßenbach
8205bf6dbe
Update to Vulkan 1.1.91 ( #267 )
2018-11-06 08:51:33 +01:00
Andreas Süßenbach
c02200ce37
Add support for stateful allocators used with functions returning a std::vector. ( #263 )
...
+ update Vulkan-Docs
2018-10-26 09:07:25 +02:00
Andreas Süßenbach
127de1bf93
Update to Vulkan 1.1.85. ( #258 )
2018-09-25 10:46:26 +02:00
Andreas Süßenbach
295d5c755f
Extend checking of StructureChains to allow transitive extension. ( #254 )
2018-09-20 15:20:00 +02:00
Andreas Süßenbach
1ddafc1c56
Corrected functions dealing with StructureChains. ( #253 )
...
+ adjusted readme.md accordingly
+ added (a first!) test project
2018-09-19 13:49:43 +02:00
Andreas Süßenbach
77ff84f711
Introduce missing non-const cast-operator on structs and unions. ( #250 )
2018-09-18 15:03:17 +02:00
Andreas Süßenbach
a9b5b68572
Switch to warning level 4 ( #240 )
2018-08-17 17:47:48 +02:00
Andreas Süßenbach
58873a31ef
Update to Vulkan 1.1.83 ( #239 )
2018-08-15 22:07:08 +02:00
Markus Tavenrath
7e701c79d6
Update to Vulkan 1.1.82 ( #238 )
2018-08-15 10:09:49 +02:00
Florian Oetke
198bba07ad
changed type of m_dispatch member from const& to const* in ObjectDestroy, ObjectFree and PoolFree ( fixes #233 ) ( #236 )
2018-08-13 09:55:02 +02:00
Markus Tavenrath
7d264c7c10
Update to Vulkan 1.1.81. #undef major, minor and MemoryBarrier due to namespace conflicts. Those macros are deprecated and should not be used anymore. ( #234 )
2018-07-23 17:23:13 +02:00
Andreas Süßenbach
ccd9636c51
Correct return type of create*Unique functions ( #231 )
2018-07-13 13:25:15 +02:00
Andreas Süßenbach
fbd17bb272
Provide Dispatch type to Deleter classes to allow UniqueHandle destroy-functions use the correct vk-function provided by that Dispatch type. ( #228 )
2018-07-09 17:13:25 +02:00
Markus Tavenrath
eaf0fda6de
List out default ctor parameters in separate lines ( #225 )
...
It's often useful to browse through vulkan.hpp to check what the default values
for various info structs are, but having them on a single line makes it hard to
read.
This change puts each ctor argument on a different line, which makes the
default values more visible.
2018-06-12 09:58:52 +02:00
Markus Tavenrath
ea22107198
Update to Vulkan 1.1.76 ( #221 )
2018-05-28 09:35:25 +02:00
Markus Tavenrath
dddd845304
Update to Vulkan 1.1.75 ( #220 )
2018-05-17 16:09:55 +02:00
Patrick Mours
437f800444
Add structure chain constructor which accepts a list of its elements ( #217 )
...
Add structure chain constructor which accepts a list of its elements
2018-05-09 16:32:39 +02:00
Andreas Süßenbach
b075d67fbc
Add constructor for structures which kind of extends some other structures (like Offset3D extending Offset2D) ( #213 )
2018-05-07 16:44:32 +02:00
Markus Tavenrath
4b179131e6
When using local version of vulkan.hpp use local version of vulkan.h … ( #207 )
...
* When using local version of vulkan.hpp use local version of vulkan.h too so that the headers do match.
* Update to Vulkan 1.1.74
2018-04-23 15:16:32 +02:00
Markus Tavenrath
f54bf98790
Update to Vulkan 1.1.72 ( #206 )
2018-04-09 14:48:37 +02:00
Andreas Süßenbach
46d1b60267
Update to Vulkan 1.1.71 ( #196 )
2018-03-19 11:50:29 +01:00
Andreas Süßenbach
141e8ce93b
Use constexpr on simple class constructors. ( #195 )
2018-03-12 14:39:06 +01:00
Andreas Süßenbach
65223fa8a9
Update to Vulkan 1.1.70.1 ( #194 )
2018-03-12 10:16:26 +01:00
Andreas Süßenbach
7e2c734a9a
Fix ObjectDeleter arguments for NoParent cases. ( #192 )
2018-03-05 10:38:47 +01:00
Andreas Süßenbach
164cd27be0
Fix Deleter objects for Device and DeviceMemory. ( #190 )
2018-02-26 15:25:08 +01:00
Markus Tavenrath
ce87df93b5
Use the value of VULKAN_HPP_NAMESPACE when creating error strings ( #187 )
2018-02-20 11:07:51 +01:00
Markus Tavenrath
ac3ad25808
Update to Vulkan 1.0.69 ( #186 )
2018-02-20 10:29:19 +01:00
Andreas Süßenbach
ecea796604
Fix wrong template argument in usage of ObjectDeleter for the create*Unique functions. ( #184 )
2018-02-19 10:44:51 +01:00
Andreas Süßenbach
818dc27d06
Introduce overloads for destroy* and free* functions ( #180 )
2018-02-14 02:49:48 -08:00
Andreas Süßenbach
75cb7d14f1
Correct usage of Allocator in functions returning a vector of UniqueObjects ( #178 )
2018-02-01 14:45:30 +01:00
Markus Tavenrath
4b77709e49
Add Vulkan function dispatcher which queries pointers through vkGet*ProcAddress ( #176 )
2018-01-29 16:39:35 +01:00
Andreas Süßenbach
07b4e69c9d
Introduce VULKAN_HPP_ASSERT, to allow custom assert. ( #175 )
2018-01-23 21:10:55 +08:00
Markus Tavenrath
e97e34675d
Add support for Vulkan call delegation to support custom loaders. ( #174 )
2018-01-22 15:36:15 +01:00
Andreas Süßenbach
d74e5f6199
Change functions returning a UniqueHandle to returning a ResultValue<UniqueHandle>::type, making VULKAN_HPP_NO_SMART_HANDLE and VULKAN_HPP_NO_EXCEPTIONS really independent. ( #173 )
2018-01-16 14:59:54 +01:00
Daniel Kirchner
05586ce4a2
Don't destroy null-objects in UniqueHandle ( Fixes #171 ).
2018-01-14 10:38:05 +01:00
Andreas Süßenbach
c548ea4bf2
Remove constructors for "returnedonly" structures; introduce member inialization for pNext and sType, instead. ( #168 )
2018-01-05 09:25:38 +01:00
Andreas Süßenbach
c4fcc08e95
Reshape alias handling according to new alias usage in vk.xml. ( #167 )
2018-01-04 10:51:17 +01:00
Markus Tavenrath
047961e987
Update to Vulkan 1.0.66 ( #158 )
...
- Add support for the new alias tag
2017-12-04 14:27:47 +01:00
Markus Tavenrath
05bd56f8c5
Fix issue #147 . Do not assert on negative result codes when throwing an exception. There're cases where vendors are non-standard conform and return positive return codes and it's also possible that new success codes could be introduced which require special handling. For the latter case it's legit to throw an exception which a positive result code. ( #156 )
2017-11-30 15:18:58 +01:00
Markus Tavenrath
b8b1b4db63
Fix issue #151 : Add functions to get the parent & allocator or pool from a UniqueHandle ( #155 )
2017-11-29 16:51:35 +01:00
Markus Tavenrath
4da433e279
Fix issue #133 : Add explicit conversion from C-style Vulkan flags to Vulkan-Hpp flags ( #154 )
2017-11-29 14:56:03 +01:00
Markus Tavenrath
1a32a6c072
Add constructors for readonly structures ( #153 )
2017-11-29 14:53:57 +01:00
Andreas Süßenbach
509a3df5bb
Use generated enumeration for sType in struct constructor, instead of generating that value out of the structure's name
...
- Fixes issues on IOS and MacOS platform
- Added some checks on vendorids, tags, and some types.
2017-11-29 10:09:32 +01:00
Markus Tavenrath
6e12cceb37
Fix issue #146 . Remove constexpr to bring back support for VS 2013. ( #149 )
2017-11-24 11:14:03 +01:00
Markus Tavenrath
e464d695dd
Fix issue mentioned in PR #137 . There's no technical reason not to allow vk::UniquePtr with exceptions are disabled. ( #142 )
2017-10-24 16:35:31 +02:00
Andreas Süßenbach
cb55e77f53
Adjustments for Vulkan 1.0.64 ( #140 )
2017-10-24 16:15:43 +02:00
Markus Tavenrath
5ee30d3ce1
Update to Vulkan 1.0.62 ( #136 )
2017-10-09 17:21:32 +02:00
Markus Tavenrath
6681979254
Allow passing allocator object as parameter when using custom allocators for std::vector return types ( #132 )
2017-09-28 23:37:27 +02:00
Andreas Süßenbach
0b8ab65be2
Adjustments to changes with Vulkan 1.0.61 ( #131 )
...
To generate Vulkan.hpp version 1.0.61 change line 5336 in vk.xml from
<command>
to
<command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY">
2017-09-28 11:49:17 +02:00
Markus Tavenrath
b4694d931c
Make Vulkan-Hpp namespace configurable. ( #129 )
2017-09-19 14:55:47 +02:00
Samuel Williams
daae0b6194
Add UniqueHandle non-const accessors, ensure all by reference. ( #123 )
...
* Add UniqueHandle non-const accessors, ensure all by reference.
- Add `Type * operator->()`
- Fix `Type get() const` to `const Type & get() const`
- Add `Type & get()`
* Add support for structure pointer chains was missing some generator code.
* Update vulkan.hpp with changes.
2017-09-14 15:22:47 +02:00
Markus Tavenrath
bca6564dac
Add support for structure pointer chains & bump version to 1.0.57 ( #119 )
2017-08-16 11:46:45 +02:00
Andreas Süßenbach
a50ea7dc6c
Update to Vulkan 1.0.55 ( #116 )
2017-07-19 09:35:28 +02:00
Andreas Süßenbach
195479de01
bracket the exception definitions by "#ifndef VULKAN_HPP_NO_EXCEPTIONS" ( #114 )
2017-06-26 15:25:53 +02:00
Andreas Süßenbach
c71fcac937
Update to Vulkan 1.0.51 ( #111 )
2017-06-16 15:52:34 +02:00
Markus Tavenrath
8f21dfa0f5
Use string templates in more places ( #106 )
2017-05-16 15:32:14 +02:00
Markus Tavenrath
850e77938f
Add support for template strings in code generator to make the code generator more readable. ( #103 )
...
Update to Vulkan 1.0.48
2017-05-11 18:21:14 +02:00
Andreas Süßenbach
cd9d4f1388
Unify long string literals to use raw string literals. ( #101 )
2017-04-28 18:49:59 +02:00
Damian Dyńdo
6e9d9b5111
Introduce custom exceptions for Vulkan-Hpp ( #97 ) ( #99 )
2017-04-26 09:30:24 +02:00
Andreas Süßenbach
bea247fd4e
Cleanup and commenting on the writing part. ( #98 )
2017-04-24 09:30:02 +02:00
Andreas Süßenbach
6f37c62592
Update to version 1.0.46 ( #96 )
...
+ extend enum value handling to handle names with multiple extension tags.
2017-04-06 14:36:03 +02:00
Markus Tavenrath
512ab0b85e
Update to version 1.0.42 ( #89 )
2017-02-27 15:34:11 +01:00
Andreas Süßenbach
8e3dd21d42
Add missing "std::" to nullptr_t. ( #83 )
...
Fixes issue #81 .
2017-02-16 16:20:24 +01:00
Andreas Süßenbach
413dfd8f12
Introduce explicit constructors of handle-wrappers from raw handles in case of non-typesafe conversion ( #82 )
...
Resolves issue #70 .
2017-02-15 17:07:50 +01:00