#[repr(u32)]
pub enum Kind {
Vsync,
HwClock,
HwCompletion,
ZeroCopy,
}Expand description
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