Module composite

Source

Structs§

ClipRadius
CompositeDescriptor
Describes surface properties used to composite a frame. This is used to compare compositions between frames.
CompositeFeatures
Optional features that can be opted-out of when compositing, possibly allowing a fast path to be selected.
CompositeState
The list of tiles to be drawn this frame
CompositeStatePreallocator
CompositeSurfaceDescriptor
Describes the properties that identify a surface composition uniquely.
CompositeTile
Describes the geometry and surface of a tile to be composited
CompositeTileDescriptor
Describes properties that identify a tile composition uniquely. The backing surface for this tile.
CompositorCapabilities
CompositorClip
CompositorClipIndex
CompositorInputConfig
CompositorInputLayer
CompositorTransform
A transform for either a picture cache or external compositor surface, stored in the CompositeState structure. This allows conversions from local rects to raster or device rects, without access to the spatial tree (e.g. during the render step where dirty rects are calculated). Since we know that we only handle scale and offset transforms for these types, we can store a single ScaleOffset rather than 4x4 matrix here for efficiency.
CompositorTransformIndex
ExternalPlaneDescriptor
Information about a plane in a YUV or RGB surface.
ExternalSurfaceDescriptor
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.
MappedTileInfo
Information about the underlying data buffer of a mapped tile.
NativeSurfaceId
An arbitrary identifier for a native (OS compositor) surface
NativeSurfaceInfo
Information about a bound surface that the native compositor returns to WR.
NativeSurfaceOperation
Describes an operation to apply to a native surface
NativeTileId
Occluder 🔒
Information about an opaque surface used to occlude tiles.
Occluders
List of registered occluders.
OccludersScratchBuffers
This struct exists to provide a Default impl and allow #[serde(skip)] on the two frame vectors. Unfortunately FrameVec does not have a Default implementation (vectors only implement it with the global allocator).
OcclusionEvent 🔒
ResolvedExternalSurface
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.
ResolvedExternalSurfaceIndex
SWGLCompositeSurfaceInfo
Descriptor for a locked surface that will be directly composited by SWGL.
WindowProperties
WindowVisibility

Enums§

CompositeSurfaceFormat
The surface format for a tile being composited.
CompositeTileSurface
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.
CompositorConfig
Public interface specified in WebRenderOptions that configures how WR compositing will operate.
CompositorKind
This is a representation of CompositorConfig without the Compositor trait present. This allows it to be freely copied to other threads, such as the render backend where the frame builder can access it.
CompositorSurfaceKind
Which method is being used to draw a requested compositor surface
CompositorSurfaceUsage
ExternalSurfaceDependency
NativeSurfaceOperationDetails
Describes details of an operation to apply to a native surface
OcclusionEventKind 🔒
ResolvedExternalSurfaceColorData
TileKind
TileSurfaceKind
The backing surface kind for a tile. Same as TileSurface, minus the texture cache handles, visibility masks etc.

Traits§

Compositor
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.
LayerCompositor
MappableCompositor
A Compositor variant that supports mapping tiles into CPU memory.
PartialPresentCompositor
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.

Functions§

tile_kind

Type Aliases§

CompositorSurfaceTransform
The transform type to apply to Compositor surfaces.