35 Commits
Author SHA1 Message Date
Daemo f1c7f8ab27 Added mlx_set_image_rectangle 2026-08-10 16:02:24 +02:00
Daemo 1e27c05789 Merge branch 'indev' of github.com:seekrs/MacroLibX into indev 2026-08-10 15:33:49 +02:00
Daemo 9800d2f78d Added mlx_set_window_icon 2026-08-10 15:32:18 +02:00
1cc7e2e2ce update dependencies (#242)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action

Co-authored-by: kbJeff-8 <kbJeff-8@users.noreply.github.com>
2026-08-09 14:12:37 +02:00
Daemo 0491089463 Added deprecation for pixel_put functions (OFF BY DEFAULT) as well as warnings in their descriptions 2026-08-09 02:56:36 +02:00
Daemo 83b9f8f9da Fixed crash on NULL window titles + typo 2026-08-09 02:22:57 +02:00
Daemo f53d90e72c Added a header for event code definition and resize window event 2026-08-09 02:11:37 +02:00
Daemo b9c54dc469 Merge branch 'master' into indev 2026-08-09 00:15:07 +02:00
DaemoandGitHub 63fe3088bf Fix inconsistencies with the FPS scheduler (#241)
The current Fps manager will sometime skip the intended delay and start
the next frame immediately, I'm not 100% sure why it happens, but I
rewrote most of it to stay consistent and improved the overall precision
by compensating for OS wake delay after sleep and finishing with a busy
wait
I also changed the behavior of mlx_set_fps_goal to allow zero/negative
values and treat them as uncapped (like most graphics libraries)
2026-08-08 15:45:56 +02:00
DaemoandGitHub c9df651a14 Optimized region drawing and fixed incorrect region clipping (#240)
Made small optimizations to Texture's SetRegion, SetLinearRegion,
GetRegion and Clear. They might not be super effective depending on how
the compiler already optimized them. The optimizations mainly focus on
removing the multiplication when transforming a position to an index by
using the row index rather than the y coordinate during iteration.
Also fixed regions not drawing properly when clipping against the sides
of a window and made GetRegion reject any region that isn't fully inside
of the window (previously accepted regions that clipped outside of the
right and bottom side, possibly leading to incorrect reads on the user
end due to desynchronized region dimensions)
2026-08-07 12:31:13 +02:00
DaemoandGitHub 2d0c02ae7e Fix freeze when resizing a window (#239)
Fixed an annoying bug where the application would freeze when resizing
the window
This pull request made it so the SDL window's resizing event now
broadcasts a new event specifically asking the swapchain to recreate
itself, which will in turn broadcast the original event when done. It
also removed the Event enum specific values, as they were irrelevant.
2026-08-07 00:18:52 +02:00
77fd97f605 update dependencies (#238)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action

Co-authored-by: kbJeff-8 <kbJeff-8@users.noreply.github.com>
2026-08-02 11:49:10 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
3ed29db5dd Bump actions/setup-python from 6 to 7 (#237)
Bumps [actions/setup-python](https://github.com/actions/setup-python)
from 6 to 7.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/actions/setup-python/releases">actions/setup-python's
releases</a>.</em></p>
<blockquote>
<h2>v7.0.0</h2>
<h2>What's Changed</h2>
<h3>Enhancements</h3>
<ul>
<li>Migrate to ESM and upgrade dependencies by <a
href="https://github.com/priyagupta108"><code>@​priyagupta108</code></a>
in <a
href="https://redirect.github.com/actions/setup-python/pull/1330">actions/setup-python#1330</a></li>
<li>Pin SHA commits and update docs with latest versions by <a
href="https://github.com/HarithaVattikuti"><code>@​HarithaVattikuti</code></a>
in <a
href="https://redirect.github.com/actions/setup-python/pull/1338">actions/setup-python#1338</a></li>
<li>Remove the pip-install input by <a
href="https://github.com/gowridurgad"><code>@​gowridurgad</code></a> in
<a
href="https://redirect.github.com/actions/setup-python/pull/1336">actions/setup-python#1336</a></li>
</ul>
<h3>Bug Fix</h3>
<ul>
<li>Fix to Classify stderr warning messages as warnings instead of
errors in annotations by <a
href="https://github.com/lmvysakh"><code>@​lmvysakh</code></a> in <a
href="https://redirect.github.com/actions/setup-python/pull/1335">actions/setup-python#1335</a></li>
<li>Validate and retry manifest fetch to prevent silent failures by <a
href="https://github.com/priyagupta108"><code>@​priyagupta108</code></a>
in <a
href="https://redirect.github.com/actions/setup-python/pull/1332">actions/setup-python#1332</a></li>
</ul>
<h3>Dependency Upgrade</h3>
<ul>
<li>Bump certifi from 2020.6.20 to 2024.7.4 in
/<strong>tests</strong>/data by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/actions/setup-python/pull/1328">actions/setup-python#1328</a></li>
<li>Remove EOL Python versions and Bumps numpy text fixture by <a
href="https://github.com/priya-kinthali"><code>@​priya-kinthali</code></a>
in <a
href="https://redirect.github.com/actions/setup-python/pull/1333">actions/setup-python#1333</a></li>
<li>Upgrade <code>@​actions/cache</code> to 6.2.0 by <a
href="https://github.com/philip-gai"><code>@​philip-gai</code></a> in <a
href="https://redirect.github.com/actions/setup-python/pull/1337">actions/setup-python#1337</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/lmvysakh"><code>@​lmvysakh</code></a>
made their first contribution in <a
href="https://redirect.github.com/actions/setup-python/pull/1335">actions/setup-python#1335</a></li>
<li><a
href="https://github.com/philip-gai"><code>@​philip-gai</code></a> made
their first contribution in <a
href="https://redirect.github.com/actions/setup-python/pull/1337">actions/setup-python#1337</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/setup-python/compare/v6...v7.0.0">https://github.com/actions/setup-python/compare/v6...v7.0.0</a></p>
<h2>v6.3.0</h2>
<h2>What's Changed</h2>
<h3>Enhancement</h3>
<ul>
<li>Add RHEL support and include Linux distro in cache keys by <a
href="https://github.com/priyagupta108"><code>@​priyagupta108</code></a>
in <a
href="https://redirect.github.com/actions/setup-python/pull/1323">actions/setup-python#1323</a></li>
<li>Fix pip cache error handling on Windows by <a
href="https://github.com/priyagupta108"><code>@​priyagupta108</code></a>
in <a
href="https://redirect.github.com/actions/setup-python/pull/1040">actions/setup-python#1040</a></li>
</ul>
<h3>Dependency update</h3>
<ul>
<li>Upgrade minimatch from 3.1.2 to 3.1.5 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/actions/setup-python/pull/1281">actions/setup-python#1281</a></li>
<li>Upgrade actions dependencies by <a
href="https://github.com/gowridurgad"><code>@​gowridurgad</code></a>
with <a href="https://github.com/Copilot"><code>@​Copilot</code></a> in
<a
href="https://redirect.github.com/actions/setup-python/pull/1303">actions/setup-python#1303</a></li>
<li>Upgrade <code>@​actions/cache</code> to 5.1.0, log cache write
denied by <a
href="https://github.com/jasongin"><code>@​jasongin</code></a> in <a
href="https://redirect.github.com/actions/setup-python/pull/1324">actions/setup-python#1324</a></li>
<li>Upgrade dependency versions and test workflow configuration by <a
href="https://github.com/HarithaVattikuti"><code>@​HarithaVattikuti</code></a>
in <a
href="https://redirect.github.com/actions/setup-python/pull/1322">actions/setup-python#1322</a></li>
</ul>
<h3>Documentation</h3>
<ul>
<li>Update advanced-usage.md by <a
href="https://github.com/Dunky-Z"><code>@​Dunky-Z</code></a> in <a
href="https://redirect.github.com/actions/setup-python/pull/811">actions/setup-python#811</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a
href="https://github.com/gowridurgad"><code>@​gowridurgad</code></a>
with <a href="https://github.com/Copilot"><code>@​Copilot</code></a>
made their first contribution in <a
href="https://redirect.github.com/actions/setup-python/pull/1303">actions/setup-python#1303</a></li>
<li><a href="https://github.com/jasongin"><code>@​jasongin</code></a>
made their first contribution in <a
href="https://redirect.github.com/actions/setup-python/pull/1324">actions/setup-python#1324</a></li>
<li><a href="https://github.com/Dunky-Z"><code>@​Dunky-Z</code></a> made
their first contribution in <a
href="https://redirect.github.com/actions/setup-python/pull/811">actions/setup-python#811</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/setup-python/compare/v6.2.0...v6.3.0">https://github.com/actions/setup-python/compare/v6.2.0...v6.3.0</a></p>
<h2>v6.2.0</h2>
<h2>What's Changed</h2>
<h3>Dependency Upgrades</h3>
<ul>
<li>Upgrade dependencies to Node 24 compatible versions by <a
href="https://github.com/salmanmkc"><code>@​salmanmkc</code></a> in <a
href="https://redirect.github.com/actions/setup-python/pull/1259">actions/setup-python#1259</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/actions/setup-python/commit/5fda3b95a4ea91299a34e894583c3862153e4b97"><code>5fda3b9</code></a>
Pin SHA commits and update docs with latest versions (<a
href="https://redirect.github.com/actions/setup-python/issues/1338">#1338</a>)</li>
<li><a
href="https://github.com/actions/setup-python/commit/4ab7e95f05e168b4356aebde89dd84f59c283d8e"><code>4ab7e95</code></a>
Merge pull request <a
href="https://redirect.github.com/actions/setup-python/issues/1337">#1337</a>
from actions/philip-gai/bump-actions-cache-6-2-0</li>
<li><a
href="https://github.com/actions/setup-python/commit/0f3a009f475dbea83c0371cd85d099690fee8c5c"><code>0f3a009</code></a>
Remove the pip-install input (<a
href="https://redirect.github.com/actions/setup-python/issues/1336">#1336</a>)</li>
<li><a
href="https://github.com/actions/setup-python/commit/f8cf4291c8b8e273ddd26e569454615c7315d932"><code>f8cf429</code></a>
Migrate to ESM and upgrade dependencies (<a
href="https://redirect.github.com/actions/setup-python/issues/1330">#1330</a>)</li>
<li><a
href="https://github.com/actions/setup-python/commit/54baeea5b34417d10a7479663a23cca53ea209b5"><code>54baeea</code></a>
Validate and retry manifest fetch to prevent silent failures (<a
href="https://redirect.github.com/actions/setup-python/issues/1332">#1332</a>)</li>
<li><a
href="https://github.com/actions/setup-python/commit/c7092773a316760f4ecfe498e4af668a4dafeac5"><code>c709277</code></a>
Annotation code fix (<a
href="https://redirect.github.com/actions/setup-python/issues/1335">#1335</a>)</li>
<li><a
href="https://github.com/actions/setup-python/commit/6849080452e69b330395e8a6d23cf90f56d76a1a"><code>6849080</code></a>
remove EOL Python versions and Bumps numpy text fixture (<a
href="https://redirect.github.com/actions/setup-python/issues/1333">#1333</a>)</li>
<li><a
href="https://github.com/actions/setup-python/commit/0903b469fbf4441aadfe4f4b249dc5b1fba3a73e"><code>0903b46</code></a>
Bump certifi from 2020.6.20 to 2024.7.4 in /<strong>tests</strong>/data
(<a
href="https://redirect.github.com/actions/setup-python/issues/1328">#1328</a>)</li>
<li>See full diff in <a
href="https://github.com/actions/setup-python/compare/v6...v7">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/setup-python&package-manager=github_actions&previous-version=6&new-version=7)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-21 13:28:57 +02:00
38145d8f1e update dependencies (#236)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action

Co-authored-by: kbJeff-8 <kbJeff-8@users.noreply.github.com>
2026-07-19 13:38:14 +02:00
fe60a3edfc update dependencies (#235)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action

Co-authored-by: kbJeff-8 <kbJeff-8@users.noreply.github.com>
2026-07-05 13:34:51 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
fafd5c9dc9 Bump actions/cache from 5 to 6 (#234)
Bumps [actions/cache](https://github.com/actions/cache) from 5 to 6.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/actions/cache/releases">actions/cache's
releases</a>.</em></p>
<blockquote>
<h2>v6.0.0</h2>
<h2>What's Changed</h2>
<ul>
<li>Update packages, migrate to ESM by <a
href="https://github.com/Samirat"><code>@​Samirat</code></a> in <a
href="https://redirect.github.com/actions/cache/pull/1760">actions/cache#1760</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/cache/compare/v5...v6.0.0">https://github.com/actions/cache/compare/v5...v6.0.0</a></p>
<h2>v5.1.0</h2>
<h2>What's Changed</h2>
<ul>
<li>Bump <code>@​actions/cache</code> to v5.1.0 - handle read-only cache
access by <a
href="https://github.com/jasongin"><code>@​jasongin</code></a> in <a
href="https://redirect.github.com/actions/cache/pull/1775">actions/cache#1775</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/cache/compare/v5...v5.1.0">https://github.com/actions/cache/compare/v5...v5.1.0</a></p>
<h2>v5.0.5</h2>
<h2>What's Changed</h2>
<ul>
<li>Update ts-http-runtime dependency by <a
href="https://github.com/yacaovsnc"><code>@​yacaovsnc</code></a> in <a
href="https://redirect.github.com/actions/cache/pull/1747">actions/cache#1747</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/cache/compare/v5...v5.0.5">https://github.com/actions/cache/compare/v5...v5.0.5</a></p>
<h2>v5.0.4</h2>
<h2>What's Changed</h2>
<ul>
<li>Add release instructions and update maintainer docs by <a
href="https://github.com/Link"><code>@​Link</code></a>- in <a
href="https://redirect.github.com/actions/cache/pull/1696">actions/cache#1696</a></li>
<li>Potential fix for code scanning alert no. 52: Workflow does not
contain permissions by <a
href="https://github.com/Link"><code>@​Link</code></a>- in <a
href="https://redirect.github.com/actions/cache/pull/1697">actions/cache#1697</a></li>
<li>Fix workflow permissions and cleanup workflow names / formatting by
<a href="https://github.com/Link"><code>@​Link</code></a>- in <a
href="https://redirect.github.com/actions/cache/pull/1699">actions/cache#1699</a></li>
<li>docs: Update examples to use the latest version by <a
href="https://github.com/XZTDean"><code>@​XZTDean</code></a> in <a
href="https://redirect.github.com/actions/cache/pull/1690">actions/cache#1690</a></li>
<li>Fix proxy integration tests by <a
href="https://github.com/Link"><code>@​Link</code></a>- in <a
href="https://redirect.github.com/actions/cache/pull/1701">actions/cache#1701</a></li>
<li>Fix cache key in examples.md for bun.lock by <a
href="https://github.com/RyPeck"><code>@​RyPeck</code></a> in <a
href="https://redirect.github.com/actions/cache/pull/1722">actions/cache#1722</a></li>
<li>Update dependencies &amp; patch security vulnerabilities by <a
href="https://github.com/Link"><code>@​Link</code></a>- in <a
href="https://redirect.github.com/actions/cache/pull/1738">actions/cache#1738</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/XZTDean"><code>@​XZTDean</code></a> made
their first contribution in <a
href="https://redirect.github.com/actions/cache/pull/1690">actions/cache#1690</a></li>
<li><a href="https://github.com/RyPeck"><code>@​RyPeck</code></a> made
their first contribution in <a
href="https://redirect.github.com/actions/cache/pull/1722">actions/cache#1722</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/cache/compare/v5...v5.0.4">https://github.com/actions/cache/compare/v5...v5.0.4</a></p>
<h2>v5.0.3</h2>
<h2>What's Changed</h2>
<ul>
<li>Bump <code>@actions/cache</code> to v5.0.5 (Resolves: <a
href="https://github.com/actions/cache/security/dependabot/33">https://github.com/actions/cache/security/dependabot/33</a>)</li>
<li>Bump <code>@actions/core</code> to v2.0.3</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/cache/compare/v5...v5.0.3">https://github.com/actions/cache/compare/v5...v5.0.3</a></p>
<h2>v.5.0.2</h2>
<h1>v5.0.2</h1>
<h2>What's Changed</h2>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/actions/cache/blob/main/RELEASES.md">actions/cache's
changelog</a>.</em></p>
<blockquote>
<h1>Releases</h1>
<h2>How to prepare a release</h2>
<blockquote>
<p>[!NOTE]
Relevant for maintainers with write access only.</p>
</blockquote>
<ol>
<li>Switch to a new branch from <code>main</code>.</li>
<li>Run <code>npm test</code> to ensure all tests are passing.</li>
<li>Update the version in <a
href="https://github.com/actions/cache/blob/main/package.json"><code>https://github.com/actions/cache/blob/main/package.json</code></a>.</li>
<li>Run <code>npm run build</code> to update the compiled files.</li>
<li>Update this <a
href="https://github.com/actions/cache/blob/main/RELEASES.md"><code>https://github.com/actions/cache/blob/main/RELEASES.md</code></a>
with the new version and changes in the <code>## Changelog</code>
section.</li>
<li>Run <code>licensed cache</code> to update the license report.</li>
<li>Run <code>licensed status</code> and resolve any warnings by
updating the <a
href="https://github.com/actions/cache/blob/main/.licensed.yml"><code>https://github.com/actions/cache/blob/main/.licensed.yml</code></a>
file with the exceptions.</li>
<li>Commit your changes and push your branch upstream.</li>
<li>Open a pull request against <code>main</code> and get it reviewed
and merged.</li>
<li>Draft a new release <a
href="https://github.com/actions/cache/releases">https://github.com/actions/cache/releases</a>
use the same version number used in <code>package.json</code>
<ol>
<li>Create a new tag with the version number.</li>
<li>Auto generate release notes and update them to match the changes you
made in <code>RELEASES.md</code>.</li>
<li>Toggle the set as the latest release option.</li>
<li>Publish the release.</li>
</ol>
</li>
<li>Navigate to <a
href="https://github.com/actions/cache/actions/workflows/release-new-action-version.yml">https://github.com/actions/cache/actions/workflows/release-new-action-version.yml</a>
<ol>
<li>There should be a workflow run queued with the same version
number.</li>
<li>Approve the run to publish the new version and update the major tags
for this action.</li>
</ol>
</li>
</ol>
<h2>Changelog</h2>
<h3>6.1.0</h3>
<ul>
<li>Bump <code>@actions/cache</code> to v6.1.0 to pick up <a
href="https://redirect.github.com/actions/toolkit/pull/2435">actions/toolkit#2435
Handle cache write error due to read-only token</a></li>
<li>Switch redundant &quot;Cache save failed&quot; warning to debug log
in save-only</li>
</ul>
<h3>6.0.0</h3>
<ul>
<li>Updated <code>@actions/cache</code> to ^6.0.1,
<code>@actions/core</code> to ^3.0.1, <code>@actions/exec</code> to
^3.0.0, <code>@actions/io</code> to ^3.0.2</li>
<li>Migrated to ESM module system</li>
<li>Upgraded Jest to v30 and test infrastructure to be ESM
compatible</li>
</ul>
<h3>5.0.4</h3>
<ul>
<li>Bump <code>minimatch</code> to v3.1.5 (fixes ReDoS via globstar
patterns)</li>
<li>Bump <code>undici</code> to v6.24.1 (WebSocket decompression bomb
protection, header validation fixes)</li>
<li>Bump <code>fast-xml-parser</code> to v5.5.6</li>
</ul>
<h3>5.0.3</h3>
<ul>
<li>Bump <code>@actions/cache</code> to v5.0.5 (Resolves: <a
href="https://github.com/actions/cache/security/dependabot/33">https://github.com/actions/cache/security/dependabot/33</a>)</li>
<li>Bump <code>@actions/core</code> to v2.0.3</li>
</ul>
<h3>5.0.2</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/actions/cache/commit/55cc8345863c7cc4c66a329aec7e433d2d1c52a9"><code>55cc834</code></a>
Merge pull request <a
href="https://redirect.github.com/actions/cache/issues/1768">#1768</a>
from jasongin/readonly-cache</li>
<li><a
href="https://github.com/actions/cache/commit/d8cd72f230726cdf4457ebb61ec1b593a8d12337"><code>d8cd72f</code></a>
Bump <code>@​actions/cache</code> to v6.1.0 - handle cache write error
due to RO token</li>
<li><a
href="https://github.com/actions/cache/commit/2c8a9bd7457de244a408f35966fab2fb45fda9c8"><code>2c8a9bd</code></a>
Merge pull request <a
href="https://redirect.github.com/actions/cache/issues/1760">#1760</a>
from actions/samirat/esm_migration_and_package_update</li>
<li><a
href="https://github.com/actions/cache/commit/e9b91fdc3fea7d79165fceb79042ef45c2d51023"><code>e9b91fd</code></a>
Prettier fixes</li>
<li><a
href="https://github.com/actions/cache/commit/e4884b8ff7f92ef6b52c79eda480bbc86e685adb"><code>e4884b8</code></a>
Rebuild dist</li>
<li><a
href="https://github.com/actions/cache/commit/10baf0191a3c426ea0fa4a3253a5c04233b6e18f"><code>10baf01</code></a>
Fixed licenses</li>
<li><a
href="https://github.com/actions/cache/commit/e39b386c9004d72a15d864ade8c0b3a702d47a37"><code>e39b386</code></a>
Fix test mock return order</li>
<li><a
href="https://github.com/actions/cache/commit/b6928203372a8571ff984c0c883ef3a1adfb0c06"><code>b692820</code></a>
PR feedback</li>
<li><a
href="https://github.com/actions/cache/commit/60749128a44d25d3c520a489e576380cf00ff3f1"><code>6074912</code></a>
Rebuild dist bundles as ESM to match type:module</li>
<li><a
href="https://github.com/actions/cache/commit/5a912e8b4af820fa082a0e75cfd2c782f8fbfe0e"><code>5a912e8</code></a>
Fix lint and jest issues</li>
<li>Additional commits viewable in <a
href="https://github.com/actions/cache/compare/v5...v6">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/cache&package-manager=github_actions&previous-version=5&new-version=6)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-30 12:51:02 +02:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
d492dccb29 Bump actions/checkout from 6 to 7 (#232)
Bumps [actions/checkout](https://github.com/actions/checkout) from 6 to
7.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/actions/checkout/releases">actions/checkout's
releases</a>.</em></p>
<blockquote>
<h2>v7.0.0</h2>
<h2>What's Changed</h2>
<ul>
<li>block checking out fork pr for pull_request_target and workflow_run
by <a href="https://github.com/aiqiaoy"><code>@​aiqiaoy</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2454">actions/checkout#2454</a></li>
<li>Bump actions/publish-immutable-action from 0.0.3 to 0.0.4 in the
minor-actions-dependencies group across 1 directory by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/actions/checkout/pull/2458">actions/checkout#2458</a></li>
<li>Bump flatted from 3.3.1 to 3.4.2 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/actions/checkout/pull/2460">actions/checkout#2460</a></li>
<li>Bump js-yaml from 4.1.0 to 4.2.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/actions/checkout/pull/2461">actions/checkout#2461</a></li>
<li>Bump <code>@​actions/core</code> and
<code>@​actions/tool-cache</code> and Remove uuid by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/actions/checkout/pull/2459">actions/checkout#2459</a></li>
<li>upgrade module to esm and update dependencies by <a
href="https://github.com/aiqiaoy"><code>@​aiqiaoy</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2463">actions/checkout#2463</a></li>
<li>Bump the minor-npm-dependencies group across 1 directory with 3
updates by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/actions/checkout/pull/2462">actions/checkout#2462</a></li>
<li>getting ready for checkout v7 release by <a
href="https://github.com/aiqiaoy"><code>@​aiqiaoy</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2464">actions/checkout#2464</a></li>
<li>update error wording by <a
href="https://github.com/aiqiaoy"><code>@​aiqiaoy</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2467">actions/checkout#2467</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/aiqiaoy"><code>@​aiqiaoy</code></a> made
their first contribution in <a
href="https://redirect.github.com/actions/checkout/pull/2454">actions/checkout#2454</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/checkout/compare/v6.0.3...v7.0.0">https://github.com/actions/checkout/compare/v6.0.3...v7.0.0</a></p>
<h2>v6.0.3</h2>
<h2>What's Changed</h2>
<ul>
<li>Update changelog by <a
href="https://github.com/ericsciple"><code>@​ericsciple</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2357">actions/checkout#2357</a></li>
<li>fix: expand merge commit SHA regex and add SHA-256 test cases by <a
href="https://github.com/yaananth"><code>@​yaananth</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2414">actions/checkout#2414</a></li>
<li>Fix checkout init for SHA-256 repositories by <a
href="https://github.com/yaananth"><code>@​yaananth</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2439">actions/checkout#2439</a></li>
<li>Update changelog for v6.0.3 by <a
href="https://github.com/yaananth"><code>@​yaananth</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2446">actions/checkout#2446</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/yaananth"><code>@​yaananth</code></a>
made their first contribution in <a
href="https://redirect.github.com/actions/checkout/pull/2414">actions/checkout#2414</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/checkout/compare/v6...v6.0.3">https://github.com/actions/checkout/compare/v6...v6.0.3</a></p>
<h2>v6.0.2</h2>
<h2>What's Changed</h2>
<ul>
<li>Add orchestration_id to git user-agent when ACTIONS_ORCHESTRATION_ID
is set by <a
href="https://github.com/TingluoHuang"><code>@​TingluoHuang</code></a>
in <a
href="https://redirect.github.com/actions/checkout/pull/2355">actions/checkout#2355</a></li>
<li>Fix tag handling: preserve annotations and explicit fetch-tags by <a
href="https://github.com/ericsciple"><code>@​ericsciple</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2356">actions/checkout#2356</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/checkout/compare/v6.0.1...v6.0.2">https://github.com/actions/checkout/compare/v6.0.1...v6.0.2</a></p>
<h2>v6.0.1</h2>
<h2>What's Changed</h2>
<ul>
<li>Update all references from v5 and v4 to v6 by <a
href="https://github.com/ericsciple"><code>@​ericsciple</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2314">actions/checkout#2314</a></li>
<li>Add worktree support for persist-credentials includeIf by <a
href="https://github.com/ericsciple"><code>@​ericsciple</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2327">actions/checkout#2327</a></li>
<li>Clarify v6 README by <a
href="https://github.com/ericsciple"><code>@​ericsciple</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2328">actions/checkout#2328</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/checkout/compare/v6...v6.0.1">https://github.com/actions/checkout/compare/v6...v6.0.1</a></p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/actions/checkout/blob/main/CHANGELOG.md">actions/checkout's
changelog</a>.</em></p>
<blockquote>
<h1>Changelog</h1>
<h2>v7.0.0</h2>
<ul>
<li>Block checking out fork PR for pull_request_target and workflow_run
by <a href="https://github.com/aiqiaoy"><code>@​aiqiaoy</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2454">actions/checkout#2454</a></li>
<li>Bump actions/publish-immutable-action from 0.0.3 to 0.0.4 in the
minor-actions-dependencies group across 1 directory by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/actions/checkout/pull/2458">actions/checkout#2458</a></li>
<li>Bump flatted from 3.3.1 to 3.4.2 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/actions/checkout/pull/2460">actions/checkout#2460</a></li>
<li>Bump js-yaml from 4.1.0 to 4.2.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/actions/checkout/pull/2461">actions/checkout#2461</a></li>
<li>Bump <code>@​actions/core</code> and
<code>@​actions/tool-cache</code> and Remove uuid by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/actions/checkout/pull/2459">actions/checkout#2459</a></li>
<li>upgrade module to esm and update dependencies by <a
href="https://github.com/aiqiaoy"><code>@​aiqiaoy</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2463">actions/checkout#2463</a></li>
<li>Bump the minor-npm-dependencies group across 1 directory with 3
updates by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/actions/checkout/pull/2462">actions/checkout#2462</a></li>
</ul>
<h2>v6.0.3</h2>
<ul>
<li>Fix checkout init for SHA-256 repositories by <a
href="https://github.com/yaananth"><code>@​yaananth</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2439">actions/checkout#2439</a></li>
<li>fix: expand merge commit SHA regex and add SHA-256 test cases by <a
href="https://github.com/yaananth"><code>@​yaananth</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2414">actions/checkout#2414</a></li>
</ul>
<h2>v6.0.2</h2>
<ul>
<li>Fix tag handling: preserve annotations and explicit fetch-tags by <a
href="https://github.com/ericsciple"><code>@​ericsciple</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2356">actions/checkout#2356</a></li>
</ul>
<h2>v6.0.1</h2>
<ul>
<li>Add worktree support for persist-credentials includeIf by <a
href="https://github.com/ericsciple"><code>@​ericsciple</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2327">actions/checkout#2327</a></li>
</ul>
<h2>v6.0.0</h2>
<ul>
<li>Persist creds to a separate file by <a
href="https://github.com/ericsciple"><code>@​ericsciple</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2286">actions/checkout#2286</a></li>
<li>Update README to include Node.js 24 support details and requirements
by <a href="https://github.com/salmanmkc"><code>@​salmanmkc</code></a>
in <a
href="https://redirect.github.com/actions/checkout/pull/2248">actions/checkout#2248</a></li>
</ul>
<h2>v5.0.1</h2>
<ul>
<li>Port v6 cleanup to v5 by <a
href="https://github.com/ericsciple"><code>@​ericsciple</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2301">actions/checkout#2301</a></li>
</ul>
<h2>v5.0.0</h2>
<ul>
<li>Update actions checkout to use node 24 by <a
href="https://github.com/salmanmkc"><code>@​salmanmkc</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2226">actions/checkout#2226</a></li>
</ul>
<h2>v4.3.1</h2>
<ul>
<li>Port v6 cleanup to v4 by <a
href="https://github.com/ericsciple"><code>@​ericsciple</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2305">actions/checkout#2305</a></li>
</ul>
<h2>v4.3.0</h2>
<ul>
<li>docs: update README.md by <a
href="https://github.com/motss"><code>@​motss</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/1971">actions/checkout#1971</a></li>
<li>Add internal repos for checking out multiple repositories by <a
href="https://github.com/mouismail"><code>@​mouismail</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/1977">actions/checkout#1977</a></li>
<li>Documentation update - add recommended permissions to Readme by <a
href="https://github.com/benwells"><code>@​benwells</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2043">actions/checkout#2043</a></li>
<li>Adjust positioning of user email note and permissions heading by <a
href="https://github.com/joshmgross"><code>@​joshmgross</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2044">actions/checkout#2044</a></li>
<li>Update README.md by <a
href="https://github.com/nebuk89"><code>@​nebuk89</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2194">actions/checkout#2194</a></li>
<li>Update CODEOWNERS for actions by <a
href="https://github.com/TingluoHuang"><code>@​TingluoHuang</code></a>
in <a
href="https://redirect.github.com/actions/checkout/pull/2224">actions/checkout#2224</a></li>
<li>Update package dependencies by <a
href="https://github.com/salmanmkc"><code>@​salmanmkc</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2236">actions/checkout#2236</a></li>
</ul>
<h2>v4.2.2</h2>
<ul>
<li><code>url-helper.ts</code> now leverages well-known environment
variables by <a href="https://github.com/jww3"><code>@​jww3</code></a>
in <a
href="https://redirect.github.com/actions/checkout/pull/1941">actions/checkout#1941</a></li>
<li>Expand unit test coverage for <code>isGhes</code> by <a
href="https://github.com/jww3"><code>@​jww3</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/1946">actions/checkout#1946</a></li>
</ul>
<h2>v4.2.1</h2>
<ul>
<li>Check out other refs/* by commit if provided, fall back to ref by <a
href="https://github.com/orhantoy"><code>@​orhantoy</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/1924">actions/checkout#1924</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/actions/checkout/commit/9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0"><code>9c091bb</code></a>
update error wording (<a
href="https://redirect.github.com/actions/checkout/issues/2467">#2467</a>)</li>
<li><a
href="https://github.com/actions/checkout/commit/1044a6dea927916f2c38ba5aeffbc0a847b1221a"><code>1044a6d</code></a>
getting ready for checkout v7 release (<a
href="https://redirect.github.com/actions/checkout/issues/2464">#2464</a>)</li>
<li><a
href="https://github.com/actions/checkout/commit/f0282184c7ce73ab54c7e4ab5a617122602e575f"><code>f028218</code></a>
Bump the minor-npm-dependencies group across 1 directory with 3 updates
(<a
href="https://redirect.github.com/actions/checkout/issues/2462">#2462</a>)</li>
<li><a
href="https://github.com/actions/checkout/commit/d914b262ffc244530a203ab40decab34c3abf34d"><code>d914b26</code></a>
upgrade module to esm and update dependencies (<a
href="https://redirect.github.com/actions/checkout/issues/2463">#2463</a>)</li>
<li><a
href="https://github.com/actions/checkout/commit/537c7ef99cef6e5ddb5e7ff5d16d14510503801d"><code>537c7ef</code></a>
Bump <code>@​actions/core</code> and <code>@​actions/tool-cache</code>
and Remove uuid (<a
href="https://redirect.github.com/actions/checkout/issues/2459">#2459</a>)</li>
<li><a
href="https://github.com/actions/checkout/commit/130a169078a413d3a5246a393625e8e742f387f6"><code>130a169</code></a>
Bump js-yaml from 4.1.0 to 4.2.0 (<a
href="https://redirect.github.com/actions/checkout/issues/2461">#2461</a>)</li>
<li><a
href="https://github.com/actions/checkout/commit/7d09575332117a40b46e5e020664df234cd416f3"><code>7d09575</code></a>
Bump flatted from 3.3.1 to 3.4.2 (<a
href="https://redirect.github.com/actions/checkout/issues/2460">#2460</a>)</li>
<li><a
href="https://github.com/actions/checkout/commit/0f9f3aa320cb53abeb534aeb54048075d9697a0e"><code>0f9f3aa</code></a>
Bump actions/publish-immutable-action (<a
href="https://redirect.github.com/actions/checkout/issues/2458">#2458</a>)</li>
<li><a
href="https://github.com/actions/checkout/commit/f9e715a95fcd1f9253f77dd28f11e88d2d6460c7"><code>f9e715a</code></a>
block checking out fork pr for pull_request_target and workflow_run (<a
href="https://redirect.github.com/actions/checkout/issues/2454">#2454</a>)</li>
<li>See full diff in <a
href="https://github.com/actions/checkout/compare/v6...v7">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/checkout&package-manager=github_actions&previous-version=6&new-version=7)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-25 17:49:12 +02:00
35d0dafc78 update dependencies (#230)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action

Co-authored-by: kbJeff-8 <kbJeff-8@users.noreply.github.com>
2026-06-07 12:12:24 +02:00
71f2de610c update dependencies (#229)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action

Co-authored-by: kbJeff-8 <kbJeff-8@users.noreply.github.com>
2026-05-17 12:18:26 +02:00
ddfbe32cea Indev (#228)
Co-authored-by: kbJeff-8 <kbJeff-8@users.noreply.github.com>
2026-05-13 14:29:51 +02:00
kbz_8 b090a070c8 Merge branch 'master' into indev 2026-05-13 14:28:58 +02:00
kbJeff-8andkbz_8 069f8af9d6 [BOT] update dependencies 2026-05-13 14:17:25 +02:00
kbz_8 8b952f14c5 temp fix 2026-05-11 14:05:10 +02:00
kbJeff-8andkbz_8 cfc3fccac4 [BOT] update dependencies 2026-05-11 14:05:10 +02:00
kbJeff-8andkbz_8 f691ce6890 [BOT] update dependencies 2026-05-11 14:05:10 +02:00
kbJeff-8andkbz_8 fb0eecde00 [BOT] update dependencies 2026-05-11 14:05:10 +02:00
kbJeff-8andkbz_8 f65b8a2aef [BOT] update dependencies 2026-05-11 14:05:10 +02:00
kbz_8 552cc33ba3 temp fix 2026-05-11 13:55:59 +02:00
kbJeff-8andkbz_8 d1f5b7c68e [BOT] update dependencies 2026-05-10 12:33:26 +02:00
kbJeff-8andkbz_8 e3ab91c7eb [BOT] update dependencies 2026-04-19 18:24:23 +02:00
kbJeff-8andkbz_8 6f0beebdf9 [BOT] update dependencies 2026-04-14 02:47:02 +02:00
kbJeff-8andkbz_8 f9f4fc6425 [BOT] update dependencies 2026-04-06 22:23:08 +02:00
0verLighTandkbz_8 59b3a297f9 chore: rm wrap_mode force-fallback
sdl2 warp should be used only if the system does not have sdl2 dependency
2026-03-24 23:14:42 +01:00
kbz_8 790e24ebdb Update meson.build 2026-03-24 23:14:42 +01:00
0verLighTandkbz_8 3a2563a7f5 chore: update meson.build 2026-03-24 23:14:42 +01:00
82 changed files with 22019 additions and 4276 deletions
+1 -1
View File
@@ -11,7 +11,7 @@ jobs:
steps: steps:
- name: Checkout Repository - name: Checkout Repository
uses: actions/checkout@v6 uses: actions/checkout@v7
- name: Run Fetch Dependencies Script - name: Run Fetch Dependencies Script
run: cd scripts && bash ./fetch_dependencies.sh run: cd scripts && bash ./fetch_dependencies.sh
+1 -1
View File
@@ -23,7 +23,7 @@ jobs:
steps: steps:
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@v6 uses: actions/checkout@v7
- name: Install system dependencies - name: Install system dependencies
run: | run: |
+1 -1
View File
@@ -23,7 +23,7 @@ jobs:
steps: steps:
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@v6 uses: actions/checkout@v7
- name: Install system dependencies - name: Install system dependencies
run: | run: |
+2 -2
View File
@@ -22,7 +22,7 @@ jobs:
steps: steps:
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@v6 uses: actions/checkout@v7
- name: Install system dependencies - name: Install system dependencies
run: | run: |
@@ -30,7 +30,7 @@ jobs:
sudo apt-get -y install mesa-common-dev clang libsdl2-2.0-0 libsdl2-dev build-essential libvulkan-dev sudo apt-get -y install mesa-common-dev clang libsdl2-2.0-0 libsdl2-dev build-essential libvulkan-dev
- name: Python - name: Python
uses: actions/setup-python@v6 uses: actions/setup-python@v7
with: with:
python-version: '3.11' python-version: '3.11'
+1 -1
View File
@@ -23,7 +23,7 @@ jobs:
steps: steps:
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@v6 uses: actions/checkout@v7
# Install system dependencies # Install system dependencies
- name: Install Dependancies - name: Install Dependancies
+2 -2
View File
@@ -22,14 +22,14 @@ jobs:
steps: steps:
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@v6 uses: actions/checkout@v7
- name: Install system dependencies - name: Install system dependencies
run: | run: |
brew install SDL2 brew install SDL2
- name: Python - name: Python
uses: actions/setup-python@v6 uses: actions/setup-python@v7
with: with:
python-version: '3.11' python-version: '3.11'
+2 -2
View File
@@ -23,7 +23,7 @@ jobs:
steps: steps:
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@v6 uses: actions/checkout@v7
- uses: NcStudios/VulkanCI@v1.2 - uses: NcStudios/VulkanCI@v1.2
@@ -69,7 +69,7 @@ jobs:
# Save dependencies # Save dependencies
- name: Save cached xmake dependencies - name: Save cached xmake dependencies
if: ${{ !steps.restore-depcache.outputs.cache-hit }} if: ${{ !steps.restore-depcache.outputs.cache-hit }}
uses: actions/cache/save@v5 uses: actions/cache/save@v6
with: with:
path: ${{ env.XMAKE_GLOBALDIR }}/.xmake/packages path: ${{ env.XMAKE_GLOBALDIR }}/.xmake/packages
key: ${{ steps.restore-depcache.outputs.cache-primary-key }} key: ${{ steps.restore-depcache.outputs.cache-primary-key }}
+1 -1
View File
@@ -28,7 +28,7 @@ jobs:
run: echo "key=$(date +'%W')" >> $GITHUB_OUTPUT run: echo "key=$(date +'%W')" >> $GITHUB_OUTPUT
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@v6 uses: actions/checkout@v7
# Force xmake to a specific folder (for cache) # Force xmake to a specific folder (for cache)
- name: Set xmake env - name: Set xmake env
+4 -4
View File
@@ -19,14 +19,14 @@ jobs:
matrix: matrix:
platform: ['x64', 'x86'] platform: ['x64', 'x86']
steps: steps:
- uses: actions/checkout@v6 - uses: actions/checkout@v7
with: with:
fetch-depth: 0 fetch-depth: 0
# Install a 32-bit Python so building related stuff work. # Install a 32-bit Python so building related stuff work.
- name: Setup x86 Python - name: Setup x86 Python
if: matrix.platform == 'x86' if: matrix.platform == 'x86'
uses: actions/setup-python@v6 uses: actions/setup-python@v7
with: with:
architecture: 'x86' architecture: 'x86'
python-version: '3.12' python-version: '3.12'
@@ -52,7 +52,7 @@ jobs:
CC: clang-cl CC: clang-cl
CXX: clang-cl CXX: clang-cl
steps: steps:
- uses: actions/checkout@v6 - uses: actions/checkout@v7
with: with:
fetch-depth: 0 fetch-depth: 0
@@ -75,7 +75,7 @@ jobs:
matrix: matrix:
platform: ['UCRT64', 'CLANG64'] platform: ['UCRT64', 'CLANG64']
steps: steps:
- uses: actions/checkout@v6 - uses: actions/checkout@v7
with: with:
fetch-depth: 0 fetch-depth: 0
+3 -1
View File
@@ -177,6 +177,8 @@ int main(void)
mlx.logo_png = mlx_new_image_from_file(mlx.mlx, "42_logo.png", &dummy, &dummy); mlx.logo_png = mlx_new_image_from_file(mlx.mlx, "42_logo.png", &dummy, &dummy);
mlx.logo_jpg = mlx_new_image_from_file(mlx.mlx, "42_logo.jpg", &dummy, &dummy); mlx.logo_jpg = mlx_new_image_from_file(mlx.mlx, "42_logo.jpg", &dummy, &dummy);
mlx_set_window_icon(mlx.mlx, mlx.win, mlx.logo_png);
mlx_pixel_put(mlx.mlx, mlx.win, 200, 10, (mlx_color){ .rgba = 0xFF00FFFF }); mlx_pixel_put(mlx.mlx, mlx.win, 200, 10, (mlx_color){ .rgba = 0xFF00FFFF });
mlx_put_image_to_window(mlx.mlx, mlx.win, mlx.logo_png, 0, 0); mlx_put_image_to_window(mlx.mlx, mlx.win, mlx.logo_png, 0, 0);
@@ -193,7 +195,7 @@ int main(void)
mlx_destroy_image(mlx.mlx, mlx.logo_bmp); mlx_destroy_image(mlx.mlx, mlx.logo_bmp);
mlx_destroy_image(mlx.mlx, mlx.img); mlx_destroy_image(mlx.mlx, mlx.img);
mlx_destroy_window(mlx.mlx, mlx.win); mlx_destroy_window(mlx.mlx, mlx.win);
mlx_destroy_context(mlx.mlx); mlx_destroy_context(mlx.mlx);
return 0; return 0;
+17 -5
View File
@@ -148,7 +148,7 @@ MLX_API void mlx_set_window_position(mlx_context mlx, mlx_window win, int x, int
* @brief Sets window size * @brief Sets window size
* *
* @param mlx Internal MLX application * @param mlx Internal MLX application
* @param win Internal window to move * @param win Internal window to resize
* @param width New width * @param width New width
* @param height New height * @param height New height
*/ */
@@ -158,16 +158,25 @@ MLX_API void mlx_set_window_size(mlx_context mlx, mlx_window win, int width, int
* @brief Sets window title * @brief Sets window title
* *
* @param mlx Internal MLX application * @param mlx Internal MLX application
* @param win Internal window to move * @param win Internal window to modify
* @param title New title * @param title New title
*/ */
MLX_API void mlx_set_window_title(mlx_context mlx, mlx_window win, const char* title); MLX_API void mlx_set_window_title(mlx_context mlx, mlx_window win, const char* title);
/**
* @brief Sets window icon
*
* @param mlx Internal MLX application
* @param win Internal window to modify
* @param image New icon image
*/
MLX_API void mlx_set_window_icon(mlx_context mlx, mlx_window win, mlx_image image);
/** /**
* @brief Enables/Disables window fullscreen mode * @brief Enables/Disables window fullscreen mode
* *
* @param mlx Internal MLX application * @param mlx Internal MLX application
* @param win Internal window to move * @param win Internal window to modify
* @param enable Switch or not to fullscreen * @param enable Switch or not to fullscreen
*/ */
MLX_API void mlx_set_window_fullscreen(mlx_context mlx, mlx_window win, bool enable); MLX_API void mlx_set_window_fullscreen(mlx_context mlx, mlx_window win, bool enable);
@@ -176,7 +185,7 @@ MLX_API void mlx_set_window_fullscreen(mlx_context mlx, mlx_window win, bool ena
* @brief Gets window position * @brief Gets window position
* *
* @param mlx Internal MLX application * @param mlx Internal MLX application
* @param win Internal window to move * @param win Internal window to get from
* @param x Pointers to get position of the window * @param x Pointers to get position of the window
* @param y Pointers to get position of the window * @param y Pointers to get position of the window
*/ */
@@ -186,7 +195,7 @@ MLX_API void mlx_get_window_position(mlx_context mlx, mlx_window win, int* x, in
* @brief Gets window size * @brief Gets window size
* *
* @param mlx Internal MLX application * @param mlx Internal MLX application
* @param win Internal window to move * @param win Internal window to get from
* @param x Pointers to get size of the window * @param x Pointers to get size of the window
* @param y Pointers to get size of the window * @param y Pointers to get size of the window
*/ */
@@ -313,7 +322,10 @@ MLX_API void mlx_on_event(mlx_context mlx, mlx_window win, mlx_event_type event,
* @param x X coordinate * @param x X coordinate
* @param y Y coordinate * @param y Y coordinate
* @param color Color of the pixel * @param color Color of the pixel
*
* WARNING: This function isn't performant, consider drawing to an image beforehand.
*/ */
MLX_DEPRECATED("Use an image rather than directly communicating with the window")
MLX_API void mlx_pixel_put(mlx_context mlx, mlx_window win, int x, int y, mlx_color color); MLX_API void mlx_pixel_put(mlx_context mlx, mlx_window win, int x, int y, mlx_color color);
+19 -1
View File
@@ -75,7 +75,6 @@ MLX_API void mlx_restore_window(mlx_context mlx, mlx_window win);
/* Pixels drawing related functions */ /* Pixels drawing related functions */
/** /**
* @brief Put an array of pixels in the window * @brief Put an array of pixels in the window
* *
@@ -85,7 +84,12 @@ MLX_API void mlx_restore_window(mlx_context mlx, mlx_window win);
* @param y Y coordinate * @param y Y coordinate
* @param pixels Array of pixels * @param pixels Array of pixels
* @param pixels_number Number of pixels * @param pixels_number Number of pixels
*
* Note: it is responsability of the user to make sure the size of `pixels` is
* big enough for the given array.
* WARNING: This function isn't performant, consider drawing to an image beforehand.
*/ */
MLX_DEPRECATED("Use an image rather than directly communicating with the window")
MLX_API void mlx_pixel_put_array(mlx_context mlx, mlx_window win, int x, int y, mlx_color* pixels, size_t pixels_number); MLX_API void mlx_pixel_put_array(mlx_context mlx, mlx_window win, int x, int y, mlx_color* pixels, size_t pixels_number);
/** /**
@@ -101,13 +105,27 @@ MLX_API void mlx_pixel_put_array(mlx_context mlx, mlx_window win, int x, int y,
* *
* Note: it is responsability of the user to make sure the size of `pixels` is * Note: it is responsability of the user to make sure the size of `pixels` is
* big enough for the given region. * big enough for the given region.
* WARNING: This function isn't performant, consider drawing to an image beforehand.
*/ */
MLX_DEPRECATED("Use an image rather than directly communicating with the window")
MLX_API void mlx_pixel_put_region(mlx_context mlx, mlx_window win, int x, int y, int w, int h, mlx_color* pixels); MLX_API void mlx_pixel_put_region(mlx_context mlx, mlx_window win, int x, int y, int w, int h, mlx_color* pixels);
/* Images related functions */ /* Images related functions */
/**
* @brief Set image rectangle
*
* @param mlx Internal MLX application
* @param img Internal image
* @param x X coordinate in the image
* @param y Y coordinate in the image
* @param w Width of the rectangle
* @param y Height of the rectangle
* @param color Color of the rectangle
*/
MLX_API void mlx_set_image_rectangle(mlx_context mlx, mlx_image image, int x, int y, int w, int h, mlx_color color);
/** /**
* @brief Get image region * @brief Get image region
+168
View File
@@ -0,0 +1,168 @@
/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* mlx_keycodes.h :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: rprieur <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2026/08/09 00:15:49 by rprieur #+# #+# */
/* Updated: 2026/08/09 00:16:30 by rprieur ### ########.fr */
/* */
/* ************************************************************************** */
// MacroLibX official repo https://github.com/seekrs/MacroLibX
// MacroLibX official website https://macrolibx.kbz8.me/
#ifndef MACROLIB_X_KEYCODES_H
#define MACROLIB_X_KEYCODES_H
#ifdef __cplusplus
extern "C" {
#endif
/**
* @brief Event codes for physical keyboard keys
*/
typedef enum mlx_key_event_code
{
MLX_KEY_A = 4,
MLX_KEY_B = 5,
MLX_KEY_C = 6,
MLX_KEY_D = 7,
MLX_KEY_E = 8,
MLX_KEY_F = 9,
MLX_KEY_G = 10,
MLX_KEY_H = 11,
MLX_KEY_I = 12,
MLX_KEY_J = 13,
MLX_KEY_K = 14,
MLX_KEY_L = 15,
MLX_KEY_M = 16,
MLX_KEY_N = 17,
MLX_KEY_O = 18,
MLX_KEY_P = 19,
MLX_KEY_Q = 20,
MLX_KEY_R = 21,
MLX_KEY_S = 22,
MLX_KEY_T = 23,
MLX_KEY_U = 24,
MLX_KEY_V = 25,
MLX_KEY_W = 26,
MLX_KEY_X = 27,
MLX_KEY_Y = 28,
MLX_KEY_Z = 29,
MLX_KEY_1 = 30,
MLX_KEY_2 = 31,
MLX_KEY_3 = 32,
MLX_KEY_4 = 33,
MLX_KEY_5 = 34,
MLX_KEY_6 = 35,
MLX_KEY_7 = 36,
MLX_KEY_8 = 37,
MLX_KEY_9 = 38,
MLX_KEY_0 = 39,
MLX_KEY_RETURN = 40,
MLX_KEY_ENTER = 40,
MLX_KEY_ESCAPE = 41,
MLX_KEY_BACKSPACE = 42,
MLX_KEY_TAB = 43,
MLX_KEY_SPACE = 44,
MLX_KEY_MINUS = 45,
MLX_KEY_EQUALS = 46,
MLX_KEY_LEFTBRACKET = 47,
MLX_KEY_RIGHTBRACKET = 48,
MLX_KEY_BACKSLASH = 49,
MLX_KEY_SEMICOLON = 51,
MLX_KEY_APOSTROPHE = 52,
MLX_KEY_GRAVE = 53,
MLX_KEY_COMMA = 54,
MLX_KEY_PERIOD = 55,
MLX_KEY_SLASH = 56,
MLX_KEY_CAPSLOCK = 57,
MLX_KEY_F1 = 58,
MLX_KEY_F2 = 59,
MLX_KEY_F3 = 60,
MLX_KEY_F4 = 61,
MLX_KEY_F5 = 62,
MLX_KEY_F6 = 63,
MLX_KEY_F7 = 64,
MLX_KEY_F8 = 65,
MLX_KEY_F9 = 66,
MLX_KEY_F10 = 67,
MLX_KEY_F11 = 68,
MLX_KEY_F12 = 69,
MLX_KEY_PRINTSCREEN = 70,
MLX_KEY_SCROLLLOCK = 71,
MLX_KEY_PAUSE = 72,
MLX_KEY_INSERT = 73,
MLX_KEY_HOME = 74,
MLX_KEY_PAGEUP = 75,
MLX_KEY_DELETE = 76,
MLX_KEY_END = 77,
MLX_KEY_PAGEDOWN = 78,
MLX_KEY_RIGHT = 79,
MLX_KEY_LEFT = 80,
MLX_KEY_DOWN = 81,
MLX_KEY_UP = 82,
MLX_KEY_NUMLOCKCLEAR = 83,
MLX_KEY_KP_DIVIDE = 84,
MLX_KEY_KP_MULTIPLY = 85,
MLX_KEY_KP_MINUS = 86,
MLX_KEY_KP_PLUS = 87,
MLX_KEY_KP_ENTER = 88,
MLX_KEY_KP_1 = 89,
MLX_KEY_KP_2 = 90,
MLX_KEY_KP_3 = 91,
MLX_KEY_KP_4 = 92,
MLX_KEY_KP_5 = 93,
MLX_KEY_KP_6 = 94,
MLX_KEY_KP_7 = 95,
MLX_KEY_KP_8 = 96,
MLX_KEY_KP_9 = 97,
MLX_KEY_KP_0 = 98,
MLX_KEY_KP_PERIOD = 99,
MLX_KEY_LCTRL = 224,
MLX_KEY_LSHIFT = 225,
MLX_KEY_LALT = 226,
MLX_KEY_LGUI = 227,
MLX_KEY_RCTRL = 228,
MLX_KEY_RSHIFT = 229,
MLX_KEY_RALT = 230,
MLX_KEY_RGUI = 231
} mlx_key_codes;
/**
* @brief Event codes for mouse buttons
*/
typedef enum mlx_mouse_code
{
MLX_MOUSE_LEFT = 1,
MLX_MOUSE_MIDDLE = 2,
MLX_MOUSE_RIGHT = 3,
MLX_MOUSE_4 = 4,
MLX_MOUSE_5 = 5,
} mlx_mouse_code;
/**
* @brief Event codes for window events
*/
typedef enum mlx_window_code
{
MLX_WINDOW_CLOSE = 0,
MLX_WINDOW_MOVED = 1,
MLX_WINDOW_MINIMIZED = 2,
MLX_WINDOW_MAXIMIZED = 3,
MLX_WINDOW_ENTER = 4,
MLX_WINDOW_FOCUS = 5,
MLX_WINDOW_LEAVE = 6,
MLX_WINDOW_UNFOCUS = 7,
MLX_WINDOW_SIZE_CHANGED = 8,
MLX_WINDOW_RESIZED = 9,
MLX_WINDOW_RESTORED = 11
} mlx_window_code;
#ifdef __cplusplus
}
#endif
#endif
+19
View File
@@ -83,6 +83,25 @@
#define MLX_API #define MLX_API
#endif #endif
#define MLX_NO_DEPRECATE
#ifdef MLX_NO_DEPRECATE
#define MLX_DEPRECATED(msg)
#elif defined(__has_c_attribute)
#if __has_c_attribute(deprecated)
#define MLX_DEPRECATED(msg) [[deprecated(msg)]]
#endif
#endif
#ifndef MLX_DEPRECATED
#if defined(__GNUC__) || defined(__clang__)
#define MLX_DEPRECATED(msg) __attribute__((deprecated(msg)))
#elif defined(_MSC_VER)
#define MLX_DEPRECATED(msg) __declspec(deprecated(msg))
#else
#define MLX_DEPRECATED(msg)
#endif
#endif
#if defined(__GNUC__) || (defined(__MWERKS__) && (__MWERKS__ >= 0x3000)) || (defined(__ICC) && (__ICC >= 600)) || defined(__ghs__) #if defined(__GNUC__) || (defined(__MWERKS__) && (__MWERKS__ >= 0x3000)) || (defined(__ICC) && (__ICC >= 600)) || defined(__ghs__)
#define MLX_FUNC_SIG __PRETTY_FUNCTION__ #define MLX_FUNC_SIG __PRETTY_FUNCTION__
#elif defined(__DMC__) && (__DMC__ >= 0x810) #elif defined(__DMC__) && (__DMC__ >= 0x810)
+18 -19
View File
@@ -1,12 +1,15 @@
project('MacroLibX', project('MacroLibX',
['c', 'cpp'], ['c', 'cpp'],
version : '2.2.4', version : '2.3.0',
license : 'MIT', license : 'MIT',
meson_version : '>= 1.9.0', meson_version : '>= 0.63.0',
default_options : ['warning_level=2', 'optimization=3', 'cpp_std=c++20']) default_options : [
'warning_level=2',
'optimization=3',
'cpp_std=c++20',
]
)
add_project_arguments('-Wno-error=', language : 'c')
add_project_arguments('-fPIC', language : 'c')
add_project_arguments('-DSDL_MAIN_HANDLED', language : 'c') add_project_arguments('-DSDL_MAIN_HANDLED', language : 'c')
if get_option('graphics_memory_dump') if get_option('graphics_memory_dump')
@@ -25,15 +28,14 @@ if get_option('disable_all_safeties')
add_project_arguments('-DDISABLE_ALL_SAFETIES', language : 'c') add_project_arguments('-DDISABLE_ALL_SAFETIES', language : 'c')
endif endif
includes_directories = [ includes_directories = include_directories(
include_directories('includes'), 'includes',
include_directories('runtime/Includes'), 'runtime/Includes',
include_directories('runtime/Sources'), 'runtime/Sources',
include_directories('third_party'), 'third_party',
] )
sources = [ sources = files(
files(
'runtime/Sources/Core/Application.cpp', 'runtime/Sources/Core/Application.cpp',
'runtime/Sources/Core/Bridge.cpp', 'runtime/Sources/Core/Bridge.cpp',
'runtime/Sources/Core/EventBus.cpp', 'runtime/Sources/Core/EventBus.cpp',
@@ -66,9 +68,8 @@ sources = [
'runtime/Sources/Renderer/RenderCore.cpp', 'runtime/Sources/Renderer/RenderCore.cpp',
'runtime/Sources/Renderer/Renderer.cpp', 'runtime/Sources/Renderer/Renderer.cpp',
'runtime/Sources/Renderer/SceneRenderer.cpp', 'runtime/Sources/Renderer/SceneRenderer.cpp',
'runtime/Sources/Renderer/Swapchain.cpp' 'runtime/Sources/Renderer/Swapchain.cpp',
) )
]
mlx_headers = [ mlx_headers = [
'includes/mlx.h', 'includes/mlx.h',
@@ -78,9 +79,7 @@ mlx_headers = [
install_headers(mlx_headers) install_headers(mlx_headers)
deps = [ deps = dependency('sdl2')
dependency('sdl2'),
]
libmlx = library('mlx', libmlx = library('mlx',
sources, sources,
+1 -1
View File
@@ -23,7 +23,7 @@ namespace mlx
inline void OnEvent(mlx_window win, int event, void(*f)(int, void*), void* param) noexcept; inline void OnEvent(mlx_window win, int event, void(*f)(int, void*), void* param) noexcept;
inline mlx_window NewGraphicsSuport(const mlx_window_create_info* info); inline mlx_window NewGraphicsSupport(const mlx_window_create_info* info);
inline NonOwningPtr<GraphicsSupport> GetGraphicsSupport(mlx_window win); inline NonOwningPtr<GraphicsSupport> GetGraphicsSupport(mlx_window win);
inline void DestroyGraphicsSupport(mlx_window win); inline void DestroyGraphicsSupport(mlx_window win);
+7 -2
View File
@@ -60,7 +60,7 @@ namespace mlx
m_fps.SetMaxFPS(fps); m_fps.SetMaxFPS(fps);
} }
mlx_window Application::NewGraphicsSuport(const mlx_window_create_info* info) mlx_window Application::NewGraphicsSupport(const mlx_window_create_info* info)
{ {
MLX_PROFILE_FUNCTION(); MLX_PROFILE_FUNCTION();
if(!info) if(!info)
@@ -68,6 +68,11 @@ namespace mlx
Error("invalid window create info (NULL)"); Error("invalid window create info (NULL)");
return nullptr; return nullptr;
} }
if (info->title == nullptr)
{
Error("invalid window title (NULL)");
return nullptr;
}
mlx_window window; mlx_window window;
try { window = new mlx_window_handler; } try { window = new mlx_window_handler; }
@@ -134,7 +139,7 @@ namespace mlx
{ {
m_hooks.emplace_back(f, param); m_hooks.emplace_back(f, param);
} }
void Application::LoopEnd() noexcept void Application::LoopEnd() noexcept
{ {
m_in.Finish(); m_in.Finish();
+4 -3
View File
@@ -19,9 +19,10 @@ namespace mlx
enum class Event enum class Event
{ {
ResizeEventCode = 56, ResizeEventCode = 1,
FrameBeginEventCode = 57, SwapchainResizeEventCode,
FatalErrorEventCode = 168, FrameBeginEventCode,
FatalErrorEventCode,
EndEnum EndEnum
}; };
+12 -8
View File
@@ -1,26 +1,30 @@
#ifndef __MLX_FPS__ #ifndef __MLX_FPS__
#define __MLX_FPS__ #define __MLX_FPS__
#include <chrono>
namespace mlx namespace mlx
{ {
typedef std::chrono::steady_clock fps_clock;
class FpsManager class FpsManager
{ {
public: public:
FpsManager() = default; FpsManager() = default;
void Init(); void Init();
bool Update(); void WaitUntilNextFrame();
inline void SetMaxFPS(std::uint32_t fps) noexcept { m_max_fps = fps; m_ns = 1000000000.0 / fps; } inline void SetMaxFPS(std::uint32_t fps) noexcept { m_target_delta = fps_clock::duration(std::chrono::seconds(1)) / fps;}
~FpsManager() = default; ~FpsManager() = default;
private: private:
double m_ns = 1000000000.0 / 1'337'000.0; fps_clock::time_point m_current_time;
std::int64_t m_fps_before = 0; fps_clock::time_point m_target_time;
std::int64_t m_fps_now = 0; fps_clock::time_point m_last_time_record;
std::int64_t m_timer = 0; fps_clock::duration m_delta_time = fps_clock::duration().zero();
std::uint32_t m_max_fps = 1'337'000; fps_clock::duration m_target_delta = fps_clock::duration().zero();
std::uint32_t m_fps_elapsed_time = 0; fps_clock::duration m_sleep_margin = std::chrono::microseconds(200);
}; };
} }
+2
View File
@@ -3,6 +3,7 @@
#include <mlx.h> #include <mlx.h>
#include <Maths/Vec2.h> #include <Maths/Vec2.h>
#include <Renderer/Image.h>
namespace mlx namespace mlx
{ {
@@ -26,6 +27,7 @@ namespace mlx
void SetWindowPosition(Handle window, int x, int y) const noexcept; void SetWindowPosition(Handle window, int x, int y) const noexcept;
void SetWindowSize(Handle window, int x, int y) const noexcept; void SetWindowSize(Handle window, int x, int y) const noexcept;
void SetWindowTitle(Handle window, std::string_view title) const noexcept; void SetWindowTitle(Handle window, std::string_view title) const noexcept;
void SetWindowIcon(Handle window, NonOwningPtr<Texture> texture) const noexcept;
void SetWindowFullscreen(Handle window, bool enable) const noexcept; void SetWindowFullscreen(Handle window, bool enable) const noexcept;
void SetWindowMaxSize(Handle window, int x, int y) const noexcept; void SetWindowMaxSize(Handle window, int x, int y) const noexcept;
void SetWindowMinSize(Handle window, int x, int y) const noexcept; void SetWindowMinSize(Handle window, int x, int y) const noexcept;
+2
View File
@@ -4,6 +4,7 @@
#include <mlx.h> #include <mlx.h>
#include <Maths/Vec2.h> #include <Maths/Vec2.h>
#include <Core/SDLManager.h> #include <Core/SDLManager.h>
#include <Renderer/Image.h>
namespace mlx namespace mlx
{ {
@@ -24,6 +25,7 @@ namespace mlx
MLX_FORCEINLINE void SetPosition(int x, int y) { SDLManager::Get().SetWindowPosition(p_window, x, y); } MLX_FORCEINLINE void SetPosition(int x, int y) { SDLManager::Get().SetWindowPosition(p_window, x, y); }
MLX_FORCEINLINE void SetSize(int x, int y) { SDLManager::Get().SetWindowSize(p_window, x, y); m_width = x; m_height = y; } MLX_FORCEINLINE void SetSize(int x, int y) { SDLManager::Get().SetWindowSize(p_window, x, y); m_width = x; m_height = y; }
MLX_FORCEINLINE void SetTitle(std::string title) { SDLManager::Get().SetWindowTitle(p_window, title); m_name = std::move(title); } MLX_FORCEINLINE void SetTitle(std::string title) { SDLManager::Get().SetWindowTitle(p_window, title); m_name = std::move(title); }
MLX_FORCEINLINE void SetIcon(NonOwningPtr<Texture> texture) {SDLManager::Get().SetWindowIcon(p_window, texture); }
MLX_FORCEINLINE void SetFullscreen(bool enable) { SDLManager::Get().SetWindowFullscreen(p_window, enable); } MLX_FORCEINLINE void SetFullscreen(bool enable) { SDLManager::Get().SetWindowFullscreen(p_window, enable); }
MLX_FORCEINLINE void SetMaxSize(int x, int y) { SDLManager::Get().SetWindowMaxSize(p_window, x, y); } MLX_FORCEINLINE void SetMaxSize(int x, int y) { SDLManager::Get().SetWindowMaxSize(p_window, x, y); }
MLX_FORCEINLINE void SetMinSize(int x, int y) { SDLManager::Get().SetWindowMinSize(p_window, x, y); } MLX_FORCEINLINE void SetMinSize(int x, int y) { SDLManager::Get().SetWindowMinSize(p_window, x, y); }
+3
View File
@@ -86,6 +86,7 @@ namespace mlx
void SetPixel(int x, int y, mlx_color color) noexcept; void SetPixel(int x, int y, mlx_color color) noexcept;
void SetRegion(int x, int y, int w, int h, mlx_color* color) noexcept; void SetRegion(int x, int y, int w, int h, mlx_color* color) noexcept;
void SetLinearRegion(int x, int y, std::size_t len, mlx_color* color) noexcept; void SetLinearRegion(int x, int y, std::size_t len, mlx_color* color) noexcept;
void SetRectangle(int x, int y, int w, int h, mlx_color color) noexcept;
mlx_color GetPixel(int x, int y) noexcept; mlx_color GetPixel(int x, int y) noexcept;
void GetRegion(int x, int y, int w, int h, mlx_color* dst) noexcept; void GetRegion(int x, int y, int w, int h, mlx_color* dst) noexcept;
void Clear(VkCommandBuffer cmd, Vec4f color) override; void Clear(VkCommandBuffer cmd, Vec4f color) override;
@@ -94,6 +95,8 @@ namespace mlx
void Swap(Texture& texture) noexcept; void Swap(Texture& texture) noexcept;
mlx_color* GetBufferCopy() noexcept;
// If a valid cmd buffer is passed, this function takes ownership and makes it invalid after // If a valid cmd buffer is passed, this function takes ownership and makes it invalid after
void SyncCPUBuffer(VkCommandBuffer cmd = VK_NULL_HANDLE); void SyncCPUBuffer(VkCommandBuffer cmd = VK_NULL_HANDLE);
void Update(VkCommandBuffer cmd); void Update(VkCommandBuffer cmd);
+2
View File
@@ -1,6 +1,8 @@
#ifndef __MLX_CPU_BUFFER__ #ifndef __MLX_CPU_BUFFER__
#define __MLX_CPU_BUFFER__ #define __MLX_CPU_BUFFER__
#include <PreCompiled.h>
namespace mlx namespace mlx
{ {
class CPUBuffer class CPUBuffer
+2 -3
View File
@@ -8,7 +8,7 @@
namespace mlx namespace mlx
{ {
Application::Application() : p_mem_manager(std::make_unique<MemManager>()), p_sdl_manager(std::make_unique<SDLManager>()), m_fps(), m_in() Application::Application() : p_mem_manager(std::make_unique<MemManager>()), p_sdl_manager(std::make_unique<SDLManager>()), m_fps(), m_in()
{ {
MLX_PROFILE_FUNCTION(); MLX_PROFILE_FUNCTION();
std::srand(std::time(nullptr)); std::srand(std::time(nullptr));
@@ -33,8 +33,7 @@ namespace mlx
while(m_in.IsRunning()) while(m_in.IsRunning())
{ {
if(!m_fps.Update()) m_fps.WaitUntilNextFrame();
continue;
m_in.FetchInputs(); m_in.FetchInputs();
+33 -8
View File
@@ -45,10 +45,9 @@ extern "C"
void mlx_set_fps_goal(mlx_context mlx, int fps) void mlx_set_fps_goal(mlx_context mlx, int fps)
{ {
MLX_CHECK_APPLICATION_POINTER(mlx); MLX_CHECK_APPLICATION_POINTER(mlx);
if(fps < 0) if(fps <= 0)
mlx::Error("You cannot set a negative FPS cap (nice try)"); fps = -1;
else mlx->app->SetFPSCap(static_cast<std::uint32_t>(fps));
mlx->app->SetFPSCap(static_cast<std::uint32_t>(fps));
} }
void mlx_destroy_context(mlx_context mlx) void mlx_destroy_context(mlx_context mlx)
@@ -62,7 +61,7 @@ extern "C"
mlx_window mlx_new_window(mlx_context mlx, const mlx_window_create_info* info) mlx_window mlx_new_window(mlx_context mlx, const mlx_window_create_info* info)
{ {
MLX_CHECK_APPLICATION_POINTER(mlx); MLX_CHECK_APPLICATION_POINTER(mlx);
return mlx->app->NewGraphicsSuport(info); return mlx->app->NewGraphicsSupport(info);
} }
void mlx_destroy_window(mlx_context mlx, mlx_window win) void mlx_destroy_window(mlx_context mlx, mlx_window win)
@@ -92,12 +91,29 @@ extern "C"
void mlx_set_window_title(mlx_context mlx, mlx_window win, const char* title) void mlx_set_window_title(mlx_context mlx, mlx_window win, const char* title)
{ {
MLX_CHECK_APPLICATION_POINTER(mlx); MLX_CHECK_APPLICATION_POINTER(mlx);
if (title == nullptr)
{
mlx::Error("invalid window title (NULL)");
return;
}
mlx::NonOwningPtr<mlx::GraphicsSupport> gs = mlx->app->GetGraphicsSupport(win); mlx::NonOwningPtr<mlx::GraphicsSupport> gs = mlx->app->GetGraphicsSupport(win);
if(!gs && !gs->HasWindow()) if(!gs && !gs->HasWindow())
return; return;
gs->GetWindow()->SetTitle(title); gs->GetWindow()->SetTitle(title);
} }
void mlx_set_window_icon(mlx_context mlx, mlx_window win, mlx_image image)
{
MLX_CHECK_APPLICATION_POINTER(mlx);
mlx::NonOwningPtr<mlx::GraphicsSupport> gs = mlx->app->GetGraphicsSupport(win);
if(!gs && !gs->HasWindow())
return;
mlx::NonOwningPtr<mlx::Texture> texture = mlx->app->GetTexture(image);
if(!texture)
return;
gs->GetWindow()->SetIcon(texture);
}
void mlx_set_window_fullscreen(mlx_context mlx, mlx_window win, bool enable) void mlx_set_window_fullscreen(mlx_context mlx, mlx_window win, bool enable)
{ {
MLX_CHECK_APPLICATION_POINTER(mlx); MLX_CHECK_APPLICATION_POINTER(mlx);
@@ -313,14 +329,14 @@ extern "C"
mlx::Error("Font loader: filepath is NULL"); mlx::Error("Font loader: filepath is NULL");
return; return;
} }
std::filesystem::path file(filepath); std::filesystem::path file(filepath);
if (std::strcmp(filepath, "default") != 0 && !std::filesystem::exists(file)) if (std::strcmp(filepath, "default") != 0 && !std::filesystem::exists(file))
{ {
mlx::Error("TTF loader: unable to find file '%'", filepath); mlx::Error("TTF loader: unable to find file '%'", filepath);
return; return;
} }
if(std::strcmp(filepath, "default") != 0) if(std::strcmp(filepath, "default") != 0)
{ {
if(file.extension() != ".ttf" && file.extension() != ".tte") if(file.extension() != ".ttf" && file.extension() != ".tte")
@@ -350,7 +366,7 @@ extern "C"
mlx::Error("Font loader: filepath is NULL"); mlx::Error("Font loader: filepath is NULL");
return; return;
} }
std::filesystem::path file(filepath); std::filesystem::path file(filepath);
if (std::strcmp(filepath, "default") != 0 && !std::filesystem::exists(file)) if (std::strcmp(filepath, "default") != 0 && !std::filesystem::exists(file))
{ {
@@ -441,6 +457,15 @@ extern "C"
gs->PixelPutRegion(x, y, w, h, pixels); gs->PixelPutRegion(x, y, w, h, pixels);
} }
void mlx_set_image_rectangle(mlx_context mlx, mlx_image image, int x, int y, int w, int h, mlx_color color)
{
MLX_CHECK_APPLICATION_POINTER(mlx);
mlx::NonOwningPtr<mlx::Texture> texture = mlx->app->GetTexture(image);
if(!texture)
return;
texture->SetRectangle(x, y, w, h, color);
}
void mlx_get_image_region(mlx_context mlx, mlx_image image, int x, int y, int w, int h, mlx_color* dst) void mlx_get_image_region(mlx_context mlx, mlx_image image, int x, int y, int w, int h, mlx_color* dst)
{ {
MLX_CHECK_APPLICATION_POINTER(mlx); MLX_CHECK_APPLICATION_POINTER(mlx);
+23 -16
View File
@@ -1,30 +1,37 @@
#include <PreCompiled.h> #include <PreCompiled.h>
#include <Core/Fps.h> #include <Core/Fps.h>
#ifndef __APPLE__
#include <emmintrin.h>
#endif
namespace mlx namespace mlx
{ {
void FpsManager::Init() void FpsManager::Init()
{ {
m_timer = static_cast<std::uint64_t>(std::chrono::duration_cast<std::chrono::nanoseconds>(std::chrono::high_resolution_clock::now().time_since_epoch()).count()); m_current_time = fps_clock::now();
m_fps_before = m_timer; m_target_time = m_current_time + m_target_delta;
m_fps_now = m_timer;
} }
bool FpsManager::Update() void FpsManager::WaitUntilNextFrame()
{ {
using namespace std::chrono_literals; m_current_time = fps_clock::now();
m_fps_now = static_cast<std::uint64_t>(std::chrono::duration_cast<std::chrono::nanoseconds>(std::chrono::high_resolution_clock::now().time_since_epoch()).count()); if(m_current_time < m_target_time)
if(std::chrono::duration<std::uint64_t>{m_fps_now - m_timer} >= 1s)
m_timer += m_fps_now;
m_fps_elapsed_time = m_fps_now - m_fps_before;
if(m_fps_elapsed_time >= m_ns)
{ {
m_fps_before += m_ns; std::this_thread::sleep_until(m_target_time - m_sleep_margin);
return true; m_current_time = fps_clock::now();
while (m_current_time < m_target_time)
{
#ifndef __APPLE__
_mm_pause(); // reduces CPU usage on x86 without yielding
#endif
m_current_time = fps_clock::now();
}
} }
std::this_thread::sleep_for(std::chrono::duration<double, std::nano>(m_ns - 1)); else if (m_target_time < m_current_time - m_target_delta * 4)
return false; m_target_time = m_current_time;
m_target_time += m_target_delta;
m_delta_time = m_current_time - m_last_time_record;
m_last_time_record = m_current_time;
} }
} }
+28 -2
View File
@@ -1,3 +1,5 @@
#include "Utils/Buffer.h"
#include "mlx.h"
#include <PreCompiled.h> #include <PreCompiled.h>
#include <Core/SDLManager.h> #include <Core/SDLManager.h>
#include <Core/Memory.h> #include <Core/Memory.h>
@@ -56,7 +58,12 @@ namespace mlx
infos->window = SDL_CreateWindow(info->title, SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, info->width, info->height, flags); infos->window = SDL_CreateWindow(info->title, SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, info->width, info->height, flags);
if(!infos->window) if(!infos->window)
FatalError("SDL: unable to open a new window; %", SDL_GetError()); FatalError("SDL: unable to open a new window; %", SDL_GetError());
infos->icon = SDL_CreateRGBSurfaceFrom(static_cast<void*>(logo_mlx), logo_mlx_width, logo_mlx_height, 32, 4 * logo_mlx_width, Rmask(), Gmask(), Bmask(), Amask());
mlx_color* buffer = new mlx_color[logo_mlx_size];
std::memcpy(buffer, logo_mlx, logo_mlx_size);
infos->icon = SDL_CreateRGBSurfaceFrom(buffer, logo_mlx_width, logo_mlx_height, 32, logo_mlx_width * 4, Rmask(), Gmask(), Bmask(), Amask());
if(!infos->icon)
FatalError("SDL: unable to create a window icon; %", SDL_GetError());
SDL_SetWindowIcon(infos->window, infos->icon); SDL_SetWindowIcon(infos->window, infos->icon);
m_windows_registry.insert(infos); m_windows_registry.insert(infos);
@@ -74,7 +81,10 @@ namespace mlx
if(infos->window != nullptr) if(infos->window != nullptr)
SDL_DestroyWindow(infos->window); SDL_DestroyWindow(infos->window);
if(infos->icon != nullptr) if(infos->icon != nullptr)
{
delete[] (mlx_color*)infos->icon->pixels;
SDL_FreeSurface(infos->icon); SDL_FreeSurface(infos->icon);
}
m_windows_registry.erase(infos); m_windows_registry.erase(infos);
delete infos; delete infos;
@@ -119,7 +129,7 @@ namespace mlx
Vec2ui SDLManager::GetVulkanDrawableSize(Handle window) const noexcept Vec2ui SDLManager::GetVulkanDrawableSize(Handle window) const noexcept
{ {
Vec2i extent; Vec2i extent;
SDL_GetWindowSizeInPixels(static_cast<Internal::WindowInfos*>(window)->window, &extent.x, &extent.y); SDL_GetWindowSize(static_cast<Internal::WindowInfos*>(window)->window, &extent.x, &extent.y);
return Vec2ui{ extent }; return Vec2ui{ extent };
} }
@@ -152,6 +162,21 @@ namespace mlx
SDL_SetWindowTitle(static_cast<Internal::WindowInfos*>(window)->window, title.data()); SDL_SetWindowTitle(static_cast<Internal::WindowInfos*>(window)->window, title.data());
} }
void SDLManager::SetWindowIcon(Handle window, NonOwningPtr<Texture> texture) const noexcept
{
Internal::WindowInfos* infos = static_cast<Internal::WindowInfos*>(window);
if(infos->icon != nullptr)
{
delete[] (mlx_color*)infos->icon->pixels;
SDL_FreeSurface(infos->icon);
}
int width = texture->GetWidth(), height = texture->GetHeight();
infos->icon = SDL_CreateRGBSurfaceFrom(texture->GetBufferCopy(), width, height, 32, width * 4, Rmask(), Gmask(), Bmask(), Amask());
SDL_SetWindowIcon(infos->window, infos->icon);
}
void SDLManager::SetWindowFullscreen(Handle window, bool enable) const noexcept void SDLManager::SetWindowFullscreen(Handle window, bool enable) const noexcept
{ {
SDL_SetWindowFullscreen(static_cast<Internal::WindowInfos*>(window)->window, (enable ? SDL_WINDOW_FULLSCREEN_DESKTOP : 0)); SDL_SetWindowFullscreen(static_cast<Internal::WindowInfos*>(window)->window, (enable ? SDL_WINDOW_FULLSCREEN_DESKTOP : 0));
@@ -276,6 +301,7 @@ namespace mlx
case SDL_WINDOWEVENT_LEAVE: functor(MLX_WINDOW_EVENT, id, 6); break; case SDL_WINDOWEVENT_LEAVE: functor(MLX_WINDOW_EVENT, id, 6); break;
case SDL_WINDOWEVENT_FOCUS_LOST: functor(MLX_WINDOW_EVENT, id, 7); break; case SDL_WINDOWEVENT_FOCUS_LOST: functor(MLX_WINDOW_EVENT, id, 7); break;
case SDL_WINDOWEVENT_SIZE_CHANGED: functor(MLX_WINDOW_EVENT, id, 8); break; case SDL_WINDOWEVENT_SIZE_CHANGED: functor(MLX_WINDOW_EVENT, id, 8); break;
case SDL_WINDOWEVENT_RESIZED: functor(MLX_WINDOW_EVENT, id, 9); break;
case SDL_WINDOWEVENT_RESTORED: functor(MLX_WINDOW_EVENT, id, 11); break; case SDL_WINDOWEVENT_RESTORED: functor(MLX_WINDOW_EVENT, id, 11); break;
default : break; default : break;
+3 -3
View File
@@ -8,9 +8,9 @@ namespace mlx
{ {
namespace Internal namespace Internal
{ {
struct ResizeEventBroadcast : public EventBase struct SwapchainResizeEventBroadcast : public EventBase
{ {
Event What() const override { return Event::ResizeEventCode; } Event What() const override { return Event::SwapchainResizeEventCode; }
}; };
} }
@@ -23,7 +23,7 @@ namespace mlx
if(!m_events_hooks.contains(window_id) || m_events_hooks[window_id][event].empty()) if(!m_events_hooks.contains(window_id) || m_events_hooks[window_id][event].empty())
return; return;
if(event == MLX_WINDOW_EVENT && code == 8) if(event == MLX_WINDOW_EVENT && code == 8)
EventBus::SendBroadcast(Internal::ResizeEventBroadcast{}); EventBus::SendBroadcast(Internal::SwapchainResizeEventBroadcast{});
for(const auto& hook : m_events_hooks[window_id][event]) for(const auto& hook : m_events_hooks[window_id][event])
{ {
if(hook.fn) if(hook.fn)
+82 -36
View File
@@ -1,3 +1,5 @@
#include "Utils/Buffer.h"
#include "mlx.h"
#include <PreCompiled.h> #include <PreCompiled.h>
#include <Renderer/Image.h> #include <Renderer/Image.h>
#include <Maths/Vec4.h> #include <Maths/Vec4.h>
@@ -226,25 +228,34 @@ namespace mlx
void Texture::SetRegion(int x, int y, int w, int h, mlx_color* pixels) noexcept void Texture::SetRegion(int x, int y, int w, int h, mlx_color* pixels) noexcept
{ {
MLX_PROFILE_FUNCTION(); MLX_PROFILE_FUNCTION();
if(x < 0 || y < 0 || static_cast<std::uint32_t>(x) >= m_width || static_cast<std::uint32_t>(y) >= m_height) if(w < 0 || h < 0 || x < -w || y < -h
return; || x >= static_cast<int>(m_width) || y >= static_cast<int>(m_height))
if(w < 0 || h < 0)
return; return;
if(!m_staging_buffer.has_value()) if(!m_staging_buffer.has_value())
OpenCPUBuffer(); OpenCPUBuffer();
for(std::uint32_t i = 0, moving_x = x, moving_y = y;; i++, moving_x++) const int
start_x = std::max<int>(x, 0),
start_y = std::max<int>(y, 0),
start_row = start_y * m_width,
start_i = (start_y - y) * w + (start_x - x),
end_x = std::min<int>(x + w, m_width),
end_y = std::min<int>(y + h, m_height),
end_row = end_y * m_width,
incr = (x + w) - end_x + (start_x - x);
for(int i = start_i, dx = start_x, row = start_row;; i++, dx++)
{ {
if(moving_x >= static_cast<std::uint32_t>(x + w) || moving_x >= m_width) if(dx >= end_x)
{ {
moving_x = x; i += incr;
moving_y++; dx = start_x;
if(moving_y >= static_cast<std::uint32_t>(y + h) || moving_y >= m_height) row += m_width;
if(row >= end_row)
break; break;
} }
if constexpr(std::endian::native == std::endian::little) if constexpr(std::endian::native == std::endian::little)
m_staging_buffer->GetMap<mlx_color*>()[(moving_y * m_width) + moving_x] = ReverseColor(pixels[i]); m_staging_buffer->GetMap<mlx_color*>()[row + dx] = ReverseColor(pixels[i]);
else else
m_staging_buffer->GetMap<mlx_color*>()[(moving_y * m_width) + moving_x] = pixels[i]; m_staging_buffer->GetMap<mlx_color*>()[row + dx] = pixels[i];
} }
m_has_been_modified = true; m_has_been_modified = true;
} }
@@ -252,23 +263,55 @@ namespace mlx
void Texture::SetLinearRegion(int x, int y, std::size_t len, mlx_color* pixels) noexcept void Texture::SetLinearRegion(int x, int y, std::size_t len, mlx_color* pixels) noexcept
{ {
MLX_PROFILE_FUNCTION(); MLX_PROFILE_FUNCTION();
if(x < 0 || y < 0 || static_cast<std::uint32_t>(x) >= m_width || static_cast<std::uint32_t>(y) >= m_height) if(x >= static_cast<int>(m_width) || y >= static_cast<int>(m_height))
return; return;
if(!m_staging_buffer.has_value()) if(!m_staging_buffer.has_value())
OpenCPUBuffer(); OpenCPUBuffer();
int
start = y * m_width + x,
dest_start = std::max<int>(start, 0),
src_start = dest_start - start,
dest_end = std::min<int>(start + len, m_width * m_height);
if constexpr(std::endian::native == std::endian::little) if constexpr(std::endian::native == std::endian::little)
{ {
for(std::size_t i = 0; i < len && (y * m_width) + x + i < m_width * m_height; i++) for(int i = dest_start, j = src_start; i < dest_end; i++, j++)
m_staging_buffer->GetMap<mlx_color*>()[(y * m_width) + x + i] = ReverseColor(pixels[i]); m_staging_buffer->GetMap<mlx_color*>()[i] = ReverseColor(pixels[j]);
} }
else else
{ {
std::size_t len_guard; std::memcpy(
if((y * m_width + x + len) < m_width * m_height) &m_staging_buffer->GetMap<mlx_color*>()[dest_start],
len_guard = len; &pixels[src_start], dest_end - dest_start);
}
m_has_been_modified = true;
}
void Texture::SetRectangle(int x, int y, int w, int h, mlx_color color) noexcept
{
MLX_PROFILE_FUNCTION();
if(w < 0 || h < 0 || x < -w || y < -h
|| x >= static_cast<int>(m_width) || y >= static_cast<int>(m_height))
return;
if(!m_staging_buffer.has_value())
OpenCPUBuffer();
const int
start_x = std::max<int>(x, 0),
start_row = std::max<int>(y, 0) * m_width,
end_x = std::min<int>(x + w, m_width),
end_row = std::min<int>(y + h, m_height) * m_width;
for(int dx = start_x, row = start_row;; dx++)
{
if(dx >= end_x)
{
dx = start_x;
row += m_width;
if(row >= end_row)
break;
}
if constexpr(std::endian::native == std::endian::little)
m_staging_buffer->GetMap<mlx_color*>()[row + dx] = ReverseColor(color);
else else
len_guard = len - (m_width * m_height - (y * m_width + x + len)); m_staging_buffer->GetMap<mlx_color*>()[row + dx] = color;
std::memcpy(&m_staging_buffer->GetMap<mlx_color*>()[(y * m_width) + x], pixels, len_guard);
} }
m_has_been_modified = true; m_has_been_modified = true;
} }
@@ -289,23 +332,23 @@ namespace mlx
void Texture::GetRegion(int x, int y, int w, int h, mlx_color* dst) noexcept void Texture::GetRegion(int x, int y, int w, int h, mlx_color* dst) noexcept
{ {
MLX_PROFILE_FUNCTION(); MLX_PROFILE_FUNCTION();
if(x < 0 || y < 0 || static_cast<std::uint32_t>(x) >= m_width || static_cast<std::uint32_t>(y) >= m_height) if(w < 0 || h < 0 || x < 0 || y < 0 || static_cast<std::uint32_t>(x + w) >= m_width || static_cast<std::uint32_t>(y + h) >= m_height)
return; return;
if(!m_staging_buffer.has_value()) if(!m_staging_buffer.has_value())
OpenCPUBuffer(); OpenCPUBuffer();
for(std::uint32_t i = 0, moving_x = x, moving_y = y;; i++, moving_x++) for(std::uint32_t i = 0, dx = x, row = y * m_width;; i++, dx++)
{ {
if(moving_x >= static_cast<std::uint32_t>(x + w) || moving_x >= m_width) if(dx >= m_width)
{ {
moving_x = x; dx = x;
moving_y++; row += m_width;
if(moving_y >= static_cast<std::uint32_t>(y + h) || moving_y >= m_height) if(row >= m_height * m_width)
break; break;
} }
if constexpr(std::endian::native == std::endian::little) if constexpr(std::endian::native == std::endian::little)
dst[i] = ReverseColor(m_staging_buffer->GetMap<mlx_color*>()[(moving_y * m_width) + moving_x]); dst[i] = ReverseColor(m_staging_buffer->GetMap<mlx_color*>()[row + dx]);
else else
dst[i] = m_staging_buffer->GetMap<mlx_color*>()[(moving_y * m_width) + moving_x]; dst[i] = m_staging_buffer->GetMap<mlx_color*>()[row + dx];
} }
} }
@@ -320,16 +363,8 @@ namespace mlx
processed_color.g = static_cast<std::uint8_t>(color.g * 255.f); processed_color.g = static_cast<std::uint8_t>(color.g * 255.f);
processed_color.b = static_cast<std::uint8_t>(color.b * 255.f); processed_color.b = static_cast<std::uint8_t>(color.b * 255.f);
processed_color.a = static_cast<std::uint8_t>(color.a * 255.f); processed_color.a = static_cast<std::uint8_t>(color.a * 255.f);
if(processed_color.r == 0 && processed_color.g == 0 && processed_color.b == 0) for(std::size_t i = 0; i < m_width * m_height; i++)
std::memset(m_staging_buffer->GetMap(), processed_color.a, m_staging_buffer->GetSize()); m_staging_buffer->GetMap<mlx_color*>()[i] = processed_color;
else
{
for(std::size_t y = 0; y < m_height; y++)
{
for(std::size_t x = 0; x < m_width; x++)
m_staging_buffer->GetMap<mlx_color*>()[y * m_width + x] = processed_color;
}
}
} }
} }
@@ -346,6 +381,17 @@ namespace mlx
m_has_been_modified = false; m_has_been_modified = false;
} }
mlx_color* Texture::GetBufferCopy() noexcept
{
MLX_PROFILE_FUNCTION();
if(!m_staging_buffer.has_value())
OpenCPUBuffer();
mlx_color* dst = new mlx_color[m_width * m_height];
std::memcpy(dst, m_staging_buffer->GetMap<mlx_color*>(), m_width * m_height * sizeof(mlx_color));
return dst;
}
void Texture::OpenCPUBuffer() void Texture::OpenCPUBuffer()
{ {
MLX_PROFILE_FUNCTION(); MLX_PROFILE_FUNCTION();
+2 -2
View File
@@ -15,7 +15,7 @@ namespace mlx
Event What() const override { return Event::ResizeEventCode; } Event What() const override { return Event::ResizeEventCode; }
}; };
} }
std::string VulkanFormatName(VkFormat format) std::string VulkanFormatName(VkFormat format)
{ {
#define STRINGIFY(x) case x: return #x #define STRINGIFY(x) case x: return #x
@@ -161,7 +161,7 @@ namespace mlx
std::function<void(const EventBase&)> functor = [this](const EventBase& event) std::function<void(const EventBase&)> functor = [this](const EventBase& event)
{ {
if(event.What() == Event::ResizeEventCode && !m_resize) if(event.What() == Event::SwapchainResizeEventCode && !m_resize)
m_resize = true; m_resize = true;
}; };
EventBus::RegisterListener({ functor, "mlx_swapchain_" + std::to_string(reinterpret_cast<std::uintptr_t>(this)) }); EventBus::RegisterListener({ functor, "mlx_swapchain_" + std::to_string(reinterpret_cast<std::uintptr_t>(this)) });
+2 -2
View File
@@ -3176,7 +3176,7 @@ void kvfGPipelineBuilderEnableAdditiveBlending(KvfGraphicsPipelineBuilder* build
builder->color_blend_attachment_state.dstColorBlendFactor = VK_BLEND_FACTOR_ONE; builder->color_blend_attachment_state.dstColorBlendFactor = VK_BLEND_FACTOR_ONE;
builder->color_blend_attachment_state.colorBlendOp = VK_BLEND_OP_ADD; builder->color_blend_attachment_state.colorBlendOp = VK_BLEND_OP_ADD;
builder->color_blend_attachment_state.srcAlphaBlendFactor = VK_BLEND_FACTOR_ONE; builder->color_blend_attachment_state.srcAlphaBlendFactor = VK_BLEND_FACTOR_ONE;
builder->color_blend_attachment_state.dstAlphaBlendFactor = VK_BLEND_FACTOR_ZERO; builder->color_blend_attachment_state.dstAlphaBlendFactor = VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA;
builder->color_blend_attachment_state.alphaBlendOp = VK_BLEND_OP_ADD; builder->color_blend_attachment_state.alphaBlendOp = VK_BLEND_OP_ADD;
} }
@@ -3189,7 +3189,7 @@ void kvfGPipelineBuilderEnableAlphaBlending(KvfGraphicsPipelineBuilder* builder)
builder->color_blend_attachment_state.dstColorBlendFactor = VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA; builder->color_blend_attachment_state.dstColorBlendFactor = VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA;
builder->color_blend_attachment_state.colorBlendOp = VK_BLEND_OP_ADD; builder->color_blend_attachment_state.colorBlendOp = VK_BLEND_OP_ADD;
builder->color_blend_attachment_state.srcAlphaBlendFactor = VK_BLEND_FACTOR_ONE; builder->color_blend_attachment_state.srcAlphaBlendFactor = VK_BLEND_FACTOR_ONE;
builder->color_blend_attachment_state.dstAlphaBlendFactor = VK_BLEND_FACTOR_ZERO; builder->color_blend_attachment_state.dstAlphaBlendFactor = VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA;
builder->color_blend_attachment_state.alphaBlendOp = VK_BLEND_OP_ADD; builder->color_blend_attachment_state.alphaBlendOp = VK_BLEND_OP_ADD;
} }
+1 -1
View File
@@ -4,7 +4,7 @@
/* /*
** Copyright 2015-2026 The Khronos Group Inc. ** Copyright 2015-2026 The Khronos Group Inc.
** **
** SPDX-License-Identifier: Apache-2.0 ** SPDX-License-Identifier: Apache-2.0 OR MIT
*/ */
/* /*
+1 -1
View File
@@ -4,7 +4,7 @@
/* /*
** Copyright 2015-2026 The Khronos Group Inc. ** Copyright 2015-2026 The Khronos Group Inc.
** **
** SPDX-License-Identifier: Apache-2.0 ** SPDX-License-Identifier: Apache-2.0 OR MIT
*/ */
/* /*
+1 -1
View File
@@ -4,7 +4,7 @@
/* /*
** Copyright 2015-2026 The Khronos Group Inc. ** Copyright 2015-2026 The Khronos Group Inc.
** **
** SPDX-License-Identifier: Apache-2.0 ** SPDX-License-Identifier: Apache-2.0 OR MIT
*/ */
/* /*
+3 -1
View File
@@ -4,7 +4,7 @@
/* /*
** Copyright 2015-2026 The Khronos Group Inc. ** Copyright 2015-2026 The Khronos Group Inc.
** **
** SPDX-License-Identifier: Apache-2.0 ** SPDX-License-Identifier: Apache-2.0 OR MIT
*/ */
/* /*
@@ -44,6 +44,8 @@ typedef enum StdVideoH264ProfileIdc {
STD_VIDEO_H264_PROFILE_IDC_BASELINE = 66, STD_VIDEO_H264_PROFILE_IDC_BASELINE = 66,
STD_VIDEO_H264_PROFILE_IDC_MAIN = 77, STD_VIDEO_H264_PROFILE_IDC_MAIN = 77,
STD_VIDEO_H264_PROFILE_IDC_HIGH = 100, STD_VIDEO_H264_PROFILE_IDC_HIGH = 100,
STD_VIDEO_H264_PROFILE_IDC_HIGH_10 = 110,
STD_VIDEO_H264_PROFILE_IDC_HIGH_422 = 122,
STD_VIDEO_H264_PROFILE_IDC_HIGH_444_PREDICTIVE = 244, STD_VIDEO_H264_PROFILE_IDC_HIGH_444_PREDICTIVE = 244,
STD_VIDEO_H264_PROFILE_IDC_INVALID = 0x7FFFFFFF, STD_VIDEO_H264_PROFILE_IDC_INVALID = 0x7FFFFFFF,
STD_VIDEO_H264_PROFILE_IDC_MAX_ENUM = 0x7FFFFFFF STD_VIDEO_H264_PROFILE_IDC_MAX_ENUM = 0x7FFFFFFF
+1 -1
View File
@@ -4,7 +4,7 @@
/* /*
** Copyright 2015-2026 The Khronos Group Inc. ** Copyright 2015-2026 The Khronos Group Inc.
** **
** SPDX-License-Identifier: Apache-2.0 ** SPDX-License-Identifier: Apache-2.0 OR MIT
*/ */
/* /*
+1 -1
View File
@@ -4,7 +4,7 @@
/* /*
** Copyright 2015-2026 The Khronos Group Inc. ** Copyright 2015-2026 The Khronos Group Inc.
** **
** SPDX-License-Identifier: Apache-2.0 ** SPDX-License-Identifier: Apache-2.0 OR MIT
*/ */
/* /*
+1 -1
View File
@@ -4,7 +4,7 @@
/* /*
** Copyright 2015-2026 The Khronos Group Inc. ** Copyright 2015-2026 The Khronos Group Inc.
** **
** SPDX-License-Identifier: Apache-2.0 ** SPDX-License-Identifier: Apache-2.0 OR MIT
*/ */
/* /*
+1 -1
View File
@@ -4,7 +4,7 @@
/* /*
** Copyright 2015-2026 The Khronos Group Inc. ** Copyright 2015-2026 The Khronos Group Inc.
** **
** SPDX-License-Identifier: Apache-2.0 ** SPDX-License-Identifier: Apache-2.0 OR MIT
*/ */
/* /*
+1 -1
View File
@@ -4,7 +4,7 @@
/* /*
** Copyright 2015-2026 The Khronos Group Inc. ** Copyright 2015-2026 The Khronos Group Inc.
** **
** SPDX-License-Identifier: Apache-2.0 ** SPDX-License-Identifier: Apache-2.0 OR MIT
*/ */
/* /*
+1 -1
View File
@@ -4,7 +4,7 @@
/* /*
** Copyright 2015-2026 The Khronos Group Inc. ** Copyright 2015-2026 The Khronos Group Inc.
** **
** SPDX-License-Identifier: Apache-2.0 ** SPDX-License-Identifier: Apache-2.0 OR MIT
*/ */
/* /*
+1 -1
View File
@@ -4,7 +4,7 @@
/* /*
** Copyright 2015-2026 The Khronos Group Inc. ** Copyright 2015-2026 The Khronos Group Inc.
** **
** SPDX-License-Identifier: Apache-2.0 ** SPDX-License-Identifier: Apache-2.0 OR MIT
*/ */
/* /*
+1 -1
View File
@@ -4,7 +4,7 @@
/* /*
** Copyright 2015-2026 The Khronos Group Inc. ** Copyright 2015-2026 The Khronos Group Inc.
** **
** SPDX-License-Identifier: Apache-2.0 ** SPDX-License-Identifier: Apache-2.0 OR MIT
*/ */
/* /*
+1520 -1075
View File
File diff suppressed because it is too large Load Diff
+1 -2
View File
@@ -2,8 +2,7 @@
* Copyright 2015-2023 The Khronos Group Inc. * Copyright 2015-2023 The Khronos Group Inc.
* Copyright 2015-2023 Valve Corporation * Copyright 2015-2023 Valve Corporation
* Copyright 2015-2023 LunarG, Inc. * Copyright 2015-2023 LunarG, Inc.
* * SPDX-License-Identifier: Apache-2.0 OR MIT
* SPDX-License-Identifier: Apache-2.0
*/ */
#pragma once #pragma once
+1 -2
View File
@@ -2,8 +2,7 @@
* Copyright 2015-2023 The Khronos Group Inc. * Copyright 2015-2023 The Khronos Group Inc.
* Copyright 2015-2023 Valve Corporation * Copyright 2015-2023 Valve Corporation
* Copyright 2015-2023 LunarG, Inc. * Copyright 2015-2023 LunarG, Inc.
* * SPDX-License-Identifier: Apache-2.0 OR MIT
* SPDX-License-Identifier: Apache-2.0
*/ */
#pragma once #pragma once
+1 -2
View File
@@ -3,8 +3,7 @@
// //
/* /*
** Copyright 2014-2026 The Khronos Group Inc. ** Copyright 2014-2026 The Khronos Group Inc.
** ** SPDX-License-Identifier: Apache-2.0 OR MIT
** SPDX-License-Identifier: Apache-2.0
*/ */
+49 -9
View File
@@ -1,5 +1,4 @@
// Copyright 2015-2026 The Khronos Group Inc. // Copyright 2015-2026 The Khronos Group Inc.
//
// SPDX-License-Identifier: Apache-2.0 OR MIT // SPDX-License-Identifier: Apache-2.0 OR MIT
// //
@@ -27,14 +26,14 @@ export module vulkan;
export import std; export import std;
VULKAN_HPP_STATIC_ASSERT( VK_HEADER_VERSION == 347, "Wrong VK_HEADER_VERSION!" ); VULKAN_HPP_STATIC_ASSERT( VK_HEADER_VERSION == 359, "Wrong VK_HEADER_VERSION!" );
#if defined( _MSC_VER ) #if defined( __clang__ )
# pragma warning( push )
# pragma warning( disable : 5244 )
#elif defined( __clang__ )
# pragma clang diagnostic push # pragma clang diagnostic push
# pragma clang diagnostic ignored "-Winclude-angled-in-module-purview" # pragma clang diagnostic ignored "-Winclude-angled-in-module-purview"
#elif defined( _MSC_VER )
# pragma warning( push )
# pragma warning( disable : 5244 )
#elif defined( __GNUC__ ) #elif defined( __GNUC__ )
#endif #endif
@@ -45,10 +44,10 @@ VULKAN_HPP_STATIC_ASSERT( VK_HEADER_VERSION == 347, "Wrong VK_HEADER_VERSION!" )
#include <vulkan/vulkan_raii.hpp> #include <vulkan/vulkan_raii.hpp>
#include <vulkan/vulkan_shared.hpp> #include <vulkan/vulkan_shared.hpp>
#if defined( _MSC_VER ) #if defined( __clang__ )
# pragma warning( pop )
#elif defined( __clang__ )
# pragma clang diagnostic pop # pragma clang diagnostic pop
#elif defined( _MSC_VER )
# pragma warning( pop )
#elif defined( __GNUC__ ) #elif defined( __GNUC__ )
#endif #endif
@@ -603,6 +602,20 @@ export
using ::PFN_vkGetMemoryAndroidHardwareBufferANDROID; using ::PFN_vkGetMemoryAndroidHardwareBufferANDROID;
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/ #endif /*VK_USE_PLATFORM_ANDROID_KHR*/
//=== VK_AMD_gpa_interface ===
using ::PFN_vkCmdBeginGpaSampleAMD;
using ::PFN_vkCmdBeginGpaSessionAMD;
using ::PFN_vkCmdCopyGpaSessionResultsAMD;
using ::PFN_vkCmdEndGpaSampleAMD;
using ::PFN_vkCmdEndGpaSessionAMD;
using ::PFN_vkCreateGpaSessionAMD;
using ::PFN_vkDestroyGpaSessionAMD;
using ::PFN_vkGetGpaDeviceClockInfoAMD;
using ::PFN_vkGetGpaSessionResultsAMD;
using ::PFN_vkGetGpaSessionStatusAMD;
using ::PFN_vkResetGpaSessionAMD;
using ::PFN_vkSetGpaDeviceClockModeAMD;
#if defined( VK_ENABLE_BETA_EXTENSIONS ) #if defined( VK_ENABLE_BETA_EXTENSIONS )
//=== VK_AMDX_shader_enqueue === //=== VK_AMDX_shader_enqueue ===
using ::PFN_vkCmdDispatchGraphAMDX; using ::PFN_vkCmdDispatchGraphAMDX;
@@ -876,6 +889,9 @@ export
using ::PFN_vkGetEncodedVideoSessionParametersKHR; using ::PFN_vkGetEncodedVideoSessionParametersKHR;
using ::PFN_vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR; using ::PFN_vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR;
//=== VK_QCOM_queue_perf_hint ===
using ::PFN_vkQueueSetPerfHintQCOM;
#if defined( VK_ENABLE_BETA_EXTENSIONS ) #if defined( VK_ENABLE_BETA_EXTENSIONS )
//=== VK_NV_cuda_kernel_launch === //=== VK_NV_cuda_kernel_launch ===
using ::PFN_vkCmdCudaLaunchKernelNV; using ::PFN_vkCmdCudaLaunchKernelNV;
@@ -891,6 +907,15 @@ export
using ::PFN_vkCmdDispatchTileQCOM; using ::PFN_vkCmdDispatchTileQCOM;
using ::PFN_vkCmdEndPerTileExecutionQCOM; using ::PFN_vkCmdEndPerTileExecutionQCOM;
//=== VK_NV_low_latency ===
using ::PFN_vkGetLatencyTimingsLegacyNV;
using ::PFN_vkGetSleepStatusLegacyNV;
using ::PFN_vkLatencySleepLegacyNV;
using ::PFN_vkQueueNotifyOutOfBandLegacyNV;
using ::PFN_vkSetLatencyMarkerLegacyNV;
using ::PFN_vkSetLatencySleepModeLegacyNV;
using ::PFN_vkShutdownLatencyDeviceLegacyNV;
#if defined( VK_USE_PLATFORM_METAL_EXT ) #if defined( VK_USE_PLATFORM_METAL_EXT )
//=== VK_EXT_metal_objects === //=== VK_EXT_metal_objects ===
using ::PFN_vkExportMetalObjectsEXT; using ::PFN_vkExportMetalObjectsEXT;
@@ -1060,6 +1085,9 @@ export
using ::PFN_vkGetDeviceImageMemoryRequirementsKHR; using ::PFN_vkGetDeviceImageMemoryRequirementsKHR;
using ::PFN_vkGetDeviceImageSparseMemoryRequirementsKHR; using ::PFN_vkGetDeviceImageSparseMemoryRequirementsKHR;
//=== VK_ARM_scheduling_controls ===
using ::PFN_vkCmdSetDispatchParametersARM;
//=== VK_VALVE_descriptor_set_host_mapping === //=== VK_VALVE_descriptor_set_host_mapping ===
using ::PFN_vkGetDescriptorSetHostMappingVALVE; using ::PFN_vkGetDescriptorSetHostMappingVALVE;
using ::PFN_vkGetDescriptorSetLayoutHostMappingInfoVALVE; using ::PFN_vkGetDescriptorSetLayoutHostMappingInfoVALVE;
@@ -1201,6 +1229,9 @@ export
using ::PFN_vkGetPhysicalDeviceQueueFamilyDataGraphProcessingEnginePropertiesARM; using ::PFN_vkGetPhysicalDeviceQueueFamilyDataGraphProcessingEnginePropertiesARM;
using ::PFN_vkGetPhysicalDeviceQueueFamilyDataGraphPropertiesARM; using ::PFN_vkGetPhysicalDeviceQueueFamilyDataGraphPropertiesARM;
//=== VK_ARM_data_graph_instruction_set_tosa ===
using ::PFN_vkGetPhysicalDeviceQueueFamilyDataGraphEngineOperationPropertiesARM;
//=== VK_EXT_attachment_feedback_loop_dynamic_state === //=== VK_EXT_attachment_feedback_loop_dynamic_state ===
using ::PFN_vkCmdSetAttachmentFeedbackLoopEnableEXT; using ::PFN_vkCmdSetAttachmentFeedbackLoopEnableEXT;
@@ -1298,12 +1329,21 @@ export
//=== VK_KHR_maintenance10 === //=== VK_KHR_maintenance10 ===
using ::PFN_vkCmdEndRendering2KHR; using ::PFN_vkCmdEndRendering2KHR;
//=== VK_ARM_data_graph_optical_flow ===
using ::PFN_vkGetPhysicalDeviceQueueFamilyDataGraphOpticalFlowImageFormatsARM;
//=== VK_NV_compute_occupancy_priority === //=== VK_NV_compute_occupancy_priority ===
using ::PFN_vkCmdSetComputeOccupancyPriorityNV; using ::PFN_vkCmdSetComputeOccupancyPriorityNV;
//=== VK_EXT_cooperative_matrix_maintenance1 ===
using ::PFN_vkGetPhysicalDeviceCooperativeMatrixProperties2EXT;
#if defined( VK_USE_PLATFORM_UBM_SEC ) #if defined( VK_USE_PLATFORM_UBM_SEC )
//=== VK_SEC_ubm_surface === //=== VK_SEC_ubm_surface ===
using ::PFN_vkCreateUbmSurfaceSEC; using ::PFN_vkCreateUbmSurfaceSEC;
using ::PFN_vkGetPhysicalDeviceUbmPresentationSupportSEC; using ::PFN_vkGetPhysicalDeviceUbmPresentationSupportSEC;
#endif /*VK_USE_PLATFORM_UBM_SEC*/ #endif /*VK_USE_PLATFORM_UBM_SEC*/
//=== VK_EXT_primitive_restart_index ===
using ::PFN_vkCmdSetPrimitiveRestartIndexEXT;
} }
+1 -2
View File
@@ -3,8 +3,7 @@
/* /*
** Copyright 2015-2026 The Khronos Group Inc. ** Copyright 2015-2026 The Khronos Group Inc.
** ** SPDX-License-Identifier: Apache-2.0 OR MIT
** SPDX-License-Identifier: Apache-2.0
*/ */
#include "vk_platform.h" #include "vk_platform.h"
+1242 -35
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -4,7 +4,7 @@
/* /*
** Copyright 2015-2026 The Khronos Group Inc. ** Copyright 2015-2026 The Khronos Group Inc.
** **
** SPDX-License-Identifier: Apache-2.0 ** SPDX-License-Identifier: Apache-2.0 OR MIT
*/ */
/* /*
+1 -1
View File
@@ -4,7 +4,7 @@
/* /*
** Copyright 2015-2026 The Khronos Group Inc. ** Copyright 2015-2026 The Khronos Group Inc.
** **
** SPDX-License-Identifier: Apache-2.0 ** SPDX-License-Identifier: Apache-2.0 OR MIT
*/ */
/* /*
+1305 -71
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -4,7 +4,7 @@
/* /*
** Copyright 2015-2026 The Khronos Group Inc. ** Copyright 2015-2026 The Khronos Group Inc.
** **
** SPDX-License-Identifier: Apache-2.0 ** SPDX-License-Identifier: Apache-2.0 OR MIT
*/ */
/* /*
+870 -238
View File
File diff suppressed because it is too large Load Diff
+235 -51
View File
@@ -1,5 +1,4 @@
// Copyright 2015-2026 The Khronos Group Inc. // Copyright 2015-2026 The Khronos Group Inc.
//
// SPDX-License-Identifier: Apache-2.0 OR MIT // SPDX-License-Identifier: Apache-2.0 OR MIT
// //
@@ -73,11 +72,12 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
{ "VK_NV_ray_tracing", "VK_KHR_ray_tracing_pipeline" }, { "VK_NV_ray_tracing", "VK_KHR_ray_tracing_pipeline" },
{ "VK_EXT_buffer_device_address", "VK_KHR_buffer_device_address" }, { "VK_EXT_buffer_device_address", "VK_KHR_buffer_device_address" },
{ "VK_EXT_validation_features", "VK_EXT_layer_settings" }, { "VK_EXT_validation_features", "VK_EXT_layer_settings" },
{ "VK_NV_low_latency", "VK_NV_low_latency2" },
{ "VK_EXT_descriptor_buffer", "VK_EXT_descriptor_heap" }, { "VK_EXT_descriptor_buffer", "VK_EXT_descriptor_heap" },
#if defined( VK_ENABLE_BETA_EXTENSIONS ) #if defined( VK_ENABLE_BETA_EXTENSIONS )
{ "VK_NV_displacement_micromap", "VK_NV_cluster_acceleration_structure" } { "VK_NV_displacement_micromap", "VK_NV_cluster_acceleration_structure" },
#endif /*VK_ENABLE_BETA_EXTENSIONS*/ #endif /*VK_ENABLE_BETA_EXTENSIONS*/
}; { "VK_NV_per_stage_descriptor_set", "VK_EXT_descriptor_heap" } };
return deprecatedExtensions; return deprecatedExtensions;
} }
@@ -179,6 +179,7 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
"VK_EXT_sampler_filter_minmax", "VK_EXT_sampler_filter_minmax",
"VK_KHR_storage_buffer_storage_class", "VK_KHR_storage_buffer_storage_class",
"VK_AMD_gpu_shader_int16", "VK_AMD_gpu_shader_int16",
"VK_AMD_gpa_interface",
#if defined( VK_ENABLE_BETA_EXTENSIONS ) #if defined( VK_ENABLE_BETA_EXTENSIONS )
"VK_AMDX_shader_enqueue", "VK_AMDX_shader_enqueue",
#endif /*VK_ENABLE_BETA_EXTENSIONS*/ #endif /*VK_ENABLE_BETA_EXTENSIONS*/
@@ -218,6 +219,7 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
"VK_EXT_filter_cubic", "VK_EXT_filter_cubic",
"VK_QCOM_render_pass_shader_resolve", "VK_QCOM_render_pass_shader_resolve",
"VK_QCOM_cooperative_matrix_conversion", "VK_QCOM_cooperative_matrix_conversion",
"VK_QCOM_elapsed_timer_query",
"VK_EXT_global_priority", "VK_EXT_global_priority",
"VK_KHR_shader_subgroup_extended_types", "VK_KHR_shader_subgroup_extended_types",
"VK_KHR_8bit_storage", "VK_KHR_8bit_storage",
@@ -320,6 +322,10 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
"VK_KHR_video_encode_queue", "VK_KHR_video_encode_queue",
"VK_NV_device_diagnostics_config", "VK_NV_device_diagnostics_config",
"VK_QCOM_render_pass_store_ops", "VK_QCOM_render_pass_store_ops",
"VK_QCOM_queue_perf_hint",
"VK_QCOM_image_processing3",
"VK_QCOM_shader_multiple_wait_queues",
"VK_EXT_shader_split_barrier",
#if defined( VK_ENABLE_BETA_EXTENSIONS ) #if defined( VK_ENABLE_BETA_EXTENSIONS )
"VK_NV_cuda_kernel_launch", "VK_NV_cuda_kernel_launch",
#endif /*VK_ENABLE_BETA_EXTENSIONS*/ #endif /*VK_ENABLE_BETA_EXTENSIONS*/
@@ -452,6 +458,7 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
"VK_NV_low_latency2", "VK_NV_low_latency2",
"VK_KHR_cooperative_matrix", "VK_KHR_cooperative_matrix",
"VK_ARM_data_graph", "VK_ARM_data_graph",
"VK_ARM_data_graph_instruction_set_tosa",
"VK_QCOM_multiview_per_view_render_areas", "VK_QCOM_multiview_per_view_render_areas",
"VK_KHR_compute_shader_derivatives", "VK_KHR_compute_shader_derivatives",
"VK_KHR_video_decode_av1", "VK_KHR_video_decode_av1",
@@ -490,6 +497,7 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
"VK_KHR_maintenance7", "VK_KHR_maintenance7",
"VK_NV_shader_atomic_float16_vector", "VK_NV_shader_atomic_float16_vector",
"VK_EXT_shader_replicated_composites", "VK_EXT_shader_replicated_composites",
"VK_ARM_tensor_controls",
"VK_EXT_shader_float8", "VK_EXT_shader_float8",
"VK_NV_ray_tracing_validation", "VK_NV_ray_tracing_validation",
"VK_NV_cluster_acceleration_structure", "VK_NV_cluster_acceleration_structure",
@@ -507,6 +515,8 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
"VK_HUAWEI_hdr_vivid", "VK_HUAWEI_hdr_vivid",
"VK_NV_cooperative_matrix2", "VK_NV_cooperative_matrix2",
"VK_ARM_pipeline_opacity_micromap", "VK_ARM_pipeline_opacity_micromap",
"VK_KHR_video_encode_feedback2",
"VK_IMG_filter_linear_2d",
#if defined( VK_USE_PLATFORM_METAL_EXT ) #if defined( VK_USE_PLATFORM_METAL_EXT )
"VK_EXT_external_memory_metal", "VK_EXT_external_memory_metal",
#endif /*VK_USE_PLATFORM_METAL_EXT*/ #endif /*VK_USE_PLATFORM_METAL_EXT*/
@@ -518,19 +528,31 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
"VK_VALVE_fragment_density_map_layered", "VK_VALVE_fragment_density_map_layered",
"VK_KHR_robustness2", "VK_KHR_robustness2",
"VK_NV_present_metering", "VK_NV_present_metering",
"VK_EXT_multisampled_render_to_swapchain",
"VK_EXT_fragment_density_map_offset", "VK_EXT_fragment_density_map_offset",
"VK_EXT_zero_initialize_device_memory", "VK_EXT_zero_initialize_device_memory",
"VK_KHR_present_mode_fifo_latest_ready", "VK_KHR_present_mode_fifo_latest_ready",
"VK_KHR_opacity_micromap",
"VK_EXT_shader_64bit_indexing", "VK_EXT_shader_64bit_indexing",
"VK_EXT_custom_resolve", "VK_EXT_custom_resolve",
"VK_QCOM_data_graph_model", "VK_QCOM_data_graph_model",
"VK_KHR_maintenance10", "VK_KHR_maintenance10",
"VK_ARM_data_graph_optical_flow",
"VK_EXT_shader_long_vector", "VK_EXT_shader_long_vector",
"VK_SEC_pipeline_cache_incremental_mode", "VK_SEC_pipeline_cache_incremental_mode",
"VK_EXT_shader_uniform_buffer_unsized_array", "VK_EXT_shader_uniform_buffer_unsized_array",
"VK_NV_compute_occupancy_priority", "VK_NV_compute_occupancy_priority",
"VK_KHR_maintenance11",
"VK_EXT_cooperative_matrix_maintenance1",
"VK_EXT_shader_subgroup_partitioned", "VK_EXT_shader_subgroup_partitioned",
"VK_VALVE_shader_mixed_float_dot_product" }; "VK_KHR_extended_flags",
"VK_EXT_shader_ocp_microscaling_types",
"VK_VALVE_shader_mixed_float_dot_product",
"VK_SEC_throttle_hint",
"VK_ARM_data_graph_neural_accelerator_statistics",
"VK_EXT_primitive_restart_index",
"VK_EXT_image_tiling_control",
"VK_NV_cooperative_matrix_decode_vector" };
return deviceExtensions; return deviceExtensions;
} }
@@ -1101,6 +1123,12 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/ #endif /*VK_USE_PLATFORM_ANDROID_KHR*/
, ,
{ "VK_EXT_sampler_filter_minmax", { "VK_EXT_sampler_filter_minmax",
{ { "VK_VERSION_1_0",
{ {
"VK_KHR_get_physical_device_properties2",
} } },
{ "VK_VERSION_1_1", { {} } } } },
{ "VK_AMD_gpa_interface",
{ { "VK_VERSION_1_0", { { "VK_VERSION_1_0",
{ { { {
"VK_KHR_get_physical_device_properties2", "VK_KHR_get_physical_device_properties2",
@@ -1127,13 +1155,21 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
{ "VK_EXT_descriptor_heap", { "VK_EXT_descriptor_heap",
{ { "VK_VERSION_1_0", { { "VK_VERSION_1_0",
{ { { {
"VK_KHR_buffer_device_address", "VK_KHR_buffer_device_address",
"VK_KHR_maintenance5", "VK_KHR_extended_flags",
} } }, },
{
"VK_KHR_buffer_device_address",
"VK_KHR_maintenance5",
} } },
{ "VK_VERSION_1_2", { "VK_VERSION_1_2",
{ { { {
"VK_KHR_maintenance5", "VK_KHR_extended_flags",
} } } } }, },
{
"VK_KHR_maintenance5",
} } },
{ "VK_VERSION_1_4", { {} } } } },
{ "VK_EXT_inline_uniform_block", { "VK_EXT_inline_uniform_block",
{ { "VK_VERSION_1_0", { { "VK_VERSION_1_0",
{ { { {
@@ -1260,6 +1296,12 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
{ { { {
"VK_KHR_cooperative_matrix", "VK_KHR_cooperative_matrix",
} } } } }, } } } } },
{ "VK_QCOM_elapsed_timer_query",
{ { "VK_VERSION_1_0",
{ {
"VK_KHR_get_physical_device_properties2",
} } },
{ "VK_VERSION_1_1", { {} } } } },
{ "VK_KHR_shader_subgroup_extended_types", { { "VK_VERSION_1_1", { {} } } } }, { "VK_KHR_shader_subgroup_extended_types", { { "VK_VERSION_1_1", { {} } } } },
{ "VK_KHR_8bit_storage", { "VK_KHR_8bit_storage",
{ { "VK_VERSION_1_0", { { "VK_VERSION_1_0",
@@ -1499,6 +1541,12 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
"VK_KHR_get_physical_device_properties2", "VK_KHR_get_physical_device_properties2",
} } }, } } },
{ "VK_VERSION_1_1", { {} } } } }, { "VK_VERSION_1_1", { {} } } } },
{ "VK_KHR_shader_constant_data",
{ { "VK_VERSION_1_0",
{ {
"VK_KHR_get_physical_device_properties2",
} } },
{ "VK_VERSION_1_1", { {} } } } },
{ "VK_KHR_dynamic_rendering_local_read", { "VK_KHR_dynamic_rendering_local_read",
{ { "VK_VERSION_1_0", { { "VK_VERSION_1_0",
{ { { {
@@ -1509,7 +1557,6 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
{ { "VK_VERSION_1_0", { { "VK_VERSION_1_0",
{ { { {
"VK_KHR_device_fault", "VK_KHR_device_fault",
"VK_KHR_get_physical_device_properties2",
"VK_KHR_shader_constant_data", "VK_KHR_shader_constant_data",
} } } } }, } } } } },
{ "VK_EXT_shader_image_atomic_int64", { "VK_EXT_shader_image_atomic_int64",
@@ -1840,6 +1887,30 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
"VK_KHR_video_queue", "VK_KHR_video_queue",
} } } } }, } } } } },
{ "VK_NV_device_diagnostics_config", { "VK_NV_device_diagnostics_config",
{ { "VK_VERSION_1_0",
{ {
"VK_KHR_get_physical_device_properties2",
} } },
{ "VK_VERSION_1_1", { {} } } } },
{ "VK_QCOM_queue_perf_hint",
{ { "VK_VERSION_1_0",
{ {
"VK_KHR_get_physical_device_properties2",
} } },
{ "VK_VERSION_1_1", { {} } } } },
{ "VK_QCOM_image_processing3",
{ { "VK_VERSION_1_0",
{ {
"VK_KHR_get_physical_device_properties2",
} } },
{ "VK_VERSION_1_1", { {} } } } },
{ "VK_QCOM_shader_multiple_wait_queues",
{ { "VK_VERSION_1_0",
{ {
"VK_KHR_get_physical_device_properties2",
} } },
{ "VK_VERSION_1_1", { {} } } } },
{ "VK_EXT_shader_split_barrier",
{ { "VK_VERSION_1_0", { { "VK_VERSION_1_0",
{ { { {
"VK_KHR_get_physical_device_properties2", "VK_KHR_get_physical_device_properties2",
@@ -2495,9 +2566,13 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
{ "VK_AMDX_dense_geometry_format", { "VK_AMDX_dense_geometry_format",
{ { "VK_VERSION_1_0", { { "VK_VERSION_1_0",
{ { { {
"VK_KHR_acceleration_structure", "VK_KHR_acceleration_structure",
"VK_KHR_maintenance5", "VK_KHR_extended_flags",
} } }, },
{
"VK_KHR_acceleration_structure",
"VK_KHR_maintenance5",
} } },
{ "VK_VERSION_1_4", { "VK_VERSION_1_4",
{ { { {
"VK_KHR_acceleration_structure", "VK_KHR_acceleration_structure",
@@ -2538,8 +2613,11 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
{ "VK_KHR_pipeline_binary", { "VK_KHR_pipeline_binary",
{ { "VK_VERSION_1_0", { { "VK_VERSION_1_0",
{ { { {
"VK_KHR_maintenance5", "VK_KHR_extended_flags",
} } }, },
{
"VK_KHR_maintenance5",
} } },
{ "VK_VERSION_1_4", { {} } } } }, { "VK_VERSION_1_4", { {} } } } },
{ "VK_QCOM_tile_properties", { "VK_QCOM_tile_properties",
{ { "VK_VERSION_1_0", { { "VK_VERSION_1_0",
@@ -2655,8 +2733,17 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
{ "VK_ARM_data_graph", { "VK_ARM_data_graph",
{ { "VK_VERSION_1_3", { { "VK_VERSION_1_3",
{ { { {
"VK_KHR_deferred_host_operations", "VK_KHR_deferred_host_operations",
"VK_KHR_maintenance5", "VK_KHR_extended_flags",
},
{
"VK_KHR_deferred_host_operations",
"VK_KHR_maintenance5",
} } } } },
{ "VK_ARM_data_graph_instruction_set_tosa",
{ { "VK_VERSION_1_0",
{ {
"VK_ARM_data_graph",
} } } } }, } } } } },
{ "VK_QCOM_multiview_per_view_render_areas", { "VK_QCOM_multiview_per_view_render_areas",
{ { "VK_VERSION_1_0", { { "VK_VERSION_1_0",
@@ -2869,6 +2956,11 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
"VK_KHR_get_physical_device_properties2", "VK_KHR_get_physical_device_properties2",
} } }, } } },
{ "VK_VERSION_1_1", { {} } } } }, { "VK_VERSION_1_1", { {} } } } },
{ "VK_ARM_tensor_controls",
{ { "VK_VERSION_1_0",
{ {
"VK_ARM_tensors",
} } } } },
{ "VK_EXT_shader_float8", { "VK_EXT_shader_float8",
{ { "VK_VERSION_1_0", { { "VK_VERSION_1_0",
{ { { {
@@ -2894,19 +2986,27 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
{ "VK_EXT_device_generated_commands", { "VK_EXT_device_generated_commands",
{ { "VK_VERSION_1_0", { { "VK_VERSION_1_0",
{ { { {
"VK_KHR_buffer_device_address", "VK_KHR_buffer_device_address",
"VK_KHR_maintenance5", "VK_KHR_extended_flags",
} } }, },
{
"VK_KHR_buffer_device_address",
"VK_KHR_maintenance5",
} } },
{ "VK_VERSION_1_2", { "VK_VERSION_1_2",
{ { { {
"VK_KHR_maintenance5", "VK_KHR_extended_flags",
} } }, },
{
"VK_KHR_maintenance5",
} } },
{ "VK_VERSION_1_3", { {} } } } }, { "VK_VERSION_1_3", { {} } } } },
{ "VK_KHR_device_fault", { "VK_KHR_device_fault",
{ { "VK_VERSION_1_0", { { "VK_VERSION_1_0",
{ { { {
"VK_KHR_get_physical_device_properties2", "VK_KHR_get_physical_device_properties2",
} } } } }, } } },
{ "VK_VERSION_1_1", { {} } } } },
{ "VK_KHR_maintenance8", { { "VK_VERSION_1_1", { {} } } } }, { "VK_KHR_maintenance8", { { "VK_VERSION_1_1", { {} } } } },
{ "VK_MESA_image_alignment_control", { "VK_MESA_image_alignment_control",
{ { "VK_VERSION_1_0", { { "VK_VERSION_1_0",
@@ -2972,7 +3072,18 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
{ { "VK_VERSION_1_0", { { "VK_VERSION_1_0",
{ { { {
"VK_EXT_opacity_micromap", "VK_EXT_opacity_micromap",
} } } } } } } } } },
{ "VK_KHR_video_encode_feedback2",
{ { "VK_VERSION_1_0",
{ {
"VK_KHR_video_encode_queue",
} } } } },
{ "VK_IMG_filter_linear_2d",
{ { "VK_VERSION_1_0",
{ {
"VK_KHR_format_feature_flags2",
} } },
{ "VK_VERSION_1_3", { {} } } } }
#if defined( VK_USE_PLATFORM_METAL_EXT ) #if defined( VK_USE_PLATFORM_METAL_EXT )
, ,
{ "VK_EXT_external_memory_metal", { "VK_EXT_external_memory_metal",
@@ -3016,9 +3127,13 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
{ "VK_VALVE_fragment_density_map_layered", { "VK_VALVE_fragment_density_map_layered",
{ { "VK_VERSION_1_0", { { "VK_VERSION_1_0",
{ { { {
"VK_EXT_fragment_density_map", "VK_EXT_fragment_density_map",
"VK_KHR_maintenance5", "VK_KHR_extended_flags",
} } }, },
{
"VK_EXT_fragment_density_map",
"VK_KHR_maintenance5",
} } },
{ "VK_VERSION_1_4", { "VK_VERSION_1_4",
{ { { {
"VK_EXT_fragment_density_map", "VK_EXT_fragment_density_map",
@@ -3035,6 +3150,12 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
"VK_KHR_get_physical_device_properties2", "VK_KHR_get_physical_device_properties2",
} } }, } } },
{ "VK_VERSION_1_1", { {} } } } }, { "VK_VERSION_1_1", { {} } } } },
{ "VK_EXT_multisampled_render_to_swapchain",
{ { "VK_VERSION_1_0",
{ {
"VK_EXT_multisampled_render_to_single_sampled",
"VK_KHR_swapchain",
} } } } },
{ "VK_EXT_fragment_density_map_offset", { "VK_EXT_fragment_density_map_offset",
{ { "VK_VERSION_1_0", { { "VK_VERSION_1_0",
{ { { {
@@ -3069,6 +3190,12 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
{ { { {
"VK_KHR_swapchain", "VK_KHR_swapchain",
} } } } }, } } } } },
{ "VK_KHR_opacity_micromap",
{ { "VK_VERSION_1_0",
{ {
"VK_KHR_acceleration_structure",
"VK_KHR_device_address_commands",
} } } } },
{ "VK_EXT_shader_64bit_indexing", { "VK_EXT_shader_64bit_indexing",
{ { "VK_VERSION_1_0", { { "VK_VERSION_1_0",
{ { { {
@@ -3092,6 +3219,11 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
"VK_KHR_get_physical_device_properties2", "VK_KHR_get_physical_device_properties2",
} } }, } } },
{ "VK_VERSION_1_1", { {} } } } }, { "VK_VERSION_1_1", { {} } } } },
{ "VK_ARM_data_graph_optical_flow",
{ { "VK_VERSION_1_0",
{ {
"VK_ARM_data_graph",
} } } } },
{ "VK_EXT_shader_long_vector", { { "VK_VERSION_1_2", { {} } } } }, { "VK_EXT_shader_long_vector", { { "VK_VERSION_1_2", { {} } } } },
{ "VK_SEC_pipeline_cache_incremental_mode", { "VK_SEC_pipeline_cache_incremental_mode",
{ { "VK_VERSION_1_0", { { "VK_VERSION_1_0",
@@ -3111,6 +3243,17 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
"VK_KHR_get_physical_device_properties2", "VK_KHR_get_physical_device_properties2",
} } }, } } },
{ "VK_VERSION_1_1", { {} } } } }, { "VK_VERSION_1_1", { {} } } } },
{ "VK_KHR_maintenance11",
{ { "VK_VERSION_1_0",
{ {
"VK_KHR_get_physical_device_properties2",
} } },
{ "VK_VERSION_1_1", { {} } } } },
{ "VK_EXT_cooperative_matrix_maintenance1",
{ { "VK_VERSION_1_0",
{ {
"VK_KHR_cooperative_matrix",
} } } } },
{ "VK_EXT_shader_subgroup_partitioned", { "VK_EXT_shader_subgroup_partitioned",
{ { "VK_VERSION_1_0", { { "VK_VERSION_1_0",
{ { { {
@@ -3126,6 +3269,18 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
} } } } } } } } } }
#endif /*VK_USE_PLATFORM_UBM_SEC*/ #endif /*VK_USE_PLATFORM_UBM_SEC*/
, ,
{ "VK_KHR_extended_flags",
{ { "VK_VERSION_1_0",
{ {
"VK_KHR_get_physical_device_properties2",
} } },
{ "VK_VERSION_1_1", { {} } } } },
{ "VK_EXT_shader_ocp_microscaling_types",
{ { "VK_VERSION_1_0",
{ {
"VK_KHR_get_physical_device_properties2",
} } },
{ "VK_VERSION_1_1", { {} } } } },
{ "VK_VALVE_shader_mixed_float_dot_product", { "VK_VALVE_shader_mixed_float_dot_product",
{ { "VK_VERSION_1_0", { { "VK_VERSION_1_0",
{ { { {
@@ -3134,12 +3289,19 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
} } }, } } },
{ "VK_VERSION_1_1", { "VK_VERSION_1_1",
{ { { {
"VK_KHR_shader_float16_int8", "VK_KHR_shader_float16_int8",
}, } } },
{} } }, { "VK_VERSION_1_2", { {} } } } },
{ "VK_VERSION_1_2", { "VK_EXT_primitive_restart_index",
{ { "VK_VERSION_1_0",
{ { { {
"VK_KHR_get_physical_device_properties2", "VK_KHR_get_physical_device_properties2",
} } },
{ "VK_VERSION_1_1", { {} } } } },
{ "VK_NV_cooperative_matrix_decode_vector",
{ { "VK_VERSION_1_0",
{ {
"VK_NV_cooperative_matrix2",
} } } } } } } } } }
}; };
auto depIt = dependencies.find( extension ); auto depIt = dependencies.find( extension );
@@ -3281,6 +3443,7 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
{ "VK_EXT_present_mode_fifo_latest_ready", "VK_KHR_present_mode_fifo_latest_ready" }, { "VK_EXT_present_mode_fifo_latest_ready", "VK_KHR_present_mode_fifo_latest_ready" },
{ "VK_EXT_extended_dynamic_state2", "VK_VERSION_1_3" }, { "VK_EXT_extended_dynamic_state2", "VK_VERSION_1_3" },
{ "VK_EXT_global_priority_query", "VK_KHR_global_priority" }, { "VK_EXT_global_priority_query", "VK_KHR_global_priority" },
{ "VK_EXT_opacity_micromap", "VK_KHR_opacity_micromap" },
{ "VK_EXT_load_store_op_none", "VK_KHR_load_store_op_none" }, { "VK_EXT_load_store_op_none", "VK_KHR_load_store_op_none" },
{ "VK_KHR_maintenance4", "VK_VERSION_1_3" }, { "VK_KHR_maintenance4", "VK_VERSION_1_3" },
{ "VK_KHR_shader_subgroup_rotate", "VK_VERSION_1_4" }, { "VK_KHR_shader_subgroup_rotate", "VK_VERSION_1_4" },
@@ -3378,6 +3541,10 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
{ {
return "VK_EXT_layer_settings"; return "VK_EXT_layer_settings";
} }
if ( extension == "VK_NV_low_latency" )
{
return "VK_NV_low_latency2";
}
if ( extension == "VK_EXT_descriptor_buffer" ) if ( extension == "VK_EXT_descriptor_buffer" )
{ {
return "VK_EXT_descriptor_heap"; return "VK_EXT_descriptor_heap";
@@ -3388,7 +3555,10 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
return "VK_NV_cluster_acceleration_structure"; return "VK_NV_cluster_acceleration_structure";
} }
#endif /*VK_ENABLE_BETA_EXTENSIONS*/ #endif /*VK_ENABLE_BETA_EXTENSIONS*/
if ( extension == "VK_NV_per_stage_descriptor_set" )
{
return "VK_EXT_descriptor_heap";
}
return ""; return "";
} }
@@ -3785,6 +3955,10 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
{ {
return "VK_KHR_global_priority"; return "VK_KHR_global_priority";
} }
if ( extension == "VK_EXT_opacity_micromap" )
{
return "VK_KHR_opacity_micromap";
}
if ( extension == "VK_EXT_load_store_op_none" ) if ( extension == "VK_EXT_load_store_op_none" )
{ {
return "VK_KHR_load_store_op_none"; return "VK_KHR_load_store_op_none";
@@ -3876,11 +4050,11 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
|| ( extension == "VK_MVK_macos_surface" ) || ( extension == "VK_MVK_macos_surface" )
#endif /*VK_USE_PLATFORM_MACOS_MVK*/ #endif /*VK_USE_PLATFORM_MACOS_MVK*/
|| ( extension == "VK_AMD_gpu_shader_int16" ) || ( extension == "VK_NV_ray_tracing" ) || ( extension == "VK_EXT_buffer_device_address" ) || || ( extension == "VK_AMD_gpu_shader_int16" ) || ( extension == "VK_NV_ray_tracing" ) || ( extension == "VK_EXT_buffer_device_address" ) ||
( extension == "VK_EXT_validation_features" ) || ( extension == "VK_EXT_descriptor_buffer" ) ( extension == "VK_EXT_validation_features" ) || ( extension == "VK_NV_low_latency" ) || ( extension == "VK_EXT_descriptor_buffer" )
#if defined( VK_ENABLE_BETA_EXTENSIONS ) #if defined( VK_ENABLE_BETA_EXTENSIONS )
|| ( extension == "VK_NV_displacement_micromap" ) || ( extension == "VK_NV_displacement_micromap" )
#endif /*VK_ENABLE_BETA_EXTENSIONS*/ #endif /*VK_ENABLE_BETA_EXTENSIONS*/
|| false; || ( extension == "VK_NV_per_stage_descriptor_set" );
} }
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 bool isDeviceExtension( std::string const & extension ) VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 bool isDeviceExtension( std::string const & extension )
@@ -3935,7 +4109,7 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
|| ( extension == "VK_ANDROID_external_memory_android_hardware_buffer" ) || ( extension == "VK_ANDROID_external_memory_android_hardware_buffer" )
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/ #endif /*VK_USE_PLATFORM_ANDROID_KHR*/
|| ( extension == "VK_EXT_sampler_filter_minmax" ) || ( extension == "VK_KHR_storage_buffer_storage_class" ) || || ( extension == "VK_EXT_sampler_filter_minmax" ) || ( extension == "VK_KHR_storage_buffer_storage_class" ) ||
( extension == "VK_AMD_gpu_shader_int16" ) ( extension == "VK_AMD_gpu_shader_int16" ) || ( extension == "VK_AMD_gpa_interface" )
#if defined( VK_ENABLE_BETA_EXTENSIONS ) #if defined( VK_ENABLE_BETA_EXTENSIONS )
|| ( extension == "VK_AMDX_shader_enqueue" ) || ( extension == "VK_AMDX_shader_enqueue" )
#endif /*VK_ENABLE_BETA_EXTENSIONS*/ #endif /*VK_ENABLE_BETA_EXTENSIONS*/
@@ -3955,7 +4129,8 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
|| ( extension == "VK_NV_shading_rate_image" ) || ( extension == "VK_NV_ray_tracing" ) || ( extension == "VK_NV_representative_fragment_test" ) || || ( extension == "VK_NV_shading_rate_image" ) || ( extension == "VK_NV_ray_tracing" ) || ( extension == "VK_NV_representative_fragment_test" ) ||
( extension == "VK_KHR_maintenance3" ) || ( extension == "VK_KHR_draw_indirect_count" ) || ( extension == "VK_EXT_filter_cubic" ) || ( extension == "VK_KHR_maintenance3" ) || ( extension == "VK_KHR_draw_indirect_count" ) || ( extension == "VK_EXT_filter_cubic" ) ||
( extension == "VK_QCOM_render_pass_shader_resolve" ) || ( extension == "VK_QCOM_cooperative_matrix_conversion" ) || ( extension == "VK_QCOM_render_pass_shader_resolve" ) || ( extension == "VK_QCOM_cooperative_matrix_conversion" ) ||
( extension == "VK_EXT_global_priority" ) || ( extension == "VK_KHR_shader_subgroup_extended_types" ) || ( extension == "VK_KHR_8bit_storage" ) || ( extension == "VK_QCOM_elapsed_timer_query" ) || ( extension == "VK_EXT_global_priority" ) ||
( extension == "VK_KHR_shader_subgroup_extended_types" ) || ( extension == "VK_KHR_8bit_storage" ) ||
( extension == "VK_EXT_external_memory_host" ) || ( extension == "VK_AMD_buffer_marker" ) || ( extension == "VK_KHR_shader_atomic_int64" ) || ( extension == "VK_EXT_external_memory_host" ) || ( extension == "VK_AMD_buffer_marker" ) || ( extension == "VK_KHR_shader_atomic_int64" ) ||
( extension == "VK_KHR_shader_clock" ) || ( extension == "VK_AMD_pipeline_compiler_control" ) || ( extension == "VK_EXT_calibrated_timestamps" ) || ( extension == "VK_KHR_shader_clock" ) || ( extension == "VK_AMD_pipeline_compiler_control" ) || ( extension == "VK_EXT_calibrated_timestamps" ) ||
( extension == "VK_AMD_shader_core_properties" ) || ( extension == "VK_KHR_video_decode_h265" ) || ( extension == "VK_KHR_global_priority" ) || ( extension == "VK_AMD_shader_core_properties" ) || ( extension == "VK_KHR_video_decode_h265" ) || ( extension == "VK_KHR_global_priority" ) ||
@@ -4000,7 +4175,8 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
( extension == "VK_KHR_pipeline_library" ) || ( extension == "VK_NV_present_barrier" ) || ( extension == "VK_KHR_shader_non_semantic_info" ) || ( extension == "VK_KHR_pipeline_library" ) || ( extension == "VK_NV_present_barrier" ) || ( extension == "VK_KHR_shader_non_semantic_info" ) ||
( extension == "VK_KHR_present_id" ) || ( extension == "VK_EXT_private_data" ) || ( extension == "VK_EXT_pipeline_creation_cache_control" ) || ( extension == "VK_KHR_present_id" ) || ( extension == "VK_EXT_private_data" ) || ( extension == "VK_EXT_pipeline_creation_cache_control" ) ||
( extension == "VK_KHR_video_encode_queue" ) || ( extension == "VK_NV_device_diagnostics_config" ) || ( extension == "VK_KHR_video_encode_queue" ) || ( extension == "VK_NV_device_diagnostics_config" ) ||
( extension == "VK_QCOM_render_pass_store_ops" ) ( extension == "VK_QCOM_render_pass_store_ops" ) || ( extension == "VK_QCOM_queue_perf_hint" ) || ( extension == "VK_QCOM_image_processing3" ) ||
( extension == "VK_QCOM_shader_multiple_wait_queues" ) || ( extension == "VK_EXT_shader_split_barrier" )
#if defined( VK_ENABLE_BETA_EXTENSIONS ) #if defined( VK_ENABLE_BETA_EXTENSIONS )
|| ( extension == "VK_NV_cuda_kernel_launch" ) || ( extension == "VK_NV_cuda_kernel_launch" )
#endif /*VK_ENABLE_BETA_EXTENSIONS*/ #endif /*VK_ENABLE_BETA_EXTENSIONS*/
@@ -4073,12 +4249,13 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
( extension == "VK_ARM_shader_core_builtins" ) || ( extension == "VK_EXT_pipeline_library_group_handles" ) || ( extension == "VK_ARM_shader_core_builtins" ) || ( extension == "VK_EXT_pipeline_library_group_handles" ) ||
( extension == "VK_EXT_dynamic_rendering_unused_attachments" ) || ( extension == "VK_KHR_internally_synchronized_queues" ) || ( extension == "VK_EXT_dynamic_rendering_unused_attachments" ) || ( extension == "VK_KHR_internally_synchronized_queues" ) ||
( extension == "VK_NV_low_latency2" ) || ( extension == "VK_KHR_cooperative_matrix" ) || ( extension == "VK_ARM_data_graph" ) || ( extension == "VK_NV_low_latency2" ) || ( extension == "VK_KHR_cooperative_matrix" ) || ( extension == "VK_ARM_data_graph" ) ||
( extension == "VK_QCOM_multiview_per_view_render_areas" ) || ( extension == "VK_KHR_compute_shader_derivatives" ) || ( extension == "VK_ARM_data_graph_instruction_set_tosa" ) || ( extension == "VK_QCOM_multiview_per_view_render_areas" ) ||
( extension == "VK_KHR_video_decode_av1" ) || ( extension == "VK_KHR_video_encode_av1" ) || ( extension == "VK_KHR_video_decode_vp9" ) || ( extension == "VK_KHR_compute_shader_derivatives" ) || ( extension == "VK_KHR_video_decode_av1" ) || ( extension == "VK_KHR_video_encode_av1" ) ||
( extension == "VK_KHR_video_maintenance1" ) || ( extension == "VK_NV_per_stage_descriptor_set" ) || ( extension == "VK_QCOM_image_processing2" ) || ( extension == "VK_KHR_video_decode_vp9" ) || ( extension == "VK_KHR_video_maintenance1" ) || ( extension == "VK_NV_per_stage_descriptor_set" ) ||
( extension == "VK_QCOM_filter_cubic_weights" ) || ( extension == "VK_QCOM_ycbcr_degamma" ) || ( extension == "VK_QCOM_filter_cubic_clamp" ) || ( extension == "VK_QCOM_image_processing2" ) || ( extension == "VK_QCOM_filter_cubic_weights" ) || ( extension == "VK_QCOM_ycbcr_degamma" ) ||
( extension == "VK_EXT_attachment_feedback_loop_dynamic_state" ) || ( extension == "VK_KHR_vertex_attribute_divisor" ) || ( extension == "VK_QCOM_filter_cubic_clamp" ) || ( extension == "VK_EXT_attachment_feedback_loop_dynamic_state" ) ||
( extension == "VK_KHR_load_store_op_none" ) || ( extension == "VK_KHR_unified_image_layouts" ) || ( extension == "VK_KHR_shader_float_controls2" ) ( extension == "VK_KHR_vertex_attribute_divisor" ) || ( extension == "VK_KHR_load_store_op_none" ) ||
( extension == "VK_KHR_unified_image_layouts" ) || ( extension == "VK_KHR_shader_float_controls2" )
#if defined( VK_USE_PLATFORM_SCREEN_QNX ) #if defined( VK_USE_PLATFORM_SCREEN_QNX )
|| ( extension == "VK_QNX_external_memory_screen_buffer" ) || ( extension == "VK_QNX_external_memory_screen_buffer" )
#endif /*VK_USE_PLATFORM_SCREEN_QNX*/ #endif /*VK_USE_PLATFORM_SCREEN_QNX*/
@@ -4090,25 +4267,32 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
( extension == "VK_NV_raw_access_chains" ) || ( extension == "VK_NV_external_compute_queue" ) || ( extension == "VK_NV_raw_access_chains" ) || ( extension == "VK_NV_external_compute_queue" ) ||
( extension == "VK_KHR_shader_relaxed_extended_instruction" ) || ( extension == "VK_NV_command_buffer_inheritance" ) || ( extension == "VK_KHR_shader_relaxed_extended_instruction" ) || ( extension == "VK_NV_command_buffer_inheritance" ) ||
( extension == "VK_KHR_maintenance7" ) || ( extension == "VK_NV_shader_atomic_float16_vector" ) || ( extension == "VK_KHR_maintenance7" ) || ( extension == "VK_NV_shader_atomic_float16_vector" ) ||
( extension == "VK_EXT_shader_replicated_composites" ) || ( extension == "VK_EXT_shader_float8" ) || ( extension == "VK_EXT_shader_replicated_composites" ) || ( extension == "VK_ARM_tensor_controls" ) || ( extension == "VK_EXT_shader_float8" ) ||
( extension == "VK_NV_ray_tracing_validation" ) || ( extension == "VK_NV_cluster_acceleration_structure" ) || ( extension == "VK_NV_ray_tracing_validation" ) || ( extension == "VK_NV_cluster_acceleration_structure" ) ||
( extension == "VK_NV_partitioned_acceleration_structure" ) || ( extension == "VK_EXT_device_generated_commands" ) || ( extension == "VK_NV_partitioned_acceleration_structure" ) || ( extension == "VK_EXT_device_generated_commands" ) ||
( extension == "VK_KHR_device_fault" ) || ( extension == "VK_KHR_maintenance8" ) || ( extension == "VK_MESA_image_alignment_control" ) || ( extension == "VK_KHR_device_fault" ) || ( extension == "VK_KHR_maintenance8" ) || ( extension == "VK_MESA_image_alignment_control" ) ||
( extension == "VK_KHR_shader_fma" ) || ( extension == "VK_NV_push_constant_bank" ) || ( extension == "VK_EXT_ray_tracing_invocation_reorder" ) || ( extension == "VK_KHR_shader_fma" ) || ( extension == "VK_NV_push_constant_bank" ) || ( extension == "VK_EXT_ray_tracing_invocation_reorder" ) ||
( extension == "VK_EXT_depth_clamp_control" ) || ( extension == "VK_KHR_maintenance9" ) || ( extension == "VK_KHR_video_maintenance2" ) || ( extension == "VK_EXT_depth_clamp_control" ) || ( extension == "VK_KHR_maintenance9" ) || ( extension == "VK_KHR_video_maintenance2" ) ||
( extension == "VK_HUAWEI_hdr_vivid" ) || ( extension == "VK_NV_cooperative_matrix2" ) || ( extension == "VK_ARM_pipeline_opacity_micromap" ) ( extension == "VK_HUAWEI_hdr_vivid" ) || ( extension == "VK_NV_cooperative_matrix2" ) || ( extension == "VK_ARM_pipeline_opacity_micromap" ) ||
( extension == "VK_KHR_video_encode_feedback2" ) || ( extension == "VK_IMG_filter_linear_2d" )
#if defined( VK_USE_PLATFORM_METAL_EXT ) #if defined( VK_USE_PLATFORM_METAL_EXT )
|| ( extension == "VK_EXT_external_memory_metal" ) || ( extension == "VK_EXT_external_memory_metal" )
#endif /*VK_USE_PLATFORM_METAL_EXT*/ #endif /*VK_USE_PLATFORM_METAL_EXT*/
|| ( extension == "VK_KHR_depth_clamp_zero_one" ) || ( extension == "VK_ARM_performance_counters_by_region" ) || || ( extension == "VK_KHR_depth_clamp_zero_one" ) || ( extension == "VK_ARM_performance_counters_by_region" ) ||
( extension == "VK_ARM_shader_instrumentation" ) || ( extension == "VK_EXT_vertex_attribute_robustness" ) || ( extension == "VK_ARM_format_pack" ) || ( extension == "VK_ARM_shader_instrumentation" ) || ( extension == "VK_EXT_vertex_attribute_robustness" ) || ( extension == "VK_ARM_format_pack" ) ||
( extension == "VK_VALVE_fragment_density_map_layered" ) || ( extension == "VK_KHR_robustness2" ) || ( extension == "VK_NV_present_metering" ) || ( extension == "VK_VALVE_fragment_density_map_layered" ) || ( extension == "VK_KHR_robustness2" ) || ( extension == "VK_NV_present_metering" ) ||
( extension == "VK_EXT_fragment_density_map_offset" ) || ( extension == "VK_EXT_zero_initialize_device_memory" ) || ( extension == "VK_EXT_multisampled_render_to_swapchain" ) || ( extension == "VK_EXT_fragment_density_map_offset" ) ||
( extension == "VK_KHR_present_mode_fifo_latest_ready" ) || ( extension == "VK_EXT_shader_64bit_indexing" ) || ( extension == "VK_EXT_zero_initialize_device_memory" ) || ( extension == "VK_KHR_present_mode_fifo_latest_ready" ) ||
( extension == "VK_EXT_custom_resolve" ) || ( extension == "VK_QCOM_data_graph_model" ) || ( extension == "VK_KHR_maintenance10" ) || ( extension == "VK_KHR_opacity_micromap" ) || ( extension == "VK_EXT_shader_64bit_indexing" ) || ( extension == "VK_EXT_custom_resolve" ) ||
( extension == "VK_QCOM_data_graph_model" ) || ( extension == "VK_KHR_maintenance10" ) || ( extension == "VK_ARM_data_graph_optical_flow" ) ||
( extension == "VK_EXT_shader_long_vector" ) || ( extension == "VK_SEC_pipeline_cache_incremental_mode" ) || ( extension == "VK_EXT_shader_long_vector" ) || ( extension == "VK_SEC_pipeline_cache_incremental_mode" ) ||
( extension == "VK_EXT_shader_uniform_buffer_unsized_array" ) || ( extension == "VK_NV_compute_occupancy_priority" ) || ( extension == "VK_EXT_shader_uniform_buffer_unsized_array" ) || ( extension == "VK_NV_compute_occupancy_priority" ) ||
( extension == "VK_EXT_shader_subgroup_partitioned" ) || ( extension == "VK_VALVE_shader_mixed_float_dot_product" ); ( extension == "VK_KHR_maintenance11" ) || ( extension == "VK_EXT_cooperative_matrix_maintenance1" ) ||
( extension == "VK_EXT_shader_subgroup_partitioned" ) || ( extension == "VK_KHR_extended_flags" ) ||
( extension == "VK_EXT_shader_ocp_microscaling_types" ) || ( extension == "VK_VALVE_shader_mixed_float_dot_product" ) ||
( extension == "VK_SEC_throttle_hint" ) || ( extension == "VK_ARM_data_graph_neural_accelerator_statistics" ) ||
( extension == "VK_EXT_primitive_restart_index" ) || ( extension == "VK_EXT_image_tiling_control" ) ||
( extension == "VK_NV_cooperative_matrix_decode_vector" );
} }
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 bool isInstanceExtension( std::string const & extension ) VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 bool isInstanceExtension( std::string const & extension )
@@ -4228,8 +4412,8 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
( extension == "VK_EXT_device_fault" ) || ( extension == "VK_ARM_rasterization_order_attachment_access" ) || ( extension == "VK_EXT_device_fault" ) || ( extension == "VK_ARM_rasterization_order_attachment_access" ) ||
( extension == "VK_VALVE_mutable_descriptor_type" ) || ( extension == "VK_KHR_format_feature_flags2" ) || ( extension == "VK_VALVE_mutable_descriptor_type" ) || ( extension == "VK_KHR_format_feature_flags2" ) ||
( extension == "VK_EXT_present_mode_fifo_latest_ready" ) || ( extension == "VK_EXT_extended_dynamic_state2" ) || ( extension == "VK_EXT_present_mode_fifo_latest_ready" ) || ( extension == "VK_EXT_extended_dynamic_state2" ) ||
( extension == "VK_EXT_global_priority_query" ) || ( extension == "VK_EXT_load_store_op_none" ) || ( extension == "VK_KHR_maintenance4" ) || ( extension == "VK_EXT_global_priority_query" ) || ( extension == "VK_EXT_opacity_micromap" ) || ( extension == "VK_EXT_load_store_op_none" ) ||
( extension == "VK_KHR_shader_subgroup_rotate" ) || ( extension == "VK_EXT_depth_clamp_zero_one" ) || ( extension == "VK_KHR_maintenance4" ) || ( extension == "VK_KHR_shader_subgroup_rotate" ) || ( extension == "VK_EXT_depth_clamp_zero_one" ) ||
( extension == "VK_QCOM_fragment_density_map_offset" ) || ( extension == "VK_NV_copy_memory_indirect" ) || ( extension == "VK_QCOM_fragment_density_map_offset" ) || ( extension == "VK_NV_copy_memory_indirect" ) ||
( extension == "VK_NV_memory_decompression" ) || ( extension == "VK_EXT_pipeline_protected_access" ) || ( extension == "VK_KHR_maintenance5" ) || ( extension == "VK_NV_memory_decompression" ) || ( extension == "VK_EXT_pipeline_protected_access" ) || ( extension == "VK_KHR_maintenance5" ) ||
( extension == "VK_NV_ray_tracing_invocation_reorder" ) || ( extension == "VK_KHR_vertex_attribute_divisor" ) || ( extension == "VK_NV_ray_tracing_invocation_reorder" ) || ( extension == "VK_KHR_vertex_attribute_divisor" ) ||
-1
View File
@@ -1,5 +1,4 @@
// Copyright 2015-2026 The Khronos Group Inc. // Copyright 2015-2026 The Khronos Group Inc.
//
// SPDX-License-Identifier: Apache-2.0 OR MIT // SPDX-License-Identifier: Apache-2.0 OR MIT
// //
+1 -1
View File
@@ -4,7 +4,7 @@
/* /*
** Copyright 2015-2026 The Khronos Group Inc. ** Copyright 2015-2026 The Khronos Group Inc.
** **
** SPDX-License-Identifier: Apache-2.0 ** SPDX-License-Identifier: Apache-2.0 OR MIT
*/ */
/* /*
+2811 -1413
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -4,7 +4,7 @@
/* /*
** Copyright 2015-2026 The Khronos Group Inc. ** Copyright 2015-2026 The Khronos Group Inc.
** **
** SPDX-License-Identifier: Apache-2.0 ** SPDX-License-Identifier: Apache-2.0 OR MIT
*/ */
/* /*
+599 -10
View File
@@ -1,5 +1,4 @@
// Copyright 2015-2026 The Khronos Group Inc. // Copyright 2015-2026 The Khronos Group Inc.
//
// SPDX-License-Identifier: Apache-2.0 OR MIT // SPDX-License-Identifier: Apache-2.0 OR MIT
// //
@@ -932,6 +931,17 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
struct AndroidHardwareBufferFormatProperties2ANDROID; struct AndroidHardwareBufferFormatProperties2ANDROID;
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/ #endif /*VK_USE_PLATFORM_ANDROID_KHR*/
//=== VK_AMD_gpa_interface ===
struct GpaPerfBlockPropertiesAMD;
struct PhysicalDeviceGpaFeaturesAMD;
struct PhysicalDeviceGpaPropertiesAMD;
struct PhysicalDeviceGpaProperties2AMD;
struct GpaPerfCounterAMD;
struct GpaSampleBeginInfoAMD;
struct GpaDeviceClockModeInfoAMD;
struct GpaDeviceGetClockInfoAMD;
struct GpaSessionCreateInfoAMD;
#if defined( VK_ENABLE_BETA_EXTENSIONS ) #if defined( VK_ENABLE_BETA_EXTENSIONS )
//=== VK_AMDX_shader_enqueue === //=== VK_AMDX_shader_enqueue ===
struct PhysicalDeviceShaderEnqueueFeaturesAMDX; struct PhysicalDeviceShaderEnqueueFeaturesAMDX;
@@ -1098,6 +1108,9 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
//=== VK_QCOM_cooperative_matrix_conversion === //=== VK_QCOM_cooperative_matrix_conversion ===
struct PhysicalDeviceCooperativeMatrixConversionFeaturesQCOM; struct PhysicalDeviceCooperativeMatrixConversionFeaturesQCOM;
//=== VK_QCOM_elapsed_timer_query ===
struct PhysicalDeviceElapsedTimerQueryFeaturesQCOM;
//=== VK_EXT_external_memory_host === //=== VK_EXT_external_memory_host ===
struct ImportMemoryHostPointerInfoEXT; struct ImportMemoryHostPointerInfoEXT;
struct MemoryHostPointerPropertiesEXT; struct MemoryHostPointerPropertiesEXT;
@@ -1379,6 +1392,22 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
struct PhysicalDeviceDiagnosticsConfigFeaturesNV; struct PhysicalDeviceDiagnosticsConfigFeaturesNV;
struct DeviceDiagnosticsConfigCreateInfoNV; struct DeviceDiagnosticsConfigCreateInfoNV;
//=== VK_QCOM_queue_perf_hint ===
struct PerfHintInfoQCOM;
struct PhysicalDeviceQueuePerfHintFeaturesQCOM;
struct PhysicalDeviceQueuePerfHintPropertiesQCOM;
//=== VK_QCOM_image_processing3 ===
struct PhysicalDeviceImageProcessing3FeaturesQCOM;
//=== VK_QCOM_shader_multiple_wait_queues ===
struct PhysicalDeviceShaderMultipleWaitQueuesFeaturesQCOM;
struct PhysicalDeviceShaderMultipleWaitQueuesPropertiesQCOM;
//=== VK_EXT_shader_split_barrier ===
struct PhysicalDeviceShaderSplitBarrierFeaturesEXT;
struct PhysicalDeviceShaderSplitBarrierPropertiesEXT;
#if defined( VK_ENABLE_BETA_EXTENSIONS ) #if defined( VK_ENABLE_BETA_EXTENSIONS )
//=== VK_NV_cuda_kernel_launch === //=== VK_NV_cuda_kernel_launch ===
struct CudaModuleCreateInfoNV; struct CudaModuleCreateInfoNV;
@@ -1417,7 +1446,6 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
//=== VK_EXT_descriptor_buffer === //=== VK_EXT_descriptor_buffer ===
struct PhysicalDeviceDescriptorBufferPropertiesEXT; struct PhysicalDeviceDescriptorBufferPropertiesEXT;
struct PhysicalDeviceDescriptorBufferDensityMapPropertiesEXT;
struct PhysicalDeviceDescriptorBufferFeaturesEXT; struct PhysicalDeviceDescriptorBufferFeaturesEXT;
struct DescriptorAddressInfoEXT; struct DescriptorAddressInfoEXT;
struct DescriptorBufferBindingInfoEXT; struct DescriptorBufferBindingInfoEXT;
@@ -1430,6 +1458,7 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
struct SamplerCaptureDescriptorDataInfoEXT; struct SamplerCaptureDescriptorDataInfoEXT;
struct OpaqueCaptureDescriptorDataCreateInfoEXT; struct OpaqueCaptureDescriptorDataCreateInfoEXT;
struct AccelerationStructureCaptureDescriptorDataInfoEXT; struct AccelerationStructureCaptureDescriptorDataInfoEXT;
struct PhysicalDeviceDescriptorBufferDensityMapPropertiesEXT;
//=== VK_KHR_device_address_commands === //=== VK_KHR_device_address_commands ===
struct DeviceAddressRangeKHR; struct DeviceAddressRangeKHR;
@@ -1653,7 +1682,6 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
struct CopyMicromapInfoEXT; struct CopyMicromapInfoEXT;
struct MicromapBuildSizesInfoEXT; struct MicromapBuildSizesInfoEXT;
struct AccelerationStructureTrianglesOpacityMicromapEXT; struct AccelerationStructureTrianglesOpacityMicromapEXT;
struct MicromapTriangleEXT;
#if defined( VK_ENABLE_BETA_EXTENSIONS ) #if defined( VK_ENABLE_BETA_EXTENSIONS )
//=== VK_NV_displacement_micromap === //=== VK_NV_displacement_micromap ===
@@ -1681,6 +1709,8 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
struct DeviceQueueShaderCoreControlCreateInfoARM; struct DeviceQueueShaderCoreControlCreateInfoARM;
struct PhysicalDeviceSchedulingControlsFeaturesARM; struct PhysicalDeviceSchedulingControlsFeaturesARM;
struct PhysicalDeviceSchedulingControlsPropertiesARM; struct PhysicalDeviceSchedulingControlsPropertiesARM;
struct DispatchParametersARM;
struct PhysicalDeviceSchedulingControlsDispatchParametersPropertiesARM;
//=== VK_EXT_image_sliced_view_of_3d === //=== VK_EXT_image_sliced_view_of_3d ===
struct PhysicalDeviceImageSlicedViewOf3DFeaturesEXT; struct PhysicalDeviceImageSlicedViewOf3DFeaturesEXT;
@@ -1980,6 +2010,10 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
struct PhysicalDeviceDataGraphOperationSupportARM; struct PhysicalDeviceDataGraphOperationSupportARM;
struct DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM; struct DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM;
//=== VK_ARM_data_graph_instruction_set_tosa ===
struct DataGraphTOSANameQualityARM;
struct QueueFamilyDataGraphTOSAPropertiesARM;
//=== VK_QCOM_multiview_per_view_render_areas === //=== VK_QCOM_multiview_per_view_render_areas ===
struct PhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM; struct PhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM;
struct MultiviewPerViewRenderAreasRenderPassBeginInfoQCOM; struct MultiviewPerViewRenderAreasRenderPassBeginInfoQCOM;
@@ -2148,6 +2182,10 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
//=== VK_EXT_shader_replicated_composites === //=== VK_EXT_shader_replicated_composites ===
struct PhysicalDeviceShaderReplicatedCompositesFeaturesEXT; struct PhysicalDeviceShaderReplicatedCompositesFeaturesEXT;
//=== VK_ARM_tensor_controls ===
struct TensorRollingBackingCreateInfoARM;
struct TensorExplicitTilingFormatPropertiesARM;
//=== VK_EXT_shader_float8 === //=== VK_EXT_shader_float8 ===
struct PhysicalDeviceShaderFloat8FeaturesEXT; struct PhysicalDeviceShaderFloat8FeaturesEXT;
@@ -2276,6 +2314,11 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
//=== VK_ARM_pipeline_opacity_micromap === //=== VK_ARM_pipeline_opacity_micromap ===
struct PhysicalDevicePipelineOpacityMicromapFeaturesARM; struct PhysicalDevicePipelineOpacityMicromapFeaturesARM;
//=== VK_KHR_video_encode_feedback2 ===
struct PhysicalDeviceVideoEncodeFeedback2FeaturesKHR;
struct VideoEncodeFeedback2CapabilitiesKHR;
struct QueryPoolVideoEncodePerPartitionFeedbackCreateInfoKHR;
#if defined( VK_USE_PLATFORM_METAL_EXT ) #if defined( VK_USE_PLATFORM_METAL_EXT )
//=== VK_EXT_external_memory_metal === //=== VK_EXT_external_memory_metal ===
struct ImportMemoryMetalHandleInfoEXT; struct ImportMemoryMetalHandleInfoEXT;
@@ -2322,6 +2365,10 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
struct SetPresentConfigNV; struct SetPresentConfigNV;
struct PhysicalDevicePresentMeteringFeaturesNV; struct PhysicalDevicePresentMeteringFeaturesNV;
//=== VK_EXT_multisampled_render_to_swapchain ===
struct PhysicalDeviceMultisampledRenderToSwapchainFeaturesEXT;
struct SwapchainFlagsSurfaceCapabilitiesEXT;
//=== VK_EXT_fragment_density_map_offset === //=== VK_EXT_fragment_density_map_offset ===
struct PhysicalDeviceFragmentDensityMapOffsetFeaturesEXT; struct PhysicalDeviceFragmentDensityMapOffsetFeaturesEXT;
using PhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM = PhysicalDeviceFragmentDensityMapOffsetFeaturesEXT; using PhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM = PhysicalDeviceFragmentDensityMapOffsetFeaturesEXT;
@@ -2337,6 +2384,15 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
struct PhysicalDevicePresentModeFifoLatestReadyFeaturesKHR; struct PhysicalDevicePresentModeFifoLatestReadyFeaturesKHR;
using PhysicalDevicePresentModeFifoLatestReadyFeaturesEXT = PhysicalDevicePresentModeFifoLatestReadyFeaturesKHR; using PhysicalDevicePresentModeFifoLatestReadyFeaturesEXT = PhysicalDevicePresentModeFifoLatestReadyFeaturesKHR;
//=== VK_KHR_opacity_micromap ===
struct AccelerationStructureGeometryMicromapDataKHR;
struct MicromapUsageKHR;
struct PhysicalDeviceOpacityMicromapFeaturesKHR;
struct PhysicalDeviceOpacityMicromapPropertiesKHR;
struct MicromapTriangleKHR;
using MicromapTriangleEXT = MicromapTriangleKHR;
struct AccelerationStructureTrianglesOpacityMicromapKHR;
//=== VK_EXT_shader_64bit_indexing === //=== VK_EXT_shader_64bit_indexing ===
struct PhysicalDeviceShader64BitIndexingFeaturesEXT; struct PhysicalDeviceShader64BitIndexingFeaturesEXT;
@@ -2358,6 +2414,17 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
struct RenderingAttachmentFlagsInfoKHR; struct RenderingAttachmentFlagsInfoKHR;
struct ResolveImageModeInfoKHR; struct ResolveImageModeInfoKHR;
//=== VK_ARM_data_graph_optical_flow ===
struct PhysicalDeviceDataGraphOpticalFlowFeaturesARM;
struct QueueFamilyDataGraphOpticalFlowPropertiesARM;
struct DataGraphPipelineOpticalFlowCreateInfoARM;
struct DataGraphOpticalFlowImageFormatPropertiesARM;
struct DataGraphOpticalFlowImageFormatInfoARM;
struct DataGraphPipelineOpticalFlowDispatchInfoARM;
struct DataGraphPipelineResourceInfoImageLayoutARM;
struct DataGraphPipelineSingleNodeCreateInfoARM;
struct DataGraphPipelineSingleNodeConnectionARM;
//=== VK_EXT_shader_long_vector === //=== VK_EXT_shader_long_vector ===
struct PhysicalDeviceShaderLongVectorFeaturesEXT; struct PhysicalDeviceShaderLongVectorFeaturesEXT;
struct PhysicalDeviceShaderLongVectorPropertiesEXT; struct PhysicalDeviceShaderLongVectorPropertiesEXT;
@@ -2372,6 +2439,15 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
struct ComputeOccupancyPriorityParametersNV; struct ComputeOccupancyPriorityParametersNV;
struct PhysicalDeviceComputeOccupancyPriorityFeaturesNV; struct PhysicalDeviceComputeOccupancyPriorityFeaturesNV;
//=== VK_KHR_maintenance11 ===
struct PhysicalDeviceMaintenance11FeaturesKHR;
struct QueueFamilyOptimalImageTransferGranularityPropertiesKHR;
//=== VK_EXT_cooperative_matrix_maintenance1 ===
struct CooperativeMatrixProperties2EXT;
struct PhysicalDeviceCooperativeMatrixInfo2EXT;
struct PhysicalDeviceCooperativeMatrixMaintenance1FeaturesEXT;
//=== VK_EXT_shader_subgroup_partitioned === //=== VK_EXT_shader_subgroup_partitioned ===
struct PhysicalDeviceShaderSubgroupPartitionedFeaturesEXT; struct PhysicalDeviceShaderSubgroupPartitionedFeaturesEXT;
@@ -2380,9 +2456,40 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
struct UbmSurfaceCreateInfoSEC; struct UbmSurfaceCreateInfoSEC;
#endif /*VK_USE_PLATFORM_UBM_SEC*/ #endif /*VK_USE_PLATFORM_UBM_SEC*/
//=== VK_KHR_extended_flags ===
struct FormatProperties4KHR;
struct ImageUsageFlags2CreateInfoKHR;
struct ImageCreateFlags2CreateInfoKHR;
struct ImageViewUsage2CreateInfoKHR;
struct PhysicalDeviceExtendedFlagsFeaturesKHR;
struct ImageStencilUsage2CreateInfoKHR;
struct SharedPresentSurfaceCapabilities2KHR;
//=== VK_EXT_shader_ocp_microscaling_types ===
struct PhysicalDeviceShaderOCPMicroscalingTypesFeaturesEXT;
//=== VK_VALVE_shader_mixed_float_dot_product === //=== VK_VALVE_shader_mixed_float_dot_product ===
struct PhysicalDeviceShaderMixedFloatDotProductFeaturesVALVE; struct PhysicalDeviceShaderMixedFloatDotProductFeaturesVALVE;
//=== VK_SEC_throttle_hint ===
struct ThrottleHintSubmitInfoSEC;
struct PhysicalDeviceThrottleHintFeaturesSEC;
//=== VK_ARM_data_graph_neural_accelerator_statistics ===
struct PhysicalDeviceDataGraphNeuralAcceleratorStatisticsFeaturesARM;
struct DataGraphPipelineNeuralStatisticsCreateInfoARM;
struct DataGraphPipelineSessionNeuralStatisticsCreateInfoARM;
//=== VK_EXT_primitive_restart_index ===
struct PhysicalDevicePrimitiveRestartIndexFeaturesEXT;
//=== VK_EXT_image_tiling_control ===
struct PhysicalDeviceImageTilingControlFeaturesEXT;
struct ImageTilingControlCreateInfoEXT;
//=== VK_NV_cooperative_matrix_decode_vector ===
struct PhysicalDeviceCooperativeMatrixDecodeVectorFeaturesNV;
//=================================== //===================================
//=== HANDLE forward declarations === //=== HANDLE forward declarations ===
//=================================== //===================================
@@ -2445,6 +2552,9 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
//=== VK_EXT_debug_utils === //=== VK_EXT_debug_utils ===
class DebugUtilsMessengerEXT; class DebugUtilsMessengerEXT;
//=== VK_AMD_gpa_interface ===
class GpaSessionAMD;
//=== VK_EXT_descriptor_heap === //=== VK_EXT_descriptor_heap ===
class TensorARM; class TensorARM;
@@ -2868,6 +2978,16 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
using UniqueDebugUtilsMessengerEXT = UniqueHandle<DebugUtilsMessengerEXT, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>; using UniqueDebugUtilsMessengerEXT = UniqueHandle<DebugUtilsMessengerEXT, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
//=== VK_AMD_gpa_interface ===
template <typename Dispatch>
class UniqueHandleTraits<GpaSessionAMD, Dispatch>
{
public:
using deleter = detail::ObjectDestroy<Device, Dispatch>;
};
using UniqueGpaSessionAMD = UniqueHandle<GpaSessionAMD, VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>;
//=== VK_EXT_descriptor_heap === //=== VK_EXT_descriptor_heap ===
template <typename Dispatch> template <typename Dispatch>
class UniqueHandleTraits<TensorARM, Dispatch> class UniqueHandleTraits<TensorARM, Dispatch>
@@ -3818,6 +3938,92 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true; static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
}; };
// wrapper class for handle VkGpaSessionAMD, see https://registry.khronos.org/vulkan/specs/latest/man/html/VkGpaSessionAMD.html
class GpaSessionAMD
{
public:
using CType = VkGpaSessionAMD;
using NativeType = VkGpaSessionAMD;
static VULKAN_HPP_CONST_OR_CONSTEXPR ObjectType objectType = ObjectType::eGpaSessionAMD;
static VULKAN_HPP_CONST_OR_CONSTEXPR DebugReportObjectTypeEXT debugReportObjectType = DebugReportObjectTypeEXT::eUnknown;
public:
GpaSessionAMD() VULKAN_HPP_NOEXCEPT {} // = default; - try to workaround a compiler issue
GpaSessionAMD( GpaSessionAMD const & rhs ) = default;
GpaSessionAMD & operator=( GpaSessionAMD const & rhs ) = default;
#if !defined( VULKAN_HPP_HANDLES_MOVE_EXCHANGE )
GpaSessionAMD( GpaSessionAMD && rhs ) = default;
GpaSessionAMD & operator=( GpaSessionAMD && rhs ) = default;
#else
GpaSessionAMD( GpaSessionAMD && rhs ) VULKAN_HPP_NOEXCEPT : m_gpaSessionAMD( exchange( rhs.m_gpaSessionAMD, {} ) ) {}
GpaSessionAMD & operator=( GpaSessionAMD && rhs ) VULKAN_HPP_NOEXCEPT
{
m_gpaSessionAMD = exchange( rhs.m_gpaSessionAMD, {} );
return *this;
}
#endif
VULKAN_HPP_CONSTEXPR GpaSessionAMD( std::nullptr_t ) VULKAN_HPP_NOEXCEPT {}
VULKAN_HPP_TYPESAFE_EXPLICIT GpaSessionAMD( VkGpaSessionAMD gpaSessionAMD ) VULKAN_HPP_NOEXCEPT : m_gpaSessionAMD( gpaSessionAMD ) {}
#if ( VULKAN_HPP_TYPESAFE_CONVERSION == 1 )
GpaSessionAMD & operator=( VkGpaSessionAMD gpaSessionAMD ) VULKAN_HPP_NOEXCEPT
{
m_gpaSessionAMD = gpaSessionAMD;
return *this;
}
#endif
GpaSessionAMD & operator=( std::nullptr_t ) VULKAN_HPP_NOEXCEPT
{
m_gpaSessionAMD = {};
return *this;
}
VULKAN_HPP_TYPESAFE_EXPLICIT operator VkGpaSessionAMD() const VULKAN_HPP_NOEXCEPT
{
return m_gpaSessionAMD;
}
explicit operator bool() const VULKAN_HPP_NOEXCEPT
{
return m_gpaSessionAMD != VK_NULL_HANDLE;
}
bool operator!() const VULKAN_HPP_NOEXCEPT
{
return m_gpaSessionAMD == VK_NULL_HANDLE;
}
private:
VkGpaSessionAMD m_gpaSessionAMD = {};
};
template <>
struct CppType<ObjectType, ObjectType::eGpaSessionAMD>
{
using Type = GpaSessionAMD;
};
#if ( VK_USE_64_BIT_PTR_DEFINES == 1 )
template <>
struct CppType<VkGpaSessionAMD, VK_NULL_HANDLE>
{
using Type = GpaSessionAMD;
};
#endif
template <>
struct isVulkanHandleType<GpaSessionAMD>
{
static VULKAN_HPP_CONST_OR_CONSTEXPR bool value = true;
};
// wrapper class for handle VkQueryPool, see https://registry.khronos.org/vulkan/specs/latest/man/html/VkQueryPool.html // wrapper class for handle VkQueryPool, see https://registry.khronos.org/vulkan/specs/latest/man/html/VkQueryPool.html
class QueryPool class QueryPool
{ {
@@ -5691,6 +5897,12 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
// wrapper function for command vkCmdSetBlendConstants, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkCmdSetBlendConstants.html // wrapper function for command vkCmdSetBlendConstants, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkCmdSetBlendConstants.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkCmdSetBlendConstants ), bool>::type = true> template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkCmdSetBlendConstants ), bool>::type = true>
void setBlendConstants( float const blendConstants[4], Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT; void setBlendConstants( float const blendConstants[4], Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
// wrapper function for command vkCmdSetBlendConstants, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkCmdSetBlendConstants.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkCmdSetBlendConstants ), bool>::type = true>
void setBlendConstants( std::array<float, 4> const & blendConstants,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
// wrapper function for command vkCmdSetDepthBounds, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkCmdSetDepthBounds.html // wrapper function for command vkCmdSetDepthBounds, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkCmdSetDepthBounds.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkCmdSetDepthBounds ), bool>::type = true> template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkCmdSetDepthBounds ), bool>::type = true>
@@ -6696,6 +6908,56 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT; Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */ #endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
//=== VK_AMD_gpa_interface ===
#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
// wrapper function for command vkCmdBeginGpaSessionAMD, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkCmdBeginGpaSessionAMD.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkCmdBeginGpaSessionAMD ), bool>::type = true>
VULKAN_HPP_NODISCARD Result beginGpaSessionAMD( GpaSessionAMD gpaSession,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#else
// wrapper function for command vkCmdBeginGpaSessionAMD, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkCmdBeginGpaSessionAMD.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkCmdBeginGpaSessionAMD ), bool>::type = true>
VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
beginGpaSessionAMD( GpaSessionAMD gpaSession, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
// wrapper function for command vkCmdEndGpaSessionAMD, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkCmdEndGpaSessionAMD.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkCmdEndGpaSessionAMD ), bool>::type = true>
VULKAN_HPP_NODISCARD Result endGpaSessionAMD( GpaSessionAMD gpaSession,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#else
// wrapper function for command vkCmdEndGpaSessionAMD, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkCmdEndGpaSessionAMD.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkCmdEndGpaSessionAMD ), bool>::type = true>
VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
endGpaSessionAMD( GpaSessionAMD gpaSession, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
// wrapper function for command vkCmdBeginGpaSampleAMD, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkCmdBeginGpaSampleAMD.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkCmdBeginGpaSampleAMD ), bool>::type = true>
VULKAN_HPP_NODISCARD Result beginGpaSampleAMD( GpaSessionAMD gpaSession,
GpaSampleBeginInfoAMD const * pGpaSampleBeginInfo,
uint32_t * pSampleID,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
// wrapper function for command vkCmdBeginGpaSampleAMD, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkCmdBeginGpaSampleAMD.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkCmdBeginGpaSampleAMD ), bool>::type = true>
VULKAN_HPP_NODISCARD typename ResultValueType<uint32_t>::type beginGpaSampleAMD( GpaSessionAMD gpaSession,
GpaSampleBeginInfoAMD const & gpaSampleBeginInfo,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
#endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
// wrapper function for command vkCmdEndGpaSampleAMD, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkCmdEndGpaSampleAMD.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkCmdEndGpaSampleAMD ), bool>::type = true>
void endGpaSampleAMD( GpaSessionAMD gpaSession, uint32_t sampleID, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
// wrapper function for command vkCmdCopyGpaSessionResultsAMD, see
// https://registry.khronos.org/vulkan/specs/latest/man/html/vkCmdCopyGpaSessionResultsAMD.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
typename std::enable_if<IS_DISPATCHED( vkCmdCopyGpaSessionResultsAMD ), bool>::type = true>
void copyGpaSessionResultsAMD( GpaSessionAMD gpaSession, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#if defined( VK_ENABLE_BETA_EXTENSIONS ) #if defined( VK_ENABLE_BETA_EXTENSIONS )
//=== VK_AMDX_shader_enqueue === //=== VK_AMDX_shader_enqueue ===
@@ -7251,9 +7513,9 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
// https://registry.khronos.org/vulkan/specs/latest/man/html/vkCmdSetFragmentShadingRateKHR.html // https://registry.khronos.org/vulkan/specs/latest/man/html/vkCmdSetFragmentShadingRateKHR.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
typename std::enable_if<IS_DISPATCHED( vkCmdSetFragmentShadingRateKHR ), bool>::type = true> typename std::enable_if<IS_DISPATCHED( vkCmdSetFragmentShadingRateKHR ), bool>::type = true>
void setFragmentShadingRateKHR( Extent2D const & fragmentSize, void setFragmentShadingRateKHR( Extent2D const & fragmentSize,
FragmentShadingRateCombinerOpKHR const combinerOps[2], std::array<FragmentShadingRateCombinerOpKHR, 2> const & combinerOps,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT; Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */ #endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
//=== VK_KHR_dynamic_rendering_local_read === //=== VK_KHR_dynamic_rendering_local_read ===
@@ -7915,6 +8177,15 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
void setFragmentShadingRateEnumNV( FragmentShadingRateNV shadingRate, void setFragmentShadingRateEnumNV( FragmentShadingRateNV shadingRate,
FragmentShadingRateCombinerOpKHR const combinerOps[2], FragmentShadingRateCombinerOpKHR const combinerOps[2],
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT; Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
// wrapper function for command vkCmdSetFragmentShadingRateEnumNV, see
// https://registry.khronos.org/vulkan/specs/latest/man/html/vkCmdSetFragmentShadingRateEnumNV.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
typename std::enable_if<IS_DISPATCHED( vkCmdSetFragmentShadingRateEnumNV ), bool>::type = true>
void setFragmentShadingRateEnumNV( FragmentShadingRateNV shadingRate,
std::array<FragmentShadingRateCombinerOpKHR, 2> const & combinerOps,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
//=== VK_EXT_mesh_shader === //=== VK_EXT_mesh_shader ===
@@ -8212,6 +8483,23 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
typename std::enable_if<IS_DISPATCHED( vkCmdDrawClusterIndirectHUAWEI ), bool>::type = true> typename std::enable_if<IS_DISPATCHED( vkCmdDrawClusterIndirectHUAWEI ), bool>::type = true>
void drawClusterIndirectHUAWEI( Buffer buffer, DeviceSize offset, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT; void drawClusterIndirectHUAWEI( Buffer buffer, DeviceSize offset, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
//=== VK_ARM_scheduling_controls ===
// wrapper function for command vkCmdSetDispatchParametersARM, see
// https://registry.khronos.org/vulkan/specs/latest/man/html/vkCmdSetDispatchParametersARM.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
typename std::enable_if<IS_DISPATCHED( vkCmdSetDispatchParametersARM ), bool>::type = true>
void setDispatchParametersARM( DispatchParametersARM const * pDispatchParameters,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
// wrapper function for command vkCmdSetDispatchParametersARM, see
// https://registry.khronos.org/vulkan/specs/latest/man/html/vkCmdSetDispatchParametersARM.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
typename std::enable_if<IS_DISPATCHED( vkCmdSetDispatchParametersARM ), bool>::type = true>
void setDispatchParametersARM( DispatchParametersARM const & dispatchParameters,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
//=== VK_NV_copy_memory_indirect === //=== VK_NV_copy_memory_indirect ===
// wrapper function for command vkCmdCopyMemoryIndirectNV, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkCmdCopyMemoryIndirectNV.html // wrapper function for command vkCmdCopyMemoryIndirectNV, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkCmdCopyMemoryIndirectNV.html
@@ -8932,6 +9220,14 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT; Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */ #endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
//=== VK_EXT_primitive_restart_index ===
// wrapper function for command vkCmdSetPrimitiveRestartIndexEXT, see
// https://registry.khronos.org/vulkan/specs/latest/man/html/vkCmdSetPrimitiveRestartIndexEXT.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
typename std::enable_if<IS_DISPATCHED( vkCmdSetPrimitiveRestartIndexEXT ), bool>::type = true>
void setPrimitiveRestartIndexEXT( uint32_t primitiveRestartIndex, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
operator VkCommandBuffer() const VULKAN_HPP_NOEXCEPT operator VkCommandBuffer() const VULKAN_HPP_NOEXCEPT
{ {
return m_commandBuffer; return m_commandBuffer;
@@ -11766,6 +12062,27 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
setPerformanceConfigurationINTEL( PerformanceConfigurationINTEL configuration, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const; setPerformanceConfigurationINTEL( PerformanceConfigurationINTEL configuration, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/ #endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
//=== VK_QCOM_queue_perf_hint ===
// wrapper function for command vkQueueSetPerfHintQCOM, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkQueueSetPerfHintQCOM.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkQueueSetPerfHintQCOM ), bool>::type = true>
VULKAN_HPP_NODISCARD Result setPerfHintQCOM( PerfHintInfoQCOM const * pPerfHintInfo,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
// wrapper function for command vkQueueSetPerfHintQCOM, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkQueueSetPerfHintQCOM.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkQueueSetPerfHintQCOM ), bool>::type = true>
VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
setPerfHintQCOM( PerfHintInfoQCOM const & perfHintInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
#endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
//=== VK_NV_low_latency ===
// wrapper function for command vkQueueNotifyOutOfBandLegacyNV, see
// https://registry.khronos.org/vulkan/specs/latest/man/html/vkQueueNotifyOutOfBandLegacyNV.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
typename std::enable_if<IS_DISPATCHED( vkQueueNotifyOutOfBandLegacyNV ), bool>::type = true>
void notifyOutOfBandLegacyNV( uint32_t queueType, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
//=== VK_KHR_synchronization2 === //=== VK_KHR_synchronization2 ===
// wrapper function for command vkQueueSubmit2KHR, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkQueueSubmit2KHR.html // wrapper function for command vkQueueSubmit2KHR, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkQueueSubmit2KHR.html
@@ -15383,6 +15700,130 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
# endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */ # endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/ #endif /*VK_USE_PLATFORM_ANDROID_KHR*/
//=== VK_AMD_gpa_interface ===
// wrapper function for command vkCreateGpaSessionAMD, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkCreateGpaSessionAMD.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkCreateGpaSessionAMD ), bool>::type = true>
VULKAN_HPP_NODISCARD Result createGpaSessionAMD( GpaSessionCreateInfoAMD const * pCreateInfo,
AllocationCallbacks const * pAllocator,
GpaSessionAMD * pGpaSession,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
// wrapper function for command vkCreateGpaSessionAMD, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkCreateGpaSessionAMD.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkCreateGpaSessionAMD ), bool>::type = true>
VULKAN_HPP_NODISCARD typename ResultValueType<GpaSessionAMD>::type
createGpaSessionAMD( GpaSessionCreateInfoAMD const & createInfo,
Optional<AllocationCallbacks const> allocator VULKAN_HPP_DEFAULT_ASSIGNMENT( nullptr ),
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
# ifndef VULKAN_HPP_NO_SMART_HANDLE
// wrapper function for command vkCreateGpaSessionAMD, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkCreateGpaSessionAMD.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkCreateGpaSessionAMD ), bool>::type = true>
VULKAN_HPP_NODISCARD typename ResultValueType<UniqueHandle<GpaSessionAMD, Dispatch>>::type
createGpaSessionAMDUnique( GpaSessionCreateInfoAMD const & createInfo,
Optional<AllocationCallbacks const> allocator VULKAN_HPP_DEFAULT_ASSIGNMENT( nullptr ),
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
# endif /* VULKAN_HPP_NO_SMART_HANDLE */
#endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
// wrapper function for command vkDestroyGpaSessionAMD, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkDestroyGpaSessionAMD.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkDestroyGpaSessionAMD ), bool>::type = true>
void destroyGpaSessionAMD( GpaSessionAMD gpaSession,
AllocationCallbacks const * pAllocator,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
// wrapper function for command vkDestroyGpaSessionAMD, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkDestroyGpaSessionAMD.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkDestroyGpaSessionAMD ), bool>::type = true>
void destroyGpaSessionAMD( GpaSessionAMD gpaSession VULKAN_HPP_DEFAULT_ASSIGNMENT( {} ),
Optional<AllocationCallbacks const> allocator VULKAN_HPP_DEFAULT_ASSIGNMENT( nullptr ),
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
// wrapper function for command vkDestroyGpaSessionAMD, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkDestroyGpaSessionAMD.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkDestroyGpaSessionAMD ), bool>::type = true>
void destroy( GpaSessionAMD gpaSession,
AllocationCallbacks const * pAllocator,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
// wrapper function for command vkDestroyGpaSessionAMD, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkDestroyGpaSessionAMD.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkDestroyGpaSessionAMD ), bool>::type = true>
void destroy( GpaSessionAMD gpaSession,
Optional<AllocationCallbacks const> allocator VULKAN_HPP_DEFAULT_ASSIGNMENT( nullptr ),
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
// wrapper function for command vkSetGpaDeviceClockModeAMD, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkSetGpaDeviceClockModeAMD.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkSetGpaDeviceClockModeAMD ), bool>::type = true>
VULKAN_HPP_NODISCARD Result setGpaClockModeAMD( GpaDeviceClockModeInfoAMD * pInfo,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
// wrapper function for command vkSetGpaDeviceClockModeAMD, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkSetGpaDeviceClockModeAMD.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkSetGpaDeviceClockModeAMD ), bool>::type = true>
VULKAN_HPP_NODISCARD typename ResultValueType<GpaDeviceClockModeInfoAMD>::type
setGpaClockModeAMD( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
#endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
// wrapper function for command vkGetGpaDeviceClockInfoAMD, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkGetGpaDeviceClockInfoAMD.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkGetGpaDeviceClockInfoAMD ), bool>::type = true>
VULKAN_HPP_NODISCARD Result getGpaClockInfoAMD( GpaDeviceGetClockInfoAMD * pInfo,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
// wrapper function for command vkGetGpaDeviceClockInfoAMD, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkGetGpaDeviceClockInfoAMD.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkGetGpaDeviceClockInfoAMD ), bool>::type = true>
VULKAN_HPP_NODISCARD typename ResultValueType<GpaDeviceGetClockInfoAMD>::type
getGpaClockInfoAMD( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
#endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
// wrapper function for command vkGetGpaSessionStatusAMD, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkGetGpaSessionStatusAMD.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkGetGpaSessionStatusAMD ), bool>::type = true>
VULKAN_HPP_NODISCARD Result getGpaSessionStatusAMD( GpaSessionAMD gpaSession,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#else
// wrapper function for command vkGetGpaSessionStatusAMD, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkGetGpaSessionStatusAMD.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkGetGpaSessionStatusAMD ), bool>::type = true>
VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
getGpaSessionStatusAMD( GpaSessionAMD gpaSession, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
// wrapper function for command vkGetGpaSessionResultsAMD, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkGetGpaSessionResultsAMD.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkGetGpaSessionResultsAMD ), bool>::type = true>
VULKAN_HPP_NODISCARD Result getGpaSessionResultsAMD( GpaSessionAMD gpaSession,
uint32_t sampleID,
size_t * pSizeInBytes,
void * pData,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
// wrapper function for command vkGetGpaSessionResultsAMD, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkGetGpaSessionResultsAMD.html
template <typename Uint8_tAllocator = std::allocator<uint8_t>,
typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
typename std::enable_if<std::is_same<typename Uint8_tAllocator::value_type, uint8_t>::value, int>::type = 0,
typename std::enable_if<IS_DISPATCHED( vkGetGpaSessionResultsAMD ), bool>::type = true>
VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<uint8_t, Uint8_tAllocator>>::type
getGpaSessionResultsAMD( GpaSessionAMD gpaSession, uint32_t sampleID, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
// wrapper function for command vkGetGpaSessionResultsAMD, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkGetGpaSessionResultsAMD.html
template <typename Uint8_tAllocator = std::allocator<uint8_t>,
typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
typename std::enable_if<std::is_same<typename Uint8_tAllocator::value_type, uint8_t>::value, int>::type = 0,
typename std::enable_if<IS_DISPATCHED( vkGetGpaSessionResultsAMD ), bool>::type = true>
VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<uint8_t, Uint8_tAllocator>>::type
getGpaSessionResultsAMD( GpaSessionAMD gpaSession,
uint32_t sampleID,
Uint8_tAllocator const & uint8_tAllocator,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
#endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE
// wrapper function for command vkResetGpaSessionAMD, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkResetGpaSessionAMD.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkResetGpaSessionAMD ), bool>::type = true>
VULKAN_HPP_NODISCARD Result resetGpaSessionAMD( GpaSessionAMD gpaSession,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#else
// wrapper function for command vkResetGpaSessionAMD, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkResetGpaSessionAMD.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkResetGpaSessionAMD ), bool>::type = true>
VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS typename ResultValueType<void>::type
resetGpaSessionAMD( GpaSessionAMD gpaSession, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/
#if defined( VK_ENABLE_BETA_EXTENSIONS ) #if defined( VK_ENABLE_BETA_EXTENSIONS )
//=== VK_AMDX_shader_enqueue === //=== VK_AMDX_shader_enqueue ===
@@ -16292,14 +16733,14 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
typename std::enable_if<IS_DISPATCHED( vkGetAccelerationStructureMemoryRequirementsNV ), bool>::type = true> typename std::enable_if<IS_DISPATCHED( vkGetAccelerationStructureMemoryRequirementsNV ), bool>::type = true>
void getAccelerationStructureMemoryRequirementsNV( AccelerationStructureMemoryRequirementsInfoNV const * pInfo, void getAccelerationStructureMemoryRequirementsNV( AccelerationStructureMemoryRequirementsInfoNV const * pInfo,
MemoryRequirements2KHR * pMemoryRequirements, MemoryRequirements2 * pMemoryRequirements,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT; Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE #ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
// wrapper function for command vkGetAccelerationStructureMemoryRequirementsNV, see // wrapper function for command vkGetAccelerationStructureMemoryRequirementsNV, see
// https://registry.khronos.org/vulkan/specs/latest/man/html/vkGetAccelerationStructureMemoryRequirementsNV.html // https://registry.khronos.org/vulkan/specs/latest/man/html/vkGetAccelerationStructureMemoryRequirementsNV.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
typename std::enable_if<IS_DISPATCHED( vkGetAccelerationStructureMemoryRequirementsNV ), bool>::type = true> typename std::enable_if<IS_DISPATCHED( vkGetAccelerationStructureMemoryRequirementsNV ), bool>::type = true>
VULKAN_HPP_NODISCARD MemoryRequirements2KHR getAccelerationStructureMemoryRequirementsNV( VULKAN_HPP_NODISCARD MemoryRequirements2 getAccelerationStructureMemoryRequirementsNV(
AccelerationStructureMemoryRequirementsInfoNV const & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT; AccelerationStructureMemoryRequirementsInfoNV const & info, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
// wrapper function for command vkGetAccelerationStructureMemoryRequirementsNV, see // wrapper function for command vkGetAccelerationStructureMemoryRequirementsNV, see
// https://registry.khronos.org/vulkan/specs/latest/man/html/vkGetAccelerationStructureMemoryRequirementsNV.html // https://registry.khronos.org/vulkan/specs/latest/man/html/vkGetAccelerationStructureMemoryRequirementsNV.html
@@ -17524,6 +17965,52 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
# endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */ # endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
#endif /*VK_ENABLE_BETA_EXTENSIONS*/ #endif /*VK_ENABLE_BETA_EXTENSIONS*/
//=== VK_NV_low_latency ===
// wrapper function for command vkSetLatencySleepModeLegacyNV, see
// https://registry.khronos.org/vulkan/specs/latest/man/html/vkSetLatencySleepModeLegacyNV.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
typename std::enable_if<IS_DISPATCHED( vkSetLatencySleepModeLegacyNV ), bool>::type = true>
void setLatencySleepModeLegacyNV( Bool32 lowLatencyMode,
Bool32 lowLatencyBoost,
uint32_t minimumIntervalUs,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
// wrapper function for command vkLatencySleepLegacyNV, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkLatencySleepLegacyNV.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkLatencySleepLegacyNV ), bool>::type = true>
void
latencySleepLegacyNV( Semaphore signalSemaphore, uint64_t value, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
// wrapper function for command vkSetLatencyMarkerLegacyNV, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkSetLatencyMarkerLegacyNV.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkSetLatencyMarkerLegacyNV ), bool>::type = true>
void setLatencyMarkerLegacyNV( uint64_t frameID, uint32_t marker, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
// wrapper function for command vkGetLatencyTimingsLegacyNV, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkGetLatencyTimingsLegacyNV.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkGetLatencyTimingsLegacyNV ), bool>::type = true>
void getLatencyTimingsLegacyNV( void * pTimings, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
// wrapper function for command vkGetLatencyTimingsLegacyNV, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkGetLatencyTimingsLegacyNV.html
template <typename TimingsType,
typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
typename std::enable_if<IS_DISPATCHED( vkGetLatencyTimingsLegacyNV ), bool>::type = true>
VULKAN_HPP_NODISCARD TimingsType getLatencyTimingsLegacyNV( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
// wrapper function for command vkGetSleepStatusLegacyNV, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkGetSleepStatusLegacyNV.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkGetSleepStatusLegacyNV ), bool>::type = true>
void getSleepStatusLegacyNV( Bool32 * pLowLatencyMode, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
// wrapper function for command vkGetSleepStatusLegacyNV, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkGetSleepStatusLegacyNV.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkGetSleepStatusLegacyNV ), bool>::type = true>
VULKAN_HPP_NODISCARD Bool32 getSleepStatusLegacyNV( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
// wrapper function for command vkShutdownLatencyDeviceLegacyNV, see
// https://registry.khronos.org/vulkan/specs/latest/man/html/vkShutdownLatencyDeviceLegacyNV.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
typename std::enable_if<IS_DISPATCHED( vkShutdownLatencyDeviceLegacyNV ), bool>::type = true>
void shutdownLatencyLegacyNV( Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#if defined( VK_USE_PLATFORM_METAL_EXT ) #if defined( VK_USE_PLATFORM_METAL_EXT )
//=== VK_EXT_metal_objects === //=== VK_EXT_metal_objects ===
@@ -17956,14 +18443,14 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
// wrapper function for command vkGetPipelinePropertiesEXT, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkGetPipelinePropertiesEXT.html // wrapper function for command vkGetPipelinePropertiesEXT, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkGetPipelinePropertiesEXT.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkGetPipelinePropertiesEXT ), bool>::type = true> template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkGetPipelinePropertiesEXT ), bool>::type = true>
VULKAN_HPP_NODISCARD Result getPipelinePropertiesEXT( PipelineInfoEXT const * pPipelineInfo, VULKAN_HPP_NODISCARD Result getPipelinePropertiesEXT( PipelineInfoKHR const * pPipelineInfo,
BaseOutStructure * pPipelineProperties, BaseOutStructure * pPipelineProperties,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT; Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE #ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
// wrapper function for command vkGetPipelinePropertiesEXT, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkGetPipelinePropertiesEXT.html // wrapper function for command vkGetPipelinePropertiesEXT, see https://registry.khronos.org/vulkan/specs/latest/man/html/vkGetPipelinePropertiesEXT.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkGetPipelinePropertiesEXT ), bool>::type = true> template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE, typename std::enable_if<IS_DISPATCHED( vkGetPipelinePropertiesEXT ), bool>::type = true>
VULKAN_HPP_NODISCARD typename ResultValueType<BaseOutStructure>::type VULKAN_HPP_NODISCARD typename ResultValueType<BaseOutStructure>::type
getPipelinePropertiesEXT( PipelineInfoEXT const & pipelineInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const; getPipelinePropertiesEXT( PipelineInfoKHR const & pipelineInfo, Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
#endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */ #endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
//=== VK_EXT_opacity_micromap === //=== VK_EXT_opacity_micromap ===
@@ -22153,6 +22640,28 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT; Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */ #endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
//=== VK_ARM_data_graph_instruction_set_tosa ===
// wrapper function for command vkGetPhysicalDeviceQueueFamilyDataGraphEngineOperationPropertiesARM, see
// https://registry.khronos.org/vulkan/specs/latest/man/html/vkGetPhysicalDeviceQueueFamilyDataGraphEngineOperationPropertiesARM.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
typename std::enable_if<IS_DISPATCHED( vkGetPhysicalDeviceQueueFamilyDataGraphEngineOperationPropertiesARM ), bool>::type = true>
VULKAN_HPP_NODISCARD Result
getQueueFamilyDataGraphEngineOperationPropertiesARM( uint32_t queueFamilyIndex,
QueueFamilyDataGraphPropertiesARM const * pQueueFamilyDataGraphProperties,
BaseOutStructure * pProperties,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
// wrapper function for command vkGetPhysicalDeviceQueueFamilyDataGraphEngineOperationPropertiesARM, see
// https://registry.khronos.org/vulkan/specs/latest/man/html/vkGetPhysicalDeviceQueueFamilyDataGraphEngineOperationPropertiesARM.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
typename std::enable_if<IS_DISPATCHED( vkGetPhysicalDeviceQueueFamilyDataGraphEngineOperationPropertiesARM ), bool>::type = true>
VULKAN_HPP_NODISCARD typename ResultValueType<BaseOutStructure>::type
getQueueFamilyDataGraphEngineOperationPropertiesARM( uint32_t queueFamilyIndex,
QueueFamilyDataGraphPropertiesARM const & queueFamilyDataGraphProperties,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
#endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
//=== VK_KHR_calibrated_timestamps === //=== VK_KHR_calibrated_timestamps ===
// wrapper function for command vkGetPhysicalDeviceCalibrateableTimeDomainsKHR, see // wrapper function for command vkGetPhysicalDeviceCalibrateableTimeDomainsKHR, see
@@ -22297,6 +22806,86 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const; Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
#endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */ #endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
//=== VK_ARM_data_graph_optical_flow ===
// wrapper function for command vkGetPhysicalDeviceQueueFamilyDataGraphOpticalFlowImageFormatsARM, see
// https://registry.khronos.org/vulkan/specs/latest/man/html/vkGetPhysicalDeviceQueueFamilyDataGraphOpticalFlowImageFormatsARM.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
typename std::enable_if<IS_DISPATCHED( vkGetPhysicalDeviceQueueFamilyDataGraphOpticalFlowImageFormatsARM ), bool>::type = true>
VULKAN_HPP_NODISCARD Result
getQueueFamilyDataGraphOpticalFlowImageFormatsARM( uint32_t queueFamilyIndex,
QueueFamilyDataGraphPropertiesARM const * pQueueFamilyDataGraphProperties,
DataGraphOpticalFlowImageFormatInfoARM const * pOpticalFlowImageFormatInfo,
uint32_t * pFormatCount,
DataGraphOpticalFlowImageFormatPropertiesARM * pImageFormatProperties,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
// wrapper function for command vkGetPhysicalDeviceQueueFamilyDataGraphOpticalFlowImageFormatsARM, see
// https://registry.khronos.org/vulkan/specs/latest/man/html/vkGetPhysicalDeviceQueueFamilyDataGraphOpticalFlowImageFormatsARM.html
template <typename DataGraphOpticalFlowImageFormatPropertiesARMAllocator = std::allocator<DataGraphOpticalFlowImageFormatPropertiesARM>,
typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
typename std::enable_if<
std::is_same<typename DataGraphOpticalFlowImageFormatPropertiesARMAllocator::value_type, DataGraphOpticalFlowImageFormatPropertiesARM>::value,
int>::type = 0,
typename std::enable_if<IS_DISPATCHED( vkGetPhysicalDeviceQueueFamilyDataGraphOpticalFlowImageFormatsARM ), bool>::type = true>
VULKAN_HPP_NODISCARD
typename ResultValueType<std::vector<DataGraphOpticalFlowImageFormatPropertiesARM, DataGraphOpticalFlowImageFormatPropertiesARMAllocator>>::type
getQueueFamilyDataGraphOpticalFlowImageFormatsARM( uint32_t queueFamilyIndex,
QueueFamilyDataGraphPropertiesARM const & queueFamilyDataGraphProperties,
DataGraphOpticalFlowImageFormatInfoARM const & opticalFlowImageFormatInfo,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
// wrapper function for command vkGetPhysicalDeviceQueueFamilyDataGraphOpticalFlowImageFormatsARM, see
// https://registry.khronos.org/vulkan/specs/latest/man/html/vkGetPhysicalDeviceQueueFamilyDataGraphOpticalFlowImageFormatsARM.html
template <typename DataGraphOpticalFlowImageFormatPropertiesARMAllocator = std::allocator<DataGraphOpticalFlowImageFormatPropertiesARM>,
typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
typename std::enable_if<
std::is_same<typename DataGraphOpticalFlowImageFormatPropertiesARMAllocator::value_type, DataGraphOpticalFlowImageFormatPropertiesARM>::value,
int>::type = 0,
typename std::enable_if<IS_DISPATCHED( vkGetPhysicalDeviceQueueFamilyDataGraphOpticalFlowImageFormatsARM ), bool>::type = true>
VULKAN_HPP_NODISCARD
typename ResultValueType<std::vector<DataGraphOpticalFlowImageFormatPropertiesARM, DataGraphOpticalFlowImageFormatPropertiesARMAllocator>>::type
getQueueFamilyDataGraphOpticalFlowImageFormatsARM(
uint32_t queueFamilyIndex,
QueueFamilyDataGraphPropertiesARM const & queueFamilyDataGraphProperties,
DataGraphOpticalFlowImageFormatInfoARM const & opticalFlowImageFormatInfo,
DataGraphOpticalFlowImageFormatPropertiesARMAllocator const & dataGraphOpticalFlowImageFormatPropertiesARMAllocator,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
#endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
//=== VK_EXT_cooperative_matrix_maintenance1 ===
// wrapper function for command vkGetPhysicalDeviceCooperativeMatrixProperties2EXT, see
// https://registry.khronos.org/vulkan/specs/latest/man/html/vkGetPhysicalDeviceCooperativeMatrixProperties2EXT.html
template <typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
typename std::enable_if<IS_DISPATCHED( vkGetPhysicalDeviceCooperativeMatrixProperties2EXT ), bool>::type = true>
VULKAN_HPP_NODISCARD Result getCooperativeMatrixProperties2EXT( PhysicalDeviceCooperativeMatrixInfo2EXT const * pCooperativeMatrixInfo,
uint32_t * pPropertyCount,
CooperativeMatrixProperties2EXT * pProperties,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const VULKAN_HPP_NOEXCEPT;
#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE
// wrapper function for command vkGetPhysicalDeviceCooperativeMatrixProperties2EXT, see
// https://registry.khronos.org/vulkan/specs/latest/man/html/vkGetPhysicalDeviceCooperativeMatrixProperties2EXT.html
template <typename CooperativeMatrixProperties2EXTAllocator = std::allocator<CooperativeMatrixProperties2EXT>,
typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
typename std::enable_if<std::is_same<typename CooperativeMatrixProperties2EXTAllocator::value_type, CooperativeMatrixProperties2EXT>::value,
int>::type = 0,
typename std::enable_if<IS_DISPATCHED( vkGetPhysicalDeviceCooperativeMatrixProperties2EXT ), bool>::type = true>
VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<CooperativeMatrixProperties2EXT, CooperativeMatrixProperties2EXTAllocator>>::type
getCooperativeMatrixProperties2EXT( PhysicalDeviceCooperativeMatrixInfo2EXT const & cooperativeMatrixInfo,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
// wrapper function for command vkGetPhysicalDeviceCooperativeMatrixProperties2EXT, see
// https://registry.khronos.org/vulkan/specs/latest/man/html/vkGetPhysicalDeviceCooperativeMatrixProperties2EXT.html
template <typename CooperativeMatrixProperties2EXTAllocator = std::allocator<CooperativeMatrixProperties2EXT>,
typename Dispatch = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE,
typename std::enable_if<std::is_same<typename CooperativeMatrixProperties2EXTAllocator::value_type, CooperativeMatrixProperties2EXT>::value,
int>::type = 0,
typename std::enable_if<IS_DISPATCHED( vkGetPhysicalDeviceCooperativeMatrixProperties2EXT ), bool>::type = true>
VULKAN_HPP_NODISCARD typename ResultValueType<std::vector<CooperativeMatrixProperties2EXT, CooperativeMatrixProperties2EXTAllocator>>::type
getCooperativeMatrixProperties2EXT( PhysicalDeviceCooperativeMatrixInfo2EXT const & cooperativeMatrixInfo,
CooperativeMatrixProperties2EXTAllocator const & cooperativeMatrixProperties2EXTAllocator,
Dispatch const & d VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) const;
#endif /* VULKAN_HPP_DISABLE_ENHANCED_MODE */
#if defined( VK_USE_PLATFORM_UBM_SEC ) #if defined( VK_USE_PLATFORM_UBM_SEC )
//=== VK_SEC_ubm_surface === //=== VK_SEC_ubm_surface ===
+1004 -6
View File
File diff suppressed because it is too large Load Diff
+1 -2
View File
@@ -1,5 +1,4 @@
// Copyright 2015-2026 The Khronos Group Inc. // Copyright 2015-2026 The Khronos Group Inc.
//
// SPDX-License-Identifier: Apache-2.0 OR MIT // SPDX-License-Identifier: Apache-2.0 OR MIT
// //
@@ -198,7 +197,7 @@ VULKAN_HPP_COMPILE_WARNING( "This is a non-conforming implementation of C++ name
# else # else
# define VULKAN_HPP_CONSTEXPR_17 # define VULKAN_HPP_CONSTEXPR_17
# endif # endif
# if ( 201907 <= __cpp_constexpr ) && ( !defined( __GNUC__ ) || ( 110400 < GCC_VERSION ) ) # if ( 201907 <= __cpp_constexpr ) && ( !defined( __GNUC__ ) || ( 120000 <= GCC_VERSION ) )
# define VULKAN_HPP_CONSTEXPR_20 constexpr # define VULKAN_HPP_CONSTEXPR_20 constexpr
# else # else
# define VULKAN_HPP_CONSTEXPR_20 # define VULKAN_HPP_CONSTEXPR_20
+1 -1
View File
@@ -4,7 +4,7 @@
/* /*
** Copyright 2015-2026 The Khronos Group Inc. ** Copyright 2015-2026 The Khronos Group Inc.
** **
** SPDX-License-Identifier: Apache-2.0 ** SPDX-License-Identifier: Apache-2.0 OR MIT
*/ */
/* /*
+1 -1
View File
@@ -4,7 +4,7 @@
/* /*
** Copyright 2015-2026 The Khronos Group Inc. ** Copyright 2015-2026 The Khronos Group Inc.
** **
** SPDX-License-Identifier: Apache-2.0 ** SPDX-License-Identifier: Apache-2.0 OR MIT
*/ */
/* /*
+1 -1
View File
@@ -4,7 +4,7 @@
/* /*
** Copyright 2015-2026 The Khronos Group Inc. ** Copyright 2015-2026 The Khronos Group Inc.
** **
** SPDX-License-Identifier: Apache-2.0 ** SPDX-License-Identifier: Apache-2.0 OR MIT
*/ */
/* /*
+1 -1
View File
@@ -4,7 +4,7 @@
/* /*
** Copyright 2015-2026 The Khronos Group Inc. ** Copyright 2015-2026 The Khronos Group Inc.
** **
** SPDX-License-Identifier: Apache-2.0 ** SPDX-License-Identifier: Apache-2.0 OR MIT
*/ */
/* /*
+726 -21
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -4,7 +4,7 @@
/* /*
** Copyright 2015-2026 The Khronos Group Inc. ** Copyright 2015-2026 The Khronos Group Inc.
** **
** SPDX-License-Identifier: Apache-2.0 ** SPDX-License-Identifier: Apache-2.0 OR MIT
*/ */
/* /*
+11 -1
View File
@@ -1,5 +1,4 @@
// Copyright 2015-2026 The Khronos Group Inc. // Copyright 2015-2026 The Khronos Group Inc.
//
// SPDX-License-Identifier: Apache-2.0 OR MIT // SPDX-License-Identifier: Apache-2.0 OR MIT
// //
@@ -824,6 +823,17 @@ VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
using SharedDebugUtilsMessengerEXT = SharedHandle<DebugUtilsMessengerEXT>; using SharedDebugUtilsMessengerEXT = SharedHandle<DebugUtilsMessengerEXT>;
//=== VK_AMD_gpa_interface ===
template <>
class SharedHandleTraits<GpaSessionAMD>
{
public:
using DestructorType = Device;
using deleter = detail::ObjectDestroyShared<GpaSessionAMD>;
};
using SharedGpaSessionAMD = SharedHandle<GpaSessionAMD>;
//=== VK_EXT_descriptor_heap === //=== VK_EXT_descriptor_heap ===
template <> template <>
class SharedHandleTraits<TensorARM> class SharedHandleTraits<TensorARM>
+513 -14
View File
@@ -1,5 +1,4 @@
// Copyright 2015-2026 The Khronos Group Inc. // Copyright 2015-2026 The Khronos Group Inc.
//
// SPDX-License-Identifier: Apache-2.0 OR MIT // SPDX-License-Identifier: Apache-2.0 OR MIT
// //
@@ -3546,6 +3545,65 @@ VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPAC
"AndroidHardwareBufferFormatProperties2ANDROID is not nothrow_move_constructible!" ); "AndroidHardwareBufferFormatProperties2ANDROID is not nothrow_move_constructible!" );
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/ #endif /*VK_USE_PLATFORM_ANDROID_KHR*/
//=== VK_AMD_gpa_interface ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::GpaSessionAMD ) == sizeof( VkGpaSessionAMD ), "handle and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_copy_constructible<VULKAN_HPP_NAMESPACE::GpaSessionAMD>::value, "GpaSessionAMD is not copy_constructible!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::GpaSessionAMD>::value, "GpaSessionAMD is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::GpaPerfBlockPropertiesAMD ) == sizeof( VkGpaPerfBlockPropertiesAMD ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::GpaPerfBlockPropertiesAMD>::value, "struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::GpaPerfBlockPropertiesAMD>::value,
"GpaPerfBlockPropertiesAMD is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceGpaFeaturesAMD ) == sizeof( VkPhysicalDeviceGpaFeaturesAMD ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceGpaFeaturesAMD>::value, "struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceGpaFeaturesAMD>::value,
"PhysicalDeviceGpaFeaturesAMD is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceGpaPropertiesAMD ) == sizeof( VkPhysicalDeviceGpaPropertiesAMD ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceGpaPropertiesAMD>::value, "struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceGpaPropertiesAMD>::value,
"PhysicalDeviceGpaPropertiesAMD is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceGpaProperties2AMD ) == sizeof( VkPhysicalDeviceGpaProperties2AMD ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceGpaProperties2AMD>::value, "struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceGpaProperties2AMD>::value,
"PhysicalDeviceGpaProperties2AMD is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::GpaPerfCounterAMD ) == sizeof( VkGpaPerfCounterAMD ), "struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::GpaPerfCounterAMD>::value, "struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::GpaPerfCounterAMD>::value,
"GpaPerfCounterAMD is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::GpaSampleBeginInfoAMD ) == sizeof( VkGpaSampleBeginInfoAMD ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::GpaSampleBeginInfoAMD>::value, "struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::GpaSampleBeginInfoAMD>::value,
"GpaSampleBeginInfoAMD is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::GpaDeviceClockModeInfoAMD ) == sizeof( VkGpaDeviceClockModeInfoAMD ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::GpaDeviceClockModeInfoAMD>::value, "struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::GpaDeviceClockModeInfoAMD>::value,
"GpaDeviceClockModeInfoAMD is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::GpaDeviceGetClockInfoAMD ) == sizeof( VkGpaDeviceGetClockInfoAMD ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::GpaDeviceGetClockInfoAMD>::value, "struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::GpaDeviceGetClockInfoAMD>::value,
"GpaDeviceGetClockInfoAMD is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::GpaSessionCreateInfoAMD ) == sizeof( VkGpaSessionCreateInfoAMD ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::GpaSessionCreateInfoAMD>::value, "struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::GpaSessionCreateInfoAMD>::value,
"GpaSessionCreateInfoAMD is not nothrow_move_constructible!" );
#if defined( VK_ENABLE_BETA_EXTENSIONS ) #if defined( VK_ENABLE_BETA_EXTENSIONS )
//=== VK_AMDX_shader_enqueue === //=== VK_AMDX_shader_enqueue ===
@@ -4406,6 +4464,16 @@ VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::Physical
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceCooperativeMatrixConversionFeaturesQCOM>::value, VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceCooperativeMatrixConversionFeaturesQCOM>::value,
"PhysicalDeviceCooperativeMatrixConversionFeaturesQCOM is not nothrow_move_constructible!" ); "PhysicalDeviceCooperativeMatrixConversionFeaturesQCOM is not nothrow_move_constructible!" );
//=== VK_QCOM_elapsed_timer_query ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceElapsedTimerQueryFeaturesQCOM ) ==
sizeof( VkPhysicalDeviceElapsedTimerQueryFeaturesQCOM ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceElapsedTimerQueryFeaturesQCOM>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceElapsedTimerQueryFeaturesQCOM>::value,
"PhysicalDeviceElapsedTimerQueryFeaturesQCOM is not nothrow_move_constructible!" );
//=== VK_EXT_external_memory_host === //=== VK_EXT_external_memory_host ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::ImportMemoryHostPointerInfoEXT ) == sizeof( VkImportMemoryHostPointerInfoEXT ), VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::ImportMemoryHostPointerInfoEXT ) == sizeof( VkImportMemoryHostPointerInfoEXT ),
@@ -5586,6 +5654,72 @@ VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::DeviceDi
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DeviceDiagnosticsConfigCreateInfoNV>::value, VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DeviceDiagnosticsConfigCreateInfoNV>::value,
"DeviceDiagnosticsConfigCreateInfoNV is not nothrow_move_constructible!" ); "DeviceDiagnosticsConfigCreateInfoNV is not nothrow_move_constructible!" );
//=== VK_QCOM_queue_perf_hint ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PerfHintInfoQCOM ) == sizeof( VkPerfHintInfoQCOM ), "struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PerfHintInfoQCOM>::value, "struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PerfHintInfoQCOM>::value,
"PerfHintInfoQCOM is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceQueuePerfHintFeaturesQCOM ) == sizeof( VkPhysicalDeviceQueuePerfHintFeaturesQCOM ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceQueuePerfHintFeaturesQCOM>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceQueuePerfHintFeaturesQCOM>::value,
"PhysicalDeviceQueuePerfHintFeaturesQCOM is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceQueuePerfHintPropertiesQCOM ) == sizeof( VkPhysicalDeviceQueuePerfHintPropertiesQCOM ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceQueuePerfHintPropertiesQCOM>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceQueuePerfHintPropertiesQCOM>::value,
"PhysicalDeviceQueuePerfHintPropertiesQCOM is not nothrow_move_constructible!" );
//=== VK_QCOM_image_processing3 ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceImageProcessing3FeaturesQCOM ) == sizeof( VkPhysicalDeviceImageProcessing3FeaturesQCOM ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceImageProcessing3FeaturesQCOM>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceImageProcessing3FeaturesQCOM>::value,
"PhysicalDeviceImageProcessing3FeaturesQCOM is not nothrow_move_constructible!" );
//=== VK_QCOM_shader_multiple_wait_queues ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderMultipleWaitQueuesFeaturesQCOM ) ==
sizeof( VkPhysicalDeviceShaderMultipleWaitQueuesFeaturesQCOM ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderMultipleWaitQueuesFeaturesQCOM>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderMultipleWaitQueuesFeaturesQCOM>::value,
"PhysicalDeviceShaderMultipleWaitQueuesFeaturesQCOM is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderMultipleWaitQueuesPropertiesQCOM ) ==
sizeof( VkPhysicalDeviceShaderMultipleWaitQueuesPropertiesQCOM ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderMultipleWaitQueuesPropertiesQCOM>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderMultipleWaitQueuesPropertiesQCOM>::value,
"PhysicalDeviceShaderMultipleWaitQueuesPropertiesQCOM is not nothrow_move_constructible!" );
//=== VK_EXT_shader_split_barrier ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSplitBarrierFeaturesEXT ) ==
sizeof( VkPhysicalDeviceShaderSplitBarrierFeaturesEXT ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSplitBarrierFeaturesEXT>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSplitBarrierFeaturesEXT>::value,
"PhysicalDeviceShaderSplitBarrierFeaturesEXT is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSplitBarrierPropertiesEXT ) ==
sizeof( VkPhysicalDeviceShaderSplitBarrierPropertiesEXT ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSplitBarrierPropertiesEXT>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSplitBarrierPropertiesEXT>::value,
"PhysicalDeviceShaderSplitBarrierPropertiesEXT is not nothrow_move_constructible!" );
#if defined( VK_ENABLE_BETA_EXTENSIONS ) #if defined( VK_ENABLE_BETA_EXTENSIONS )
//=== VK_NV_cuda_kernel_launch === //=== VK_NV_cuda_kernel_launch ===
@@ -5762,14 +5896,6 @@ VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::Physical
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceDescriptorBufferPropertiesEXT>::value, VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceDescriptorBufferPropertiesEXT>::value,
"PhysicalDeviceDescriptorBufferPropertiesEXT is not nothrow_move_constructible!" ); "PhysicalDeviceDescriptorBufferPropertiesEXT is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceDescriptorBufferDensityMapPropertiesEXT ) ==
sizeof( VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceDescriptorBufferDensityMapPropertiesEXT>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceDescriptorBufferDensityMapPropertiesEXT>::value,
"PhysicalDeviceDescriptorBufferDensityMapPropertiesEXT is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceDescriptorBufferFeaturesEXT ) == sizeof( VkPhysicalDeviceDescriptorBufferFeaturesEXT ), VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceDescriptorBufferFeaturesEXT ) == sizeof( VkPhysicalDeviceDescriptorBufferFeaturesEXT ),
"struct and wrapper have different size!" ); "struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceDescriptorBufferFeaturesEXT>::value, VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceDescriptorBufferFeaturesEXT>::value,
@@ -5849,6 +5975,14 @@ VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::Accelera
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AccelerationStructureCaptureDescriptorDataInfoEXT>::value, VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AccelerationStructureCaptureDescriptorDataInfoEXT>::value,
"AccelerationStructureCaptureDescriptorDataInfoEXT is not nothrow_move_constructible!" ); "AccelerationStructureCaptureDescriptorDataInfoEXT is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceDescriptorBufferDensityMapPropertiesEXT ) ==
sizeof( VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceDescriptorBufferDensityMapPropertiesEXT>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceDescriptorBufferDensityMapPropertiesEXT>::value,
"PhysicalDeviceDescriptorBufferDensityMapPropertiesEXT is not nothrow_move_constructible!" );
//=== VK_KHR_device_address_commands === //=== VK_KHR_device_address_commands ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::DeviceAddressRangeKHR ) == sizeof( VkDeviceAddressRangeKHR ), VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::DeviceAddressRangeKHR ) == sizeof( VkDeviceAddressRangeKHR ),
@@ -6788,11 +6922,6 @@ VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::Accelera
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AccelerationStructureTrianglesOpacityMicromapEXT>::value, VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AccelerationStructureTrianglesOpacityMicromapEXT>::value,
"AccelerationStructureTrianglesOpacityMicromapEXT is not nothrow_move_constructible!" ); "AccelerationStructureTrianglesOpacityMicromapEXT is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::MicromapTriangleEXT ) == sizeof( VkMicromapTriangleEXT ), "struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::MicromapTriangleEXT>::value, "struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MicromapTriangleEXT>::value,
"MicromapTriangleEXT is not nothrow_move_constructible!" );
#if defined( VK_ENABLE_BETA_EXTENSIONS ) #if defined( VK_ENABLE_BETA_EXTENSIONS )
//=== VK_NV_displacement_micromap === //=== VK_NV_displacement_micromap ===
@@ -6909,6 +7038,20 @@ VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::Physical
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceSchedulingControlsPropertiesARM>::value, VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceSchedulingControlsPropertiesARM>::value,
"PhysicalDeviceSchedulingControlsPropertiesARM is not nothrow_move_constructible!" ); "PhysicalDeviceSchedulingControlsPropertiesARM is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::DispatchParametersARM ) == sizeof( VkDispatchParametersARM ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::DispatchParametersARM>::value, "struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DispatchParametersARM>::value,
"DispatchParametersARM is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceSchedulingControlsDispatchParametersPropertiesARM ) ==
sizeof( VkPhysicalDeviceSchedulingControlsDispatchParametersPropertiesARM ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceSchedulingControlsDispatchParametersPropertiesARM>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceSchedulingControlsDispatchParametersPropertiesARM>::value,
"PhysicalDeviceSchedulingControlsDispatchParametersPropertiesARM is not nothrow_move_constructible!" );
//=== VK_EXT_image_sliced_view_of_3d === //=== VK_EXT_image_sliced_view_of_3d ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceImageSlicedViewOf3DFeaturesEXT ) == VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceImageSlicedViewOf3DFeaturesEXT ) ==
@@ -8265,6 +8408,21 @@ VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::DataGrap
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM>::value, VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM>::value,
"DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM is not nothrow_move_constructible!" ); "DataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM is not nothrow_move_constructible!" );
//=== VK_ARM_data_graph_instruction_set_tosa ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::DataGraphTOSANameQualityARM ) == sizeof( VkDataGraphTOSANameQualityARM ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::DataGraphTOSANameQualityARM>::value, "struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DataGraphTOSANameQualityARM>::value,
"DataGraphTOSANameQualityARM is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::QueueFamilyDataGraphTOSAPropertiesARM ) == sizeof( VkQueueFamilyDataGraphTOSAPropertiesARM ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::QueueFamilyDataGraphTOSAPropertiesARM>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::QueueFamilyDataGraphTOSAPropertiesARM>::value,
"QueueFamilyDataGraphTOSAPropertiesARM is not nothrow_move_constructible!" );
//=== VK_QCOM_multiview_per_view_render_areas === //=== VK_QCOM_multiview_per_view_render_areas ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM ) == VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM ) ==
@@ -9007,6 +9165,21 @@ VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::Physical
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderReplicatedCompositesFeaturesEXT>::value, VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderReplicatedCompositesFeaturesEXT>::value,
"PhysicalDeviceShaderReplicatedCompositesFeaturesEXT is not nothrow_move_constructible!" ); "PhysicalDeviceShaderReplicatedCompositesFeaturesEXT is not nothrow_move_constructible!" );
//=== VK_ARM_tensor_controls ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::TensorRollingBackingCreateInfoARM ) == sizeof( VkTensorRollingBackingCreateInfoARM ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::TensorRollingBackingCreateInfoARM>::value, "struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::TensorRollingBackingCreateInfoARM>::value,
"TensorRollingBackingCreateInfoARM is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::TensorExplicitTilingFormatPropertiesARM ) == sizeof( VkTensorExplicitTilingFormatPropertiesARM ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::TensorExplicitTilingFormatPropertiesARM>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::TensorExplicitTilingFormatPropertiesARM>::value,
"TensorExplicitTilingFormatPropertiesARM is not nothrow_move_constructible!" );
//=== VK_EXT_shader_float8 === //=== VK_EXT_shader_float8 ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderFloat8FeaturesEXT ) == sizeof( VkPhysicalDeviceShaderFloat8FeaturesEXT ), VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderFloat8FeaturesEXT ) == sizeof( VkPhysicalDeviceShaderFloat8FeaturesEXT ),
@@ -9681,6 +9854,31 @@ VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::Physical
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDevicePipelineOpacityMicromapFeaturesARM>::value, VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDevicePipelineOpacityMicromapFeaturesARM>::value,
"PhysicalDevicePipelineOpacityMicromapFeaturesARM is not nothrow_move_constructible!" ); "PhysicalDevicePipelineOpacityMicromapFeaturesARM is not nothrow_move_constructible!" );
//=== VK_KHR_video_encode_feedback2 ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceVideoEncodeFeedback2FeaturesKHR ) ==
sizeof( VkPhysicalDeviceVideoEncodeFeedback2FeaturesKHR ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceVideoEncodeFeedback2FeaturesKHR>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceVideoEncodeFeedback2FeaturesKHR>::value,
"PhysicalDeviceVideoEncodeFeedback2FeaturesKHR is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::VideoEncodeFeedback2CapabilitiesKHR ) == sizeof( VkVideoEncodeFeedback2CapabilitiesKHR ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::VideoEncodeFeedback2CapabilitiesKHR>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::VideoEncodeFeedback2CapabilitiesKHR>::value,
"VideoEncodeFeedback2CapabilitiesKHR is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::QueryPoolVideoEncodePerPartitionFeedbackCreateInfoKHR ) ==
sizeof( VkQueryPoolVideoEncodePerPartitionFeedbackCreateInfoKHR ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::QueryPoolVideoEncodePerPartitionFeedbackCreateInfoKHR>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::QueryPoolVideoEncodePerPartitionFeedbackCreateInfoKHR>::value,
"QueryPoolVideoEncodePerPartitionFeedbackCreateInfoKHR is not nothrow_move_constructible!" );
#if defined( VK_USE_PLATFORM_METAL_EXT ) #if defined( VK_USE_PLATFORM_METAL_EXT )
//=== VK_EXT_external_memory_metal === //=== VK_EXT_external_memory_metal ===
@@ -9871,6 +10069,23 @@ VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::Physical
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDevicePresentMeteringFeaturesNV>::value, VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDevicePresentMeteringFeaturesNV>::value,
"PhysicalDevicePresentMeteringFeaturesNV is not nothrow_move_constructible!" ); "PhysicalDevicePresentMeteringFeaturesNV is not nothrow_move_constructible!" );
//=== VK_EXT_multisampled_render_to_swapchain ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceMultisampledRenderToSwapchainFeaturesEXT ) ==
sizeof( VkPhysicalDeviceMultisampledRenderToSwapchainFeaturesEXT ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceMultisampledRenderToSwapchainFeaturesEXT>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceMultisampledRenderToSwapchainFeaturesEXT>::value,
"PhysicalDeviceMultisampledRenderToSwapchainFeaturesEXT is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::SwapchainFlagsSurfaceCapabilitiesEXT ) == sizeof( VkSwapchainFlagsSurfaceCapabilitiesEXT ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::SwapchainFlagsSurfaceCapabilitiesEXT>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SwapchainFlagsSurfaceCapabilitiesEXT>::value,
"SwapchainFlagsSurfaceCapabilitiesEXT is not nothrow_move_constructible!" );
//=== VK_EXT_fragment_density_map_offset === //=== VK_EXT_fragment_density_map_offset ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMapOffsetFeaturesEXT ) == VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceFragmentDensityMapOffsetFeaturesEXT ) ==
@@ -9917,6 +10132,48 @@ VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::Physical
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDevicePresentModeFifoLatestReadyFeaturesKHR>::value, VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDevicePresentModeFifoLatestReadyFeaturesKHR>::value,
"PhysicalDevicePresentModeFifoLatestReadyFeaturesKHR is not nothrow_move_constructible!" ); "PhysicalDevicePresentModeFifoLatestReadyFeaturesKHR is not nothrow_move_constructible!" );
//=== VK_KHR_opacity_micromap ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryMicromapDataKHR ) ==
sizeof( VkAccelerationStructureGeometryMicromapDataKHR ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryMicromapDataKHR>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AccelerationStructureGeometryMicromapDataKHR>::value,
"AccelerationStructureGeometryMicromapDataKHR is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::MicromapUsageKHR ) == sizeof( VkMicromapUsageKHR ), "struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::MicromapUsageKHR>::value, "struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MicromapUsageKHR>::value,
"MicromapUsageKHR is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceOpacityMicromapFeaturesKHR ) == sizeof( VkPhysicalDeviceOpacityMicromapFeaturesKHR ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceOpacityMicromapFeaturesKHR>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceOpacityMicromapFeaturesKHR>::value,
"PhysicalDeviceOpacityMicromapFeaturesKHR is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceOpacityMicromapPropertiesKHR ) == sizeof( VkPhysicalDeviceOpacityMicromapPropertiesKHR ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceOpacityMicromapPropertiesKHR>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceOpacityMicromapPropertiesKHR>::value,
"PhysicalDeviceOpacityMicromapPropertiesKHR is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::MicromapTriangleKHR ) == sizeof( VkMicromapTriangleKHR ), "struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::MicromapTriangleKHR>::value, "struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::MicromapTriangleKHR>::value,
"MicromapTriangleKHR is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::AccelerationStructureTrianglesOpacityMicromapKHR ) ==
sizeof( VkAccelerationStructureTrianglesOpacityMicromapKHR ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::AccelerationStructureTrianglesOpacityMicromapKHR>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::AccelerationStructureTrianglesOpacityMicromapKHR>::value,
"AccelerationStructureTrianglesOpacityMicromapKHR is not nothrow_move_constructible!" );
//=== VK_EXT_shader_64bit_indexing === //=== VK_EXT_shader_64bit_indexing ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceShader64BitIndexingFeaturesEXT ) == VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceShader64BitIndexingFeaturesEXT ) ==
@@ -10005,6 +10262,76 @@ VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::ResolveI
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ResolveImageModeInfoKHR>::value, VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ResolveImageModeInfoKHR>::value,
"ResolveImageModeInfoKHR is not nothrow_move_constructible!" ); "ResolveImageModeInfoKHR is not nothrow_move_constructible!" );
//=== VK_ARM_data_graph_optical_flow ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceDataGraphOpticalFlowFeaturesARM ) ==
sizeof( VkPhysicalDeviceDataGraphOpticalFlowFeaturesARM ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceDataGraphOpticalFlowFeaturesARM>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceDataGraphOpticalFlowFeaturesARM>::value,
"PhysicalDeviceDataGraphOpticalFlowFeaturesARM is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::QueueFamilyDataGraphOpticalFlowPropertiesARM ) ==
sizeof( VkQueueFamilyDataGraphOpticalFlowPropertiesARM ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::QueueFamilyDataGraphOpticalFlowPropertiesARM>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::QueueFamilyDataGraphOpticalFlowPropertiesARM>::value,
"QueueFamilyDataGraphOpticalFlowPropertiesARM is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::DataGraphPipelineOpticalFlowCreateInfoARM ) == sizeof( VkDataGraphPipelineOpticalFlowCreateInfoARM ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::DataGraphPipelineOpticalFlowCreateInfoARM>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DataGraphPipelineOpticalFlowCreateInfoARM>::value,
"DataGraphPipelineOpticalFlowCreateInfoARM is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::DataGraphOpticalFlowImageFormatPropertiesARM ) ==
sizeof( VkDataGraphOpticalFlowImageFormatPropertiesARM ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::DataGraphOpticalFlowImageFormatPropertiesARM>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DataGraphOpticalFlowImageFormatPropertiesARM>::value,
"DataGraphOpticalFlowImageFormatPropertiesARM is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::DataGraphOpticalFlowImageFormatInfoARM ) == sizeof( VkDataGraphOpticalFlowImageFormatInfoARM ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::DataGraphOpticalFlowImageFormatInfoARM>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DataGraphOpticalFlowImageFormatInfoARM>::value,
"DataGraphOpticalFlowImageFormatInfoARM is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::DataGraphPipelineOpticalFlowDispatchInfoARM ) ==
sizeof( VkDataGraphPipelineOpticalFlowDispatchInfoARM ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::DataGraphPipelineOpticalFlowDispatchInfoARM>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DataGraphPipelineOpticalFlowDispatchInfoARM>::value,
"DataGraphPipelineOpticalFlowDispatchInfoARM is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::DataGraphPipelineResourceInfoImageLayoutARM ) ==
sizeof( VkDataGraphPipelineResourceInfoImageLayoutARM ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::DataGraphPipelineResourceInfoImageLayoutARM>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DataGraphPipelineResourceInfoImageLayoutARM>::value,
"DataGraphPipelineResourceInfoImageLayoutARM is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::DataGraphPipelineSingleNodeCreateInfoARM ) == sizeof( VkDataGraphPipelineSingleNodeCreateInfoARM ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::DataGraphPipelineSingleNodeCreateInfoARM>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DataGraphPipelineSingleNodeCreateInfoARM>::value,
"DataGraphPipelineSingleNodeCreateInfoARM is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::DataGraphPipelineSingleNodeConnectionARM ) == sizeof( VkDataGraphPipelineSingleNodeConnectionARM ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::DataGraphPipelineSingleNodeConnectionARM>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DataGraphPipelineSingleNodeConnectionARM>::value,
"DataGraphPipelineSingleNodeConnectionARM is not nothrow_move_constructible!" );
//=== VK_EXT_shader_long_vector === //=== VK_EXT_shader_long_vector ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderLongVectorFeaturesEXT ) == sizeof( VkPhysicalDeviceShaderLongVectorFeaturesEXT ), VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderLongVectorFeaturesEXT ) == sizeof( VkPhysicalDeviceShaderLongVectorFeaturesEXT ),
@@ -10059,6 +10386,46 @@ VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::Physical
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceComputeOccupancyPriorityFeaturesNV>::value, VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceComputeOccupancyPriorityFeaturesNV>::value,
"PhysicalDeviceComputeOccupancyPriorityFeaturesNV is not nothrow_move_constructible!" ); "PhysicalDeviceComputeOccupancyPriorityFeaturesNV is not nothrow_move_constructible!" );
//=== VK_KHR_maintenance11 ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceMaintenance11FeaturesKHR ) == sizeof( VkPhysicalDeviceMaintenance11FeaturesKHR ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceMaintenance11FeaturesKHR>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceMaintenance11FeaturesKHR>::value,
"PhysicalDeviceMaintenance11FeaturesKHR is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::QueueFamilyOptimalImageTransferGranularityPropertiesKHR ) ==
sizeof( VkQueueFamilyOptimalImageTransferGranularityPropertiesKHR ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::QueueFamilyOptimalImageTransferGranularityPropertiesKHR>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::QueueFamilyOptimalImageTransferGranularityPropertiesKHR>::value,
"QueueFamilyOptimalImageTransferGranularityPropertiesKHR is not nothrow_move_constructible!" );
//=== VK_EXT_cooperative_matrix_maintenance1 ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::CooperativeMatrixProperties2EXT ) == sizeof( VkCooperativeMatrixProperties2EXT ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::CooperativeMatrixProperties2EXT>::value, "struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::CooperativeMatrixProperties2EXT>::value,
"CooperativeMatrixProperties2EXT is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceCooperativeMatrixInfo2EXT ) == sizeof( VkPhysicalDeviceCooperativeMatrixInfo2EXT ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceCooperativeMatrixInfo2EXT>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceCooperativeMatrixInfo2EXT>::value,
"PhysicalDeviceCooperativeMatrixInfo2EXT is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceCooperativeMatrixMaintenance1FeaturesEXT ) ==
sizeof( VkPhysicalDeviceCooperativeMatrixMaintenance1FeaturesEXT ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceCooperativeMatrixMaintenance1FeaturesEXT>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceCooperativeMatrixMaintenance1FeaturesEXT>::value,
"PhysicalDeviceCooperativeMatrixMaintenance1FeaturesEXT is not nothrow_move_constructible!" );
//=== VK_EXT_shader_subgroup_partitioned === //=== VK_EXT_shader_subgroup_partitioned ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSubgroupPartitionedFeaturesEXT ) == VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderSubgroupPartitionedFeaturesEXT ) ==
@@ -10079,6 +10446,61 @@ VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPAC
"UbmSurfaceCreateInfoSEC is not nothrow_move_constructible!" ); "UbmSurfaceCreateInfoSEC is not nothrow_move_constructible!" );
#endif /*VK_USE_PLATFORM_UBM_SEC*/ #endif /*VK_USE_PLATFORM_UBM_SEC*/
//=== VK_KHR_extended_flags ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::FormatProperties4KHR ) == sizeof( VkFormatProperties4KHR ), "struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::FormatProperties4KHR>::value, "struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::FormatProperties4KHR>::value,
"FormatProperties4KHR is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::ImageUsageFlags2CreateInfoKHR ) == sizeof( VkImageUsageFlags2CreateInfoKHR ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageUsageFlags2CreateInfoKHR>::value, "struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageUsageFlags2CreateInfoKHR>::value,
"ImageUsageFlags2CreateInfoKHR is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::ImageCreateFlags2CreateInfoKHR ) == sizeof( VkImageCreateFlags2CreateInfoKHR ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageCreateFlags2CreateInfoKHR>::value, "struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageCreateFlags2CreateInfoKHR>::value,
"ImageCreateFlags2CreateInfoKHR is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::ImageViewUsage2CreateInfoKHR ) == sizeof( VkImageViewUsage2CreateInfoKHR ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageViewUsage2CreateInfoKHR>::value, "struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageViewUsage2CreateInfoKHR>::value,
"ImageViewUsage2CreateInfoKHR is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceExtendedFlagsFeaturesKHR ) == sizeof( VkPhysicalDeviceExtendedFlagsFeaturesKHR ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceExtendedFlagsFeaturesKHR>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceExtendedFlagsFeaturesKHR>::value,
"PhysicalDeviceExtendedFlagsFeaturesKHR is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::ImageStencilUsage2CreateInfoKHR ) == sizeof( VkImageStencilUsage2CreateInfoKHR ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageStencilUsage2CreateInfoKHR>::value, "struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageStencilUsage2CreateInfoKHR>::value,
"ImageStencilUsage2CreateInfoKHR is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::SharedPresentSurfaceCapabilities2KHR ) == sizeof( VkSharedPresentSurfaceCapabilities2KHR ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::SharedPresentSurfaceCapabilities2KHR>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::SharedPresentSurfaceCapabilities2KHR>::value,
"SharedPresentSurfaceCapabilities2KHR is not nothrow_move_constructible!" );
//=== VK_EXT_shader_ocp_microscaling_types ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderOCPMicroscalingTypesFeaturesEXT ) ==
sizeof( VkPhysicalDeviceShaderOCPMicroscalingTypesFeaturesEXT ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderOCPMicroscalingTypesFeaturesEXT>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderOCPMicroscalingTypesFeaturesEXT>::value,
"PhysicalDeviceShaderOCPMicroscalingTypesFeaturesEXT is not nothrow_move_constructible!" );
//=== VK_VALVE_shader_mixed_float_dot_product === //=== VK_VALVE_shader_mixed_float_dot_product ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderMixedFloatDotProductFeaturesVALVE ) == VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderMixedFloatDotProductFeaturesVALVE ) ==
@@ -10089,4 +10511,81 @@ VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::Physical
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderMixedFloatDotProductFeaturesVALVE>::value, VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderMixedFloatDotProductFeaturesVALVE>::value,
"PhysicalDeviceShaderMixedFloatDotProductFeaturesVALVE is not nothrow_move_constructible!" ); "PhysicalDeviceShaderMixedFloatDotProductFeaturesVALVE is not nothrow_move_constructible!" );
//=== VK_SEC_throttle_hint ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::ThrottleHintSubmitInfoSEC ) == sizeof( VkThrottleHintSubmitInfoSEC ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::ThrottleHintSubmitInfoSEC>::value, "struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ThrottleHintSubmitInfoSEC>::value,
"ThrottleHintSubmitInfoSEC is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceThrottleHintFeaturesSEC ) == sizeof( VkPhysicalDeviceThrottleHintFeaturesSEC ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceThrottleHintFeaturesSEC>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceThrottleHintFeaturesSEC>::value,
"PhysicalDeviceThrottleHintFeaturesSEC is not nothrow_move_constructible!" );
//=== VK_ARM_data_graph_neural_accelerator_statistics ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceDataGraphNeuralAcceleratorStatisticsFeaturesARM ) ==
sizeof( VkPhysicalDeviceDataGraphNeuralAcceleratorStatisticsFeaturesARM ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceDataGraphNeuralAcceleratorStatisticsFeaturesARM>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceDataGraphNeuralAcceleratorStatisticsFeaturesARM>::value,
"PhysicalDeviceDataGraphNeuralAcceleratorStatisticsFeaturesARM is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::DataGraphPipelineNeuralStatisticsCreateInfoARM ) ==
sizeof( VkDataGraphPipelineNeuralStatisticsCreateInfoARM ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::DataGraphPipelineNeuralStatisticsCreateInfoARM>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DataGraphPipelineNeuralStatisticsCreateInfoARM>::value,
"DataGraphPipelineNeuralStatisticsCreateInfoARM is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::DataGraphPipelineSessionNeuralStatisticsCreateInfoARM ) ==
sizeof( VkDataGraphPipelineSessionNeuralStatisticsCreateInfoARM ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::DataGraphPipelineSessionNeuralStatisticsCreateInfoARM>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::DataGraphPipelineSessionNeuralStatisticsCreateInfoARM>::value,
"DataGraphPipelineSessionNeuralStatisticsCreateInfoARM is not nothrow_move_constructible!" );
//=== VK_EXT_primitive_restart_index ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDevicePrimitiveRestartIndexFeaturesEXT ) ==
sizeof( VkPhysicalDevicePrimitiveRestartIndexFeaturesEXT ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDevicePrimitiveRestartIndexFeaturesEXT>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDevicePrimitiveRestartIndexFeaturesEXT>::value,
"PhysicalDevicePrimitiveRestartIndexFeaturesEXT is not nothrow_move_constructible!" );
//=== VK_EXT_image_tiling_control ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceImageTilingControlFeaturesEXT ) ==
sizeof( VkPhysicalDeviceImageTilingControlFeaturesEXT ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceImageTilingControlFeaturesEXT>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceImageTilingControlFeaturesEXT>::value,
"PhysicalDeviceImageTilingControlFeaturesEXT is not nothrow_move_constructible!" );
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::ImageTilingControlCreateInfoEXT ) == sizeof( VkImageTilingControlCreateInfoEXT ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::ImageTilingControlCreateInfoEXT>::value, "struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::ImageTilingControlCreateInfoEXT>::value,
"ImageTilingControlCreateInfoEXT is not nothrow_move_constructible!" );
//=== VK_NV_cooperative_matrix_decode_vector ===
VULKAN_HPP_STATIC_ASSERT( sizeof( VULKAN_HPP_NAMESPACE::PhysicalDeviceCooperativeMatrixDecodeVectorFeaturesNV ) ==
sizeof( VkPhysicalDeviceCooperativeMatrixDecodeVectorFeaturesNV ),
"struct and wrapper have different size!" );
VULKAN_HPP_STATIC_ASSERT( std::is_standard_layout<VULKAN_HPP_NAMESPACE::PhysicalDeviceCooperativeMatrixDecodeVectorFeaturesNV>::value,
"struct wrapper is not a standard layout!" );
VULKAN_HPP_STATIC_ASSERT( std::is_nothrow_move_constructible<VULKAN_HPP_NAMESPACE::PhysicalDeviceCooperativeMatrixDecodeVectorFeaturesNV>::value,
"PhysicalDeviceCooperativeMatrixDecodeVectorFeaturesNV is not nothrow_move_constructible!" );
#endif #endif
+9070 -70
View File
File diff suppressed because it is too large Load Diff
+984 -161
View File
File diff suppressed because it is too large Load Diff
+59
View File
@@ -0,0 +1,59 @@
#ifndef VULKAN_UBM_H_
#define VULKAN_UBM_H_ 1
/*
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0 OR MIT
*/
/*
** This header is generated from the Khronos Vulkan XML API Registry.
**
*/
#ifdef __cplusplus
extern "C" {
#endif
// VK_SEC_ubm_surface is a preprocessor guard. Do not pass it to API calls.
#define VK_SEC_ubm_surface 1
#define VK_SEC_UBM_SURFACE_SPEC_VERSION 1
#define VK_SEC_UBM_SURFACE_EXTENSION_NAME "VK_SEC_ubm_surface"
typedef VkFlags VkUbmSurfaceCreateFlagsSEC;
typedef struct VkUbmSurfaceCreateInfoSEC {
VkStructureType sType;
const void* pNext;
VkUbmSurfaceCreateFlagsSEC flags;
struct ubm_device* device;
struct ubm_surface* surface;
} VkUbmSurfaceCreateInfoSEC;
typedef VkResult (VKAPI_PTR *PFN_vkCreateUbmSurfaceSEC)(VkInstance instance, const VkUbmSurfaceCreateInfoSEC* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
typedef VkBool32 (VKAPI_PTR *PFN_vkGetPhysicalDeviceUbmPresentationSupportSEC)(VkPhysicalDevice physicalDevice, uint32_t queueFamilyIndex, struct ubm_device* device);
#ifndef VK_NO_PROTOTYPES
#ifndef VK_ONLY_EXPORTED_PROTOTYPES
VKAPI_ATTR VkResult VKAPI_CALL vkCreateUbmSurfaceSEC(
VkInstance instance,
const VkUbmSurfaceCreateInfoSEC* pCreateInfo,
const VkAllocationCallbacks* pAllocator,
VkSurfaceKHR* pSurface);
#endif
#ifndef VK_ONLY_EXPORTED_PROTOTYPES
VKAPI_ATTR VkBool32 VKAPI_CALL vkGetPhysicalDeviceUbmPresentationSupportSEC(
VkPhysicalDevice physicalDevice,
uint32_t queueFamilyIndex,
struct ubm_device* device);
#endif
#endif
#ifdef __cplusplus
}
#endif
#endif
+1 -1
View File
@@ -4,7 +4,7 @@
/* /*
** Copyright 2015-2026 The Khronos Group Inc. ** Copyright 2015-2026 The Khronos Group Inc.
** **
** SPDX-License-Identifier: Apache-2.0 ** SPDX-License-Identifier: Apache-2.0 OR MIT
*/ */
/* /*
+7 -7
View File
@@ -53,20 +53,20 @@ export module vulkan_video;
import vulkan; import vulkan;
#if defined( _MSC_VER ) #if defined( __clang__ )
# pragma warning( push )
# pragma warning( disable : 5244 )
#elif defined( __clang__ )
# pragma clang diagnostic push # pragma clang diagnostic push
# pragma clang diagnostic ignored "-Winclude-angled-in-module-purview" # pragma clang diagnostic ignored "-Winclude-angled-in-module-purview"
#elif defined( _MSC_VER )
# pragma warning( push )
# pragma warning( disable : 5244 )
#elif defined( __GNUC__ ) #elif defined( __GNUC__ )
#endif #endif
#include <vulkan/vulkan_video.hpp> #include <vulkan/vulkan_video.hpp>
#if defined( _MSC_VER ) #if defined( __clang__ )
# pragma warning( pop )
#elif defined( __clang__ )
# pragma clang diagnostic pop # pragma clang diagnostic pop
#elif defined( _MSC_VER )
# pragma warning( pop )
#elif defined( __GNUC__ ) #elif defined( __GNUC__ )
#endif #endif
+512 -928
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -4,7 +4,7 @@
/* /*
** Copyright 2015-2026 The Khronos Group Inc. ** Copyright 2015-2026 The Khronos Group Inc.
** **
** SPDX-License-Identifier: Apache-2.0 ** SPDX-License-Identifier: Apache-2.0 OR MIT
*/ */
/* /*
+1 -1
View File
@@ -4,7 +4,7 @@
/* /*
** Copyright 2015-2026 The Khronos Group Inc. ** Copyright 2015-2026 The Khronos Group Inc.
** **
** SPDX-License-Identifier: Apache-2.0 ** SPDX-License-Identifier: Apache-2.0 OR MIT
*/ */
/* /*
+1 -1
View File
@@ -4,7 +4,7 @@
/* /*
** Copyright 2015-2026 The Khronos Group Inc. ** Copyright 2015-2026 The Khronos Group Inc.
** **
** SPDX-License-Identifier: Apache-2.0 ** SPDX-License-Identifier: Apache-2.0 OR MIT
*/ */
/* /*
+1 -1
View File
@@ -4,7 +4,7 @@
/* /*
** Copyright 2015-2026 The Khronos Group Inc. ** Copyright 2015-2026 The Khronos Group Inc.
** **
** SPDX-License-Identifier: Apache-2.0 ** SPDX-License-Identifier: Apache-2.0 OR MIT
*/ */
/* /*
+1 -1
View File
@@ -4,7 +4,7 @@
/* /*
** Copyright 2015-2026 The Khronos Group Inc. ** Copyright 2015-2026 The Khronos Group Inc.
** **
** SPDX-License-Identifier: Apache-2.0 ** SPDX-License-Identifier: Apache-2.0 OR MIT
*/ */
/* /*