Name Description Size
AsyncCompositionManager.cpp 56814
AsyncCompositionManager.h Manage async composition effects. This class is only used with OMTC and only lives on the compositor thread. It is a layer on top of the layer manager (LayerManagerComposite) which deals with elements of composition which are usually dealt with by dom or layout when main thread rendering, but which can short circuit that stuff to directly affect layers as they are composited, for example, off-main thread animation, async video, async pan/zoom. 10928
CanvasLayerComposite.cpp 4523
CanvasLayerComposite.h GFX_CanvasLayerComposite_H 2339
ColorLayerComposite.cpp 2594
ColorLayerComposite.h GFX_ColorLayerComposite_H 1954
CompositableHost.cpp static 5160
CompositableHost.h The compositor-side counterpart to CompositableClient. Responsible for updating textures and data about textures from IPC and how textures are composited (tiling, double buffering, etc.). Update (for images/canvases) and UpdateThebes (for Thebes) are called during the layers transaction to update the Compositbale's textures from the content side. The actual update (and any syncronous upload) is done by the TextureHost, but it is coordinated by the CompositableHost. Composite is called by the owning layer when it is composited. CompositableHost will use its TextureHost(s) and call Compositor::DrawQuad to do the actual rendering. 9996
ConsolasFontData.h 33160
ContainerLayerComposite.cpp 29700
ContainerLayerComposite.h 7381
ContentHost.cpp 15419
ContentHost.h ContentHosts are used for compositing Painted layers, always matched by a ContentClient of the same type. ContentHosts support only UpdateThebes(), not Update(). 8371
Diagnostics.cpp 3487
Diagnostics.h 2668
FPSCounter.cpp Returns true if we have another timestamp that is valid and is within the given duration that we're interested in. Duration is in seconds 10407
FPSCounter.h The FPSCounter tracks how often we composite or have a layer transaction. At each composite / layer transaction, we record the timestamp. After kFpsDumpInterval number of composites / transactions, we calculate the average and standard deviation of frames composited. We dump a histogram, which allows for more statistically significant measurements. We also dump absolute frame composite times to a file on the device. The FPS counters displayed on screen are based on how many frames we composited within the last ~1 second. The more accurate measurement is to grab the histogram from stderr or grab the FPS timestamp dumps written to file. To enable dumping to file, enable layers.acceleration.draw-fps.write-to-file pref. double AddFrameAndGetFps(TimeStamp aCurrentFrame) { AddFrame(aCurrentFrame); return EstimateFps(aCurrentFrame); } To enable printing histogram data to logcat, enable layers.acceleration.draw-fps.print-histogram Use the HasNext(), GetNextTimeStamp() like an iterator to read the data, backwards in time. This abstracts away the mechanics of reading the data. 3752
FontData.h 21752
FrameUniformityData.cpp 4201
FrameUniformityData.h 2254
GPUVideoTextureHost.cpp 9579
GPUVideoTextureHost.h 3210
ImageComposite.cpp static 14267
ImageComposite.h Implements Image selection logic. 4676
ImageHost.cpp 15311
ImageHost.h ImageHost. Works with ImageClientSingle and ImageClientBuffered 5207
ImageLayerComposite.cpp 7285
ImageLayerComposite.h GFX_ImageLayerComposite_H 2320
LayerManagerComposite.cpp 60507
LayerManagerComposite.h 26103
LayerManagerCompositeUtils.h 6966
PaintCounter.cpp 2713
PaintCounter.h 1678
PaintedLayerComposite.cpp 5389
PaintedLayerComposite.h PaintedLayers use ContentHosts for their compsositable host. By using different ContentHosts, PaintedLayerComposite support tiled and non-tiled PaintedLayers and single or double buffering. 2589
TextRenderer.cpp 8336
TextRenderer.h 2947
TextureHost.cpp TextureParent is the host-side IPDL glue between TextureClient and TextureHost. It is an IPDL actor just like LayerParent, CompositableParent, etc. 45325
TextureHost.h A view on a TextureHost where the texture is internally represented as tiles (contrast with a tiled buffer, where each texture is a tile). For iteration by the texture's buffer host. This is only useful when the underlying surface is too big to fit in one device texture, which forces us to split it in smaller parts. Tiled Compositable is a different thing. 35372
TiledContentHost.cpp = NO_FLAGS 23867
TiledContentHost.h aCompress, ignored for host tiles 10027
X11TextureHost.cpp 2900
X11TextureHost.h 1879