pub struct PresentNode<B: Backend> { /* private fields */ }
Expand description
Node that presents images to the surface.
Implementations§
Source§impl<B> PresentNode<B>where
B: Backend,
impl<B> PresentNode<B>where
B: Backend,
Sourcepub fn builder(
factory: &Factory<B>,
surface: Surface<B>,
image: ImageId,
) -> PresentBuilder<B>
pub fn builder( factory: &Factory<B>, surface: Surface<B>, image: ImageId, ) -> PresentBuilder<B>
Node builder. By default attempts to use 3 images in the swapchain with present mode priority:
Mailbox > Fifo > Relaxed > Immediate.
You can query the real image count and present mode which will be used with
PresentBuilder::image_count()
and PresentBuilder::present_mode()
.
Trait Implementations§
Source§impl<B, T> DynNode<B, T> for PresentNode<B>
impl<B, T> DynNode<B, T> for PresentNode<B>
Source§unsafe fn run<'a>(
&mut self,
ctx: &GraphContext<B>,
factory: &Factory<B>,
queue: &mut Queue<B>,
_aux: &T,
_frames: &Frames<B>,
waits: &[(&'a B::Semaphore, PipelineStage)],
signals: &[&'a B::Semaphore],
fence: Option<&mut Fence<B>>,
)
unsafe fn run<'a>( &mut self, ctx: &GraphContext<B>, factory: &Factory<B>, queue: &mut Queue<B>, _aux: &T, _frames: &Frames<B>, waits: &[(&'a B::Semaphore, PipelineStage)], signals: &[&'a B::Semaphore], fence: Option<&mut Fence<B>>, )
Record commands required by node.
Recorded buffers go into
submits
.impl<B: Backend> Send for PresentNode<B>
impl<B: Backend> Sync for PresentNode<B>
Auto Trait Implementations§
impl<B> Freeze for PresentNode<B>
impl<B> RefUnwindSafe for PresentNode<B>where
<B as Backend>::Semaphore: RefUnwindSafe,
<B as Backend>::CommandPool: RefUnwindSafe,
<B as Backend>::Surface: RefUnwindSafe,
<B as Backend>::Swapchain: RefUnwindSafe,
<B as Backend>::Image: RefUnwindSafe,
<B as Backend>::CommandBuffer: RefUnwindSafe,
<B as Backend>::Memory: RefUnwindSafe,
impl<B> Unpin for PresentNode<B>
impl<B> UnwindSafe for PresentNode<B>where
<B as Backend>::Semaphore: UnwindSafe,
<B as Backend>::CommandPool: UnwindSafe,
<B as Backend>::Surface: UnwindSafe,
<B as Backend>::Swapchain: UnwindSafe,
<B as Backend>::CommandBuffer: RefUnwindSafe,
<B as Backend>::Image: UnwindSafe,
<B as Backend>::Memory: UnwindSafe + RefUnwindSafe,
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
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more