#[non_exhaustive]pub enum PlanePath {
AtomicCursor,
AtomicOverlay,
Legacy,
}Expand description
How the cursor reaches the screen.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
AtomicCursor
A dedicated cursor plane, driven atomically.
The best case: per-CRTC hardware with no z-ordering to negotiate.
AtomicOverlay
An overlay plane, driven atomically.
For hardware with no cursor plane, or whose cursor plane can take none
of CURSOR_FORMATS. Costs an overlay the compositor might have wanted.
Legacy
drmModeSetCursor, the legacy path.
No atomic commit, so the cursor cannot be coalesced with a frame and cannot be rotated. Last resort.
Trait Implementations§
impl Copy for PlanePath
impl Eq for PlanePath
impl StructuralPartialEq for PlanePath
Auto Trait Implementations§
impl Freeze for PlanePath
impl RefUnwindSafe for PlanePath
impl Send for PlanePath
impl Sync for PlanePath
impl Unpin for PlanePath
impl UnsafeUnpin for PlanePath
impl UnwindSafe for PlanePath
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