pub enum AccessType {
Show 58 variants Nothing, CommandBufferReadNVX, IndirectBuffer, IndexBuffer, VertexBuffer, VertexShaderReadUniformBuffer, VertexShaderReadSampledImageOrUniformTexelBuffer, VertexShaderReadOther, TessellationControlShaderReadUniformBuffer, TessellationControlShaderReadSampledImageOrUniformTexelBuffer, TessellationControlShaderReadOther, TessellationEvaluationShaderReadUniformBuffer, TessellationEvaluationShaderReadSampledImageOrUniformTexelBuffer, TessellationEvaluationShaderReadOther, GeometryShaderReadUniformBuffer, GeometryShaderReadSampledImageOrUniformTexelBuffer, GeometryShaderReadOther, FragmentShaderReadUniformBuffer, FragmentShaderReadSampledImageOrUniformTexelBuffer, FragmentShaderReadColorInputAttachment, FragmentShaderReadDepthStencilInputAttachment, FragmentShaderReadOther, ColorAttachmentRead, DepthStencilAttachmentRead, ComputeShaderReadUniformBuffer, ComputeShaderReadSampledImageOrUniformTexelBuffer, ComputeShaderReadOther, AnyShaderReadUniformBuffer, AnyShaderReadUniformBufferOrVertexBuffer, AnyShaderReadSampledImageOrUniformTexelBuffer, AnyShaderReadOther, TransferRead, HostRead, Present, CommandBufferWriteNVX, VertexShaderWrite, TessellationControlShaderWrite, TessellationEvaluationShaderWrite, GeometryShaderWrite, FragmentShaderWrite, ColorAttachmentWrite, DepthStencilAttachmentWrite, DepthAttachmentWriteStencilReadOnly, StencilAttachmentWriteDepthReadOnly, ComputeShaderWrite, AnyShaderWrite, TransferWrite, HostWrite, ColorAttachmentReadWrite, General, RayTracingShaderReadSampledImageOrUniformTexelBuffer, RayTracingShaderReadColorInputAttachment, RayTracingShaderReadDepthStencilInputAttachment, RayTracingShaderReadAccelerationStructure, RayTracingShaderReadOther, AccelerationStructureBuildWrite, AccelerationStructureBuildRead, AccelerationStructureBufferWrite,
}
Expand description

Defines all potential resource usages

Variants§

§

Nothing

No access. Useful primarily for initialization

§

CommandBufferReadNVX

Command buffer read operation as defined by NVX_device_generated_commands

§

IndirectBuffer

Read as an indirect buffer for drawing or dispatch

§

IndexBuffer

Read as an index buffer for drawing

§

VertexBuffer

Read as a vertex buffer for drawing

§

VertexShaderReadUniformBuffer

Read as a uniform buffer in a vertex shader

§

VertexShaderReadSampledImageOrUniformTexelBuffer

Read as a sampled image/uniform texel buffer in a vertex shader

§

VertexShaderReadOther

Read as any other resource in a vertex shader

§

TessellationControlShaderReadUniformBuffer

Read as a uniform buffer in a tessellation control shader

§

TessellationControlShaderReadSampledImageOrUniformTexelBuffer

Read as a sampled image/uniform texel buffer in a tessellation control shader

§

TessellationControlShaderReadOther

Read as any other resource in a tessellation control shader

§

TessellationEvaluationShaderReadUniformBuffer

Read as a uniform buffer in a tessellation evaluation shader

§

TessellationEvaluationShaderReadSampledImageOrUniformTexelBuffer

Read as a sampled image/uniform texel buffer in a tessellation evaluation shader

§

TessellationEvaluationShaderReadOther

Read as any other resource in a tessellation evaluation shader

§

GeometryShaderReadUniformBuffer

Read as a uniform buffer in a geometry shader

§

GeometryShaderReadSampledImageOrUniformTexelBuffer

Read as a sampled image/uniform texel buffer in a geometry shader

§

GeometryShaderReadOther

Read as any other resource in a geometry shader

§

FragmentShaderReadUniformBuffer

Read as a uniform buffer in a fragment shader

§

FragmentShaderReadSampledImageOrUniformTexelBuffer

Read as a sampled image/uniform texel buffer in a fragment shader

§

