OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2017 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2017 The WebRTC project authors. All Rights Reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
9 */ | 9 */ |
10 | 10 |
(...skipping 11 matching lines...) Expand all Loading... |
22 | 22 |
23 // TODO(nisse): When we get the underlying transports here, we should | 23 // TODO(nisse): When we get the underlying transports here, we should |
24 // have one object implementing RtpTransportControllerSendInterface | 24 // have one object implementing RtpTransportControllerSendInterface |
25 // per transport, sharing the same congestion controller. | 25 // per transport, sharing the same congestion controller. |
26 class RtpTransportControllerSend : public RtpTransportControllerSendInterface { | 26 class RtpTransportControllerSend : public RtpTransportControllerSendInterface { |
27 public: | 27 public: |
28 RtpTransportControllerSend(Clock* clock, webrtc::RtcEventLog* event_log); | 28 RtpTransportControllerSend(Clock* clock, webrtc::RtcEventLog* event_log); |
29 | 29 |
30 // Implements RtpTransportControllerSendInterface | 30 // Implements RtpTransportControllerSendInterface |
31 PacketRouter* packet_router() override; | 31 PacketRouter* packet_router() override; |
| 32 // TODO(holmer): Temporarily exposed, should be removed and the |
| 33 // appropriate methods should be added to this class instead. |
| 34 // In addition the PacedSender should be driven by this class, either |
| 35 // by owning the process thread, or later by using a task queue. |
| 36 PacedSender* pacer() override; |
32 SendSideCongestionController* send_side_cc() override; | 37 SendSideCongestionController* send_side_cc() override; |
33 TransportFeedbackObserver* transport_feedback_observer() override; | 38 TransportFeedbackObserver* transport_feedback_observer() override; |
34 RtpPacketSender* packet_sender() override; | 39 RtpPacketSender* packet_sender() override; |
35 const RtpKeepAliveConfig& keepalive_config() const override; | 40 const RtpKeepAliveConfig& keepalive_config() const override; |
36 | 41 |
| 42 void SetAllocatedSendBitrateLimits(int min_send_bitrate_bps, |
| 43 int max_padding_bitrate_bps) override; |
| 44 |
37 void SetKeepAliveConfig(const RtpKeepAliveConfig& config); | 45 void SetKeepAliveConfig(const RtpKeepAliveConfig& config); |
38 | 46 |
39 private: | 47 private: |
40 PacketRouter packet_router_; | 48 PacketRouter packet_router_; |
| 49 PacedSender pacer_; |
41 SendSideCongestionController send_side_cc_; | 50 SendSideCongestionController send_side_cc_; |
42 RtpKeepAliveConfig keepalive_; | 51 RtpKeepAliveConfig keepalive_; |
43 | 52 |
44 RTC_DISALLOW_COPY_AND_ASSIGN(RtpTransportControllerSend); | 53 RTC_DISALLOW_COPY_AND_ASSIGN(RtpTransportControllerSend); |
45 }; | 54 }; |
46 | 55 |
47 } // namespace webrtc | 56 } // namespace webrtc |
48 | 57 |
49 #endif // WEBRTC_CALL_RTP_TRANSPORT_CONTROLLER_SEND_H_ | 58 #endif // WEBRTC_CALL_RTP_TRANSPORT_CONTROLLER_SEND_H_ |
OLD | NEW |