LeviLamina
Loading...
Searching...
No Matches
LossBasedBweV2.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 { struct PacketResult; }
10// clang-format on
11
12namespace webrtc {
13
15public:
16 // LossBasedBweV2 inner types declare
17 // clang-format off
18 struct ChannelParameters;
19 struct Config;
20 struct Derivatives;
21 struct Result;
22 // clang-format on
23
24 // LossBasedBweV2 inner types define
26
27 struct Config {
28 public:
29 // prevent constructor by default
30 Config& operator=(Config const&);
31 Config(Config const&);
32
33 public:
34 // member functions
35 // NOLINTBEGIN
36 MCAPI Config();
37
39 // NOLINTEND
40
41 public:
42 // constructor thunks
43 // NOLINTBEGIN
44 MCAPI void* $ctor();
45
46 MCAPI void* $ctor(::webrtc::LossBasedBweV2::Config&&);
47 // NOLINTEND
48 };
49
50 struct Derivatives {};
51
52 struct Result {};
53
54public:
55 // member functions
56 // NOLINTBEGIN
57 MCAPI double AdjustBiasFactor(double, double) const;
58
59 MCAPI void CalculateInstantLowerBound();
60
61 MCAPI void CalculateInstantUpperBound();
62
63 MCAPI void CalculateTemporalWeights();
64
65 MCAPI bool CanKeepIncreasingState(::webrtc::DataRate) const;
66
67 MCAPI double GetAverageReportedByteLossRatio() const;
68
69 MCAPI double GetAverageReportedLossRatio() const;
70
71 MCAPI double GetAverageReportedPacketLossRatio() const;
72
73 MCAPI ::webrtc::DataRate GetCandidateBandwidthUpperBound() const;
74
75 MCAPI ::std::vector<::webrtc::LossBasedBweV2::ChannelParameters> GetCandidates(bool) const;
76
77 MCAPI ::webrtc::LossBasedBweV2::Derivatives
78 GetDerivatives(::webrtc::LossBasedBweV2::ChannelParameters const&) const;
79
80 MCAPI double GetFeasibleInherentLoss(::webrtc::LossBasedBweV2::ChannelParameters const&) const;
81
82 MCAPI double GetHighBandwidthBias(::webrtc::DataRate) const;
83
84 MCAPI double GetInherentLossUpperBound(::webrtc::DataRate) const;
85
86 MCAPI ::webrtc::DataRate GetInstantLowerBound() const;
87
88 MCAPI ::webrtc::DataRate GetInstantUpperBound() const;
89
90 MCAPI ::webrtc::LossBasedBweV2::Result GetLossBasedResult() const;
91
92 MCAPI double GetObjective(::webrtc::LossBasedBweV2::ChannelParameters const&) const;
93
94 MCAPI ::webrtc::DataRate GetSendingRate(::webrtc::DataRate) const;
95
96 MCAPI bool IsConfigValid() const;
97
98 MCAPI bool IsEnabled() const;
99
100 MCAPI bool IsEstimateIncreasingWhenLossLimited(::webrtc::DataRate, ::webrtc::DataRate);
101
102 MCAPI bool IsInLossLimitedState() const;
103
104 MCAPI bool IsReady() const;
105
106 MCAPI explicit LossBasedBweV2(::webrtc::FieldTrialsView const*);
107
108 MCAPI void NewtonsMethodUpdate(::webrtc::LossBasedBweV2::ChannelParameters&) const;
109
110 MCAPI bool PaceAtLossBasedEstimate() const;
111
112 MCAPI bool PushBackObservation(::rtc::ArrayView<::webrtc::PacketResult const>);
113
114 MCAPI bool ReadyToUseInStartPhase() const;
115
116 MCAPI void SetAcknowledgedBitrate(::webrtc::DataRate);
117
118 MCAPI void SetMinMaxBitrate(::webrtc::DataRate, ::webrtc::DataRate);
119
120 MCAPI void UpdateBandwidthEstimate(::rtc::ArrayView<::webrtc::PacketResult const>, ::webrtc::DataRate, bool);
121
122 MCAPI bool UseInStartPhase() const;
123
124 MCAPI ~LossBasedBweV2();
125 // NOLINTEND
126
127public:
128 // static functions
129 // NOLINTBEGIN
130 MCAPI static ::std::optional<::webrtc::LossBasedBweV2::Config> CreateConfig(::webrtc::FieldTrialsView const*);
131 // NOLINTEND
132
133public:
134 // constructor thunks
135 // NOLINTBEGIN
136 MCAPI void* $ctor(::webrtc::FieldTrialsView const*);
137 // NOLINTEND
138
139public:
140 // destructor thunk
141 // NOLINTBEGIN
142 MCAPI void $dtor();
143 // NOLINTEND
144};
145
146} // namespace webrtc
Definition _HeaderOutputPredefine.h:238
Definition DataRate.h:10
Definition FieldTrialsView.h:7
Definition LossBasedBweV2.h:14
Definition LossBasedBweV2.h:25
Definition LossBasedBweV2.h:27
Definition LossBasedBweV2.h:50
Definition LossBasedBweV2.h:52