Commit Graph

783 Commits

Author SHA1 Message Date
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
Karl Schultz
d62cb5d199 Add Travis-CI badge to README.md (#88)
Show Travis-CI build status in the README.md so that it is easily seen while viewing the GitHub repo.
2017-10-09 17:22:01 +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
8da778cfb3 Bump Visual Studio requirement to VS2015 and add UnqiuePtr documentation. (#130) 2017-09-28 10:21:35 +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
Dylan McGannon
93fca3b8d9 Removed extra back tick. (#94) 2017-03-20 19:18:08 +01: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
Markus Tavenrath
a167d626b8 Remove clang from travis build until libc++/libstd++ issues have been sorted out. (#87) 2017-02-27 14:54:06 +01:00
Karl Schultz
61b349876a Add Travis CI config file (#84) 2017-02-21 12:02:41 +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
f7cf7eeb3e re-run generation on Vulkan version 1.0.39 with Structure::setSType() functions filtered out. (#65) 2017-02-01 10:15:05 -08:00
Andreas Süßenbach
43ec5d8ea9 Update to Vulkan 1.0.39 (#63) 2017-01-30 08:09:29 -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
Markus Tavenrath
9cd09f944f Update to Vulkan 1.0.38 (#57) 2017-01-17 10:14:50 +01: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
81dd365ccc Fix naming conventions for functions in README.md and update to Vulkan 1.0.34 (#50)
Fixes issue #49
2016-11-22 08:53:31 +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
c8df19c07b Update documentation to include latest features (#42) 2016-10-19 16:07:39 +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
938db16ce5 Update to Vulkan 1.0.31 (#40) 2016-10-14 18:36:15 +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
d2423209f8 Update to Vulkan 1.0.30 (#38) 2016-10-07 15:14:24 +02:00
Markus Tavenrath
84a35fc36f Fix issue_35, update to Vulkan 1.0.29 (#37) 2016-10-05 13:50:30 +02:00