OLD | NEW |
1 // Copyright 2011 The Chromium Authors. All rights reserved. | 1 // Copyright 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "cc/trees/layer_tree_host_impl.h" | 5 #include "cc/trees/layer_tree_host_impl.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <algorithm> | 10 #include <algorithm> |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
58 #include "cc/output/delegating_renderer.h" | 58 #include "cc/output/delegating_renderer.h" |
59 #include "cc/output/gl_renderer.h" | 59 #include "cc/output/gl_renderer.h" |
60 #include "cc/output/software_renderer.h" | 60 #include "cc/output/software_renderer.h" |
61 #include "cc/output/texture_mailbox_deleter.h" | 61 #include "cc/output/texture_mailbox_deleter.h" |
62 #include "cc/quads/render_pass_draw_quad.h" | 62 #include "cc/quads/render_pass_draw_quad.h" |
63 #include "cc/quads/shared_quad_state.h" | 63 #include "cc/quads/shared_quad_state.h" |
64 #include "cc/quads/solid_color_draw_quad.h" | 64 #include "cc/quads/solid_color_draw_quad.h" |
65 #include "cc/quads/texture_draw_quad.h" | 65 #include "cc/quads/texture_draw_quad.h" |
66 #include "cc/raster/bitmap_raster_buffer_provider.h" | 66 #include "cc/raster/bitmap_raster_buffer_provider.h" |
67 #include "cc/raster/gpu_raster_buffer_provider.h" | 67 #include "cc/raster/gpu_raster_buffer_provider.h" |
68 #include "cc/raster/gpu_rasterizer.h" | |
69 #include "cc/raster/one_copy_raster_buffer_provider.h" | 68 #include "cc/raster/one_copy_raster_buffer_provider.h" |
70 #include "cc/raster/raster_buffer_provider.h" | 69 #include "cc/raster/raster_buffer_provider.h" |
71 #include "cc/raster/synchronous_task_graph_runner.h" | 70 #include "cc/raster/synchronous_task_graph_runner.h" |
72 #include "cc/raster/zero_copy_raster_buffer_provider.h" | 71 #include "cc/raster/zero_copy_raster_buffer_provider.h" |
73 #include "cc/resources/memory_history.h" | 72 #include "cc/resources/memory_history.h" |
74 #include "cc/resources/resource_pool.h" | 73 #include "cc/resources/resource_pool.h" |
75 #include "cc/resources/ui_resource_bitmap.h" | 74 #include "cc/resources/ui_resource_bitmap.h" |
76 #include "cc/scheduler/delay_based_time_source.h" | 75 #include "cc/scheduler/delay_based_time_source.h" |
77 #include "cc/tiles/eviction_tile_priority_queue.h" | 76 #include "cc/tiles/eviction_tile_priority_queue.h" |
78 #include "cc/tiles/gpu_image_decode_controller.h" | 77 #include "cc/tiles/gpu_image_decode_controller.h" |
(...skipping 2134 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2213 DCHECK(worker_context_provider); | 2212 DCHECK(worker_context_provider); |
2214 | 2213 |
2215 *resource_pool = | 2214 *resource_pool = |
2216 ResourcePool::Create(resource_provider_.get(), GetTaskRunner()); | 2215 ResourcePool::Create(resource_provider_.get(), GetTaskRunner()); |
2217 | 2216 |
2218 int msaa_sample_count = use_msaa_ ? RequestedMSAASampleCount() : 0; | 2217 int msaa_sample_count = use_msaa_ ? RequestedMSAASampleCount() : 0; |
2219 | 2218 |
2220 *raster_buffer_provider = base::MakeUnique<GpuRasterBufferProvider>( | 2219 *raster_buffer_provider = base::MakeUnique<GpuRasterBufferProvider>( |
2221 compositor_context_provider, worker_context_provider, | 2220 compositor_context_provider, worker_context_provider, |
2222 resource_provider_.get(), settings_.use_distance_field_text, | 2221 resource_provider_.get(), settings_.use_distance_field_text, |
2223 msaa_sample_count); | 2222 msaa_sample_count, settings_.async_worker_context_enabled); |
2224 return; | 2223 return; |
2225 } | 2224 } |
2226 | 2225 |
2227 DCHECK(GetRendererCapabilities().using_image); | 2226 DCHECK(GetRendererCapabilities().using_image); |
2228 | 2227 |
2229 bool use_zero_copy = settings_.use_zero_copy; | 2228 bool use_zero_copy = settings_.use_zero_copy; |
2230 // TODO(reveman): Remove this when mojo supports worker contexts. | 2229 // TODO(reveman): Remove this when mojo supports worker contexts. |
2231 // crbug.com/522440 | 2230 // crbug.com/522440 |
2232 if (!worker_context_provider) { | 2231 if (!worker_context_provider) { |
2233 LOG(ERROR) | 2232 LOG(ERROR) |
(...skipping 15 matching lines...) Expand all Loading... |
2249 ResourcePool::Create(resource_provider_.get(), GetTaskRunner()); | 2248 ResourcePool::Create(resource_provider_.get(), GetTaskRunner()); |
2250 | 2249 |
2251 const int max_copy_texture_chromium_size = | 2250 const int max_copy_texture_chromium_size = |
2252 compositor_context_provider->ContextCapabilities() | 2251 compositor_context_provider->ContextCapabilities() |
2253 .max_copy_texture_chromium_size; | 2252 .max_copy_texture_chromium_size; |
2254 | 2253 |
2255 *raster_buffer_provider = base::MakeUnique<OneCopyRasterBufferProvider>( | 2254 *raster_buffer_provider = base::MakeUnique<OneCopyRasterBufferProvider>( |
2256 GetTaskRunner(), compositor_context_provider, worker_context_provider, | 2255 GetTaskRunner(), compositor_context_provider, worker_context_provider, |
2257 resource_provider_.get(), max_copy_texture_chromium_size, | 2256 resource_provider_.get(), max_copy_texture_chromium_size, |
2258 settings_.use_partial_raster, settings_.max_staging_buffer_usage_in_bytes, | 2257 settings_.use_partial_raster, settings_.max_staging_buffer_usage_in_bytes, |
2259 settings_.renderer_settings.preferred_tile_format); | 2258 settings_.renderer_settings.preferred_tile_format, |
| 2259 settings_.async_worker_context_enabled); |
2260 } | 2260 } |
2261 | 2261 |
2262 void LayerTreeHostImpl::SetLayerTreeMutator(LayerTreeMutator* mutator) { | 2262 void LayerTreeHostImpl::SetLayerTreeMutator(LayerTreeMutator* mutator) { |
2263 TRACE_EVENT0(TRACE_DISABLED_BY_DEFAULT("compositor-worker"), | 2263 TRACE_EVENT0(TRACE_DISABLED_BY_DEFAULT("compositor-worker"), |
2264 "LayerTreeHostImpl::SetLayerTreeMutator"); | 2264 "LayerTreeHostImpl::SetLayerTreeMutator"); |
2265 mutator_ = mutator; | 2265 mutator_ = mutator; |
2266 } | 2266 } |
2267 | 2267 |
2268 void LayerTreeHostImpl::CleanUpTileManagerAndUIResources() { | 2268 void LayerTreeHostImpl::CleanUpTileManagerAndUIResources() { |
2269 ClearUIResources(); | 2269 ClearUIResources(); |
(...skipping 1742 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4012 const { | 4012 const { |
4013 return fixed_raster_scale_attempted_scale_change_history_.count() >= | 4013 return fixed_raster_scale_attempted_scale_change_history_.count() >= |
4014 kFixedRasterScaleAttemptedScaleChangeThreshold; | 4014 kFixedRasterScaleAttemptedScaleChangeThreshold; |
4015 } | 4015 } |
4016 | 4016 |
4017 void LayerTreeHostImpl::SetFixedRasterScaleAttemptedToChangeScale() { | 4017 void LayerTreeHostImpl::SetFixedRasterScaleAttemptedToChangeScale() { |
4018 fixed_raster_scale_attempted_scale_change_history_.set(0); | 4018 fixed_raster_scale_attempted_scale_change_history_.set(0); |
4019 } | 4019 } |
4020 | 4020 |
4021 } // namespace cc | 4021 } // namespace cc |
OLD | NEW |