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
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
Andreas Süßenbach
f1ade1b3ed
Merge pull request #23 from mtavenrath/operator_less
...
Add operator< to handles
2016-08-16 10:03:17 +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
Andreas Süßenbach
633182bbc0
Merge pull request #13 from billeter/flagfix
...
Cast to MaskType rather than uint32_t
2016-07-27 19:36:28 +02:00
Markus Billeter
40139e1741
Regenerate vulkan.hpp
2016-07-27 14:24:10 +02:00
Markus Billeter
5cc20f59ea
Fixed: use MaskType rather than uint32_t
2016-07-27 14:23:44 +02:00
Markus Tavenrath
02f86eafea
Update to version 1.0.21 ( #12 )
2016-07-27 09:41:47 +02:00
Andreas Süßenbach
623232ddeb
Merge pull request #11 from mtavenrath/remove_nvidia_references
...
Remove nvidia references
2016-07-26 16:58:29 +02:00
Markus Tavenrath
bc59efe23c
Remove nvidia references
2016-07-26 16:28:30 +02:00
Andreas Süßenbach
dd2744eecf
Merge pull request #10 from mtavenrath/fix_headers
...
Fix gcc/clang includes and warnings
2016-07-26 16:18:16 +02:00
Markus Tavenrath
a31b910628
Fix gcc/clang includes and warnings
2016-07-26 16:16:45 +02:00
jeaye
6740df4faf
Change readme example to catch std::exception ( #4 )
...
There are two reasons for this change.
1) The C++ mantra "throw by value, catch by reference" still applies,
even when you're only specifically throwing std::system_error at this
time
2) Vulkan-Hpp is using C++ stdlib containers, such as std::string and
std::vector, which have their own exception specifications to consider.
The example provided may throw various exceptions, all of which derive
from std::exception, and many will not be std::system_error.
This is a serious issue in the readme simply because that snippet of
code will be the copy/pasted foundation of many projects which adopt
Vulkan-Hpp. We might as well try to avoid some common pitfalls of
exception handling.
2016-07-25 20:40:22 +02:00
Markus Tavenrath
e1703832d8
Merge pull request #8 from mtavenrath/operator_equal
...
Introduce operator== and operator!=() on structs
2016-07-25 20:34:45 +02:00
Andreas Süßenbach
54eab5414c
Introduce operator== and operator!=() on structs
2016-07-25 20:31:10 +02:00
Markus Tavenrath
5c5a00110e
Merge pull request #7 from asuessenbach/extentArrayProxy
...
Add member functions begin(), end(), front(), back(), and empty() to vk::ArrayProxy to make it a better container.
2016-07-25 10:30:40 +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
Markus Tavenrath
28890d7bc4
Merge pull request #2 from asuessenbach/SingularFunctions
...
Added singular version of some functions.
For functions that would return a vector of stuff, where the number of stuff is determined by the size of an input array, a singular version is introduced returning just on stuff.
2016-06-30 09:17:14 +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
Markus Tavenrath
8e66e869df
Merge pull request #1 from asuessenbach/RenameToVulkanHpp
...
Renamed from VkCpp to VulkanHpp
2016-06-21 13:35:24 +02:00
Andreas Süßenbach
d2aea04b6c
Renamed from VkCpp to VulkanHpp
2016-06-21 10:35:47 +02:00
Markus Tavenrath
3b96c38a41
Merge pull request #123 from asuessenbach/DefaultOnEmptyFlagAsLastArgument
...
Introduced default for last argument of functions when that argument is a Flag whose corresponding FlagBits has no values.
Currently, it's just Device::mapMemory() and Device::resetDescriptorPool()
2016-06-20 22:34:55 +02:00
Andreas Süßenbach
400c51216f
Introduced default for last argument of functions when that argument is a Flag whose corresponding FlagBits has no values.
...
Currently, it's just Device::mapMemory() and Device::resetDescriptorPool()
2016-06-20 11:15:07 +02:00
Markus Tavenrath
3c045ecaa7
Merge pull request #122 from asuessenbach/Version13
...
Update to Version 1.0.13
2016-06-17 01:55:30 +02:00
Andreas Süßenbach
9aadad05c0
Update to Version 1.0.13
2016-06-16 16:30:27 +02:00
Markus Tavenrath
af6d55398d
Merge pull request #121 from asuessenbach/PrivateSType
...
Made StructureType sType private, as nobody should need to access that.
2016-06-16 03:00:15 +02:00
Markus Tavenrath
cf0f082f36
Merge pull request #120 from asuessenbach/ConstructorWithDefaults
...
Changed from two constructors for structures to just one with some default for each element
2016-06-16 02:59:33 +02:00
Andreas Süßenbach
c27468dc4e
Changed from two constructors for structures to just one with some default for each element
2016-06-15 17:50:06 +02:00
Andreas Süßenbach
6056e66a77
Made StructureType sType private, as nobody should need to access that.
2016-06-15 15:22:09 +02:00
Markus Tavenrath
82841a9751
Add reference to Sascha Willems samples port from Brad Davis.
2016-06-07 08:04:07 +02:00
Markus Tavenrath
73a3833628
Merge pull request #110 from asuessenbach/DataResult
...
Introduced define VK_CPP_NO_EXCEPTIONS, to support calling vk-functions without throwing exceptions on error conditions. Now, depending on that define, some functions can return a struct containing the vk::Result and some generated value.
2016-05-19 15:14:54 +02:00
Andreas Süßenbach
b81f8ec376
Introduced define VK_CPP_NO_EXCEPTIONS, to support calling vk-functions without throwing exceptions on error conditions. Now, depending on that define, some functions can return a struct containing the vk::Result and some generated value.
2016-05-19 11:33:52 +02:00
Markus Tavenrath
4bf660700d
Merge pull request #108 from asuessenbach/Allocator
...
Added allocator as template argument for functions returning an std::vector.
2016-05-12 12:05:44 +02:00
Andreas Süßenbach
dc0354bdc6
Extended functions returning a std::vector to get the allocator for that vector as a template argument.
2016-05-11 18:08:46 +02:00
Markus Tavenrath
954bc6a34e
Merge pull request #107 from asuessenbach/FixOptional
...
Added nullptr_t-constructor to ArrayProxy, simplifying handling of empty arrays.
2016-05-11 14:24:25 +02:00
Andreas Süßenbach
9fe6b2384e
Added nullptr_t-constructor to ArrayProxy, simplifying handling of empty arrays.
2016-05-11 11:07:04 +02:00
Markus Tavenrath
9c55803341
Merge pull request #106 from asuessenbach/DirectAccess
...
Changed struct/union wrappers from class to struct/union, directly containing the members of the native struct/union
*no accessor functions to those members any more, but just direct access to them available;
*modified "named parameter idiom" to use setter-functions with the prefix "set", continuing with an uppercase letter;
*If the C++11 feature "unrestricted unions" is not supported, unions may hold the native vulkan datatypes, instead of those from the vk-namespace (in fact, it's just the vk::ClearValue that needs handling here). For clang, gcc, and MSVC compiler, the support of/version supporting this feature is checked; for other compilers, you need to check on your own and define VK_CPP_HAS_UNRESTRICTED_UNIONS if appropriate.
2016-05-10 16:14:33 +02:00