Markus Tavenrath
96b0bfdf0d
Fix DynamicLoader on 32-bit platforms ( #427 )
2019-11-06 13:52:41 +01:00
Andreas Süßenbach
9f7b06cbd1
Remove VULKAN_HPP_NOEXCEPT from functions that throw a LogicError. ( #416 )
2019-10-30 10:10:32 +01:00
mocabe
68b11f1e90
Disable CTAD on ArrayProxy's constructors ( #405 )
...
* Disable CTAD on ArrayProxy's reference constructor
* Disable CTAD on ArrayProxy's initializer_list ctor
2019-10-29 16:00:03 +01:00
Markus Tavenrath
178bf4ded7
Fix typo when calling operator==(enum, enum) ( #415 )
2019-10-28 15:27:48 +01:00
Markus Tavenrath
3976a4cc75
Fix msvc 2015 issue with operator== being ambigious and incorrect constexpr in ResultValue ( #412 )
2019-10-25 13:21:49 +02:00
nyronium
6da60c59dc
Added noexcept on all correct locations (RAII, internal classes, free functions, trivial cases) ( #338 )
...
This includes complex cases such as generated functions (those not returning VkResult and nothing
with an allocator like std::vector), all internal classes (Flags),
all functions not returning VkResult, as well as all trivial cases.
2019-10-23 10:52:29 +02:00
jeremyk-lunarg
65af859e4d
build: Add MacOS Specific Code to DynamicLoader ( #409 )
...
Added MacOS specific code to the DynamicLoader class.
vkCubepp in KhronosGroup/Vulkan-Tools requires this change to
build on MacOS.
2019-10-17 09:59:35 +02:00
Andreas Süßenbach
f379a11a69
Make logical operators on flags constexpr. ( #407 )
2019-10-10 07:29:59 -04:00
Andreas Süßenbach
89c9c91efd
Add define VULKAN_HPP_ENABLE_DYNAMIC_LOADER_TOOL to allow hiding the helper class vk::DynamicLoader. ( #396 )
2019-09-30 21:14:22 -04:00
Andreas Süßenbach
cdfb290dc1
Make ConstExpressionArrayCopy::copy() a constexpr with C++14 earliest. ( #394 )
2019-09-27 08:59:59 +02:00
Andreas Süßenbach
becef43315
Change (most of) the samples to use the DispatchLoaderDynamic by default. ( #392 )
2019-09-26 09:55:15 +02:00
Andreas Süßenbach
5ceb4d2801
Add missing extern declaration of defaultDispatchLoaderDynamic ( #391 )
2019-09-25 15:01:29 +02:00
Andreas Süßenbach
a5d14b5c16
Correct indexing in ConstExpressionArrayCopy. ( #388 )
2019-09-25 12:05:31 +02:00
Markus Tavenrath
e26cb8113a
Add support for a full volk replacement by supporting a global DispatchLoaderDynamic. The global dynamic dispatcher will be available if either the define VULKAN_HPP_DISPATCH_LOADER_DYNAMIC is set to 1 or if VK_NO_PROTOTYPES is defined. In those cases it is required to add VULKAN_HPP_DEFAULT_DISPATCH_LOADER_DYNAMIC_STORAGE; to any compilation unit of the project to allocate storage for the dispatcher. ( #390 )
2019-09-25 11:59:39 +02:00
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
6f80427c41
Move check for redundant aliased enum values from read to write. ( #375 )
2019-08-19 15:40:22 +02:00
Andreas Süßenbach
4ac6dc4760
Fix wrong naming of complex union member types. ( #371 )
2019-08-15 09:50:26 +02:00
Jason Ekstrand
c5e8f86a58
Only emit union constructors and setters if !returnedonly ( #369 )
2019-08-14 11:57:10 +02:00
Markus Tavenrath
b4e27f9be0
Add support for 1.1.119 ( #370 )
2019-08-12 09:55:23 +02:00
orbea
eaf09ee61e
Fix typo. ( #365 )
...
Thanks a lot for spotting this issue!
2019-07-25 14:26:03 +02:00
Yiwei Zhang
d5d4f3457b
Fix the header generation for complex disabled extensions ( #363 )
2019-07-25 09:44:49 +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
nyronium
cd6e0a6a89
Corrected inline if, which should be evaluated before writing output ( #337 )
2019-06-11 10:13:39 +02:00
nyronium
96299b3a1f
Rename variables named 'requires' which is a keyword in c++20 ( #336 )
2019-06-11 10:12:37 +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
Andreas Süßenbach
ac10dafd73
Add handling of "comment" to disabled extensions. ( #330 )
2019-05-13 12:06:41 +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
bcc02a1cb0
Cleanup on platform protection handling. ( #312 )
2019-04-01 09:30:06 +02:00
Andreas Süßenbach
7905145361
Get the to_string function of an enum inside of the corresponding platform protection ( #311 )
2019-03-21 11:53:30 +01:00
Andreas Süßenbach
fe614bd960
Add platform specific protection for enum classes listed in a platform-protected extension. ( #310 )
2019-03-20 17:39:51 +01:00
Andreas Süßenbach
3f20016ba9
Make the default value on "other" types dynamic by reading those types from <type> "requires" in vk.xml. ( #306 )
2019-03-19 15:34:00 +01: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
Wunkolo
a08954c470
Add structurechain tuple-based getter ( #292 )
2019-03-11 15:25:31 +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
e3f096bc7c
Cleanup on reading structure members and command arguments. ( #282 )
2019-01-14 10:09:19 +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
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
605ff24487
Add an error check on functions returning VkResult but not specifying success codes. ( #262 )
2018-10-15 14:27:42 +02:00
Andreas Süßenbach
b5af45219b
Resolve a couple of warnings. ( #255 )
2018-09-25 11:23:27 +02:00
WubiCookie
e4447ba76e
Fix instance-level functions being loaded with vkGetDeviceProcAddr in vk::DispatchLoaderDynamic::init ( #257 )
2018-09-25 10:53:37 +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
1944b56b9f
Corrected handling of aliased structure types; ( #251 )
...
Improved checking in enum/bitmask handling.
2018-09-18 16:56:44 +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
e48f8f99a3
Correct dependency handling of aliased structures; generalized usage of first argument in member function calls. ( #249 )
2018-09-17 05:56:50 -07: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
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
Markus Tavenrath
1c06eb7ac0
Change exceptions to warnings for unknown elements & attributes ( #232 )
2018-07-16 10:26:24 +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
76bf85b50e
Slightly improved vector-size determination on functions returning a vector and detection if a singular version of a function should be generated. ( #229 )
2018-07-11 08:50:20 +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
3f9ca5433a
Print a warning when encountering unknown tags in the xml spec instead of aborting with an exception. ( #222 )
2018-06-05 11:28:31 +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
bbaa5956c6
First samples on using vulkan.hpp: 01_InitInstance, 02_EnumerateDevices, 03_InitDevice, 04_InitCommandBuffer, 05_InitSwapchain, 06_InitDepthBuffer. ( #197 )
2018-03-31 01:09:50 -07: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
7e2c734a9a
Fix ObjectDeleter arguments for NoParent cases. ( #192 )
2018-03-05 10:38:47 +01:00
Markus Tavenrath
8dbe1fa9d4
Don't create destroy functions for alias commands ( #191 )
2018-03-01 11:51:30 +01:00
Andreas Süßenbach
164cd27be0
Fix Deleter objects for Device and DeviceMemory. ( #190 )
2018-02-26 15:25:08 +01:00
Markus Tavenrath
82a14093cf
Don't fail on new platforms tag ( #188 )
2018-02-20 11:23:54 +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
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