Show / Hide Table of Contents

Struct ComputePipelineDescription

Describes a compute Pipeline, for creation using a ResourceFactory.

Implements
System.IEquatable<ComputePipelineDescription>
Inherited Members
System.ValueType.Equals(System.Object)
System.ValueType.ToString()
System.Object.Equals(System.Object, System.Object)
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.GetType()
Namespace: Veldrid
Assembly: cs.temp.dll.dll
Syntax
public struct ComputePipelineDescription : IEquatable<ComputePipelineDescription>

Constructors

ComputePipelineDescription(Shader, ResourceLayout, UInt32, UInt32, UInt32)

Constructs a new ComputePipelineDescription.

Declaration
public ComputePipelineDescription(Shader shaderStage, ResourceLayout resourceLayout, uint threadGroupSizeX, uint threadGroupSizeY, uint threadGroupSizeZ)
Parameters
Type Name Description
Shader shaderStage

The compute Shader to be used in the Pipeline. This must be a Shader with Compute.

ResourceLayout resourceLayout

The resource layout available to the Pipeline.

System.UInt32 threadGroupSizeX

The X dimension of the thread group size.

System.UInt32 threadGroupSizeY

The Y dimension of the thread group size.

System.UInt32 threadGroupSizeZ

The Z dimension of the thread group size.

ComputePipelineDescription(Shader, ResourceLayout, UInt32, UInt32, UInt32, SpecializationConstant[])

Constructs a new ComputePipelineDescription.

Declaration
public ComputePipelineDescription(Shader shaderStage, ResourceLayout resourceLayout, uint threadGroupSizeX, uint threadGroupSizeY, uint threadGroupSizeZ, SpecializationConstant[] specializations)
Parameters
Type Name Description
Shader shaderStage

The compute Shader to be used in the Pipeline. This must be a Shader with Compute.

ResourceLayout resourceLayout

The resource layout available to the Pipeline.

System.UInt32 threadGroupSizeX

The X dimension of the thread group size.

System.UInt32 threadGroupSizeY

The Y dimension of the thread group size.

System.UInt32 threadGroupSizeZ

The Z dimension of the thread group size.

SpecializationConstant[] specializations

An array of SpecializationConstant used to override specialization constants in the created Pipeline. Each element in this array describes a single ID-value pair, which will be matched with the constants specified in the Shader.

ComputePipelineDescription(Shader, ResourceLayout[], UInt32, UInt32, UInt32)

Constructs a new ComputePipelineDescription.

Declaration
public ComputePipelineDescription(Shader computeShader, ResourceLayout[] resourceLayouts, uint threadGroupSizeX, uint threadGroupSizeY, uint threadGroupSizeZ)
Parameters
Type Name Description
Shader computeShader

The compute Shader to be used in the Pipeline. This must be a Shader with Compute.

ResourceLayout[] resourceLayouts

The set of resource layouts available to the Pipeline.

System.UInt32 threadGroupSizeX

The X dimension of the thread group size.

System.UInt32 threadGroupSizeY

The Y dimension of the thread group size.

System.UInt32 threadGroupSizeZ

The Z dimension of the thread group size.

Fields

ComputeShader

The compute Shader to be used in the Pipeline. This must be a Shader with Compute.

Declaration
public Shader ComputeShader
Field Value
Type Description
Shader

ResourceLayouts

An array of ResourceLayout, which controls the layout of shader resoruces in the Pipeline.

Declaration
public ResourceLayout[] ResourceLayouts
Field Value
Type Description
ResourceLayout[]

Specializations

An array of SpecializationConstant used to override specialization constants in the created Pipeline. Each element in this array describes a single ID-value pair, which will be matched with the constants specified in the Shader.

Declaration
public SpecializationConstant[] Specializations
Field Value
Type Description
SpecializationConstant[]

ThreadGroupSizeX

The X dimension of the thread group size.

Declaration
public uint ThreadGroupSizeX
Field Value
Type Description
System.UInt32

ThreadGroupSizeY

The Y dimension of the thread group size.

Declaration
public uint ThreadGroupSizeY
Field Value
Type Description
System.UInt32

ThreadGroupSizeZ

The Z dimension of the thread group size.

Declaration
public uint ThreadGroupSizeZ
Field Value
Type Description
System.UInt32

Methods

Equals(ComputePipelineDescription)

Element-wise equality.

Declaration
public bool Equals(ComputePipelineDescription other)
Parameters
Type Name Description
ComputePipelineDescription other

The instance to compare to.

Returns
Type Description
System.Boolean

True if all elements and all array elements are equal; false otherswise.

GetHashCode()

Returns the hash code for this instance.

Declaration
public override int GetHashCode()
Returns
Type Description
System.Int32

A 32-bit signed integer that is the hash code for this instance.

Overrides
System.ValueType.GetHashCode()

Implements

System.IEquatable<T>
Back to top