pub enum AcquireOutcome {
Acquired,
Reconfigured,
Lost,
Skipped,
}Expand description
The outcome of a single acquire call — the first half of the two-phase present seam (acquire + submit), itself the second phase of the render pipeline after encode.
A shell that times the swapchain acquire (the blocking vsync/present
wait) separately from the submit (blit + queue-submit + present) branches
on this to decide whether submitting is worthwhile. Only Self::Acquired
carries a stashed swapchain texture for the submit call to draw into; every
other variant is terminal and maps to a FrameOutcome with no submit.
Variants§
Acquired
The swapchain texture was acquired and stashed; the submit call draws
into it and presents it. Maps to FrameOutcome::Rendered once
submitted.
Reconfigured
The surface was stale and has been reconfigured internally; no texture was
stashed. Maps to FrameOutcome::Redraw — the shell should request
another frame against the fresh configuration.
Lost
The surface was lost and has been dropped; the machine is now in
SurfacePhase::SurfaceLost. Maps to FrameOutcome::SurfaceLost — the
shell must recreate the surface via on_surface_created.
Skipped
No renderable surface (NoSurface/SurfaceLost) or a transient acquire
failure: nothing was stashed and nothing was queued. Maps to
FrameOutcome::Skipped.
Trait Implementations§
Source§impl Clone for AcquireOutcome
impl Clone for AcquireOutcome
Source§fn clone(&self) -> AcquireOutcome
fn clone(&self) -> AcquireOutcome
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for AcquireOutcome
Source§impl Debug for AcquireOutcome
impl Debug for AcquireOutcome
impl Eq for AcquireOutcome
Source§impl PartialEq for AcquireOutcome
impl PartialEq for AcquireOutcome
impl StructuralPartialEq for AcquireOutcome
Auto Trait Implementations§
impl Freeze for AcquireOutcome
impl RefUnwindSafe for AcquireOutcome
impl Send for AcquireOutcome
impl Sync for AcquireOutcome
impl Unpin for AcquireOutcome
impl UnsafeUnpin for AcquireOutcome
impl UnwindSafe for AcquireOutcome
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.