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
56f418b41c
Remove wrong #if !defined(NDEBUG) ( #182 )
2018-02-14 05:42:47 -08: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
Andreas Süßenbach
15ac21442d
Refactor into the newly introduced class VulkanHppGenerator. ( #164 )
2017-12-21 07:40:48 -04:00
Andreas Süßenbach
25ad869b15
Extend checks on attributes, introduce checks on elements ( #161 )
2017-12-13 22:57:40 +01:00
Andreas Süßenbach
6be84edcd9
Improve error handling by validating attributes and give more meaningful error messages
2017-12-07 08:46:58 +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
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
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
Andreas Süßenbach
7b37d72dd3
Cleanup and some comments on reading. ( #90 )
2017-03-08 14:14:01 +01: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
Andreas Süßenbach
9e8f233557
Update to Vulkan 1.0.40; added handling of types and commands from disabled extensions ( #80 )
2017-02-14 18:28:05 +01:00
Andreas Süßenbach
f0eff17d9b
Introduce constructor and assignment operator on nullptr_t ( #77 )
...
Fix issue #77
2017-02-14 13:56:11 +01:00
Andreas Süßenbach
43b2c5ef66
Changed *Deleter classes to not hold a pointer to the controlling object, but hold a copy of it. ( #76 )
2017-02-13 09:23:35 +01:00
Andreas Süßenbach
3b31847126
Cleanup on data structures and more: ( #74 )
...
- CommandData now holds it's full function name (without "vk") and it's reduced function name (used as member function name);
- CommandData now holds the name of the owning handle (class), if it is owned by one;
- EnumData now holds the name of that enum;
- for consistency reasons, "Arguments" have been renamed to "Params"
- some functions have been changed to output to std::ostream (instead of std::ofstream), to detect and filter equal function bodies for enhanced/non-enhanced mode;
- changed some functions to use std::algorithms and lambdas instead of explicit loops
2017-02-08 13:56:06 +01:00
Andreas Süßenbach
6243e6deaa
Made UniqueHandle constructor explicit. ( #72 )
...
Fix issue #67
2017-02-06 13:26:43 +01:00
Andreas Süßenbach
bdbf7fef28
Prevent warning on multiple defined macro VULKAN_HPP_TYPESAFE_CONVERSION in 32 bit. ( #71 )
2017-02-01 10:15:52 -08:00
Andreas Süßenbach
02404f397d
Filter out functions Structure::setSType(), as the structure types are supposed to be immutable. ( #60 )
2017-01-30 08:08:49 -08:00
Andreas Süßenbach
ae2e22e506
Introduce helper class UniqueHandle; add creation functions returning UniqueHandles ( #59 )
2017-01-27 06:15:50 -08:00
Andreas Süßenbach
09e169c46f
Update to rel 1.0.35 ( #54 )
...
- add some forward declaration support to resolve (direct) circular dependencies
- check on multiple output arguments of functions, using none then
- add "protect" support on handles
- correct type determination on "const Type* const*"
2016-12-01 22:00:03 +01:00
Markus Tavenrath
3e3c16a0a1
Add constructor to Optional<RefType> which accepts a RefType* in addition RefType& and nullptr. This is required since *nullptr is illegal and writing (ptr == nullptr) ? nullptr : *ptr isn't an efficient solution for the problem. ( #45 )
2016-11-04 09:14:53 +01:00
Andreas Süßenbach
952667d3c0
Add operator~() on Flags<> and FlagBits ( #44 )
...
* Add operator~() on Flags<> and FlagBits
2016-10-26 17:49:58 +09:00
Markus Tavenrath
8236dd0ba9
Update to version 1.0.32 ( #43 )
2016-10-25 16:51:40 +02:00
Markus Tavenrath
bf2cd41450
Add VULKAN_HPP_INLINE to force inlining in all functions which had the inline keyword before. MSVC didn't inline some of the functions including the critical createResult ones. ( #41 )
2016-10-17 10:34:14 +02:00
Markus Tavenrath
1ba3ceaf3f
Add support for std::tie on ResultValues. This allows developers to write ( #39 )
...
vk::Result result;
vk::Image image;
std::tie(result, image) = device.createImage(...);
when using the non-exception mode.
2016-10-14 16:22:14 +02:00
Markus Tavenrath
84a35fc36f
Fix issue_35, update to Vulkan 1.0.29 ( #37 )
2016-10-05 13:50:30 +02:00
Markus Tavenrath
ac9510cb7d
Fix 64-bit define detection in Vulkan 1.0.25 ( #29 )
2016-09-05 10:26:43 +02:00
Endre Oma
6285f71d58
Fix GCC version detection for unrestricted unions ( #28 )
2016-08-31 15:34:05 +02:00
Markus Tavenrath
33071cd7a3
issue #25 : Change error checking asserts to std::runtime_error exceptions for invalid enums tags. ( #26 )
2016-08-29 10:03:04 +02:00
Markus Tavenrath
820ec7097a
Add support for operator<
2016-08-16 08:44:04 +02:00
Markus Tavenrath
1b25982cc9
Add operator== and operator!= to handles. Fix issue #20 ( #22 )
2016-08-15 16:10:20 +02:00
Andreas Süßenbach
73857ee1dd
Add security check and resize on vector-returning functions where the size of the vector is queried from vulkan, and the size can potentially change between querying the size and querying the data. ( #18 )
2016-08-09 11:33:30 +02:00
Markus Billeter
5cc20f59ea
Fixed: use MaskType rather than uint32_t
2016-07-27 14:23:44 +02:00
Markus Tavenrath
bc59efe23c
Remove nvidia references
2016-07-26 16:28:30 +02:00
Markus Tavenrath
a31b910628
Fix gcc/clang includes and warnings
2016-07-26 16:16:45 +02:00
Andreas Süßenbach
54eab5414c
Introduce operator== and operator!=() on structs
2016-07-25 20:31:10 +02:00
Andreas Süßenbach
c0fb89411e
Add member functions begin(), end(), front(), back(), and empty() to vk::ArrayProxy to make it a better container.
2016-07-25 06:04:56 +02:00
Markus Tavenrath
65a7d2f644
Update to Vulkan 1.0.17, Switch to Apache 2.0 license
2016-07-14 10:29:16 +02:00
Andreas Süßenbach
be9beb84ac
Added singular version of some functions
...
For functions that would return a vector of stuff, a singular version is introduced returning just on stuff.
Currently, that's just createGraphicsPipeline, createComputePipeline, and createSharedSwapchainKHR.
2016-06-22 14:06:14 +02:00
Andreas Süßenbach
d2aea04b6c
Renamed from VkCpp to VulkanHpp
2016-06-21 10:35:47 +02:00