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

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

Issue 2310753002: Media Remoting: Data/Control plumbing between renderer and Media Router. (Closed)
Patch Set: Add input operation queuing to resolve race between data and message pipes. Created 4 years, 2 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
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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_FRAME_IMPL_H_ 5 #ifndef CONTENT_RENDERER_RENDER_FRAME_IMPL_H_
6 #define CONTENT_RENDERER_RENDER_FRAME_IMPL_H_ 6 #define CONTENT_RENDERER_RENDER_FRAME_IMPL_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 #include <stdint.h> 9 #include <stdint.h>
10 10
(...skipping 20 matching lines...) Expand all
31 #include "content/public/common/referrer.h" 31 #include "content/public/common/referrer.h"
32 #include "content/public/common/stop_find_action.h" 32 #include "content/public/common/stop_find_action.h"
33 #include "content/public/renderer/render_frame.h" 33 #include "content/public/renderer/render_frame.h"
34 #include "content/renderer/frame_blame_context.h" 34 #include "content/renderer/frame_blame_context.h"
35 #include "content/renderer/mojo/blink_interface_provider_impl.h" 35 #include "content/renderer/mojo/blink_interface_provider_impl.h"
36 #include "content/renderer/renderer_webcookiejar_impl.h" 36 #include "content/renderer/renderer_webcookiejar_impl.h"
37 #include "ipc/ipc_message.h" 37 #include "ipc/ipc_message.h"
38 #include "ipc/ipc_platform_file.h" 38 #include "ipc/ipc_platform_file.h"
39 #include "media/blink/webmediaplayer_delegate.h" 39 #include "media/blink/webmediaplayer_delegate.h"
40 #include "media/blink/webmediaplayer_params.h" 40 #include "media/blink/webmediaplayer_params.h"
41 #include "media/mojo/interfaces/remoting.mojom.h"
41 #include "mojo/public/cpp/bindings/binding.h" 42 #include "mojo/public/cpp/bindings/binding.h"
42 #include "services/shell/public/interfaces/connector.mojom.h" 43 #include "services/shell/public/interfaces/connector.mojom.h"
43 #include "services/shell/public/interfaces/interface_provider.mojom.h" 44 #include "services/shell/public/interfaces/interface_provider.mojom.h"
44 #include "third_party/WebKit/public/platform/WebEffectiveConnectionType.h" 45 #include "third_party/WebKit/public/platform/WebEffectiveConnectionType.h"
45 #include "third_party/WebKit/public/platform/WebFocusType.h" 46 #include "third_party/WebKit/public/platform/WebFocusType.h"
46 #include "third_party/WebKit/public/platform/WebLoadingBehaviorFlag.h" 47 #include "third_party/WebKit/public/platform/WebLoadingBehaviorFlag.h"
47 #include "third_party/WebKit/public/platform/WebMediaPlayer.h" 48 #include "third_party/WebKit/public/platform/WebMediaPlayer.h"
48 #include "third_party/WebKit/public/platform/WebPageVisibilityState.h" 49 #include "third_party/WebKit/public/platform/WebPageVisibilityState.h"
49 #include "third_party/WebKit/public/platform/modules/app_banner/WebAppBannerClie nt.h" 50 #include "third_party/WebKit/public/platform/modules/app_banner/WebAppBannerClie nt.h"
50 #include "third_party/WebKit/public/web/WebAXObject.h" 51 #include "third_party/WebKit/public/web/WebAXObject.h"
(...skipping 962 matching lines...) Expand 10 before | Expand all | Expand 10 after
1013 1014
1014 RendererMediaSessionManager* GetMediaSessionManager(); 1015 RendererMediaSessionManager* GetMediaSessionManager();
1015 #endif 1016 #endif
1016 1017
1017 bool AreSecureCodecsSupported(); 1018 bool AreSecureCodecsSupported();
1018 1019
1019 #if defined(ENABLE_MOJO_MEDIA) 1020 #if defined(ENABLE_MOJO_MEDIA)
1020 shell::mojom::InterfaceProvider* GetMediaInterfaceProvider(); 1021 shell::mojom::InterfaceProvider* GetMediaInterfaceProvider();
1021 #endif 1022 #endif
1022 1023
1024 media::mojom::RemoterFactory* GetRemoterFactory();
1023 media::CdmFactory* GetCdmFactory(); 1025 media::CdmFactory* GetCdmFactory();
1024 media::DecoderFactory* GetDecoderFactory(); 1026 media::DecoderFactory* GetDecoderFactory();
1025 1027
1026 void RegisterMojoInterfaces(); 1028 void RegisterMojoInterfaces();
1027 1029
1028 // Connect to an interface provided by the service registry. 1030 // Connect to an interface provided by the service registry.
1029 template <typename Interface> 1031 template <typename Interface>
1030 void GetInterface(mojo::InterfaceRequest<Interface> request); 1032 void GetInterface(mojo::InterfaceRequest<Interface> request);
1031 1033
1032 // Returns the media delegate for WebMediaPlayer usage. If 1034 // Returns the media delegate for WebMediaPlayer usage. If
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after
1167 // Manages all media players and sessions in this render frame for 1169 // Manages all media players and sessions in this render frame for
1168 // communicating with the real media player and sessions in the 1170 // communicating with the real media player and sessions in the
1169 // browser process. It's okay to use raw pointers since they're both 1171 // browser process. It's okay to use raw pointers since they're both
1170 // RenderFrameObservers. 1172 // RenderFrameObservers.
1171 RendererMediaPlayerManager* media_player_manager_; 1173 RendererMediaPlayerManager* media_player_manager_;
1172 RendererMediaSessionManager* media_session_manager_; 1174 RendererMediaSessionManager* media_session_manager_;
1173 #endif 1175 #endif
1174 1176
1175 media::SurfaceManager* media_surface_manager_; 1177 media::SurfaceManager* media_surface_manager_;
1176 1178
1179 // Lazy-bound pointer to the RemoterFactory service in the browser
1180 // process. Always use the GetRemoterFactory() accessor instead of this.
1181 media::mojom::RemoterFactoryPtr remoter_factory_;
1182
1177 #if defined(ENABLE_BROWSER_CDMS) 1183 #if defined(ENABLE_BROWSER_CDMS)
1178 // Manage all CDMs in this render frame for communicating with the real CDM in 1184 // Manage all CDMs in this render frame for communicating with the real CDM in
1179 // the browser process. It's okay to use a raw pointer since it's a 1185 // the browser process. It's okay to use a raw pointer since it's a
1180 // RenderFrameObserver. 1186 // RenderFrameObserver.
1181 RendererCdmManager* cdm_manager_; 1187 RendererCdmManager* cdm_manager_;
1182 #endif 1188 #endif
1183 1189
1184 // The CDM and decoder factory attached to this frame, lazily initialized. 1190 // The CDM and decoder factory attached to this frame, lazily initialized.
1185 std::unique_ptr<media::CdmFactory> cdm_factory_; 1191 std::unique_ptr<media::CdmFactory> cdm_factory_;
1186 std::unique_ptr<media::DecoderFactory> decoder_factory_; 1192 std::unique_ptr<media::DecoderFactory> decoder_factory_;
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after
1291 remote_associated_interfaces_; 1297 remote_associated_interfaces_;
1292 1298
1293 base::WeakPtrFactory<RenderFrameImpl> weak_factory_; 1299 base::WeakPtrFactory<RenderFrameImpl> weak_factory_;
1294 1300
1295 DISALLOW_COPY_AND_ASSIGN(RenderFrameImpl); 1301 DISALLOW_COPY_AND_ASSIGN(RenderFrameImpl);
1296 }; 1302 };
1297 1303
1298 } // namespace content 1304 } // namespace content
1299 1305
1300 #endif // CONTENT_RENDERER_RENDER_FRAME_IMPL_H_ 1306 #endif // CONTENT_RENDERER_RENDER_FRAME_IMPL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698