struct UberStructLayer
Defined at line 45 of file ../../src/ui/scenic/lib/flatland/uber_struct.h
The presented state of a single Flatland2 layer: what to draw, plus the properties
which say where and how to draw it. `UberStruct::layers` maps each `LayerHandle` to
one of these, and `UberStruct::layer_stacks` lists the handles which make up each
stack. The same layer may appear in more than one stack; the map holds a single entry
per handle.
Both Flatland API versions produce these. Flatland2 sessions populate them directly;
Flatland1 sessions go through the facade, which represents each piece of legacy
image/rect content as a single-layer stack.
This is a snapshot of client-specified state, not render-ready state. Values are
stored as the client set them; resolution against the scene graph (inherited opacity,
clipping, the global transform) happens in `ComputeGlobalResolvedLayers()`, which emits
the `ResolvedLayer`s that the renderer and display path consume.
The session-side counterpart is `LayerObject` (flatland_session_types.h), which holds
the properties of every composition mode simultaneously; at `Present()` only the active
mode's properties are copied here. Consequently `content` says everything about what
the layer draws: there is no inactive-mode state in the snapshot. Like the rest of
`UberStruct`, this must remain a pure value type: no references to external resources,
no session-lifetime state.
Public Members
variant content
CommonProperties common
Public Methods
bool operator== (const UberStructLayer & )
Defined at line 107 of file ../../src/ui/scenic/lib/flatland/uber_struct.h