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 18 matching lines...) Expand all Loading... |
29 #include "third_party/WebKit/public/web/mac/WebScrollbarTheme.h" | 29 #include "third_party/WebKit/public/web/mac/WebScrollbarTheme.h" |
30 #endif | 30 #endif |
31 | 31 |
32 class GrContext; | 32 class GrContext; |
33 class SkBitmap; | 33 class SkBitmap; |
34 struct ViewMsg_New_Params; | 34 struct ViewMsg_New_Params; |
35 struct WorkerProcessMsg_CreateWorker_Params; | 35 struct WorkerProcessMsg_CreateWorker_Params; |
36 | 36 |
37 namespace blink { | 37 namespace blink { |
38 class WebGamepads; | 38 class WebGamepads; |
| 39 class WebGamepadListener; |
39 class WebGraphicsContext3D; | 40 class WebGraphicsContext3D; |
40 class WebMediaStreamCenter; | 41 class WebMediaStreamCenter; |
41 class WebMediaStreamCenterClient; | 42 class WebMediaStreamCenterClient; |
42 } | 43 } |
43 | 44 |
44 namespace base { | 45 namespace base { |
45 class MessageLoopProxy; | 46 class MessageLoopProxy; |
46 class Thread; | 47 class Thread; |
47 } | 48 } |
48 | 49 |
(...skipping 27 matching lines...) Expand all Loading... |
76 class AppCacheDispatcher; | 77 class AppCacheDispatcher; |
77 class AecDumpMessageFilter; | 78 class AecDumpMessageFilter; |
78 class AudioInputMessageFilter; | 79 class AudioInputMessageFilter; |
79 class AudioMessageFilter; | 80 class AudioMessageFilter; |
80 class AudioRendererMixerManager; | 81 class AudioRendererMixerManager; |
81 class ContextProviderCommandBuffer; | 82 class ContextProviderCommandBuffer; |
82 class DBMessageFilter; | 83 class DBMessageFilter; |
83 class DevToolsAgentFilter; | 84 class DevToolsAgentFilter; |
84 class DomStorageDispatcher; | 85 class DomStorageDispatcher; |
85 class EmbeddedWorkerDispatcher; | 86 class EmbeddedWorkerDispatcher; |
| 87 class GamepadSharedMemoryReader; |
86 class GpuChannelHost; | 88 class GpuChannelHost; |
87 class IndexedDBDispatcher; | 89 class IndexedDBDispatcher; |
88 class InputEventFilter; | 90 class InputEventFilter; |
89 class InputHandlerManager; | 91 class InputHandlerManager; |
90 class MediaStreamCenter; | 92 class MediaStreamCenter; |
91 class MemoryObserver; | 93 class MemoryObserver; |
92 class PeerConnectionDependencyFactory; | 94 class PeerConnectionDependencyFactory; |
93 class MidiMessageFilter; | 95 class MidiMessageFilter; |
94 class NetInfoDispatcher; | 96 class NetInfoDispatcher; |
95 class P2PSocketDispatcher; | 97 class P2PSocketDispatcher; |
(...skipping 185 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
281 // Current P2PSocketDispatcher. Set to NULL if P2P API is disabled. | 283 // Current P2PSocketDispatcher. Set to NULL if P2P API is disabled. |
282 P2PSocketDispatcher* p2p_socket_dispatcher() { | 284 P2PSocketDispatcher* p2p_socket_dispatcher() { |
283 return p2p_socket_dispatcher_.get(); | 285 return p2p_socket_dispatcher_.get(); |
284 } | 286 } |
285 #endif | 287 #endif |
286 | 288 |
287 VideoCaptureImplManager* video_capture_impl_manager() const { | 289 VideoCaptureImplManager* video_capture_impl_manager() const { |
288 return vc_manager_.get(); | 290 return vc_manager_.get(); |
289 } | 291 } |
290 | 292 |
| 293 GamepadSharedMemoryReader* gamepad_shared_memory_reader() const { |
| 294 return gamepad_shared_memory_reader_.get(); |
| 295 } |
| 296 |
291 // Get the GPU channel. Returns NULL if the channel is not established or | 297 // Get the GPU channel. Returns NULL if the channel is not established or |
292 // has been lost. | 298 // has been lost. |
293 GpuChannelHost* GetGpuChannel(); | 299 GpuChannelHost* GetGpuChannel(); |
294 | 300 |
295 // Returns a MessageLoopProxy instance corresponding to the message loop | 301 // Returns a MessageLoopProxy instance corresponding to the message loop |
296 // of the thread on which file operations should be run. Must be called | 302 // of the thread on which file operations should be run. Must be called |
297 // on the renderer's main thread. | 303 // on the renderer's main thread. |
298 scoped_refptr<base::MessageLoopProxy> GetFileThreadMessageLoopProxy(); | 304 scoped_refptr<base::MessageLoopProxy> GetFileThreadMessageLoopProxy(); |
299 | 305 |
300 // Returns a MessageLoopProxy instance corresponding to the message loop | 306 // Returns a MessageLoopProxy instance corresponding to the message loop |
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
378 HistogramCustomizer* histogram_customizer() { | 384 HistogramCustomizer* histogram_customizer() { |
379 return &histogram_customizer_; | 385 return &histogram_customizer_; |
380 } | 386 } |
381 | 387 |
382 void SetFlingCurveParameters(const std::vector<float>& new_touchpad, | 388 void SetFlingCurveParameters(const std::vector<float>& new_touchpad, |
383 const std::vector<float>& new_touchscreen); | 389 const std::vector<float>& new_touchscreen); |
384 | 390 |
385 // Retrieve current gamepad data. | 391 // Retrieve current gamepad data. |
386 void SampleGamepads(blink::WebGamepads* data); | 392 void SampleGamepads(blink::WebGamepads* data); |
387 | 393 |
| 394 // Set a listener for gamepad connected/disconnected events. |
| 395 // A non-null listener must be set first before calling SampleGamepads. |
| 396 void SetGamepadListener(blink::WebGamepadListener* listener); |
| 397 |
388 // Called by a RenderWidget when it is created or destroyed. This | 398 // Called by a RenderWidget when it is created or destroyed. This |
389 // allows the process to know when there are no visible widgets. | 399 // allows the process to know when there are no visible widgets. |
390 void WidgetCreated(); | 400 void WidgetCreated(); |
391 void WidgetDestroyed(); | 401 void WidgetDestroyed(); |
392 void WidgetHidden(); | 402 void WidgetHidden(); |
393 void WidgetRestored(); | 403 void WidgetRestored(); |
394 | 404 |
395 void AddEmbeddedWorkerRoute(int32 routing_id, IPC::Listener* listener); | 405 void AddEmbeddedWorkerRoute(int32 routing_id, IPC::Listener* listener); |
396 void RemoveEmbeddedWorkerRoute(int32 routing_id); | 406 void RemoveEmbeddedWorkerRoute(int32 routing_id); |
397 | 407 |
(...skipping 155 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
553 scoped_ptr<media::AudioHardwareConfig> audio_hardware_config_; | 563 scoped_ptr<media::AudioHardwareConfig> audio_hardware_config_; |
554 | 564 |
555 HistogramCustomizer histogram_customizer_; | 565 HistogramCustomizer histogram_customizer_; |
556 | 566 |
557 scoped_ptr<base::MemoryPressureListener> memory_pressure_listener_; | 567 scoped_ptr<base::MemoryPressureListener> memory_pressure_listener_; |
558 | 568 |
559 #if defined(ENABLE_WEBRTC) | 569 #if defined(ENABLE_WEBRTC) |
560 scoped_ptr<WebRTCIdentityService> webrtc_identity_service_; | 570 scoped_ptr<WebRTCIdentityService> webrtc_identity_service_; |
561 #endif | 571 #endif |
562 | 572 |
| 573 scoped_ptr<GamepadSharedMemoryReader> gamepad_shared_memory_reader_; |
| 574 |
563 // TODO(reveman): Allow AllocateGpuMemoryBuffer to be called from | 575 // TODO(reveman): Allow AllocateGpuMemoryBuffer to be called from |
564 // multiple threads. Current allocation mechanism for IOSurface | 576 // multiple threads. Current allocation mechanism for IOSurface |
565 // backed GpuMemoryBuffers prevent this. crbug.com/325045 | 577 // backed GpuMemoryBuffers prevent this. crbug.com/325045 |
566 base::ThreadChecker allocate_gpu_memory_buffer_thread_checker_; | 578 base::ThreadChecker allocate_gpu_memory_buffer_thread_checker_; |
567 | 579 |
568 scoped_ptr<MemoryObserver> memory_observer_; | 580 scoped_ptr<MemoryObserver> memory_observer_; |
569 | 581 |
570 // Compositor settings | 582 // Compositor settings |
571 bool is_gpu_rasterization_enabled_; | 583 bool is_gpu_rasterization_enabled_; |
572 bool is_gpu_rasterization_forced_; | 584 bool is_gpu_rasterization_forced_; |
573 bool is_impl_side_painting_enabled_; | 585 bool is_impl_side_painting_enabled_; |
574 bool is_low_res_tiling_enabled_; | 586 bool is_low_res_tiling_enabled_; |
575 bool is_lcd_text_enabled_; | 587 bool is_lcd_text_enabled_; |
576 bool is_distance_field_text_enabled_; | 588 bool is_distance_field_text_enabled_; |
577 bool is_zero_copy_enabled_; | 589 bool is_zero_copy_enabled_; |
578 bool is_one_copy_enabled_; | 590 bool is_one_copy_enabled_; |
579 | 591 |
580 std::map<int, mojo::MessagePipeHandle> pending_render_frame_connects_; | 592 std::map<int, mojo::MessagePipeHandle> pending_render_frame_connects_; |
581 | 593 |
582 DISALLOW_COPY_AND_ASSIGN(RenderThreadImpl); | 594 DISALLOW_COPY_AND_ASSIGN(RenderThreadImpl); |
583 }; | 595 }; |
584 | 596 |
585 } // namespace content | 597 } // namespace content |
586 | 598 |
587 #endif // CONTENT_RENDERER_RENDER_THREAD_IMPL_H_ | 599 #endif // CONTENT_RENDERER_RENDER_THREAD_IMPL_H_ |
OLD | NEW |