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 // member functions
25 // NOLINTBEGIN
26 MCAPI void ApplyTargetLimits(::webrtc::Timestamp);
27
28 MCAPI ::webrtc::DataRate GetEstimatedLinkCapacity() const;
29
30 MCAPI int GetMinBitrate() const;
31
32 MCAPI ::webrtc::DataRate GetUpperLimit() const;
33
34 MCAPI bool IsInStartPhase(::webrtc::Timestamp) const;
35
36 MCAPI bool IsRttAboveLimit() const;
37
38 MCAPI bool LossBasedBandwidthEstimatorV1Enabled() const;
39
40 MCAPI bool LossBasedBandwidthEstimatorV1ReadyForUse() const;
41
42 MCAPI bool LossBasedBandwidthEstimatorV2Enabled() const;
43
44 MCAPI bool LossBasedBandwidthEstimatorV2ReadyForUse() const;
45
46 MCAPI void MaybeLogLossBasedEvent(::webrtc::Timestamp);
47
48 MCAPI void MaybeLogLowBitrateWarning(::webrtc::DataRate, ::webrtc::Timestamp);
49
50 MCAPI void OnRouteChange();
51
52 MCAPI void OnSentPacket(::webrtc::SentPacket const&);
53
54 MCAPI bool PaceAtLossBasedEstimate() const;
55
57
58 MCAPI void SetAcknowledgedRate(::std::optional<::webrtc::DataRate>, ::webrtc::Timestamp);
59
60 MCAPI void
61 SetBitrates(::std::optional<::webrtc::DataRate>, ::webrtc::DataRate, ::webrtc::DataRate, ::webrtc::Timestamp);
62
63 MCAPI void SetMinMaxBitrate(::webrtc::DataRate, ::webrtc::DataRate);
64
65 MCAPI void SetSendBitrate(::webrtc::DataRate, ::webrtc::Timestamp);
66
67 MCAPI void UpdateDelayBasedEstimate(::webrtc::Timestamp, ::webrtc::DataRate);
68
69 MCAPI void UpdateEstimate(::webrtc::Timestamp);
70
71 MCAPI void UpdateLossBasedEstimator(
73 ::webrtc::BandwidthUsage,
74 ::std::optional<::webrtc::DataRate>,
75 bool
76 );
77
78 MCAPI void UpdateMinHistory(::webrtc::Timestamp);
79
80 MCAPI void UpdatePacketsLost(int64, int64, ::webrtc::Timestamp);
81
82 MCAPI void UpdatePropagationRtt(::webrtc::Timestamp, ::webrtc::TimeDelta);
83
84 MCAPI void UpdateReceiverEstimate(::webrtc::Timestamp, ::webrtc::DataRate);
85
86 MCAPI void UpdateRtt(::webrtc::TimeDelta, ::webrtc::Timestamp);
87
88 MCAPI void UpdateTargetBitrate(::webrtc::DataRate, ::webrtc::Timestamp);
89
90 MCAPI void UpdateUmaStatsPacketsLost(::webrtc::Timestamp, int);
91
92 MCAPI ::webrtc::LossBasedState loss_based_state() const;
93
94 MCAPI ::webrtc::DataRate target_rate() const;
95
97 // NOLINTEND
98
99public:
100 // constructor thunks
101 // NOLINTBEGIN
102 MCAPI void* $ctor(::webrtc::FieldTrialsView const*, ::webrtc::RtcEventLog*);
103 // NOLINTEND
104
105public:
106 // destructor thunk
107 // NOLINTBEGIN
108 MCAPI void $dtor();
109 // NOLINTEND
110};
111
112} // namespace webrtc
Definition DataRate.h:10
Definition FieldTrialsView.h:7
Definition RtcEventLog.h:13
Definition SendSideBandwidthEstimation.h:22
Definition TimeDelta.h:10
Definition Timestamp.h:10
Definition SentPacket.h:7
Definition TransportPacketsFeedback.h:12