/* Copyright (C) 2021 Apple Inc. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE * DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #if ENABLE(GPU_PROCESS) messages -> RemoteRenderBundleEncoder NotRefCounted Stream { void SetPipeline(WebKit::WebGPUIdentifier identifier) void SetIndexBuffer(WebKit::WebGPUIdentifier identifier, PAL::WebGPU::IndexFormat indexFormat, PAL::WebGPU::Size64 offset, std::optional size) void SetVertexBuffer(PAL::WebGPU::Index32 slot, WebKit::WebGPUIdentifier identifier, PAL::WebGPU::Size64 offset, std::optional size) void Draw(PAL::WebGPU::Size32 vertexCount, PAL::WebGPU::Size32 instanceCount, PAL::WebGPU::Size32 firstVertex, PAL::WebGPU::Size32 firstInstance) void DrawIndexed(PAL::WebGPU::Size32 indexCount, PAL::WebGPU::Size32 instanceCount, PAL::WebGPU::Size32 firstIndex, PAL::WebGPU::SignedOffset32 baseVertex, PAL::WebGPU::Size32 firstInstance) void DrawIndirect(WebKit::WebGPUIdentifier indirectBuffer, PAL::WebGPU::Size64 indirectOffset) void DrawIndexedIndirect(WebKit::WebGPUIdentifier indirectBuffer, PAL::WebGPU::Size64 indirectOffset) void SetBindGroup(PAL::WebGPU::Index32 index, WebKit::WebGPUIdentifier identifier, std::optional> dynamicOffsets) void PushDebugGroup(String groupLabel) void PopDebugGroup() void InsertDebugMarker(String markerLabel) void Finish(WebKit::WebGPU::RenderBundleDescriptor descriptor, WebKit::WebGPUIdentifier identifier) void SetLabel(String label) } #endif