[][src]Enum wayland_protocols::presentation_time::server::wp_presentation_feedback::Kind

#[repr(u32)]
pub enum Kind { Vsync, HwClock, HwCompletion, ZeroCopy, }

bitmask of flags in presented event

These flags provide information about how the presentation of the related content update was done. The intent is to help clients assess the reliability of the feedback and the visual quality with respect to possible tearing and timings. The flags are:

VSYNC: The presentation was synchronized to the "vertical retrace" by the display hardware such that tearing does not happen. Relying on user space scheduling is not acceptable for this flag. If presentation is done by a copy to the active frontbuffer, then it must guarantee that tearing cannot happen.

HW_CLOCK: The display hardware provided measurements that the hardware driver converted into a presentation timestamp. Sampling a clock in user space is not acceptable for this flag.

HW_COMPLETION: The display hardware signalled that it started using the new image content. The opposite of this is e.g. a timer being used to guess when the display hardware has switched to the new image content.

ZERO_COPY: The presentation of this update was done zero-copy. This means the buffer from the client was given to display hardware as is, without copying it. Compositing with OpenGL counts as copying, even if textured directly from the client buffer. Possible zero-copy cases include direct scanout of a fullscreen surface and a surface on a hardware overlay.

Variants

Vsync

presentation was vsync'd

HwClock

hardware provided the presentation timestamp

HwCompletion

hardware signalled the start of the presentation

ZeroCopy

presentation was done zero-copy

Methods

impl Kind[src]

pub fn from_raw(n: u32) -> Option<Kind>[src]

pub fn to_raw(&self) -> u32[src]

Trait Implementations

impl PartialEq<Kind> for Kind[src]

#[must_use]
fn ne(&self, other: &Rhs) -> bool
1.0.0[src]

This method tests for !=.

impl Clone for Kind[src]

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Copy for Kind[src]

impl Debug for Kind[src]

Auto Trait Implementations

impl Send for Kind

impl Sync for Kind

Blanket Implementations

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

type Owned = T

The resulting type after obtaining ownership.

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

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

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.

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

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

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