Sharadh Rajaraman
26664a38a4
Add extension macros as constexpr ( #1710 )
...
* Initial implementation
* Reordered prefixes, added SPEC_VERSION macro
- And added using statements to module file
* Actually add changes to .hpp and .cppm files
* Fixes for extension constexpr macros
- renamed some vars
- simplified logic and control flow
* Grouped by extension name rather than macro guards
- And added titles to all extension constexprs
* Syntax changes
- Removed the structured binding and fixed asserts
- Used C++20 functions
- Added another assert to check that extension and specversion macros exist
* Remove `std::ranges` usage
2023-10-26 14:59:13 +02:00
Andreas Süßenbach
de5821703f
Ignore warnings in some tests; fix ambiguity in ArrayWrapper test ( #1712 )
2023-10-24 18:27:35 +02:00
github-actions[bot]
9c15a1e1ef
Update Vulkan-Headers to v1.3.269 ( #1707 )
...
Co-authored-by: GitHub <noreply@github.com>
2023-10-23 13:58:24 +02:00
Andreas Süßenbach
3e0d722ca5
Silent warnings on unused variables in some tests; make test UniqueHandleDefaultArguments part of the solution for 64 bit only. ( #1704 )
2023-10-18 13:45:14 +02:00
Andreas Süßenbach
5b6f6faf7a
Fix ArrayWrapper test program: don't use std::string_literals to be C++11 conform. ( #1703 )
2023-10-18 09:55:20 +02:00
Andreas Süßenbach
c77427babb
Adjust module support handling with CMake version 3.28 and above ( #1699 )
2023-10-18 08:07:18 +02:00
Andreas Süßenbach
33ea43b53f
Update submodule glslang to version 13.0.0 ( #1700 )
2023-10-17 12:41:14 +02:00
Andreas Süßenbach
bab0e249f2
Improve implicit conversion operators of vk::ArrayWrapper1D on char type; added constructors from std::string and std::string_view ( #1698 )
2023-10-17 08:52:54 +02:00
Andreas Süßenbach
962979c679
Identify delete commands starting with "vkRelease" ( #1697 )
2023-10-16 16:01:35 +02:00
github-actions[bot]
d2134fefe2
Update Vulkan-Headers to v1.3.268 ( #1696 )
...
Co-authored-by: GitHub <noreply@github.com>
2023-10-16 12:10:45 +02:00
tom-huntington
2620a62641
Update README.md ( #1675 )
...
* Update README.md
Update readme cmake commands
* Update README.md
2023-10-12 13:35:33 +02:00
Andreas Süßenbach
c8cf030fe9
Add FlagBits type as required if it is not listed where the corresponding Flags type is required ( #1689 )
2023-10-10 21:54:36 +02:00
Andreas Süßenbach
6be20fb9e3
Fix documentation on existance of some copyable vk::raii classes ( #1687 )
2023-10-10 08:38:18 +02:00
Anton Shangareev
f9bed11716
Use add_subdirectory-friendly CMAKE variables ( #1679 )
2023-10-09 16:05:13 +02:00
Andreas Süßenbach
7b8f30221a
Extend not on module usage with Visual Studio. ( #1684 )
2023-10-09 13:37:36 +02:00
Anton Shangareev
b961a1a4c2
Fix C++20 module build with -DVULKAN_HPP_NO_SMART_HANDLE ( #1678 )
...
* Move SharedHandle and UniqueHandle under correct preprocessor guard in .cppm
* Fix VulkanHppGenerator
2023-10-09 12:25:01 +02:00
Andreas Süßenbach
18e912955e
Add some note in README.md, that our modules are not working with VS 2022. ( #1683 )
2023-10-09 11:56:47 +02:00
github-actions[bot]
d8d8b53a31
Update Vulkan-Headers to v1.3.267 ( #1681 )
...
Co-authored-by: GitHub <noreply@github.com>
2023-10-09 10:15:08 +02:00
Andreas Süßenbach
f76ce52df5
Introduce using CppType type-trait for raii-classes, add two helper functions to filter the cpp-types out of a vector of raii-types. ( #1672 )
2023-10-05 15:19:16 +02:00
Andreas Süßenbach
f97633a220
Extend command generation to support not returning some return stuff and not templatizing a void pointer. ( #1666 )
2023-10-02 14:57:52 +02:00
Andreas Süßenbach
eccf541cd4
Add support of hex numbers for enum values ( #1671 )
2023-10-02 14:56:27 +02:00
github-actions[bot]
7b70ce4831
Update Vulkan-Headers to v1.3.266 ( #1670 )
...
Co-authored-by: GitHub <noreply@github.com>
2023-10-02 10:43:10 +02:00
Stephan Seitz
a858acdd90
Update workflow deps ( #1667 )
...
* ci: update workflow versions
This should avoid deprecation warnings shown for example in
https://github.com/KhronosGroup/Vulkan-Hpp/actions/runs/6319631419
* ci: set correct CMake options in update-header-pr workflow
2023-09-28 16:39:48 +02:00
Andreas Süßenbach
9aa679e5e8
Add support of attribute "type" for a enums in an extension, storing them as a constant. ( #1668 )
2023-09-28 13:23:31 +02:00
Andreas Süßenbach
f3cdc24a13
Remove clang++12 from the Ubuntu CI. ( #1669 )
2023-09-28 10:32:26 +02:00
github-actions[bot]
c0fa16710b
Update Vulkan-Headers to v1.3.265 ( #1665 )
...
Co-authored-by: GitHub <noreply@github.com>
2023-09-27 09:30:15 +02:00
Andreas Süßenbach
f1b8af1157
Reduced listing of unused VkStructureType value from error to warning. ( #1664 )
2023-09-26 15:05:54 +02:00
Andreas Süßenbach
3e1e9b4653
Add support of commands returning void and getting two simple data type values. ( #1663 )
2023-09-26 12:02:43 +02:00
Andreas Süßenbach
37b50fa9ef
Revert "Update Vulkan-Headers to v1.3.265 ( #1661 )" ( #1662 )
...
This reverts commit 205758299b
.
2023-09-25 15:28:32 +02:00
Andreas Süßenbach
205758299b
Update Vulkan-Headers to v1.3.265 ( #1661 )
2023-09-25 11:56:48 +02:00
Andreas Süßenbach
128261aa45
Add missing header in vulkan.cppm. ( #1659 )
2023-09-19 17:40:35 +02:00
Ilya Doroshenko
5d0d3b7bd9
Shared Handles ( #1619 )
...
* stage 1: added shared handles and all traits
* moved deleter to the shared part, now Shared handle weights 2 pointers
* Fixed Destroy Function
* generated headers
* At least no errors.
TODO: get image overload of shared handle back
make an example
* fixed all SFINAE issues, moved image specialization
* Added a sample
* made better example, added specialization for swapchain, added shared handles to readme
* Major update:
Fixed all wishes
Made std::shared_ptr do heavy lifting
Reduced code complexity
Added ParentType to basic handles
Added put and put_native for cross-abi usage
* more readme
* safer release()
removed put() for now
* better synchronization
inspired by STL shared_ptr implementation
* removed test shared pointer
* added forward type for better interop with VMA
added parent checking
* fixed getParent()
* added non-deleting overloads for Queue, DisplayKHR and PhysicalDevice
* Shared non-destoyed type now have handles
* using constructors are made to comply standard
* fixed leak
* shared handles migrated to own header,
made module entries
* header is independent now
* rebased repo, updated the example
* fixed most of the stuff
* renamed parent of, added guide to make shared handles
* vulkansc
* moved destructor to shared handle traits
* resolved issues with CI
* more relaxed memory ordering for release operation
* trying to remove submodule
* renamed to destructorType
* suppressed function cast warning
* only GCC should be affected
2023-09-19 13:04:36 +02:00
Andreas Süßenbach
d60453f6ea
Introduce hard-coded default values for some structure members. ( #1658 )
2023-09-19 12:05:06 +02:00
Andreas Süßenbach
39c8c02de0
Make the tag on constants uppercase. ( #1657 )
2023-09-18 18:03:18 +02:00
Andreas Süßenbach
9004069b9b
Move Flags<> and FlagTraits<> from vulkan.hpp to vulkan_enums.hpp ( #1654 )
2023-09-07 18:42:46 +02:00
Andreas Süßenbach
d4704cce01
Make C++20 modules work with the defaultDispatchLoaderDynamic. ( #1651 )
...
* Make C++20 modules work with the defaultDispatchLoaderDynamic.
* Add vulkan_hpp_macros.hpp to list of installed files.
* Adjust the text on module in the readme.
* Rename module from vulkan to vulkan_hpp
* Adjust some comments.
* Add a little disclaimer to vulkan.cppm.
2023-09-07 15:20:10 +02:00
Andreas Süßenbach
a2e240c7e7
Relax check for constants as array size: also allow potentially externally defined constants ( #1652 )
2023-09-04 12:31:50 +02:00
Mike Gorchak
f51dac9f18
Switch __QNXNTO__ macro check to __QNX__ ( #1646 )
...
During last 23 years the QNX Neutrino microkernel was active,
__QNXNTO__ macro belongs to it. Now QNX Muon microkernel is
under development, so __QNX__ macro covers both versions:
Neutrino and Muon.
First public announce of QNX Muon was here: https://blogs.blackberry.com/en/2023/04/get-in-the-sdv-podcast-from-blackberry-season-2-episode-3
2023-08-30 12:26:18 +02:00
Andreas Süßenbach
23606b20f7
Guard vk::raii names in vulkan.cppm just as in vulkan_raii.hpp. ( #1650 )
2023-08-28 13:30:00 +02:00
github-actions[bot]
ed0b00e095
Update Vulkan-Headers to v1.3.262 ( #1647 )
...
Co-authored-by: GitHub <noreply@github.com>
2023-08-28 11:05:58 +02:00
Andreas Süßenbach
ef0dbd602b
Correct includes in vulkansc-headers. ( #1645 )
2023-08-28 10:21:34 +02:00
Andreas Süßenbach
17fa2b92f7
Resolve synchronization issue in [RAII_]Samples/InputAttachment. ( #1644 )
2023-08-24 08:32:15 +02:00
Andreas Süßenbach
fee04df943
Resolve some more validation layer issues. ( #1643 )
2023-08-23 13:58:54 +02:00
Andreas Süßenbach
14d048e9bf
Reorder some object instantiations to get valid destruction sequence. ( #1641 )
2023-08-21 11:35:17 +02:00
Andreas Süßenbach
d07d082af1
Resolve some validation layer warnings in some samples. ( #1640 )
2023-08-17 14:28:39 +02:00
Andreas Süßenbach
57d54a0ba6
Introduce a helper function to dynamically map from vk::ObjectType to vk::DebugReportObjectTypeEXT. ( #1639 )
2023-08-16 08:37:43 +02:00
Andreas Süßenbach
a6b2199409
Change samples from resetting command buffers to resetting command pool ( #1638 )
2023-08-14 16:09:11 +02:00
Andreas Süßenbach
e2f5348e28
Relax check on "depends" for extension requires. ( #1637 )
2023-08-10 10:35:19 +02:00
Andreas Süßenbach
87936f9bc8
Resolve a validation layer warnings on destruction order of Image/Buffer and bound DeviceMemory. ( #1636 )
2023-08-08 13:40:56 +02:00
Andreas Süßenbach
0e3e8967be
Extend the depends-handling in readExtension. ( #1635 )
2023-08-07 13:34:43 +02:00