OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 #ifndef CONTENT_RENDERER_RENDER_THREAD_IMPL_H_ | 5 #ifndef CONTENT_RENDERER_RENDER_THREAD_IMPL_H_ |
6 #define CONTENT_RENDERER_RENDER_THREAD_IMPL_H_ | 6 #define CONTENT_RENDERER_RENDER_THREAD_IMPL_H_ |
7 | 7 |
8 #include <set> | 8 #include <set> |
9 #include <string> | 9 #include <string> |
10 #include <vector> | 10 #include <vector> |
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
96 class GpuChannelHost; | 96 class GpuChannelHost; |
97 class IndexedDBDispatcher; | 97 class IndexedDBDispatcher; |
98 class InputHandlerManager; | 98 class InputHandlerManager; |
99 class MediaStreamCenter; | 99 class MediaStreamCenter; |
100 class MemoryObserver; | 100 class MemoryObserver; |
101 class MidiMessageFilter; | 101 class MidiMessageFilter; |
102 class NetInfoDispatcher; | 102 class NetInfoDispatcher; |
103 class P2PSocketDispatcher; | 103 class P2PSocketDispatcher; |
104 class PeerConnectionDependencyFactory; | 104 class PeerConnectionDependencyFactory; |
105 class PeerConnectionTracker; | 105 class PeerConnectionTracker; |
| 106 class RasterWorkerPool; |
106 class RenderProcessObserver; | 107 class RenderProcessObserver; |
107 class RendererBlinkPlatformImpl; | 108 class RendererBlinkPlatformImpl; |
108 class RendererDemuxerAndroid; | 109 class RendererDemuxerAndroid; |
109 class ResourceDispatchThrottler; | 110 class ResourceDispatchThrottler; |
110 class ResourceSchedulingFilter; | 111 class ResourceSchedulingFilter; |
111 class V8SamplingProfiler; | 112 class V8SamplingProfiler; |
112 class VideoCaptureImplManager; | 113 class VideoCaptureImplManager; |
113 class WebGraphicsContext3DCommandBufferImpl; | 114 class WebGraphicsContext3DCommandBufferImpl; |
114 class WebRTCIdentityService; | 115 class WebRTCIdentityService; |
115 | 116 |
(...skipping 195 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
311 // Returns a SingleThreadTaskRunner instance corresponding to the message loop | 312 // Returns a SingleThreadTaskRunner instance corresponding to the message loop |
312 // of the thread on which file operations should be run. Must be called | 313 // of the thread on which file operations should be run. Must be called |
313 // on the renderer's main thread. | 314 // on the renderer's main thread. |
314 scoped_refptr<base::SingleThreadTaskRunner> GetFileThreadMessageLoopProxy(); | 315 scoped_refptr<base::SingleThreadTaskRunner> GetFileThreadMessageLoopProxy(); |
315 | 316 |
316 // Returns a SingleThreadTaskRunner instance corresponding to the message loop | 317 // Returns a SingleThreadTaskRunner instance corresponding to the message loop |
317 // of the thread on which media operations should be run. Must be called | 318 // of the thread on which media operations should be run. Must be called |
318 // on the renderer's main thread. | 319 // on the renderer's main thread. |
319 scoped_refptr<base::SingleThreadTaskRunner> GetMediaThreadTaskRunner(); | 320 scoped_refptr<base::SingleThreadTaskRunner> GetMediaThreadTaskRunner(); |
320 | 321 |
| 322 // A SequencedTaskRunner instance that runs tasks on the raster worker pool. |
| 323 base::SequencedTaskRunner* GetWorkerSequencedTaskRunner(); |
| 324 |
321 // Causes the idle handler to skip sending idle notifications | 325 // Causes the idle handler to skip sending idle notifications |
322 // on the two next scheduled calls, so idle notifications are | 326 // on the two next scheduled calls, so idle notifications are |
323 // not sent for at least one notification delay. | 327 // not sent for at least one notification delay. |
324 void PostponeIdleNotification(); | 328 void PostponeIdleNotification(); |
325 | 329 |
326 scoped_refptr<media::GpuVideoAcceleratorFactories> GetGpuFactories(); | 330 scoped_refptr<media::GpuVideoAcceleratorFactories> GetGpuFactories(); |
327 | 331 |
328 scoped_refptr<cc_blink::ContextProviderWebContext> | 332 scoped_refptr<cc_blink::ContextProviderWebContext> |
329 SharedMainThreadContextProvider(); | 333 SharedMainThreadContextProvider(); |
330 | 334 |
(...skipping 223 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
554 // May be null if overridden by ContentRendererClient. | 558 // May be null if overridden by ContentRendererClient. |
555 scoped_ptr<base::Thread> compositor_thread_; | 559 scoped_ptr<base::Thread> compositor_thread_; |
556 | 560 |
557 // Thread for running multimedia operations (e.g., video decoding). | 561 // Thread for running multimedia operations (e.g., video decoding). |
558 scoped_ptr<base::Thread> media_thread_; | 562 scoped_ptr<base::Thread> media_thread_; |
559 | 563 |
560 // Will point to appropriate task runner after initialization, | 564 // Will point to appropriate task runner after initialization, |
561 // regardless of whether |compositor_thread_| is overriden. | 565 // regardless of whether |compositor_thread_| is overriden. |
562 scoped_refptr<base::SingleThreadTaskRunner> compositor_task_runner_; | 566 scoped_refptr<base::SingleThreadTaskRunner> compositor_task_runner_; |
563 | 567 |
564 // Threads used by compositor for rasterization. | 568 // Pool of workers used for raster operations (e.g., tile rasterization). |
565 ScopedVector<base::SimpleThread> compositor_raster_threads_; | 569 scoped_refptr<RasterWorkerPool> raster_worker_pool_; |
566 | 570 |
567 base::CancelableCallback<void(const IPC::Message&)> main_input_callback_; | 571 base::CancelableCallback<void(const IPC::Message&)> main_input_callback_; |
568 scoped_refptr<IPC::MessageFilter> input_event_filter_; | 572 scoped_refptr<IPC::MessageFilter> input_event_filter_; |
569 scoped_ptr<InputHandlerManager> input_handler_manager_; | 573 scoped_ptr<InputHandlerManager> input_handler_manager_; |
570 scoped_refptr<CompositorForwardingMessageFilter> compositor_message_filter_; | 574 scoped_refptr<CompositorForwardingMessageFilter> compositor_message_filter_; |
571 | 575 |
572 scoped_refptr<cc_blink::ContextProviderWebContext> | 576 scoped_refptr<cc_blink::ContextProviderWebContext> |
573 shared_main_thread_contexts_; | 577 shared_main_thread_contexts_; |
574 | 578 |
575 base::ObserverList<RenderProcessObserver> observers_; | 579 base::ObserverList<RenderProcessObserver> observers_; |
(...skipping 11 matching lines...) Expand all Loading... |
587 scoped_ptr<WebRTCIdentityService> webrtc_identity_service_; | 591 scoped_ptr<WebRTCIdentityService> webrtc_identity_service_; |
588 #endif | 592 #endif |
589 | 593 |
590 scoped_ptr<MemoryObserver> memory_observer_; | 594 scoped_ptr<MemoryObserver> memory_observer_; |
591 | 595 |
592 scoped_refptr<base::SingleThreadTaskRunner> | 596 scoped_refptr<base::SingleThreadTaskRunner> |
593 main_thread_compositor_task_runner_; | 597 main_thread_compositor_task_runner_; |
594 | 598 |
595 scoped_refptr<ResourceSchedulingFilter> resource_scheduling_filter_; | 599 scoped_refptr<ResourceSchedulingFilter> resource_scheduling_filter_; |
596 | 600 |
597 scoped_ptr<cc::TaskGraphRunner> compositor_task_graph_runner_; | |
598 | |
599 // Compositor settings. | 601 // Compositor settings. |
600 bool is_gpu_rasterization_enabled_; | 602 bool is_gpu_rasterization_enabled_; |
601 bool is_gpu_rasterization_forced_; | 603 bool is_gpu_rasterization_forced_; |
602 int gpu_rasterization_msaa_sample_count_; | 604 int gpu_rasterization_msaa_sample_count_; |
603 bool is_lcd_text_enabled_; | 605 bool is_lcd_text_enabled_; |
604 bool is_distance_field_text_enabled_; | 606 bool is_distance_field_text_enabled_; |
605 bool is_zero_copy_enabled_; | 607 bool is_zero_copy_enabled_; |
606 bool is_one_copy_enabled_; | 608 bool is_one_copy_enabled_; |
607 bool is_elastic_overscroll_enabled_; | 609 bool is_elastic_overscroll_enabled_; |
608 unsigned use_image_texture_target_; | 610 unsigned use_image_texture_target_; |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
642 DISALLOW_COPY_AND_ASSIGN(RenderThreadImpl); | 644 DISALLOW_COPY_AND_ASSIGN(RenderThreadImpl); |
643 }; | 645 }; |
644 | 646 |
645 #if defined(COMPILER_MSVC) | 647 #if defined(COMPILER_MSVC) |
646 #pragma warning(pop) | 648 #pragma warning(pop) |
647 #endif | 649 #endif |
648 | 650 |
649 } // namespace content | 651 } // namespace content |
650 | 652 |
651 #endif // CONTENT_RENDERER_RENDER_THREAD_IMPL_H_ | 653 #endif // CONTENT_RENDERER_RENDER_THREAD_IMPL_H_ |
OLD | NEW |