| 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_MEDIA_MEDIA_STREAM_DEPENDENCY_FACTORY_H_ | 5 #ifndef CONTENT_RENDERER_MEDIA_MEDIA_STREAM_DEPENDENCY_FACTORY_H_ |
| 6 #define CONTENT_RENDERER_MEDIA_MEDIA_STREAM_DEPENDENCY_FACTORY_H_ | 6 #define CONTENT_RENDERER_MEDIA_MEDIA_STREAM_DEPENDENCY_FACTORY_H_ |
| 7 | 7 |
| 8 #include <string> | 8 #include <string> |
| 9 | 9 |
| 10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
| (...skipping 191 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 202 // creating PeerConnection objects. | 202 // creating PeerConnection objects. |
| 203 bool CreatePeerConnectionFactory(); | 203 bool CreatePeerConnectionFactory(); |
| 204 | 204 |
| 205 void InitializeWorkerThread(talk_base::Thread** thread, | 205 void InitializeWorkerThread(talk_base::Thread** thread, |
| 206 base::WaitableEvent* event); | 206 base::WaitableEvent* event); |
| 207 | 207 |
| 208 void CreateIpcNetworkManagerOnWorkerThread(base::WaitableEvent* event); | 208 void CreateIpcNetworkManagerOnWorkerThread(base::WaitableEvent* event); |
| 209 void DeleteIpcNetworkManager(); | 209 void DeleteIpcNetworkManager(); |
| 210 void CleanupPeerConnectionFactory(); | 210 void CleanupPeerConnectionFactory(); |
| 211 | 211 |
| 212 void CreateWebRtcLoggingHandler(WebRtcLoggingMessageFilter* filter, | |
| 213 const std::string& app_session_id, | |
| 214 const std::string& app_url); | |
| 215 | |
| 216 // We own network_manager_, must be deleted on the worker thread. | 212 // We own network_manager_, must be deleted on the worker thread. |
| 217 // The network manager uses |p2p_socket_dispatcher_|. | 213 // The network manager uses |p2p_socket_dispatcher_|. |
| 218 IpcNetworkManager* network_manager_; | 214 IpcNetworkManager* network_manager_; |
| 219 scoped_ptr<IpcPacketSocketFactory> socket_factory_; | 215 scoped_ptr<IpcPacketSocketFactory> socket_factory_; |
| 220 | 216 |
| 221 scoped_refptr<webrtc::PeerConnectionFactoryInterface> pc_factory_; | 217 scoped_refptr<webrtc::PeerConnectionFactoryInterface> pc_factory_; |
| 222 | 218 |
| 223 #if defined(GOOGLE_TV) | 219 #if defined(GOOGLE_TV) |
| 224 // |pc_factory_| will hold the ownership of this object, and |pc_factory_| | 220 // |pc_factory_| will hold the ownership of this object, and |pc_factory_| |
| 225 // outlives this object. Thus weak pointer is sufficient. | 221 // outlives this object. Thus weak pointer is sufficient. |
| 226 RTCVideoDecoderFactoryTv* decoder_factory_tv_; | 222 RTCVideoDecoderFactoryTv* decoder_factory_tv_; |
| 227 #endif | 223 #endif |
| 228 | 224 |
| 229 scoped_refptr<VideoCaptureImplManager> vc_manager_; | 225 scoped_refptr<VideoCaptureImplManager> vc_manager_; |
| 230 scoped_refptr<P2PSocketDispatcher> p2p_socket_dispatcher_; | 226 scoped_refptr<P2PSocketDispatcher> p2p_socket_dispatcher_; |
| 231 scoped_refptr<WebRtcAudioDeviceImpl> audio_device_; | 227 scoped_refptr<WebRtcAudioDeviceImpl> audio_device_; |
| 232 | 228 |
| 233 // PeerConnection threads. signaling_thread_ is created from the | 229 // PeerConnection threads. signaling_thread_ is created from the |
| 234 // "current" chrome thread. | 230 // "current" chrome thread. |
| 235 talk_base::Thread* signaling_thread_; | 231 talk_base::Thread* signaling_thread_; |
| 236 talk_base::Thread* worker_thread_; | 232 talk_base::Thread* worker_thread_; |
| 237 base::Thread chrome_worker_thread_; | 233 base::Thread chrome_worker_thread_; |
| 238 | 234 |
| 239 DISALLOW_COPY_AND_ASSIGN(MediaStreamDependencyFactory); | 235 DISALLOW_COPY_AND_ASSIGN(MediaStreamDependencyFactory); |
| 240 }; | 236 }; |
| 241 | 237 |
| 242 } // namespace content | 238 } // namespace content |
| 243 | 239 |
| 244 #endif // CONTENT_RENDERER_MEDIA_MEDIA_STREAM_DEPENDENCY_FACTORY_H_ | 240 #endif // CONTENT_RENDERER_MEDIA_MEDIA_STREAM_DEPENDENCY_FACTORY_H_ |
| OLD | NEW |