dawn-cmake/src/dawn_native
Corentin Wallez 82fbccbd78 Introduce [Render|Compute]PassEncoder.
This splits off part of CommandBufferBuilder in separate
RenderPassEncoder and ComputePassEncoder objects. To match the WebGPU
IDL and factor some code, both these encoders inherit from
ProgrammablePassEncoder.

These encoders are pure frontend objects and record into the
CommandBufferBuilder command allocator objects, so no changes to the
backends were needed.

Error handling is still ew, because the "builder" mechanism we had
doesn't allow for "split builders". Nicer error handling will have to
wait on Dawn matching WebGPU.

All the tests and samples were updated to the new structure.

BUG=dawn:5

Change-Id: I5f5d4ad866e2c07fedd1ba7a122258c6610941f1
Reviewed-on: https://dawn-review.googlesource.com/1543
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2018-09-21 00:24:37 +00:00
..
d3d12 Collect GPU device information for end2end tests - Part I 2018-09-19 00:32:52 +00:00
metal Collect GPU device information for end2end tests - Part I 2018-09-19 00:32:52 +00:00
null Collect GPU device information for end2end tests - Part I 2018-09-19 00:32:52 +00:00
opengl Collect GPU device information for end2end tests - Part I 2018-09-19 00:32:52 +00:00
vulkan Collect GPU device information for end2end tests - Part I 2018-09-19 00:32:52 +00:00
BindGroup.cpp Rename GetAllowedUsage to GetUsage. 2018-08-23 08:23:06 -04:00
BindGroup.h Remove BindGroupBuilder::SetUsage 2018-08-21 02:27:12 -04:00
BindGroupLayout.cpp Make Dawn error macro more explicit and have an "error type" 2018-09-11 07:55:27 -04:00
BindGroupLayout.h Make dawn_native use its own header for Dawn datatypes 2018-07-27 12:56:26 +02:00
BlendState.cpp dawn_native: Fixup namespace from backend:: to dawn_native:: 2018-07-25 11:27:55 +02:00
BlendState.h Make dawn_native use its own header for Dawn datatypes 2018-07-27 12:56:26 +02:00
Buffer.cpp Make Dawn error macro more explicit and have an "error type" 2018-09-11 07:55:27 -04:00
Buffer.h Descriptorize Buffer 2018-08-23 08:23:06 -04:00
Builder.cpp dawn_native: Fixup namespace from backend:: to dawn_native:: 2018-07-25 11:27:55 +02:00
Builder.h Make dawn_native use its own header for Dawn datatypes 2018-07-27 12:56:26 +02:00
CMakeLists.txt Introduce [Render|Compute]PassEncoder. 2018-09-21 00:24:37 +00:00
CommandAllocator.cpp dawn_native: Fixup namespace from backend:: to dawn_native:: 2018-07-25 11:27:55 +02:00
CommandAllocator.h dawn_native: Fixup namespace from backend:: to dawn_native:: 2018-07-25 11:27:55 +02:00
CommandBuffer.cpp Introduce [Render|Compute]PassEncoder. 2018-09-21 00:24:37 +00:00
CommandBuffer.h Introduce [Render|Compute]PassEncoder. 2018-09-21 00:24:37 +00:00
CommandBufferStateTracker.cpp Make Dawn error macro more explicit and have an "error type" 2018-09-11 07:55:27 -04:00
CommandBufferStateTracker.h dawn_native: Fixup namespace from backend:: to dawn_native:: 2018-07-25 11:27:55 +02:00
Commands.cpp dawn_native: Fixup namespace from backend:: to dawn_native:: 2018-07-25 11:27:55 +02:00
Commands.h Implement copying between a buffer and a texture 2D array on Vulkan (#257) 2018-08-30 04:27:38 -04:00
ComputePassEncoder.cpp Introduce [Render|Compute]PassEncoder. 2018-09-21 00:24:37 +00:00
ComputePassEncoder.h Introduce [Render|Compute]PassEncoder. 2018-09-21 00:24:37 +00:00
ComputePipeline.cpp Make Dawn error macro more explicit and have an "error type" 2018-09-11 07:55:27 -04:00
ComputePipeline.h Descriptorize ComputePipeline 2018-09-05 08:32:53 -04:00
DawnNative.cpp Collect GPU device information for end2end tests - Part I 2018-09-19 00:32:52 +00:00
DepthStencilState.cpp dawn_native: Fixup namespace from backend:: to dawn_native:: 2018-07-25 11:27:55 +02:00
DepthStencilState.h Make dawn_native use its own header for Dawn datatypes 2018-07-27 12:56:26 +02:00
Device.cpp Use unique_ptr where applicable. 2018-09-07 07:22:04 -04:00
Device.h Collect GPU device information for end2end tests - Part I 2018-09-19 00:32:52 +00:00
Error.cpp Make Dawn error macro more explicit and have an "error type" 2018-09-11 07:55:27 -04:00
Error.h Make Dawn error macro more explicit and have an "error type" 2018-09-11 07:55:27 -04:00
ErrorData.cpp Make Dawn error macro more explicit and have an "error type" 2018-09-11 07:55:27 -04:00
ErrorData.h Make Dawn error macro more explicit and have an "error type" 2018-09-11 07:55:27 -04:00
Forward.h Introduce [Render|Compute]PassEncoder. 2018-09-21 00:24:37 +00:00
InputState.cpp dawn_native: Fixup namespace from backend:: to dawn_native:: 2018-07-25 11:27:55 +02:00
InputState.h Make dawn_native use its own header for Dawn datatypes 2018-07-27 12:56:26 +02:00
PassResourceUsage.h Make dawn_native use its own header for Dawn datatypes 2018-07-27 12:56:26 +02:00
PerStage.cpp dawn_native: Fixup namespace from backend:: to dawn_native:: 2018-07-25 11:27:55 +02:00
PerStage.h Descriptorize ComputePipeline 2018-09-05 08:32:53 -04:00
Pipeline.cpp Descriptorize ComputePipeline 2018-09-05 08:32:53 -04:00
Pipeline.h Descriptorize ComputePipeline 2018-09-05 08:32:53 -04:00
PipelineLayout.cpp Make Dawn error macro more explicit and have an "error type" 2018-09-11 07:55:27 -04:00
PipelineLayout.h Make dawn_native use its own header for Dawn datatypes 2018-07-27 12:56:26 +02:00
ProgrammablePassEncoder.cpp Introduce [Render|Compute]PassEncoder. 2018-09-21 00:24:37 +00:00
ProgrammablePassEncoder.h Introduce [Render|Compute]PassEncoder. 2018-09-21 00:24:37 +00:00
Queue.cpp Generate a single ProcTable instead of one per backend. 2018-08-02 13:39:07 +02:00
Queue.h Generate a single ProcTable instead of one per backend. 2018-08-02 13:39:07 +02:00
RefCounted.cpp dawn_native: Fixup namespace from backend:: to dawn_native:: 2018-07-25 11:27:55 +02:00
RefCounted.h dawn_native: Fixup namespace from backend:: to dawn_native:: 2018-07-25 11:27:55 +02:00
RenderPassDescriptor.cpp TextureBase: return size as an Extent3D to match dawn.json 2018-09-18 12:51:42 +00:00
RenderPassDescriptor.h Fix Windows compilation using GN and clang-cl. 2018-08-14 21:42:32 +02:00
RenderPassEncoder.cpp Introduce [Render|Compute]PassEncoder. 2018-09-21 00:24:37 +00:00
RenderPassEncoder.h Introduce [Render|Compute]PassEncoder. 2018-09-21 00:24:37 +00:00
RenderPipeline.cpp Descriptorize ComputePipeline 2018-09-05 08:32:53 -04:00
RenderPipeline.h Make dawn_native use its own header for Dawn datatypes 2018-07-27 12:56:26 +02:00
Sampler.cpp Make Dawn error macro more explicit and have an "error type" 2018-09-11 07:55:27 -04:00
Sampler.h Make dawn_native use its own header for Dawn datatypes 2018-07-27 12:56:26 +02:00
ShaderModule.cpp Make Dawn error macro more explicit and have an "error type" 2018-09-11 07:55:27 -04:00
ShaderModule.h Descriptorize ShaderModule 2018-08-21 02:26:24 -04:00
SwapChain.cpp dawn.json: Make textureDescriptor use Extent3D 2018-09-18 12:49:22 +00:00
SwapChain.h Descriptorize Texture 2018-08-28 03:00:48 -04:00
Texture.cpp TextureBase: return size as an Extent3D to match dawn.json 2018-09-18 12:51:42 +00:00
Texture.h TextureBase: return size as an Extent3D to match dawn.json 2018-09-18 12:51:42 +00:00
ToBackend.h dawn_native: Fixup namespace from backend:: to dawn_native:: 2018-07-25 11:27:55 +02:00
dawn_platform.h Make dawn_native use its own header for Dawn datatypes 2018-07-27 12:56:26 +02:00