Struct screen_13::prelude::vk::ImageMemoryBarrierBuilder
source · pub struct ImageMemoryBarrierBuilder<'a> { /* private fields */ }
Implementations§
source§impl<'a> ImageMemoryBarrierBuilder<'a>
impl<'a> ImageMemoryBarrierBuilder<'a>
pub fn src_access_mask( self, src_access_mask: AccessFlags ) -> ImageMemoryBarrierBuilder<'a>
pub fn dst_access_mask( self, dst_access_mask: AccessFlags ) -> ImageMemoryBarrierBuilder<'a>
pub fn old_layout( self, old_layout: ImageLayout ) -> ImageMemoryBarrierBuilder<'a>
pub fn new_layout( self, new_layout: ImageLayout ) -> ImageMemoryBarrierBuilder<'a>
pub fn src_queue_family_index( self, src_queue_family_index: u32 ) -> ImageMemoryBarrierBuilder<'a>
pub fn dst_queue_family_index( self, dst_queue_family_index: u32 ) -> ImageMemoryBarrierBuilder<'a>
pub fn image(self, image: Image) -> ImageMemoryBarrierBuilder<'a>
pub fn subresource_range( self, subresource_range: ImageSubresourceRange ) -> ImageMemoryBarrierBuilder<'a>
sourcepub fn push_next<T>(self, next: &'a mut T) -> ImageMemoryBarrierBuilder<'a>where
T: ExtendsImageMemoryBarrier,
pub fn push_next<T>(self, next: &'a mut T) -> ImageMemoryBarrierBuilder<'a>where
T: ExtendsImageMemoryBarrier,
Prepends the given extension struct between the root and the first pointer. This
method only exists on structs that can be passed to a function directly. Only
valid extension structs can be pushed into the chain.
If the chain looks like A -> B -> C
, and you call builder.push_next(&mut D)
, then the
chain will look like A -> D -> B -> C
.
sourcepub fn build(self) -> ImageMemoryBarrier
pub fn build(self) -> ImageMemoryBarrier
Calling build will discard all the lifetime information. Only call this if
necessary! Builders implement Deref
targeting their corresponding Vulkan struct,
so references to builders can be passed directly to Vulkan functions.
Trait Implementations§
source§impl<'a> Deref for ImageMemoryBarrierBuilder<'a>
impl<'a> Deref for ImageMemoryBarrierBuilder<'a>
§type Target = ImageMemoryBarrier
type Target = ImageMemoryBarrier
The resulting type after dereferencing.
source§impl<'a> DerefMut for ImageMemoryBarrierBuilder<'a>
impl<'a> DerefMut for ImageMemoryBarrierBuilder<'a>
Auto Trait Implementations§
impl<'a> RefUnwindSafe for ImageMemoryBarrierBuilder<'a>
impl<'a> !Send for ImageMemoryBarrierBuilder<'a>
impl<'a> !Sync for ImageMemoryBarrierBuilder<'a>
impl<'a> Unpin for ImageMemoryBarrierBuilder<'a>
impl<'a> UnwindSafe for ImageMemoryBarrierBuilder<'a>
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
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn 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>
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)
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)
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.