Gorgon
Show / Hide Table of Contents

Class GorgonIndexBufferReadWriteView

Provides a read/write (unordered access) view for a GorgonIndexBuffer.

Inheritance
object
GorgonResourceView
GorgonReadWriteView
GorgonBufferReadWriteViewCommon<GorgonIndexBuffer>
GorgonIndexBufferReadWriteView
Implements
IDisposable
IGorgonGraphicsObject
IEquatable<GorgonResourceView>
IGorgonIndexBufferInfo
IGorgonNamedObject
Inherited Members
GorgonBufferReadWriteViewCommon<GorgonIndexBuffer>.Buffer
GorgonBufferReadWriteViewCommon<GorgonIndexBuffer>.StartElement
GorgonBufferReadWriteViewCommon<GorgonIndexBuffer>.ElementCount
GorgonBufferReadWriteViewCommon<GorgonIndexBuffer>.TotalElementCount
GorgonReadWriteView.Clear(int, int, int, int)
GorgonReadWriteView.Clear(int)
GorgonReadWriteView.Clear(float, float, float, float)
GorgonReadWriteView.Clear(float)
GorgonReadWriteView.Clear(Vector4)
GorgonReadWriteView.Dispose()
GorgonResourceView.IsDisposed
GorgonResourceView.Resource
GorgonResourceView.Usage
GorgonResourceView.Graphics
GorgonResourceView.Equals(GorgonResourceView)
GorgonResourceView.Equals(object)
GorgonResourceView.GetHashCode()
object.ToString()
object.Equals(object, object)
object.ReferenceEquals(object, object)
object.GetType()
Namespace: Gorgon.Graphics.Core
Assembly: Gorgon.Graphics.Core.dll
Syntax
public sealed class GorgonIndexBufferReadWriteView : GorgonBufferReadWriteViewCommon<GorgonIndexBuffer>, IDisposable, IGorgonGraphicsObject, IEquatable<GorgonResourceView>, IGorgonIndexBufferInfo, IGorgonNamedObject
Remarks

This type of view allows for unordered access to a GorgonIndexBuffer. The buffer must have been created with the ReadWrite flag in its Binding property.

The unordered access allows a shader to read/write any part of a GorgonGraphicsResource by multiple threads without memory contention. This is done through the use of atomic functions.

These types of views are most useful for GorgonComputeShader shaders, but can also be used by a GorgonPixelShader by passing a list of these views in to a draw call.

Properties

| Edit this page View Source

Binding

Property to return the binding used to bind this buffer to the GPU.

Declaration
public VertexIndexBufferBinding Binding { get; }
Property Value
Type Description
VertexIndexBufferBinding
See Also
GorgonGraphicsResource
GorgonComputeShader
GorgonPixelShader
GorgonDrawCallCommon
| Edit this page View Source

ElementSize

Property to return the size of an element, in bytes.

Declaration
public override int ElementSize { get; }
Property Value
Type Description
int
Overrides
GorgonBufferReadWriteViewCommon<GorgonIndexBuffer>.ElementSize
See Also
GorgonGraphicsResource
GorgonComputeShader
GorgonPixelShader
GorgonDrawCallCommon
| Edit this page View Source

Format

Property to return the format used to interpret this view.

Declaration
public BufferFormat Format { get; }
Property Value
Type Description
BufferFormat
See Also
GorgonGraphicsResource
GorgonComputeShader
GorgonPixelShader
GorgonDrawCallCommon
| Edit this page View Source

FormatInformation

Property to return information about the Format used by this view.

Declaration
public GorgonFormatInfo FormatInformation { get; }
Property Value
Type Description
GorgonFormatInfo
See Also
GorgonGraphicsResource
GorgonComputeShader
GorgonPixelShader
GorgonDrawCallCommon
| Edit this page View Source

IndexCount

Property to return the number of indices to store.

Declaration
public int IndexCount { get; }
Property Value
Type Description
int
See Also
GorgonGraphicsResource
GorgonComputeShader
GorgonPixelShader
GorgonDrawCallCommon
| Edit this page View Source

Use16BitIndices

Property to return whether to use 16 bit values for indices.

Declaration
public bool Use16BitIndices { get; }
Property Value
Type Description
bool
See Also
GorgonGraphicsResource
GorgonComputeShader
GorgonPixelShader
GorgonDrawCallCommon

Implements

IDisposable
IGorgonGraphicsObject
IEquatable<T>
IGorgonIndexBufferInfo
IGorgonNamedObject

Extension Methods

GorgonDebugExtensions.ValidateObject<T>(T, string)
GorgonNullExtensions.AsNullable<T>(object)
GorgonNullExtensions.IfNull<T>(object, T)
GorgonNullExtensions.IsNull(object)

See Also

GorgonGraphicsResource
GorgonComputeShader
GorgonPixelShader
GorgonDrawCallCommon
  • Edit this page
  • View Source
In this article
Back to top Copyright 2023 - Licensed under the MIT license by Michael Winsor (Tape_Worm).
Send comments on this topic to the author