LeviLamina
Loading...
Searching...
No Matches
SendSideBandwidthEstimation.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/external/webrtc/BandwidthUsage.h"
7#include "mc/external/webrtc/LossBasedState.h"
8
9// auto generated forward declare list
10// clang-format off
11namespace webrtc { class DataRate; }
12namespace webrtc { class FieldTrialsView; }
13namespace webrtc { class RtcEventLog; }
14namespace webrtc { class TimeDelta; }
15namespace webrtc { class Timestamp; }
16namespace webrtc { struct SentPacket; }
17namespace webrtc { struct TransportPacketsFeedback; }
18// clang-format on
19
20namespace webrtc {
21
23public:
24 // SendSideBandwidthEstimation inner types define
25 enum class UmaState : int {
26 KNoUpdate = 0,
27 KFirstDone = 1,
28 KDone = 2,
29 };
30
31public:
32 // member variables
33 // NOLINTBEGIN
70 // NOLINTEND
71
72public:
73 // prevent constructor by default
77
78public:
79 // member functions
80 // NOLINTBEGIN
82
83 MCNAPI ::webrtc::DataRate GetEstimatedLinkCapacity() const;
84
85 MCNAPI int GetMinBitrate() const;
86
87 MCNAPI ::webrtc::DataRate GetUpperLimit() const;
88
89 MCNAPI bool IsInStartPhase(::webrtc::Timestamp at_time) const;
90
91 MCNAPI bool IsRttAboveLimit() const;
92
94
96
98
100
102
104
105 MCNAPI void OnRouteChange();
106
107 MCNAPI void OnSentPacket(::webrtc::SentPacket const& sent_packet);
108
109 MCNAPI bool PaceAtLossBasedEstimate() const;
110
111 MCNAPI
113
114 MCNAPI void SetAcknowledgedRate(::std::optional<::webrtc::DataRate> acknowledged_rate, ::webrtc::Timestamp at_time);
115
116 MCNAPI void SetBitrates(
117 ::std::optional<::webrtc::DataRate> send_bitrate,
118 ::webrtc::DataRate min_bitrate,
119 ::webrtc::DataRate max_bitrate,
120 ::webrtc::Timestamp at_time
121 );
122
123 MCNAPI void SetMinMaxBitrate(::webrtc::DataRate min_bitrate, ::webrtc::DataRate max_bitrate);
124
126
128
130
133 ::webrtc::BandwidthUsage delay_detector_state,
134 ::std::optional<::webrtc::DataRate> probe_bitrate,
135 bool in_alr
136 );
137
139
140 MCNAPI void UpdatePacketsLost(int64 packets_lost, int64 number_of_packets, ::webrtc::Timestamp at_time);
141
142 MCNAPI void UpdatePropagationRtt(::webrtc::Timestamp at_time, ::webrtc::TimeDelta propagation_rtt);
143
145
147
149
150 MCNAPI void UpdateUmaStatsPacketsLost(::webrtc::Timestamp at_time, int packets_lost);
151
152 MCNAPI ::webrtc::LossBasedState loss_based_state() const;
153
154 MCNAPI ::webrtc::DataRate target_rate() const;
155
157 // NOLINTEND
158
159public:
160 // constructor thunks
161 // NOLINTBEGIN
162 MCNAPI void* $ctor(::webrtc::FieldTrialsView const* key_value_config, ::webrtc::RtcEventLog* event_log);
163 // NOLINTEND
164
165public:
166 // destructor thunk
167 // NOLINTBEGIN
168 MCNAPI void $dtor();
169 // NOLINTEND
170};
171
172} // namespace webrtc
Definition DataRate.h:10
Definition FieldTrialsView.h:7
Definition RtcEventLog.h:13
Definition SendSideBandwidthEstimation.h:22
MCAPI void UpdateReceiverEstimate(::webrtc::Timestamp at_time, ::webrtc::DataRate bandwidth)
MCAPI bool PaceAtLossBasedEstimate() const
MCAPI bool LossBasedBandwidthEstimatorV2Enabled() const
MCAPI void UpdateRtt(::webrtc::TimeDelta rtt, ::webrtc::Timestamp at_time)
MCAPI void ApplyTargetLimits(::webrtc::Timestamp at_time)
MCAPI void OnSentPacket(::webrtc::SentPacket const &sent_packet)
MCAPI void UpdateTargetBitrate(::webrtc::DataRate new_bitrate, ::webrtc::Timestamp at_time)
MCAPI bool IsInStartPhase(::webrtc::Timestamp at_time) const
MCAPI void * $ctor(::webrtc::FieldTrialsView const *key_value_config, ::webrtc::RtcEventLog *event_log)
MCAPI SendSideBandwidthEstimation(::webrtc::FieldTrialsView const *key_value_config, ::webrtc::RtcEventLog *event_log)
MCAPI void UpdateEstimate(::webrtc::Timestamp at_time)
MCAPI void UpdatePropagationRtt(::webrtc::Timestamp at_time, ::webrtc::TimeDelta propagation_rtt)
MCAPI void MaybeLogLowBitrateWarning(::webrtc::DataRate bitrate, ::webrtc::Timestamp at_time)
MCAPI bool LossBasedBandwidthEstimatorV1Enabled() const
MCAPI void UpdateDelayBasedEstimate(::webrtc::Timestamp at_time, ::webrtc::DataRate bitrate)
MCAPI bool LossBasedBandwidthEstimatorV2ReadyForUse() const
MCAPI void SetBitrates(::std::optional<::webrtc::DataRate > send_bitrate, ::webrtc::DataRate min_bitrate, ::webrtc::DataRate max_bitrate, ::webrtc::Timestamp at_time)
MCAPI void SetMinMaxBitrate(::webrtc::DataRate min_bitrate, ::webrtc::DataRate max_bitrate)
MCAPI::webrtc::DataRate target_rate() const
MCAPI void UpdateMinHistory(::webrtc::Timestamp at_time)
MCAPI void SetSendBitrate(::webrtc::DataRate bitrate, ::webrtc::Timestamp at_time)
MCAPI void UpdatePacketsLost(int64 packets_lost, int64 number_of_packets, ::webrtc::Timestamp at_time)
MCAPI bool LossBasedBandwidthEstimatorV1ReadyForUse() const
MCAPI void UpdateLossBasedEstimator(::webrtc::TransportPacketsFeedback const &report, ::webrtc::BandwidthUsage delay_detector_state, ::std::optional<::webrtc::DataRate > probe_bitrate, bool in_alr)
MCAPI void MaybeLogLossBasedEvent(::webrtc::Timestamp at_time)
MCAPI::webrtc::DataRate GetEstimatedLinkCapacity() const
MCAPI void UpdateUmaStatsPacketsLost(::webrtc::Timestamp at_time, int packets_lost)
MCAPI::webrtc::LossBasedState loss_based_state() const
MCAPI::webrtc::DataRate GetUpperLimit() const
MCAPI void SetAcknowledgedRate(::std::optional<::webrtc::DataRate > acknowledged_rate, ::webrtc::Timestamp at_time)
Definition TimeDelta.h:10
Definition Timestamp.h:10
Definition Alias.h:14
Definition SentPacket.h:7
Definition TransportPacketsFeedback.h:12