| // Copyright 2019 The Chromium Authors | |
| // Use of this source code is governed by a BSD-style license that can be | |
| // found in the LICENSE file. | |
| #include "gpu/command_buffer/client/webgpu_interface_stub.h" | |
| namespace gpu { | |
| namespace webgpu { | |
| namespace { | |
| class APIChannelStub : public APIChannel { | |
| public: | |
| APIChannelStub() = default; | |
| WGPUInstance GetWGPUInstance() const override { return nullptr; } | |
| void Disconnect() override {} | |
| private: | |
| ~APIChannelStub() override = default; | |
| }; | |
| } // anonymous namespace | |
| WebGPUInterfaceStub::WebGPUInterfaceStub() | |
| : api_channel_(base::MakeRefCounted<APIChannelStub>()) {} | |
| WebGPUInterfaceStub::~WebGPUInterfaceStub() = default; | |
| // InterfaceBase implementation. | |
| void WebGPUInterfaceStub::GenSyncTokenCHROMIUM(GLbyte* sync_token) {} | |
| void WebGPUInterfaceStub::GenUnverifiedSyncTokenCHROMIUM(GLbyte* sync_token) {} | |
| void WebGPUInterfaceStub::VerifySyncTokensCHROMIUM(GLbyte** sync_tokens, | |
| GLsizei count) {} | |
| void WebGPUInterfaceStub::WaitSyncTokenCHROMIUM(const GLbyte* sync_token) {} | |
| void WebGPUInterfaceStub::ShallowFlushCHROMIUM() {} | |
| // WebGPUInterface implementation | |
| scoped_refptr<APIChannel> WebGPUInterfaceStub::GetAPIChannel() const { | |
| return api_channel_; | |
| } | |
| void WebGPUInterfaceStub::FlushCommands() {} | |
| bool WebGPUInterfaceStub::EnsureAwaitingFlush() { | |
| return false; | |
| } | |
| void WebGPUInterfaceStub::FlushAwaitingCommands() {} | |
| ReservedTexture WebGPUInterfaceStub::ReserveTexture( | |
| WGPUDevice, | |
| const WGPUTextureDescriptor*) { | |
| return {nullptr, 0, 0, 0, 0}; | |
| } | |
| ReservedBuffer WebGPUInterfaceStub::ReserveBuffer(WGPUDevice device, | |
| const WGPUBufferDescriptor*) { | |
| return {nullptr, 0, 0, 0, 0}; | |
| } | |
| WGPUDevice WebGPUInterfaceStub::DeprecatedEnsureDefaultDeviceSync() { | |
| return nullptr; | |
| } | |
| void WebGPUInterfaceStub::AssociateMailbox( | |
| GLuint device_id, | |
| GLuint device_generation, | |
| GLuint id, | |
| GLuint generation, | |
| uint64_t usage, | |
| uint64_t internal_usage, | |
| const WGPUTextureFormat* view_formats, | |
| GLuint view_format_count, | |
| MailboxFlags flags, | |
| const Mailbox& mailbox) {} | |
| void WebGPUInterfaceStub::AssociateMailboxForBuffer(GLuint device_id, | |
| GLuint device_generation, | |
| GLuint id, | |
| GLuint generation, | |
| uint64_t usage, | |
| const Mailbox& mailbox) {} | |
| // Include the auto-generated part of this class. We split this because | |
| // it means we can easily edit the non-auto generated parts right here in | |
| // this file instead of having to edit some template or the code generator. | |
| #include "gpu/command_buffer/client/webgpu_interface_stub_impl_autogen.h" | |
| } // namespace webgpu | |
| } // namespace gpu |