#[non_exhaustive]pub struct LayerPlacement {
pub layer: LayerId,
pub placement: Placement,
pub plane_id: Option<u32>,
pub plane_rotation_bits: u64,
}Expand description
One layer’s outcome.
The default is the safe one: unassigned, on no plane. A placement nothing filled in describes a layer that did not reach the screen, which is a smaller claim than naming a plane it does not have.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.layer: LayerIdWhich layer.
placement: PlacementHow it reached scanout.
plane_id: Option<u32>The plane its content scanned out on, or None when unassigned.
For a composited layer this is the canvas plane, not a plane of its own.
plane_rotation_bits: u64The assigned plane’s supported rotate/reflect mask, for an
AssignedToPlane layer; 0 otherwise.
Lets a producer decide whether its requested angle can land on the plane it was given or needs pre-rotation.
Trait Implementations§
Source§impl Clone for LayerPlacement
impl Clone for LayerPlacement
impl Copy for LayerPlacement
Source§impl Debug for LayerPlacement
impl Debug for LayerPlacement
Source§impl Default for LayerPlacement
impl Default for LayerPlacement
Source§fn default() -> Self
fn default() -> Self
Unassigned, on no plane, for no layer.
Written by hand rather than derived so LayerId does not have to gain
a Default it has no use for elsewhere – an id is something the scene
hands out, and one a caller could conjure would be a way to address a
layer that does not exist.