logo
pub struct DependencyInfo {
    pub memory_barriers: SmallVec<[MemoryBarrier; 2]>,
    pub buffer_memory_barriers: SmallVec<[BufferMemoryBarrier; 8]>,
    pub image_memory_barriers: SmallVec<[ImageMemoryBarrier; 8]>,
    pub _ne: NonExhaustive,
}
Expand description

Dependency info for a pipeline barrier.

A pipeline barrier creates a dependency between commands submitted before the barrier (the source scope) and commands submitted after it (the destination scope). A pipeline barrier consists of multiple individual barriers that concern a either single resource or operate globally.

Each barrier has a set of source/destination pipeline stages and source/destination memory access types. The pipeline stages create an execution dependency: the source_stages of commands submitted before the barrier must be completely finished before before any of the destination_stages of commands after the barrier are allowed to start. The memory access types create a memory dependency: in addition to the execution dependency, any source_access performed before the barrier must be made available and visible before any destination_access are made after the barrier.

Fields

memory_barriers: SmallVec<[MemoryBarrier; 2]>

Memory barriers for global operations and accesses, not limited to a single resource.

buffer_memory_barriers: SmallVec<[BufferMemoryBarrier; 8]>

Memory barriers for individual buffers.

image_memory_barriers: SmallVec<[ImageMemoryBarrier; 8]>

Memory barriers for individual images.

_ne: NonExhaustive

Implementations

Returns whether self contains any barriers.

Clears all barriers.

Trait Implementations

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Returns the “default value” for a type. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

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

The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.