Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(82)

Side by Side Diff: webrtc/modules/remote_bitrate_estimator/test/estimators/max_bandwidth_filter.h

Issue 2904183002: Structure of BBR's implementation,some main classes and functions which are going to be used (Closed)
Patch Set: Added header files to build file Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 /*
2 * Copyright (c) 2017 The WebRTC project authors. All Rights Reserved.
3 *
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
6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree.
9 *
10 */
11
12 #ifndef WEBRTC_MODULES_REMOTE_BITRATE_ESTIMATOR_TEST_ESTIMATORS_MAX_BANDWIDTH_FI LTER_H_
13 #define WEBRTC_MODULES_REMOTE_BITRATE_ESTIMATOR_TEST_ESTIMATORS_MAX_BANDWIDTH_FI LTER_H_
14
15 #include <climits>
16 #include <list>
17 #include <map>
18 #include <memory>
19 #include <utility>
20 #include <vector>
21
22 #include "webrtc/logging/rtc_event_log/mock/mock_rtc_event_log.h"
23 #include "webrtc/modules/remote_bitrate_estimator/include/send_time_history.h"
24 #include "webrtc/modules/remote_bitrate_estimator/test/bwe.h"
25
26 namespace webrtc {
27 namespace testing {
28 namespace bwe {
29 class MaxBandwidthFilter {
30 public:
31 MaxBandwidthFilter();
32 ~MaxBandwidthFilter();
33 int64_t max_bandwidth_estimate();
34
35 // Save bandwidth sample for the current round.
36 // We save bandwidth samples for past 10 rounds to
37 // provide better bandwidth estimate.
38
39 void AddBandwidthSample(int64_t round);
40
41 // Check if bandwidth has grown by certain multiplier for past x rounds,
42 // to decide whether or not delivery rate plateaued.
43 bool DeliveryRateGrows();
44 };
45 } // namespace bwe
46 } // namespace testing
47 } // namespace webrtc
48
49 #endif // WEBRTC_MODULES_REMOTE_BITRATE_ESTIMATOR_TEST_ESTIMATORS_MAX_BANDWIDTH _FILTER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698