[][src]Enum bedrock::PresentMode

#[repr(u32)]
pub enum PresentMode {
    Immediate,
    Mailbox,
    FIFO,
    FIFORelaxed,
}

Presentation mode supported for a surface

Variants

Immediate

The presentatino engine does not wait for a vertical blanking period to update the current image, meaning this mode may result in visible tearing

Mailbox

The presentation engine waits for the next vertical blanking period to update the current image. Tearing cannot be observed. An internal single-entry queue is used to hold pending presentation requests. If the queue is full when a new presentation request is received, the new request replaces the existing entry, and any images associated with the prior entry become available for re-use by the application

FIFO

The presentation engine waits for the next vertical blanking period to update the current image. Tearing cannot be observed. An internal queue is used to hold pending presentation requests. New requests are appended to the end of the queue, and one request is removed from the beginning of the queue and processed during each vertical blanking period in which the queue is non-empty.

FIFORelaxed

The presentation engine generally waits for the next vertical blanking period to update the currnt image. If a vertical blanking period has already passed since the last update of the current image then the presentation engine does not wait for another vertical blanking period for the update, meaning this mode may result in visible tearing in this case

Trait Implementations

impl Clone for PresentMode[src]

impl Copy for PresentMode[src]

impl Debug for PresentMode[src]

impl Eq for PresentMode[src]

impl PartialEq<PresentMode> for PresentMode[src]

impl StructuralEq for PresentMode[src]

impl StructuralPartialEq for PresentMode[src]

Auto Trait Implementations

impl RefUnwindSafe for PresentMode

impl Send for PresentMode

impl Sync for PresentMode

impl Unpin for PresentMode

impl UnwindSafe for PresentMode

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.