coopVecLoad

Description

Load values from a byte-addressable buffer into a cooperative vector.

Signature

/// Requires Capability Set 1:
CoopVec<T, N> coopVecLoad<int N, T>(
    ByteAddressBuffer buffer,
    int byteOffset16ByteAligned)
    where T : __BuiltinArithmeticType;

/// Requires Capability Set 1:
CoopVec<T, N> coopVecLoad<int N, T>(
    RWByteAddressBuffer buffer,
    int byteOffset16ByteAligned)
    where T : __BuiltinArithmeticType;

/// Requires Capability Set 1:
CoopVec<T, N> coopVecLoad<int N, T, L>(
    StructuredBuffer<T, L> buffer,
    int byteOffset16ByteAligned)
    where T : __BuiltinArithmeticType
    where L : IBufferDataLayout;

/// Requires Capability Set 1:
CoopVec<T, N> coopVecLoad<int N, T, L>(
    RWStructuredBuffer<T, L> buffer,
    int byteOffset16ByteAligned)
    where T : __BuiltinArithmeticType
    where L : IBufferDataLayout;

/// Requires Capability Set 2:
CoopVec<T, N> coopVecLoad<int N, T>(
    Ptr<T, Access.ReadWrite, AddressSpace.Device, DefaultDataLayout> buffer,
    int byteOffset16ByteAligned)
    where T : __BuiltinArithmeticType;

Generic Parameters

N : int

T: __BuiltinArithmeticType

L: IBufferDataLayout = DefaultDataLayout

Parameters

buffer : ByteAddressBuffer

The source buffer to load data from.

byteOffset16ByteAligned : int = 0

The byte offset from the start of the buffer. Must be 16-byte aligned.

buffer : RWByteAddressBuffer

The source buffer to load data from.

buffer : StructuredBuffer<T, L>

The source buffer to load data from.

buffer : RWStructuredBuffer<T, L>

The source buffer to load data from.

buffer : Ptr<T, Access.ReadWrite, AddressSpace.Device, DefaultDataLayout>

The source buffer to load data from.

Return value

A new cooperative vector containing the loaded values.

Availability and Requirements

Capability Set 1

Defined for the following targets:

hlsl

Available in all stages.

glsl

Available in all stages.

cpp

Available in all stages.

cuda

Available in all stages.

spirv

Available in all stages.

Requires capability: spvCooperativeVectorNV.

Capability Set 2

Defined for the following targets:

spirv

Available in all stages.

Requires capability: spvCooperativeVectorNV.