OLD | NEW |
1 // Copyright 2017 The Chromium Authors. All rights reserved. | 1 // Copyright 2017 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 WebRTCRtpReceiver_h | 5 #ifndef WebRTCRtpReceiver_h |
6 #define WebRTCRtpReceiver_h | 6 #define WebRTCRtpReceiver_h |
7 | 7 |
8 #include "WebCommon.h" | 8 #include "WebCommon.h" |
9 #include "WebString.h" | 9 #include "WebString.h" |
| 10 #include "WebVector.h" |
10 | 11 |
11 namespace blink { | 12 namespace blink { |
12 | 13 |
13 class WebMediaStreamTrack; | 14 class WebMediaStreamTrack; |
| 15 class WebRTCRtpContributingSource; |
14 | 16 |
15 // Implementations of this interface keep the corresponding WebRTC-layer | 17 // Implementations of this interface keep the corresponding WebRTC-layer |
16 // receiver alive through reference counting. Multiple |WebRTCRtpReceiver|s | 18 // receiver alive through reference counting. Multiple |WebRTCRtpReceiver|s |
17 // could reference the same receiver, see |id|. | 19 // could reference the same receiver, see |id|. |
18 // https://w3c.github.io/webrtc-pc/#rtcrtpreceiver-interface | 20 // https://w3c.github.io/webrtc-pc/#rtcrtpreceiver-interface |
19 class BLINK_PLATFORM_EXPORT WebRTCRtpReceiver { | 21 class BLINK_PLATFORM_EXPORT WebRTCRtpReceiver { |
20 public: | 22 public: |
21 virtual ~WebRTCRtpReceiver(); | 23 virtual ~WebRTCRtpReceiver(); |
22 | 24 |
23 // Two |WebRTCRtpReceiver|s referencing the same WebRTC-layer receiver have | 25 // Two |WebRTCRtpReceiver|s referencing the same WebRTC-layer receiver have |
24 // the same |id|. | 26 // the same |id|. |
25 virtual uintptr_t Id() const = 0; | 27 virtual uintptr_t Id() const = 0; |
26 virtual const WebMediaStreamTrack& Track() const = 0; | 28 virtual const WebMediaStreamTrack& Track() const = 0; |
| 29 virtual WebVector<std::unique_ptr<WebRTCRtpContributingSource>> |
| 30 GetSources() = 0; |
27 }; | 31 }; |
28 | 32 |
29 } // namespace blink | 33 } // namespace blink |
30 | 34 |
31 #endif // WebRTCRtpReceiver_h | 35 #endif // WebRTCRtpReceiver_h |
OLD | NEW |