LeviLamina
Loading...
Searching...
No Matches
RTCPReceiver.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/external/webrtc/RtpRtcpInterface.h"
7
8// auto generated forward declare list
9// clang-format off
10namespace webrtc { class ModuleRtpRtcpImpl2; }
11namespace webrtc { class ReportBlockData; }
12namespace webrtc { class TimeDelta; }
13namespace webrtc { class Timestamp; }
14namespace webrtc::rtcp { class CommonHeader; }
15namespace webrtc::rtcp { class ReportBlock; }
16namespace webrtc::rtcp { class Rrtr; }
17namespace webrtc::rtcp { class TargetBitrate; }
18namespace webrtc::rtcp { class TmmbItem; }
19namespace webrtc::rtcp { struct ReceiveTimeInfo; }
20// clang-format on
21
22namespace webrtc {
23
25public:
26 // RTCPReceiver inner types declare
27 // clang-format off
29 struct PacketInformation;
30 struct RegisteredSsrcs;
31 class RttStats;
32 struct TmmbrInformation;
33 // clang-format on
34
35 // RTCPReceiver inner types define
37
39 public:
40 // member functions
41 // NOLINTBEGIN
42 MCAPI ~PacketInformation();
43 // NOLINTEND
44
45 public:
46 // destructor thunk
47 // NOLINTBEGIN
48 MCAPI void $dtor();
49 // NOLINTEND
50 };
51
53 public:
54 // member functions
55 // NOLINTBEGIN
57
58 MCAPI bool contains(uint) const;
59
60 MCAPI uint media_ssrc() const;
61
62 MCAPI void set_media_ssrc(uint);
63
64 MCAPI ~RegisteredSsrcs();
65 // NOLINTEND
66
67 public:
68 // constructor thunks
69 // NOLINTBEGIN
70 MCAPI void* $ctor(bool, ::webrtc::RtpRtcpInterface::Configuration const&);
71 // NOLINTEND
72
73 public:
74 // destructor thunk
75 // NOLINTBEGIN
76 MCAPI void $dtor();
77 // NOLINTEND
78 };
79
80 class RttStats {
81 public:
82 // member functions
83 // NOLINTBEGIN
84 MCAPI void AddRtt(::webrtc::TimeDelta);
85 // NOLINTEND
86 };
87
89 public:
90 // prevent constructor by default
91 TmmbrInformation& operator=(TmmbrInformation const&);
93
94 public:
95 // member functions
96 // NOLINTBEGIN
98
99 MCAPI ~TmmbrInformation();
100 // NOLINTEND
101
102 public:
103 // constructor thunks
104 // NOLINTBEGIN
105 MCAPI void* $ctor(::webrtc::RTCPReceiver::TmmbrInformation&&);
106 // NOLINTEND
107
108 public:
109 // destructor thunk
110 // NOLINTBEGIN
111 MCAPI void $dtor();
112 // NOLINTEND
113 };
114
115public:
116 // member functions
117 // NOLINTBEGIN
118 MCAPI ::std::optional<::webrtc::TimeDelta> AverageRtt() const;
119
120 MCAPI ::std::vector<::webrtc::rtcp::TmmbItem> BoundingSet(bool*);
121
122 MCAPI ::std::vector<::webrtc::rtcp::ReceiveTimeInfo> ConsumeReceivedXrReferenceTimeInfo();
123
124 MCAPI ::webrtc::RTCPReceiver::TmmbrInformation* FindOrCreateTmmbrInfo(uint);
125
126 MCAPI ::std::optional<::webrtc::TimeDelta> GetAndResetXrRrRtt();
127
128 MCAPI ::std::vector<::webrtc::ReportBlockData> GetLatestReportBlockData() const;
129
130 MCAPI ::webrtc::RTCPReceiver::NonSenderRttStats GetNonSenderRTT() const;
131
132 MCAPI ::std::optional<::webrtc::RtpRtcpInterface::SenderReportStats> GetSenderReportStats() const;
133
134 MCAPI ::webrtc::RTCPReceiver::TmmbrInformation* GetTmmbrInformation(uint);
135
137
138 MCAPI bool HandleBye(::webrtc::rtcp::CommonHeader const&);
139
141
143
145
147
148 MCAPI bool HandleReceiverReport(::webrtc::rtcp::CommonHeader const&, ::webrtc::RTCPReceiver::PacketInformation*);
149
150 MCAPI void HandleReportBlock(::webrtc::rtcp::ReportBlock const&, ::webrtc::RTCPReceiver::PacketInformation*, uint);
151
153
154 MCAPI bool HandleSenderReport(::webrtc::rtcp::CommonHeader const&, ::webrtc::RTCPReceiver::PacketInformation*);
155
157
159
161
162 MCAPI void HandleTransportFeedback(::webrtc::rtcp::CommonHeader const&, ::webrtc::RTCPReceiver::PacketInformation*);
163
164 MCAPI bool HandleXr(::webrtc::rtcp::CommonHeader const&, ::webrtc::RTCPReceiver::PacketInformation*, bool&, uint&);
165
166 MCAPI void HandleXrDlrrReportBlock(uint, ::webrtc::rtcp::ReceiveTimeInfo const&);
167
168 MCAPI void HandleXrReceiveReferenceTime(uint, ::webrtc::rtcp::Rrtr const&);
169
170 MCAPI void
172
173 MCAPI void IncomingPacket(::rtc::ArrayView<uchar const>);
174
175 MCAPI ::std::optional<::webrtc::TimeDelta> LastRtt() const;
176
177 MCAPI void NotifyTmmbrUpdated();
178
179 MCAPI ::std::optional<::webrtc::TimeDelta> OnPeriodicRttUpdate(::webrtc::Timestamp, bool);
180
182
184
185 MCAPI bool RtcpRrSequenceNumberTimeoutLocked(::webrtc::Timestamp);
186
187 MCAPI bool RtcpRrTimeoutLocked(::webrtc::Timestamp);
188
189 MCAPI void SetNonSenderRttMeasurement(bool);
190
191 MCAPI void SetRemoteSSRC(uint);
192
193 MCAPI ::std::vector<::webrtc::rtcp::TmmbItem> TmmbrReceived();
194
195 MCAPI void TriggerCallbacksFromRtcpPacket(::webrtc::RTCPReceiver::PacketInformation const&);
196
197 MCAPI void UpdateTmmbrRemoteIsAlive(uint);
198
199 MCAPI uint local_media_ssrc() const;
200
201 MCAPI void set_local_media_ssrc(uint);
202
203 MCAPI ~RTCPReceiver();
204 // NOLINTEND
205
206public:
207 // constructor thunks
208 // NOLINTBEGIN
210 // NOLINTEND
211
212public:
213 // destructor thunk
214 // NOLINTBEGIN
215 MCAPI void $dtor();
216 // NOLINTEND
217};
218
219} // namespace webrtc
Definition _HeaderOutputPredefine.h:238
Definition ModuleRtpRtcpImpl2.h:18
Definition RTCPReceiver.h:36
Definition RTCPReceiver.h:80
Definition TimeDelta.h:10
Definition Timestamp.h:10
Definition CommonHeader.h:7
Definition ReportBlock.h:7
Definition Rrtr.h:7
Definition TargetBitrate.h:7
Definition RTCPReceiver.h:38
Definition RTCPReceiver.h:52
Definition RTCPReceiver.h:88
Definition RTCPReceiver.h:24
Definition RtpRtcpInterface.h:16
Definition ReceiveTimeInfo.h:7