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 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
50 void OnPacketsSent(const Packets& packets) override; | 50 void OnPacketsSent(const Packets& packets) override; |
51 int GetFeedbackIntervalMs() const override; | 51 int GetFeedbackIntervalMs() const override; |
52 void GiveFeedback(const FeedbackPacket& feedback) override; | 52 void GiveFeedback(const FeedbackPacket& feedback) override; |
53 int64_t TimeUntilNextProcess() override; | 53 int64_t TimeUntilNextProcess() override; |
54 void Process() override; | 54 void Process() override; |
55 | 55 |
56 private: | 56 private: |
57 void EnterStartup(); | 57 void EnterStartup(); |
58 bool UpdateBandwidthAndMinRtt(); | 58 bool UpdateBandwidthAndMinRtt(); |
59 void TryExitingStartup(); | 59 void TryExitingStartup(); |
60 void TryExitingDrain(int64_t now); | 60 void TryExitingDrain(int64_t now_ms); |
61 void EnterProbeBw(int64_t now); | 61 void EnterProbeBw(int64_t now_ms); |
62 void EnterProbeRtt(int64_t now); | 62 void EnterProbeRtt(int64_t now_ms); |
63 void TryUpdatingCyclePhase(int64_t now); | 63 void TryUpdatingCyclePhase(int64_t now_ms); |
64 void TryEnteringProbeRtt(int64_t now); | 64 void TryEnteringProbeRtt(int64_t now_ms); |
65 void TryExitingProbeRtt(int64_t now); | 65 void TryExitingProbeRtt(int64_t now_ms); |
66 Clock* const clock_; | 66 Clock* const clock_; |
67 Mode mode_; | 67 Mode mode_; |
68 std::unique_ptr<MaxBandwidthFilter> max_bandwidth_filter_; | 68 std::unique_ptr<MaxBandwidthFilter> max_bandwidth_filter_; |
69 uint64_t round_count_; | 69 uint64_t round_count_; |
70 uint64_t last_packet_sent_; | 70 uint64_t last_packet_sent_; |
71 uint64_t round_trip_end_; | 71 uint64_t round_trip_end_; |
72 float pacing_gain_; | 72 float pacing_gain_; |
73 float congestion_window_gain_; | 73 float congestion_window_gain_; |
74 | 74 |
75 // If optimal bandwidth has been discovered and reached, (for example after | 75 // If optimal bandwidth has been discovered and reached, (for example after |
(...skipping 10 matching lines...) Expand all Loading... |
86 FeedbackPacket* GetFeedback(int64_t now_ms) override; | 86 FeedbackPacket* GetFeedback(int64_t now_ms) override; |
87 | 87 |
88 private: | 88 private: |
89 SimulatedClock clock_; | 89 SimulatedClock clock_; |
90 }; | 90 }; |
91 } // namespace bwe | 91 } // namespace bwe |
92 } // namespace testing | 92 } // namespace testing |
93 } // namespace webrtc | 93 } // namespace webrtc |
94 | 94 |
95 #endif // WEBRTC_MODULES_REMOTE_BITRATE_ESTIMATOR_TEST_ESTIMATORS_BBR_H_ | 95 #endif // WEBRTC_MODULES_REMOTE_BITRATE_ESTIMATOR_TEST_ESTIMATORS_BBR_H_ |
OLD | NEW |