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
22class SendSideBandwidthEstimation {
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
74 SendSideBandwidthEstimation& operator=(SendSideBandwidthEstimation const&);
75 SendSideBandwidthEstimation(SendSideBandwidthEstimation const&);
76 SendSideBandwidthEstimation();
77
78public:
79 // member functions
80 // NOLINTBEGIN
81 MCNAPI ::webrtc::DataRate GetEstimatedLinkCapacity() const;
82
83 MCNAPI int GetMinBitrate() const;
84
85 MCNAPI bool IsRttAboveLimit() const;
86
88
90
91 MCNAPI void OnRouteChange();
92
93 MCNAPI void OnSentPacket(::webrtc::SentPacket const& sent_packet);
94
95 MCNAPI bool PaceAtLossBasedEstimate() const;
96
97 MCNAPI
99
100 MCNAPI void SetAcknowledgedRate(::std::optional<::webrtc::DataRate> acknowledged_rate, ::webrtc::Timestamp at_time);
101
102 MCNAPI void SetBitrates(
103 ::std::optional<::webrtc::DataRate> send_bitrate,
104 ::webrtc::DataRate min_bitrate,
105 ::webrtc::DataRate max_bitrate,
106 ::webrtc::Timestamp at_time
107 );
108
109 MCNAPI void SetMinMaxBitrate(::webrtc::DataRate min_bitrate, ::webrtc::DataRate max_bitrate);
110
112
114
116
119 ::webrtc::BandwidthUsage delay_detector_state,
120 ::std::optional<::webrtc::DataRate> probe_bitrate,
121 bool in_alr
122 );
123
124 MCNAPI void UpdatePacketsLost(int64 packets_lost, int64 number_of_packets, ::webrtc::Timestamp at_time);
125
126 MCNAPI void UpdatePropagationRtt(::webrtc::Timestamp at_time, ::webrtc::TimeDelta propagation_rtt);
127
129
131
133
134 MCNAPI void UpdateUmaStatsPacketsLost(::webrtc::Timestamp at_time, int packets_lost);
135
136 MCNAPI ::webrtc::LossBasedState loss_based_state() const;
137
138 MCNAPI ::webrtc::DataRate target_rate() const;
139
141 // NOLINTEND
142
143public:
144 // constructor thunks
145 // NOLINTBEGIN
146 MCNAPI void* $ctor(::webrtc::FieldTrialsView const* key_value_config, ::webrtc::RtcEventLog* event_log);
147 // NOLINTEND
148
149public:
150 // destructor thunk
151 // NOLINTBEGIN
152 MCNAPI void $dtor();
153 // NOLINTEND
154};
155
156} // namespace webrtc
Definition DataRate.h:10
Definition FieldTrialsView.h:7
Definition RtcEventLog.h:13
MCAPI void UpdateReceiverEstimate(::webrtc::Timestamp at_time, ::webrtc::DataRate bandwidth)
MCAPI bool PaceAtLossBasedEstimate() const
MCAPI void UpdateRtt(::webrtc::TimeDelta rtt, ::webrtc::Timestamp at_time)
MCAPI void OnSentPacket(::webrtc::SentPacket const &sent_packet)
MCAPI void UpdateTargetBitrate(::webrtc::DataRate new_bitrate, ::webrtc::Timestamp at_time)
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 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 SetSendBitrate(::webrtc::DataRate bitrate, ::webrtc::Timestamp at_time)
MCAPI void UpdatePacketsLost(int64 packets_lost, int64 number_of_packets, ::webrtc::Timestamp at_time)
MCAPI void UpdateLossBasedEstimator(::webrtc::TransportPacketsFeedback const &report, ::webrtc::BandwidthUsage delay_detector_state, ::std::optional<::webrtc::DataRate > probe_bitrate, bool in_alr)
MCAPI::webrtc::DataRate GetEstimatedLinkCapacity() const
MCAPI void UpdateUmaStatsPacketsLost(::webrtc::Timestamp at_time, int packets_lost)
MCAPI::webrtc::LossBasedState loss_based_state() const
MCAPI void SetAcknowledgedRate(::std::optional<::webrtc::DataRate > acknowledged_rate, ::webrtc::Timestamp at_time)
Definition TimeDelta.h:10
Definition Timestamp.h:15
Definition Alias.h:14
Definition SentPacket.h:7
Definition TransportPacketsFeedback.h:12