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 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
58 class CompositorThread; | 58 class CompositorThread; |
59 class DBMessageFilter; | 59 class DBMessageFilter; |
60 class DevToolsAgentFilter; | 60 class DevToolsAgentFilter; |
61 class DomStorageDispatcher; | 61 class DomStorageDispatcher; |
62 class GpuChannelHost; | 62 class GpuChannelHost; |
63 class IndexedDBDispatcher; | 63 class IndexedDBDispatcher; |
64 class MediaStreamCenter; | 64 class MediaStreamCenter; |
65 class MediaStreamDependencyFactory; | 65 class MediaStreamDependencyFactory; |
66 class P2PSocketDispatcher; | 66 class P2PSocketDispatcher; |
67 class PeerConnectionTracker; | 67 class PeerConnectionTracker; |
68 class RendererAudioHardwareConfig; | |
68 class RendererWebKitPlatformSupportImpl; | 69 class RendererWebKitPlatformSupportImpl; |
69 class RenderProcessObserver; | 70 class RenderProcessObserver; |
70 class VideoCaptureImplManager; | 71 class VideoCaptureImplManager; |
71 class WebDatabaseObserverImpl; | 72 class WebDatabaseObserverImpl; |
72 class WebGraphicsContext3DCommandBufferImpl; | 73 class WebGraphicsContext3DCommandBufferImpl; |
73 | 74 |
74 // The RenderThreadImpl class represents a background thread where RenderView | 75 // The RenderThreadImpl class represents a background thread where RenderView |
75 // instances live. The RenderThread supports an API that is used by its | 76 // instances live. The RenderThread supports an API that is used by its |
76 // consumer to talk indirectly to the RenderViews and supporting objects. | 77 // consumer to talk indirectly to the RenderViews and supporting objects. |
77 // Likewise, it provides an API for the RenderViews to talk back to the main | 78 // Likewise, it provides an API for the RenderViews to talk back to the main |
(...skipping 161 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
239 WebGraphicsContext3DCommandBufferImpl* GetGpuVDAContext3D(); | 240 WebGraphicsContext3DCommandBufferImpl* GetGpuVDAContext3D(); |
240 | 241 |
241 // Handle loss of the shared GpuVDAContext3D context above. | 242 // Handle loss of the shared GpuVDAContext3D context above. |
242 static void OnGpuVDAContextLoss(); | 243 static void OnGpuVDAContextLoss(); |
243 | 244 |
244 // AudioRendererMixerManager instance which manages renderer side mixer | 245 // AudioRendererMixerManager instance which manages renderer side mixer |
245 // instances shared based on configured audio parameters. Lazily created on | 246 // instances shared based on configured audio parameters. Lazily created on |
246 // first call. | 247 // first call. |
247 AudioRendererMixerManager* GetAudioRendererMixerManager(); | 248 AudioRendererMixerManager* GetAudioRendererMixerManager(); |
248 | 249 |
250 // RendererAudioHardwareConfig contains audio hardware configuration for | |
251 // renderer side clients. Creation requires a synchronous IPC call so it is | |
henrika (OOO until Aug 14)
2013/01/29 10:46:49
Nit, does the sync IPC require lacy init?
DaleCurtis
2013/01/30 01:31:06
What do you mean? We use lazy initialization becau
henrika (OOO until Aug 14)
2013/01/30 10:10:06
It was not clear to me if "sync IPC ===> lazy init
| |
252 // lazily created on the first call. | |
253 RendererAudioHardwareConfig* GetAudioHardwareConfig(); | |
254 | |
249 #if defined(OS_WIN) | 255 #if defined(OS_WIN) |
250 void PreCacheFontCharacters(const LOGFONT& log_font, const string16& str); | 256 void PreCacheFontCharacters(const LOGFONT& log_font, const string16& str); |
251 #endif | 257 #endif |
252 | 258 |
253 // For producing custom V8 histograms. Custom histograms are produced if all | 259 // For producing custom V8 histograms. Custom histograms are produced if all |
254 // RenderViews share the same host, and the host is in the pre-specified set | 260 // RenderViews share the same host, and the host is in the pre-specified set |
255 // of hosts we want to produce custom diagrams for. The name for a custom | 261 // of hosts we want to produce custom diagrams for. The name for a custom |
256 // diagram is the name of the corresponding generic diagram plus a | 262 // diagram is the name of the corresponding generic diagram plus a |
257 // host-specific suffix. | 263 // host-specific suffix. |
258 class CONTENT_EXPORT HistogramCustomizer { | 264 class CONTENT_EXPORT HistogramCustomizer { |
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
374 scoped_ptr<CompositorThread> compositor_thread_; | 380 scoped_ptr<CompositorThread> compositor_thread_; |
375 scoped_refptr<IPC::ForwardingMessageFilter> compositor_output_surface_filter_; | 381 scoped_refptr<IPC::ForwardingMessageFilter> compositor_output_surface_filter_; |
376 | 382 |
377 ObserverList<RenderProcessObserver> observers_; | 383 ObserverList<RenderProcessObserver> observers_; |
378 | 384 |
379 class GpuVDAContextLostCallback; | 385 class GpuVDAContextLostCallback; |
380 scoped_ptr<GpuVDAContextLostCallback> context_lost_cb_; | 386 scoped_ptr<GpuVDAContextLostCallback> context_lost_cb_; |
381 scoped_ptr<WebGraphicsContext3DCommandBufferImpl> gpu_vda_context3d_; | 387 scoped_ptr<WebGraphicsContext3DCommandBufferImpl> gpu_vda_context3d_; |
382 | 388 |
383 scoped_ptr<AudioRendererMixerManager> audio_renderer_mixer_manager_; | 389 scoped_ptr<AudioRendererMixerManager> audio_renderer_mixer_manager_; |
390 scoped_ptr<RendererAudioHardwareConfig> audio_hardware_config_; | |
384 | 391 |
385 HistogramCustomizer histogram_customizer_; | 392 HistogramCustomizer histogram_customizer_; |
386 | 393 |
387 DISALLOW_COPY_AND_ASSIGN(RenderThreadImpl); | 394 DISALLOW_COPY_AND_ASSIGN(RenderThreadImpl); |
388 }; | 395 }; |
389 | 396 |
390 } // namespace content | 397 } // namespace content |
391 | 398 |
392 #endif // CONTENT_RENDERER_RENDER_THREAD_IMPL_H_ | 399 #endif // CONTENT_RENDERER_RENDER_THREAD_IMPL_H_ |
OLD | NEW |