Andreas Süßenbach
4e6e8d3fda
Add support for multiply aliased structs in <require>-<feature> tags. ( #1958 )
2024-09-05 17:44:31 +02:00
Sharadh Rajaraman
6abd3f42a8
Use import std;
guarded by macro ( #1932 )
...
* Initial build and tests setup
* Enable the `CppStdModule` test
* Snippets and generator changes
* Generated files changes
* Enable std module with macro
* Unconditionally use `import std` with C++23
* Add support for external `import std` control with `VULKAN_HPP_ENABLE_STD_MODULE`
- Rewrite `includes.hpp` and `macros.hpp`
- Unconditionally set `VULKAN_HPP_ENABLE_STD_MODULE` for `vulkan.cppm` to bug-fix
- Generated necessary files again
* Top-level CMake changes
* Reorganise logic, and propagate external macro correctly
* RAII: vulkan_hpp before ifdef
* Define `VK_USE_64_BIT_PTR_DEFINES` in `vulkan_hpp_macros.hpp`
* Generate the `VK_USE_64_BIT_PTR_DEFINES` clause from the XML instead of hardcoding it
* Refactored handling for `VK_USE_64_BIT_PTR_DEFINES`
- Updated condition to positive test for `#ifndef VK_USE_64_BIT_PTR_DEFINES` in `completeMacro`
* Added `#include <string.h>` to resolve `strnlen` missing in the module
* Use only `std.compat`
* FIx after rebase
2024-09-05 08:48:19 +02:00
Andreas Süßenbach
fbb62163a0
Mark deprecated enum values as deprecated ( #1955 )
2024-09-03 08:53:36 +02:00
Andreas Süßenbach
0262bef5cd
Add support for new <feature> tags. ( #1953 )
2024-08-27 13:33:57 +02:00
Andreas Süßenbach
98ea600e1f
Removed special handling for enumerating commands with complex size information via a struct, generating just the standard function in such cases ( #1952 )
2024-08-26 16:21:45 +02:00
Andreas Süßenbach
b2c409dd31
Add IWYU pragmas to let code-completers use vulkan.hpp. ( #1939 )
2024-08-07 15:04:06 +02:00
Andreas Süßenbach
fde7e0fc84
Remove deprecation message on promoted extensions. ( #1938 )
2024-08-07 12:09:39 +02:00
Andreas Süßenbach
6a11b182e1
Extend support of video format properties (no code generated) ( #1937 )
2024-08-06 09:22:31 +02:00
Sharadh Rajaraman
003cf8e090
Don't export symbols in vk::detail
namespace ( #1931 )
2024-08-05 14:26:29 +02:00
Nikolai Siukosev
ae1eb5f449
Non raii handles move exchange ( #1929 )
...
* Add move semantics for non-raii hpp handles. (#1919 )
* Updated generated vulkan/* files
2024-07-23 09:55:09 +02:00
Andreas Süßenbach
cdcde2bd0b
Parse <videocodecs> section (no code generated from) ( #1926 )
2024-07-23 09:47:41 +02:00
Janeczko Jakub
096e555640
Add alias bitmasks to module interface ( #1917 )
...
* add alias bitmasks to c++ module
* generate code
* format
2024-07-15 12:39:19 +02:00
Andreas Süßenbach
6f72ceca51
Add g++12 for ubuntu builds. ( #1914 )
2024-07-11 09:36:14 +02:00
Andreas Süßenbach
620cf05ac2
Improve IndexTypeTraits determination. ( #1911 )
2024-06-28 09:41:13 +02:00
Andreas Süßenbach
3b0d995a82
Introduce some special handlings for structure VkLayerSettingEXT. ( #1910 )
2024-06-27 13:32:31 +02:00
Andreas Süßenbach
aac0b4d3ac
Simplify helper class vk::ArrayProxyNoTemporaries. ( #1908 )
2024-06-25 17:43:55 +02:00
Andreas Süßenbach
6604f5a1d9
Make generated headers resistant to missing definition of NOMINMAX for windows builds. ( #1906 )
2024-06-17 14:51:12 +02:00
Andreas Süßenbach
3be51fe651
Remove superfluous const in casts of function arguments by value. ( #1905 )
2024-06-17 14:40:59 +02:00
Andreas Süßenbach
b7b92b1e45
Remove an outdated assertion ( #1903 )
2024-06-13 15:30:49 +02:00
Andreas Süßenbach
842406f2a6
Try to workaround a possible bug with clang and gcc... ( #1902 )
2024-06-13 14:07:04 +02:00
Andreas Süßenbach
45d90067ee
Add missing cast from VkResult to vk::Result. ( #1901 )
2024-06-13 13:45:46 +02:00
Andreas Süßenbach
66af8942cb
Fix command sequence for enumerating commands with just one success code. ( #1900 )
2024-06-13 10:08:18 +02:00
Andreas Süßenbach
235b1a2f85
Reorganized alias handling of constants. ( #1899 )
2024-06-13 09:47:27 +02:00
Andreas Süßenbach
71031df10a
Fix generation of the standard version of commands to only use the member handle for the first argument. ( #1898 )
2024-06-12 17:31:32 +02:00
Andreas Süßenbach
dc6501456a
Add support for commands with three return parameters, two of them representing a vector. ( #1897 )
2024-06-12 16:36:03 +02:00
Andreas Süßenbach
600e6d67a2
Relax check for commands listed as required for a feature to just check if it's required for a different feature ( #1896 )
2024-06-12 13:52:23 +02:00
Andreas Süßenbach
b35470b05f
Accept type size_t for vector size in vector-describing structure. ( #1895 )
2024-06-12 08:41:25 +02:00
Andreas Süßenbach
d507727fd7
Add support for enumerating functions that originally take a struct with the vector information. ( #1892 )
2024-06-11 16:53:15 +02:00
Andreas Süßenbach
a64aeb648b
Improved alias handling for enum values and structs; extended error checking commands listed as required in features. ( #1889 )
2024-06-05 16:44:13 +02:00
Andreas Süßenbach
eb1f4cfb58
Update Vulkan-Headers to v1.3.286 ( #1887 )
2024-06-04 16:32:05 +02:00
Andreas Süßenbach
c8dd4fb5ea
Add support for enumerating commands with more than two success codes. ( #1870 )
2024-05-08 18:46:23 +02:00
Andreas Süßenbach
d3f062dd68
Change default for template non-type parameter value of struct CppType from 0 to Type{}. ( #1868 )
2024-05-07 13:45:58 +02:00
Andreas Süßenbach
1bbd615b15
Change member initialization lists of structs to use braces {} instead of parentheses () ( #1864 )
2024-05-06 10:36:48 +02:00
Andreas Süßenbach
2518f528c0
Simplify handling of structextends ( #1866 )
2024-05-06 10:31:43 +02:00
Andreas Süßenbach
48b5595082
Simplified handling of struct aliases ( #1858 )
2024-05-02 09:28:44 +02:00
Andreas Süßenbach
da28afe109
Simplify alias handling for handles. ( #1857 )
2024-04-30 09:12:25 +02:00
Sharadh Rajaraman
79307b6253
Check value of VULKAN_HPP_ENABLE_DYNAMIC_LOADER_TOOL
instead of existence ( #1856 )
...
* Check value of VULKAN_HPP_ENABLE_DYNAMIC_LOADER_TOOL instead of existence
* Also change vulkansc.cppm
2024-04-29 08:59:01 +02:00
Andreas Süßenbach
1de6e89eb2
Explicitly set the copy/move constructors/assignment operators of vk::handle to be default; add static assert on is_copy_constructible for vk::handles ( #1852 )
2024-04-25 13:30:52 +02:00
Andreas Süßenbach
7bd57c7290
Simplify handling of enum aliases ( #1850 )
2024-04-24 08:33:25 +02:00
Andreas Süßenbach
0eafe7e55a
Fix name of enum values with more than one "BIT" in its name ( #1848 )
2024-04-18 16:11:14 +02:00
Andreas Süßenbach
11121e142a
Simplified constant alias handling ( #1845 )
2024-04-15 10:18:02 +02:00
Andreas Süßenbach
3134b1b42a
Simplify alias handling for Bitmasks and Commands. ( #1843 )
2024-04-11 08:43:15 +02:00
Andreas Süßenbach
ed5b48b517
Pay attention to struct aliases to determine struct dependencies. ( #1842 )
2024-04-08 18:00:46 +02:00
Andreas Süßenbach
bb66ad3b04
Moved some implementation details into namespace detail. ( #1840 )
2024-04-08 11:40:53 +02:00
Andreas Süßenbach
4e9c7ec4c3
Add SFIXED5 as valid value for numericFormat in format::component. ( #1841 )
2024-04-04 08:18:15 +02:00
Andreas Süßenbach
d111d68be8
Simplify handling of enum value aliases ( #1838 )
2024-04-03 08:29:10 +02:00
Andreas Süßenbach
8c9901c072
Extend finding an enum value to also look for the aliases. ( #1839 )
2024-04-02 13:25:52 +02:00
Andreas Süßenbach
a7ac08b8d2
Guard type trait CppType to map from VkHandle to vk::Handle by ( VK_USE_64_BIT_PTR_DEFINES == 1 ). ( #1836 )
2024-03-25 14:00:43 +01:00
Andreas Süßenbach
89dd8393db
Refactored storing of enum values. ( #1831 )
2024-03-25 10:47:09 +01:00
Andreas Süßenbach
ce84c37abf
Reorganized enum value alias handling. ( #1830 )
2024-03-21 08:05:15 +01:00