pub enum Barrier<'a, B: Backend> {
AllBuffers(Range<Access>),
AllImages(Range<Access>),
Buffer {
states: Range<State>,
target: &'a B::Buffer,
families: Option<Range<QueueFamilyId>>,
range: Range<Option<u64>>,
},
Image {
states: Range<State>,
target: &'a B::Image,
families: Option<Range<QueueFamilyId>>,
range: SubresourceRange,
},
}
Expand description
A memory barrier type for either buffers or images.
Variants
AllBuffers(Range<Access>)
Applies the given access flags to all buffers in the range.
AllImages(Range<Access>)
Applies the given access flags to all images in the range.
Buffer
Fields
target: &'a B::Buffer
The buffer the barrier controls.
families: Option<Range<QueueFamilyId>>
The source and destination Queue family IDs, for a queue family ownership transfer
Can be None
to indicate no ownership transfer.
A memory barrier that defines access to a buffer.
Image
Fields
target: &'a B::Image
The image the barrier controls.
families: Option<Range<QueueFamilyId>>
The source and destination Queue family IDs, for a queue family ownership transfer
Can be None
to indicate no ownership transfer.
range: SubresourceRange
A SubresourceRange
that defines which section of an image the barrier applies to.
A memory barrier that defines access to (a subset of) an image.
Implementations
Trait Implementations
Auto Trait Implementations
impl<'a, B> RefUnwindSafe for Barrier<'a, B>where
<B as Backend>::Buffer: RefUnwindSafe,
<B as Backend>::Image: RefUnwindSafe,
impl<'a, B> Send for Barrier<'a, B>
impl<'a, B> Sync for Barrier<'a, B>
impl<'a, B> Unpin for Barrier<'a, B>
impl<'a, B> UnwindSafe for Barrier<'a, B>where
<B as Backend>::Buffer: RefUnwindSafe,
<B as Backend>::Image: RefUnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more