CoopVec<T, int N>.load¶
Description¶
Load values from a byte-addressable buffer into a cooperative vector. Pointer accesses are 16-byte aligned.
Signature¶
/// Requires Capability Set 1: static CoopVec<T, N> CoopVec<T, int N>.load( ByteAddressBuffer buffer, int byteOffset16ByteAligned) where T : __BuiltinArithmeticType; /// Requires Capability Set 1: static CoopVec<T, N> CoopVec<T, int N>.load( RWByteAddressBuffer buffer, int byteOffset16ByteAligned) where T : __BuiltinArithmeticType; /// Requires Capability Set 2: static CoopVec<T, N> CoopVec<T, int N>.load<L>( StructuredBuffer<T, L> buffer, int byteOffset16ByteAligned) where L : IBufferDataLayout where T : __BuiltinArithmeticType; /// Requires Capability Set 2: static CoopVec<T, N> CoopVec<T, int N>.load<L>( RWStructuredBuffer<T, L> buffer, int byteOffset16ByteAligned) where L : IBufferDataLayout where T : __BuiltinArithmeticType; /// Requires Capability Set 3: static CoopVec<T, N> CoopVec<T, int N>.load( Ptr<T, Access.ReadWrite, AddressSpace.Device, DefaultDataLayout> buffer, int byteOffset16ByteAligned) where T : __BuiltinArithmeticType; /// Requires Capability Set 1: static CoopVec<T, N> CoopVec<T, int N>.load<int M>( const T[M] data, int byteOffset16ByteAligned) where T : __BuiltinArithmeticType;
Generic Parameters¶
L: IBufferDataLayout = DefaultDataLayout¶
M : int¶
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.
data : T [ M ]¶
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.
Requires capability: optix_coopvec.
spirv¶
Available in all stages.
Requires capability: spvCooperativeVectorNV.
Capability Set 2¶
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 3¶
Defined for the following targets:
spirv¶
Available in all stages.
Requires capability: spvCooperativeVectorNV.