Changes between Version 31 and Version 32 of CoordinatedGraphicsSystem


Ignore:
Timestamp:
Mar 7, 2017 8:35:47 AM (7 years ago)
Author:
Konstantin Tokarev
Comment:

Updated TiledBackingStore and CoordinatedTile description to reflect current architecture (CoordinatedTile was merged into Tile)

Legend:

Unmodified
Added
Removed
Modified
  • CoordinatedGraphicsSystem

    v31 v32  
    165165=== Classes ===
    166166'''[/browser/trunk/Source/WebCore/platform/graphics/TiledBackingStore.cpp TiledBackingStore]'''  is the class that makes the decisions about tiles, creating or destroying them, dealing with the cover-rect heuristics that are based on the scroll position, contents size and panning trajectory.
    167 TiledBackingStore relies on an abstract WebCore::Tile implementation, allowing for different decisions around drawing the tiles synchronously or asynchronously.
    168 
    169 '''[/browser/trunk/Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.cpp CoordinatedTile]''' is a web-process backend for WebCore::Tile used by the TiledBackingStore, allowing software rendering of tiles into the coordinated graphics system. It's the tile-equivalent of CoordinatedGraphicsLayer, maintaining a tile-ID map. It uses a special client (a superclass of LayerTreeCoordinator) to allocate content surfaces and send the messages to the UI process.
     167TiledBackingStore relies on an WebCore::Tile implementation, allowing for different decisions around drawing the tiles synchronously or asynchronously.
     168
     169'''[/browser/trunk/Source/WebCore/platform/graphics/texmap/coordinated/Tile.cpp Tile]''' is used by the TiledBackingStore, allowing software rendering of tiles into the coordinated graphics system. It's the tile-equivalent of CoordinatedGraphicsLayer, maintaining a tile-ID map. It uses a special client (a superclass of LayerTreeCoordinator) to allocate content surfaces and send the messages to the UI process.
    170170
    171171'''[/browser/trunk/Source/WebKit2/Shared/ShareableBitmap.cpp ShareableBitmap]''' is used by Apple and other ports, but in this context it is used as a software backing-store for content updates. When there is no platform-specific GraphicsSurface implementation, ShareableBitmap acts as a fallback that uses standard shared memory as a backing store for the update, and then updates the TextureMapper GPU backing-stores (BitmapTextures) with the contents from that shared memory.