dawn-cmake/generator/templates
Austin Eng 2f218e2b21 Implement upstream RequestDevice, add native-only CreateDevice
This CL implements RequestDevice and also has changes for
Dawn to internally use wgpu::FeatureName enums, instead of
strings. Some of the string handling is kept for now to
support the deprecated creation path. GetFeatureInfo is added
to the instance to get a name and description of the feature,
for reporting in about://gpu.

Dawn device toggles are now passed in an extension struct off
of the device descriptor. This is only supported in dawn_native,
and not dawn_wire, for now, since dawn_wire doesn't have a way
to serialize lists of null-terminated const char*.

To enable the client to check whether the toggle descriptor is
supported, a `dawn-native` feature is added which is supported
all the time with dawn_native, but not supported with dawn_wire.

Feature `dawn-native` also enables a synchronous version of
CreateDevice for convenience.

Bug: dawn:160
Change-Id: Ifc195e7ea808c6c319021528ef4b36bd65583bff
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/72020
Reviewed-by: Loko Kung <lokokung@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
2021-12-22 19:02:23 +00:00
..
dawn_native Make the template of ProcTable flexible 2021-12-22 06:12:13 +00:00
dawn_wire Implement upstream RequestDevice, add native-only CreateDevice 2021-12-22 19:02:23 +00:00
opengl Implement EGLImage external texture API for GL. 2021-06-03 16:19:16 +00:00
.clang-format Add .clang-format files and format more files 2020-07-15 19:51:17 +00:00
BSD_LICENSE Further api.h license issue fixes 2021-12-14 01:06:15 +00:00
api.h Update BSD 3 license comment 2021-12-16 00:52:26 +00:00
api_cpp.cpp Template hardcode functions in webgpu_cpp.cpp 2021-12-14 02:20:15 +00:00
api_cpp.h Add basic or stub implementations of upstream instance/adapter APIs 2021-12-14 23:22:46 +00:00
api_cpp_print.h Make templates webgpu_cpp.h and webgpu_cpp_print.h flexible 2021-12-07 00:46:35 +00:00
api_struct_info.json Fix typo in api_struct_info.json 2021-12-15 18:06:36 +00:00
dawn_proc.c Replace hardcode functions in templates 2021-12-10 01:35:19 +00:00
dawn_proc_table.h Make the prefix of proc table configurable in api.json 2021-12-05 05:29:44 +00:00
dawn_thread_dispatch_proc.cpp Replace hardcode functions in templates 2021-12-10 01:35:19 +00:00
library_api_enum_tables.js Make the templates of mocking api flexible 2021-12-15 04:35:26 +00:00
mock_api.cpp Make the templates of mocking api flexible 2021-12-15 04:35:26 +00:00
mock_api.h Make the templates of mocking api flexible 2021-12-15 04:35:26 +00:00