tree: 4b2709ea2baed31554a03a43ab053bd8a408aa94 [path history] [tgz]
  1. bsp_compare_result.h
  2. bsp_tree.cc
  3. bsp_tree.h
  4. bsp_tree_perftest.cc
  5. bsp_tree_unittest.cc
  6. bsp_walk_action.cc
  7. bsp_walk_action.h
  8. ca_layer_overlay.cc
  9. ca_layer_overlay.h
  10. color_lut_cache.cc
  11. color_lut_cache.h
  12. copy_output_scaling_pixeltest.cc
  13. dc_layer_overlay.cc
  14. dc_layer_overlay.h
  15. DEPS
  16. direct_renderer.cc
  17. direct_renderer.h
  18. display.cc
  19. display.h
  20. display_client.h
  21. display_perftest.cc
  22. display_resource_provider.cc
  23. display_resource_provider.h
  24. display_resource_provider_unittest.cc
  25. display_scheduler.cc
  26. display_scheduler.h
  27. display_scheduler_unittest.cc
  28. display_unittest.cc
  29. draw_polygon.cc
  30. draw_polygon.h
  31. draw_polygon_unittest.cc
  32. dynamic_geometry_binding.cc
  33. dynamic_geometry_binding.h
  34. geometry_binding.cc
  35. geometry_binding.h
  36. gl_renderer.cc
  37. gl_renderer.h
  38. gl_renderer_copier.cc
  39. gl_renderer_copier.h
  40. gl_renderer_copier_pixeltest.cc
  41. gl_renderer_copier_unittest.cc
  42. gl_renderer_draw_cache.cc
  43. gl_renderer_draw_cache.h
  44. gl_renderer_unittest.cc
  45. layer_quad.cc
  46. layer_quad.h
  47. layer_quad_unittest.cc
  48. output_surface.cc
  49. output_surface.h
  50. output_surface_client.h
  51. output_surface_frame.cc
  52. output_surface_frame.h
  53. overlay_candidate.cc
  54. overlay_candidate.h
  55. overlay_candidate_validator.h
  56. overlay_processor.cc
  57. overlay_processor.h
  58. overlay_strategy_fullscreen.cc
  59. overlay_strategy_fullscreen.h
  60. overlay_strategy_single_on_top.cc
  61. overlay_strategy_single_on_top.h
  62. overlay_strategy_underlay.cc
  63. overlay_strategy_underlay.h
  64. overlay_strategy_underlay_cast.cc
  65. overlay_strategy_underlay_cast.h
  66. overlay_unittest.cc
  67. program_binding.cc
  68. program_binding.h
  69. README.md
  70. renderer_pixeltest.cc
  71. renderer_utils.cc
  72. renderer_utils.h
  73. resource_fence.h
  74. resource_metadata.cc
  75. resource_metadata.h
  76. scoped_gpu_memory_buffer_texture.cc
  77. scoped_gpu_memory_buffer_texture.h
  78. scoped_render_pass_texture.cc
  79. scoped_render_pass_texture.h
  80. shader.cc
  81. shader.h
  82. shader_unittest.cc
  83. shared_bitmap_manager.h
  84. skia_output_surface.cc
  85. skia_output_surface.h
  86. skia_renderer.cc
  87. skia_renderer.h
  88. software_output_device.cc
  89. software_output_device.h
  90. software_output_device_client.h
  91. software_renderer.cc
  92. software_renderer.h
  93. software_renderer_unittest.cc
  94. static_geometry_binding.cc
  95. static_geometry_binding.h
  96. surface_aggregator.cc
  97. surface_aggregator.h
  98. surface_aggregator_perftest.cc
  99. surface_aggregator_pixeltest.cc
  100. surface_aggregator_unittest.cc
  101. sync_query_collection.cc
  102. sync_query_collection.h
  103. texture_deleter.cc
  104. texture_deleter.h
  105. texture_deleter_unittest.cc
  106. vulkan_renderer.cc
  107. vulkan_renderer.h
components/viz/service/display/README.md

display/

This directory is the implementation of the Display Compositor.

The Display Compositor combines frames submitted to the viz service through frame sinks, and combines them into a single gpu or software resource to be presented to the user.

This directory is agnostic w.r.t. platform-specific presentation details, which are abstracted behind OutputSurface and SoftwareOutputDevice. Through these APIs, it supports either compositing gpu resources (textures) into a single texture/framebuffer, or software resources (bitmaps) into a single bitmap. Note that the platform specific implementations details should live outside of display/ (for example, they can live in display_embedder/ instead).

To understand surface and surface aggregation better, please refer to Surface and Surface Aggregation slides.