pub enum Barrier<'a, B>where
B: Backend,{
AllBuffers(Range<Access>),
AllImages(Range<Access>),
Buffer {
states: Range<Access>,
target: &'a <B as Backend>::Buffer,
families: Option<Range<QueueFamilyId>>,
range: Range<Option<u64>>,
},
Image {
states: Range<(Access, Layout)>,
target: &'a <B as Backend>::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
A memory barrier that defines access to a buffer.
Fields
§
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.
Image
A memory barrier that defines access to (a subset of) an image.
Fields
§
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: SubresourceRangeA SubresourceRange that defines which section of an image the barrier applies to.
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl<'a, B> Freeze for Barrier<'a, B>
impl<'a, B> RefUnwindSafe for Barrier<'a, B>
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>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more