commit | 410f2d0f31c100c0ae956246bdbac6c75f24478b | [log] [tgz] |
---|---|---|
author | Austin Eng <enga@chromium.org> | Tue Apr 23 01:12:38 2024 +0000 |
committer | Dawn LUCI CQ <dawn-scoped@luci-project-accounts.iam.gserviceaccount.com> | Tue Apr 23 01:12:38 2024 +0000 |
tree | b46055ddf4c83e0df4350d482f1798e023343f91 | |
parent | 6391acef4b6007a827546c5f226a384af4d008cb [diff] |
Add dawn/wire/client/webgpu{_cpp}.h client/webgpu.h includes webgpu/webgpu.h, but also declares wgpuDawnWireClient-prefixed methods. client/webgpu_cpp.h is a duplicate copy of the webgpu_cpp.h header except it includes client/webgpu.h, has different include guards, and uses wgpuDawnWireClient-prefixed methods. Objects and structs are defined in the wgpu::dawn::wire::client namespace, and then aliased into the wgpu:: namespace. This means that use of the methods will dispatch to the wire client, implementation of them, and we avoid duplicate definitions of other definitions in the wgpu namespace It is not valid to include both client/webgpu_cpp.h and webgpu/webgpu_cpp.h. This will result in errors about duplicate dfns. Bug: chromium:40195122 Change-Id: I6eec057253bfbe0cf2292210c82d2fc2b663dc89 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/184243 Reviewed-by: Loko Kung <lokokung@google.com> Commit-Queue: Austin Eng <enga@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Dawn is an open-source and cross-platform implementation of the WebGPU standard. More precisely it implements webgpu.h
that is a one-to-one mapping with the WebGPU IDL. Dawn is meant to be integrated as part of a larger system and is the underlying implementation of WebGPU in Chromium.
Dawn provides several WebGPU building blocks:
webgpu.h
version that Dawn implements.webgpu.h
.Helpful links:
Developer documentation:
User documentation: (TODO, figure out what overlaps with the webgpu.h docs)
BSD 3-Clause License, please see LICENSE.
This is not an officially supported Google product.