- Describes surface properties used to composite a frame. This is used to compare compositions between frames.
- Optional features that can be opted-out of when compositing, possibly allowing a fast path to be selected.
- The list of tiles to be drawn this frame
- Describes the properties that identify a surface composition uniquely.
- Describes the geometry and surface of a tile to be composited
- Describes properties that identify a tile composition uniquely. The backing surface for this tile.
- Information about a plane in a YUV or RGB surface.
- Describes information about drawing a primitive as a compositor surface. For now, we support only YUV images as compositor surfaces, but in future this will also support RGBA images.
- Information about the underlying data buffer of a mapped tile.
- An arbitrary identifier for a native (OS compositor) surface
- Information about a bound surface that the native compositor returns to WR.
- Describes an operation to apply to a native surface
- Occluder 🔒Information about an opaque surface used to occlude tiles.
- List of registered occluders.
- An ExternalSurfaceDescriptor that has had image keys resolved to texture handles. This contains all the information that the compositor step in renderer needs to know.
- Descriptor for a locked surface that will be directly composited by SWGL.
- The surface format for a tile being composited.
- Describes the source surface information for a tile to be composited. This is the analog of the TileSurface type, with target surface information resolved such that it can be used by the renderer.
- Public interface specified in
RendererOptionsthat configures how WR compositing will operate.
- This is a representation of
Compositortrait present. This allows it to be freely copied to other threads, such as the render backend where the frame builder can access it.
- Describes details of an operation to apply to a native surface
- The backing surface kind for a tile. Same as
TileSurface, minus the texture cache handles, visibility masks etc.
- Defines an interface to a native (OS level) compositor. If supplied by the client application, then picture cache slices will be composited by the OS compositor, rather than drawn via WR batches.
- A Compositor variant that supports mapping tiles into CPU memory.
- Defines an interface to a non-native (application-level) Compositor which handles partial present. This is required if webrender must query the backbuffer’s age. TODO: Use the Compositor trait for native and non-native compositors, and integrate this functionality there.
- The transform type to apply to Compositor surfaces.