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 16 matching lines...) Expand all Loading... |
27 class NetworkManager; | 27 class NetworkManager; |
28 class PacketSocketFactory; | 28 class PacketSocketFactory; |
29 class Thread; | 29 class Thread; |
30 } | 30 } |
31 | 31 |
32 namespace webrtc { | 32 namespace webrtc { |
33 class PeerConnection; | 33 class PeerConnection; |
34 class VideoCaptureModule; | 34 class VideoCaptureModule; |
35 } | 35 } |
36 | 36 |
| 37 class AudioDeviceFactoryInterface; |
37 class VideoCaptureImplManager; | 38 class VideoCaptureImplManager; |
38 | 39 |
39 // Object factory for MediaStreamImpl and PeerConnectionHandler. | 40 // Object factory for MediaStreamImpl and PeerConnectionHandler. |
40 class CONTENT_EXPORT MediaStreamDependencyFactory { | 41 class CONTENT_EXPORT MediaStreamDependencyFactory { |
41 public: | 42 public: |
42 explicit MediaStreamDependencyFactory(VideoCaptureImplManager* vc_manager); | 43 explicit MediaStreamDependencyFactory(VideoCaptureImplManager* vc_manager); |
43 virtual ~MediaStreamDependencyFactory(); | 44 virtual ~MediaStreamDependencyFactory(); |
44 | 45 |
45 // Creates and deletes |pc_factory_|, which in turn is used for | 46 // Creates and deletes |pc_factory_|, which in turn is used for |
46 // creating PeerConnection objects. | 47 // creating PeerConnection objects. |
47 virtual bool CreatePeerConnectionFactory( | 48 virtual bool CreatePeerConnectionFactory( |
48 talk_base::Thread* worker_thread, | 49 talk_base::Thread* worker_thread, |
49 talk_base::Thread* signaling_thread, | 50 talk_base::Thread* signaling_thread, |
50 content::P2PSocketDispatcher* socket_dispatcher, | 51 content::P2PSocketDispatcher* socket_dispatcher, |
51 talk_base::NetworkManager* network_manager, | 52 talk_base::NetworkManager* network_manager, |
52 talk_base::PacketSocketFactory* socket_factory); | 53 talk_base::PacketSocketFactory* socket_factory, |
| 54 AudioDeviceFactoryInterface* audio_device_factory); |
53 virtual void ReleasePeerConnectionFactory(); | 55 virtual void ReleasePeerConnectionFactory(); |
54 virtual bool PeerConnectionFactoryCreated(); | 56 virtual bool PeerConnectionFactoryCreated(); |
55 | 57 |
56 // Asks the PeerConnection factory to create a PeerConnection object. | 58 // Asks the PeerConnection factory to create a PeerConnection object. |
57 // The PeerConnection object is owned by PeerConnectionHandler. | 59 // The PeerConnection object is owned by PeerConnectionHandler. |
58 virtual talk_base::scoped_refptr<webrtc::PeerConnectionInterface> | 60 virtual talk_base::scoped_refptr<webrtc::PeerConnectionInterface> |
59 CreatePeerConnection(const std::string& config, | 61 CreatePeerConnection(const std::string& config, |
60 webrtc::PeerConnectionObserver* observer); | 62 webrtc::PeerConnectionObserver* observer); |
61 virtual talk_base::scoped_refptr<webrtc::PeerConnectionInterface> | 63 virtual talk_base::scoped_refptr<webrtc::PeerConnectionInterface> |
62 CreateRoapPeerConnection(const std::string& config, | 64 CreateRoapPeerConnection(const std::string& config, |
(...skipping 21 matching lines...) Expand all Loading... |
84 const std::string& sdp); | 86 const std::string& sdp); |
85 | 87 |
86 private: | 88 private: |
87 talk_base::scoped_refptr<webrtc::PeerConnectionFactoryInterface> pc_factory_; | 89 talk_base::scoped_refptr<webrtc::PeerConnectionFactoryInterface> pc_factory_; |
88 scoped_refptr<VideoCaptureImplManager> vc_manager_; | 90 scoped_refptr<VideoCaptureImplManager> vc_manager_; |
89 | 91 |
90 DISALLOW_COPY_AND_ASSIGN(MediaStreamDependencyFactory); | 92 DISALLOW_COPY_AND_ASSIGN(MediaStreamDependencyFactory); |
91 }; | 93 }; |
92 | 94 |
93 #endif // CONTENT_RENDERER_MEDIA_MEDIA_STREAM_DEPENDENCY_FACTORY_H_ | 95 #endif // CONTENT_RENDERER_MEDIA_MEDIA_STREAM_DEPENDENCY_FACTORY_H_ |
OLD | NEW |