LeviLamina
Loading...
Searching...
No Matches
AimdRateControl.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated forward declare list
6// clang-format off
7namespace webrtc { class DataRate; }
8namespace webrtc { class FieldTrialsView; }
9namespace webrtc { class TimeDelta; }
10namespace webrtc { class Timestamp; }
11namespace webrtc { struct NetworkStateEstimate; }
12namespace webrtc { struct RateControlInput; }
13// clang-format on
14
15namespace webrtc {
16
18public:
19 // member functions
20 // NOLINTBEGIN
21 MCAPI ::webrtc::DataRate AdditiveRateIncrease(::webrtc::Timestamp, ::webrtc::Timestamp) const;
22
24
25 MCAPI void ChangeBitrate(::webrtc::RateControlInput const&, ::webrtc::Timestamp);
26
27 MCAPI void ChangeState(::webrtc::RateControlInput const&, ::webrtc::Timestamp);
28
29 MCAPI ::webrtc::DataRate ClampBitrate(::webrtc::DataRate) const;
30
31 MCAPI ::webrtc::TimeDelta GetExpectedBandwidthPeriod() const;
32
33 MCAPI double GetNearMaxIncreaseRateBpsPerSecond() const;
34
35 MCAPI bool InitialTimeToReduceFurther(::webrtc::Timestamp) const;
36
37 MCAPI ::webrtc::DataRate LatestEstimate() const;
38
39 MCAPI ::webrtc::DataRate
40 MultiplicativeRateIncrease(::webrtc::Timestamp, ::webrtc::Timestamp, ::webrtc::DataRate) const;
41
42 MCAPI void SetEstimate(::webrtc::DataRate, ::webrtc::Timestamp);
43
44 MCAPI void SetInApplicationLimitedRegion(bool);
45
46 MCAPI void SetMinBitrate(::webrtc::DataRate);
47
48 MCAPI void SetNetworkStateEstimate(::std::optional<::webrtc::NetworkStateEstimate> const&);
49
50 MCAPI void SetRtt(::webrtc::TimeDelta);
51
52 MCAPI void SetStartBitrate(::webrtc::DataRate);
53
54 MCAPI bool TimeToReduceFurther(::webrtc::Timestamp, ::webrtc::DataRate) const;
55
56 MCAPI ::webrtc::DataRate Update(::webrtc::RateControlInput const&, ::webrtc::Timestamp);
57
58 MCAPI bool ValidEstimate() const;
59
60 MCAPI ~AimdRateControl();
61 // NOLINTEND
62
63public:
64 // constructor thunks
65 // NOLINTBEGIN
66 MCAPI void* $ctor(::webrtc::FieldTrialsView const&, bool);
67 // NOLINTEND
68
69public:
70 // destructor thunk
71 // NOLINTBEGIN
72 MCAPI void $dtor();
73 // NOLINTEND
74};
75
76} // namespace webrtc
Definition DataRate.h:10
Definition FieldTrialsView.h:7
Definition TimeDelta.h:10
Definition Timestamp.h:10
Definition AimdRateControl.h:17
Definition RateControlInput.h:15