OLD | NEW |
(Empty) | |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. |
| 4 |
| 5 #include "content/renderer/gpu/compositor_dependencies_impl.h" |
| 6 |
| 7 #include "content/child/child_gpu_memory_buffer_manager.h" |
| 8 #include "content/child/child_shared_bitmap_manager.h" |
| 9 #include "content/renderer/gpu/compositor_external_begin_frame_source.h" |
| 10 #include "content/renderer/render_thread_impl.h" |
| 11 #include "webkit/common/gpu/context_provider_web_context.h" |
| 12 |
| 13 namespace content { |
| 14 |
| 15 CompositorDependenciesImpl::CompositorDependenciesImpl( |
| 16 RenderThreadImpl* render_thread) |
| 17 : render_thread_(render_thread) { |
| 18 DCHECK(render_thread_); |
| 19 } |
| 20 |
| 21 bool CompositorDependenciesImpl::IsImplSidePaintingEnabled() { |
| 22 return render_thread_->is_impl_side_painting_enabled(); |
| 23 } |
| 24 bool CompositorDependenciesImpl::IsGpuRasterizationForced() { |
| 25 return render_thread_->is_gpu_rasterization_forced(); |
| 26 } |
| 27 bool CompositorDependenciesImpl::IsGpuRasterizationEnabled() { |
| 28 return render_thread_->is_gpu_rasterization_enabled(); |
| 29 } |
| 30 bool CompositorDependenciesImpl::IsLcdTextEnabled() { |
| 31 return render_thread_->is_lcd_text_enabled(); |
| 32 } |
| 33 bool CompositorDependenciesImpl::IsDistanceFieldTextEnabled() { |
| 34 return render_thread_->is_distance_field_text_enabled(); |
| 35 } |
| 36 bool CompositorDependenciesImpl::IsZeroCopyEnabled() { |
| 37 return render_thread_->is_zero_copy_enabled(); |
| 38 } |
| 39 bool CompositorDependenciesImpl::IsOneCopyEnabled() { |
| 40 return render_thread_->is_one_copy_enabled(); |
| 41 } |
| 42 uint32 CompositorDependenciesImpl::GetImageTextureTarget() { |
| 43 return render_thread_->use_image_texture_target(); |
| 44 } |
| 45 scoped_refptr<base::SingleThreadTaskRunner> |
| 46 CompositorDependenciesImpl::GetCompositorMainThreadTaskRunner() { |
| 47 return render_thread_->main_thread_compositor_task_runner(); |
| 48 } |
| 49 scoped_refptr<base::SingleThreadTaskRunner> |
| 50 CompositorDependenciesImpl::GetCompositorImplThreadTaskRunner() { |
| 51 return render_thread_->compositor_message_loop_proxy(); |
| 52 } |
| 53 cc::SharedBitmapManager* CompositorDependenciesImpl::GetSharedBitmapManager() { |
| 54 return render_thread_->shared_bitmap_manager(); |
| 55 } |
| 56 gpu::GpuMemoryBufferManager* |
| 57 CompositorDependenciesImpl::GetGpuMemoryBufferManager() { |
| 58 return render_thread_->gpu_memory_buffer_manager(); |
| 59 } |
| 60 RendererScheduler* CompositorDependenciesImpl::GetRendererScheduler() { |
| 61 return render_thread_->renderer_scheduler(); |
| 62 } |
| 63 cc::ContextProvider* |
| 64 CompositorDependenciesImpl::GetSharedMainThreadContextProvider() { |
| 65 return render_thread_->SharedMainThreadContextProvider().get(); |
| 66 } |
| 67 scoped_ptr<cc::BeginFrameSource> |
| 68 CompositorDependenciesImpl::CreateExternalBeginFrameSource(int routing_id) { |
| 69 #if defined(OS_ANDROID) |
| 70 if (SynchronousCompositorFactory* factory = |
| 71 SynchronousCompositorFactory::GetInstance()) { |
| 72 return factory->CreateExternalBeginFrameSource(routing_id); |
| 73 } |
| 74 #endif |
| 75 return make_scoped_ptr(new CompositorExternalBeginFrameSource( |
| 76 render_thread_->compositor_message_filter(), |
| 77 render_thread_->sync_message_filter(), routing_id)); |
| 78 } |
| 79 |
| 80 } // namespace content |
OLD | NEW |