chromium/third_party/blink/renderer/modules/webgpu/gpu_programmable_pass_encoder.idl

// 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.

// https://gpuweb.github.io/gpuweb/

interface mixin GPUProgrammablePassEncoder {
    [NoAllocDirectCall] void setBindGroup(GPUIndex32 index, GPUBindGroup? bindGroup,
                      optional sequence<GPUBufferDynamicOffset> dynamicOffsets);

    [RaisesException, NoAllocDirectCall] void setBindGroup(
        GPUIndex32 index, GPUBindGroup? bindGroup,
        [AllowShared, PassAsSpan, BufferSourceTypeNoSizeLimit] Uint32Array dynamicOffsetsData,
        GPUSize64 dynamicOffsetsDataStart,
        GPUSize32 dynamicOffsetsDataLength);

    void pushDebugGroup(USVString groupLabel);
    [NoAllocDirectCall] void popDebugGroup();
    void insertDebugMarker(USVString markerLabel);
};