Struct screen_13::prelude::vk::ImageMemoryBarrier2Builder
source · pub struct ImageMemoryBarrier2Builder<'a> { /* private fields */ }
Implementations§
source§impl<'a> ImageMemoryBarrier2Builder<'a>
impl<'a> ImageMemoryBarrier2Builder<'a>
pub fn src_stage_mask( self, src_stage_mask: PipelineStageFlags2 ) -> ImageMemoryBarrier2Builder<'a>
pub fn src_access_mask( self, src_access_mask: AccessFlags2 ) -> ImageMemoryBarrier2Builder<'a>
pub fn dst_stage_mask( self, dst_stage_mask: PipelineStageFlags2 ) -> ImageMemoryBarrier2Builder<'a>
pub fn dst_access_mask( self, dst_access_mask: AccessFlags2 ) -> ImageMemoryBarrier2Builder<'a>
pub fn old_layout( self, old_layout: ImageLayout ) -> ImageMemoryBarrier2Builder<'a>
pub fn new_layout( self, new_layout: ImageLayout ) -> ImageMemoryBarrier2Builder<'a>
pub fn src_queue_family_index( self, src_queue_family_index: u32 ) -> ImageMemoryBarrier2Builder<'a>
pub fn dst_queue_family_index( self, dst_queue_family_index: u32 ) -> ImageMemoryBarrier2Builder<'a>
pub fn image(self, image: Image) -> ImageMemoryBarrier2Builder<'a>
pub fn subresource_range( self, subresource_range: ImageSubresourceRange ) -> ImageMemoryBarrier2Builder<'a>
sourcepub fn push_next<T>(self, next: &'a mut T) -> ImageMemoryBarrier2Builder<'a>where
T: ExtendsImageMemoryBarrier2,
pub fn push_next<T>(self, next: &'a mut T) -> ImageMemoryBarrier2Builder<'a>where
T: ExtendsImageMemoryBarrier2,
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) -> ImageMemoryBarrier2
pub fn build(self) -> ImageMemoryBarrier2
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 ImageMemoryBarrier2Builder<'a>
impl<'a> Deref for ImageMemoryBarrier2Builder<'a>
§type Target = ImageMemoryBarrier2
type Target = ImageMemoryBarrier2
The resulting type after dereferencing.
source§impl<'a> DerefMut for ImageMemoryBarrier2Builder<'a>
impl<'a> DerefMut for ImageMemoryBarrier2Builder<'a>
Auto Trait Implementations§
impl<'a> RefUnwindSafe for ImageMemoryBarrier2Builder<'a>
impl<'a> !Send for ImageMemoryBarrier2Builder<'a>
impl<'a> !Sync for ImageMemoryBarrier2Builder<'a>
impl<'a> Unpin for ImageMemoryBarrier2Builder<'a>
impl<'a> UnwindSafe for ImageMemoryBarrier2Builder<'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.