OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2012 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 30 matching lines...) Expand all Loading... |
41 public: | 41 public: |
42 // Observer class for bitrate changes announced due to change in bandwidth | 42 // Observer class for bitrate changes announced due to change in bandwidth |
43 // estimate or due to that the send pacer is full. Fraction loss and rtt is | 43 // estimate or due to that the send pacer is full. Fraction loss and rtt is |
44 // also part of this callback to allow the observer to optimize its settings | 44 // also part of this callback to allow the observer to optimize its settings |
45 // for different types of network environments. The bitrate does not include | 45 // for different types of network environments. The bitrate does not include |
46 // packet headers and is measured in bits per second. | 46 // packet headers and is measured in bits per second. |
47 class Observer { | 47 class Observer { |
48 public: | 48 public: |
49 virtual void OnNetworkChanged(uint32_t bitrate_bps, | 49 virtual void OnNetworkChanged(uint32_t bitrate_bps, |
50 uint8_t fraction_loss, // 0 - 255. | 50 uint8_t fraction_loss, // 0 - 255. |
51 int64_t rtt_ms, | 51 int64_t rtt_ms) = 0; |
52 int64_t probing_interval_ms) = 0; | |
53 | 52 |
54 protected: | 53 protected: |
55 virtual ~Observer() {} | 54 virtual ~Observer() {} |
56 }; | 55 }; |
57 CongestionController(Clock* clock, | 56 CongestionController(Clock* clock, |
58 Observer* observer, | 57 Observer* observer, |
59 RemoteBitrateObserver* remote_bitrate_observer, | 58 RemoteBitrateObserver* remote_bitrate_observer, |
60 RtcEventLog* event_log); | 59 RtcEventLog* event_log); |
61 CongestionController(Clock* clock, | 60 CongestionController(Clock* clock, |
62 Observer* observer, | 61 Observer* observer, |
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
132 uint8_t last_reported_fraction_loss_ GUARDED_BY(critsect_); | 131 uint8_t last_reported_fraction_loss_ GUARDED_BY(critsect_); |
133 int64_t last_reported_rtt_ GUARDED_BY(critsect_); | 132 int64_t last_reported_rtt_ GUARDED_BY(critsect_); |
134 NetworkState network_state_ GUARDED_BY(critsect_); | 133 NetworkState network_state_ GUARDED_BY(critsect_); |
135 | 134 |
136 RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(CongestionController); | 135 RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(CongestionController); |
137 }; | 136 }; |
138 | 137 |
139 } // namespace webrtc | 138 } // namespace webrtc |
140 | 139 |
141 #endif // WEBRTC_MODULES_CONGESTION_CONTROLLER_INCLUDE_CONGESTION_CONTROLLER_H_ | 140 #endif // WEBRTC_MODULES_CONGESTION_CONTROLLER_INCLUDE_CONGESTION_CONTROLLER_H_ |
OLD | NEW |