[−][src]Enum gfx_hal::memory::Barrier
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 of Buffer
states: Range<State>
The access flags controlling the buffer.
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.
range: Range<Option<u64>>
Range of the buffer the barrier applies to.
Image
A memory barrier that defines access to (a subset of) an image.
Fields of Image
states: Range<State>
The access flags controlling the image.
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.
Methods
impl<'a, B: Backend> Barrier<'a, B>
[src][−]
pub fn whole_buffer(target: &'a B::Buffer, states: Range<State>) -> Self
[src][−]
Create a barrier for the whole buffer between the given states.
Trait Implementations
impl<'a, B: Clone + Backend> Clone for Barrier<'a, B> where
B::Buffer: Clone,
B::Image: Clone,
[src][+]
B::Buffer: Clone,
B::Image: Clone,
impl<'a, B: Debug + Backend> Debug for Barrier<'a, B> where
B::Buffer: Debug,
B::Image: Debug,
[src][+]
B::Buffer: Debug,
B::Image: Debug,
Auto Trait Implementations
impl<'a, B> Unpin for Barrier<'a, B>
impl<'a, B> Sync for Barrier<'a, B> where
<B as Backend>::Buffer: Sync,
<B as Backend>::Image: Sync,
<B as Backend>::Buffer: Sync,
<B as Backend>::Image: Sync,
impl<'a, B> Send for Barrier<'a, B> where
<B as Backend>::Buffer: Sync,
<B as Backend>::Image: Sync,
<B as Backend>::Buffer: Sync,
<B as Backend>::Image: Sync,
impl<'a, B> UnwindSafe for Barrier<'a, B> where
<B as Backend>::Buffer: RefUnwindSafe,
<B as Backend>::Image: RefUnwindSafe,
<B as Backend>::Buffer: RefUnwindSafe,
<B as Backend>::Image: RefUnwindSafe,
impl<'a, B> RefUnwindSafe for Barrier<'a, B> where
<B as Backend>::Buffer: RefUnwindSafe,
<B as Backend>::Image: RefUnwindSafe,
<B as Backend>::Buffer: RefUnwindSafe,
<B as Backend>::Image: RefUnwindSafe,
Blanket Implementations
impl<T> Supports<T> for T
[src]
impl<T> ToOwned for T where
T: Clone,
[src][+]
T: Clone,
impl<T> From<T> for T
[src][+]
impl<T, U> Into<U> for T where
U: From<T>,
[src][+]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src][+]
U: Into<T>,
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src][+]
U: TryFrom<T>,
impl<T> Borrow<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src][+]
T: 'static + ?Sized,