FragmentShaderReadColorInputAttachment

Read as an input attachment with a color format in a fragment shader

§

FragmentShaderReadDepthStencilInputAttachment

Read as an input attachment with a depth/stencil format in a fragment shader

§

FragmentShaderReadOther

Read as any other resource in a fragment shader

§

ColorAttachmentRead

Read by blending/logic operations or subpass load operations

§

DepthStencilAttachmentRead

Read by depth/stencil tests or subpass load operations

§

ComputeShaderReadUniformBuffer

Read as a uniform buffer in a compute shader

§

ComputeShaderReadSampledImageOrUniformTexelBuffer

Read as a sampled image/uniform texel buffer in a compute shader

§

ComputeShaderReadOther

Read as any other resource in a compute shader

§

AnyShaderReadUniformBuffer

Read as a uniform buffer in any shader

§

AnyShaderReadUniformBufferOrVertexBuffer

Read as a uniform buffer in any shader, or a vertex buffer

§

AnyShaderReadSampledImageOrUniformTexelBuffer

Read as a sampled image in any shader

§

AnyShaderReadOther

Read as any other resource (excluding attachments) in any shader

§

TransferRead

Read as the source of a transfer operation

§

HostRead

Read on the host

§

Present

Read by the presentation engine (i.e. vkQueuePresentKHR)

§

CommandBufferWriteNVX

Command buffer write operation as defined by NVX_device_generated_commands

§

VertexShaderWrite

Written as any resource in a vertex shader

§

TessellationControlShaderWrite

Written as any resource in a tessellation control shader

§

TessellationEvaluationShaderWrite

Written as any resource in a tessellation evaluation shader

§

GeometryShaderWrite

Written as any resource in a geometry shader

§

FragmentShaderWrite

Written as any resource in a fragment shader

§

ColorAttachmentWrite

Written as a color attachment during rendering, or via a subpass store op

§

DepthStencilAttachmentWrite

Written as a depth/stencil attachment during rendering, or via a subpass store op

§

DepthAttachmentWriteStencilReadOnly

Written as a depth aspect of a depth/stencil attachment during rendering, whilst the stencil aspect is read-only. Requires VK_KHR_maintenance2 to be enabled.

§

StencilAttachmentWriteDepthReadOnly

Written as a stencil aspect of a depth/stencil attachment during rendering, whilst the depth aspect is read-only. Requires VK_KHR_maintenance2 to be enabled.

§

ComputeShaderWrite

Written as any resource in a compute shader

§

AnyShaderWrite

Written as any resource in any shader

§

TransferWrite

Written as the destination of a transfer operation

§

HostWrite

Written on the host

§

ColorAttachmentReadWrite

Read or written as a color attachment during rendering

§

General

Covers any access - useful for debug, generally avoid for performance reasons

§

RayTracingShaderReadSampledImageOrUniformTexelBuffer

Read as a sampled image/uniform texel buffer in a ray tracing shader

§

RayTracingShaderReadColorInputAttachment

Read as an input attachment with a color format in a ray tracing shader

§

RayTracingShaderReadDepthStencilInputAttachment

Read as an input attachment with a depth/stencil format in a ray tracing shader

§

RayTracingShaderReadAccelerationStructure

Read as an acceleration structure in a ray tracing shader

§

RayTracingShaderReadOther

Read as any other resource in a ray tracing shader

§

AccelerationStructureBuildWrite

Written as an acceleration structure during acceleration structure building

§

AccelerationStructureBuildRead

Read as an acceleration structure during acceleration structure building (e.g. a BLAS when building a TLAS)

§

AccelerationStructureBufferWrite

Trait Implementations§

source§

impl Clone for AccessType

source§

fn clone(&self) -> AccessType

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for AccessType

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
source§

impl Default for AccessType

source§

fn default() -> AccessType

Returns the “default value” for a type. Read more
source§

impl PartialEq for AccessType

source§

fn eq(&self, other: &AccessType) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Copy for AccessType

source§

impl StructuralPartialEq for AccessType

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Downcast for T
where T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.
§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
§

fn as_any(&self) -> &(dyn Any + 'static)

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s.
§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
§

impl<T> DowncastSync for T
where T: Any + Send + Sync,

§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Sync + Send>

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more