Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(157)

Side by Side Diff: content/renderer/render_thread_impl.h

Issue 11880009: Introduce AudioHardwareConfig for renderer side audio device info. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Plumb. Created 7 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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
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
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
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_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698