Index: remoting/protocol/webrtc_video_stream.h |
diff --git a/remoting/protocol/webrtc_video_stream.h b/remoting/protocol/webrtc_video_stream.h |
index bb52ab88193af8334908e3496423b63ea0475ea7..83d71cd3eea50ff95d3e5627903ff0379c5c29e5 100644 |
--- a/remoting/protocol/webrtc_video_stream.h |
+++ b/remoting/protocol/webrtc_video_stream.h |
@@ -8,24 +8,35 @@ |
#include <stdint.h> |
#include "base/macros.h" |
+#include "base/memory/ref_counted.h" |
+#include "base/memory/scoped_ptr.h" |
+#include "base/memory/weak_ptr.h" |
#include "remoting/protocol/video_stream.h" |
-#include "third_party/webrtc/base/scoped_ref_ptr.h" |
namespace webrtc { |
+class DesktopSize; |
+class DesktopCapturer; |
class MediaStreamInterface; |
class PeerConnectionInterface; |
+class PeerConnectionFactoryInterface; |
+class VideoTrackInterface; |
} // namespace webrtc |
namespace remoting { |
namespace protocol { |
+class WebrtcVideoCapturerAdapter; |
+ |
class WebrtcVideoStream : public VideoStream { |
public: |
- WebrtcVideoStream( |
- rtc::scoped_refptr<webrtc::PeerConnectionInterface> connection, |
- rtc::scoped_refptr<webrtc::MediaStreamInterface> stream); |
+ WebrtcVideoStream(); |
~WebrtcVideoStream() override; |
+ bool Start(scoped_ptr<webrtc::DesktopCapturer> desktop_capturer, |
+ scoped_refptr<webrtc::PeerConnectionInterface> connection, |
+ scoped_refptr<webrtc::PeerConnectionFactoryInterface> |
+ peer_connection_factory); |
+ |
// VideoStream interface. |
void Pause(bool pause) override; |
void OnInputEventReceived(int64_t event_timestamp) override; |
@@ -34,8 +45,11 @@ class WebrtcVideoStream : public VideoStream { |
void SetSizeCallback(const SizeCallback& size_callback) override; |
private: |
- rtc::scoped_refptr<webrtc::PeerConnectionInterface> connection_; |
- rtc::scoped_refptr<webrtc::MediaStreamInterface> stream_; |
+ scoped_refptr<webrtc::PeerConnectionInterface> connection_; |
+ scoped_refptr<webrtc::MediaStreamInterface> stream_; |
+ |
+ // Owned by the |stream_|. |
+ base::WeakPtr<WebrtcVideoCapturerAdapter> capturer_adapter_; |
DISALLOW_COPY_AND_ASSIGN(WebrtcVideoStream); |
}; |