LeviLamina
Loading...
Searching...
No Matches
RtpRtcpInterface.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/external/webrtc/RTCPPacketType.h"
7#include "mc/external/webrtc/RtcpFeedbackSenderInterface.h"
8#include "mc/external/webrtc/RtcpMode.h"
9#include "mc/external/webrtc/RtpSequenceNumberMap.h"
10
11// auto generated forward declare list
12// clang-format off
13namespace webrtc { class RTPSender; }
14namespace webrtc { class ReportBlockData; }
15namespace webrtc { class RtpPacketToSend; }
16namespace webrtc { class RtpSendRates; }
17namespace webrtc { class TimeDelta; }
18namespace webrtc { class VideoBitrateAllocation; }
19namespace webrtc { struct FecProtectionParams; }
20namespace webrtc { struct PacedPacketInfo; }
21namespace webrtc { struct RtpState; }
22namespace webrtc { struct StreamDataCounters; }
23// clang-format on
24
25namespace webrtc {
26
28public:
29 // RtpRtcpInterface inner types declare
30 // clang-format off
31 struct Configuration;
32 struct NonSenderRttStats;
33 struct SenderReportStats;
34 // clang-format on
35
36 // RtpRtcpInterface inner types define
37 struct Configuration {
38 public:
39 // member variables
40 // NOLINTBEGIN
77 // NOLINTEND
78
79 public:
80 // prevent constructor by default
81 Configuration& operator=(Configuration const&);
82 Configuration(Configuration const&);
83 Configuration();
84
85 public:
86 // member functions
87 // NOLINTBEGIN
89 // NOLINTEND
90
91 public:
92 // destructor thunk
93 // NOLINTBEGIN
94 MCNAPI void $dtor();
95 // NOLINTEND
96 };
97
98 struct NonSenderRttStats {
99 public:
100 // member variables
101 // NOLINTBEGIN
105 // NOLINTEND
106
107 public:
108 // prevent constructor by default
109 NonSenderRttStats& operator=(NonSenderRttStats const&);
110 NonSenderRttStats(NonSenderRttStats const&);
111 NonSenderRttStats();
112 };
113
114 struct SenderReportStats {
115 public:
116 // member variables
117 // NOLINTBEGIN
124 // NOLINTEND
125
126 public:
127 // prevent constructor by default
128 SenderReportStats& operator=(SenderReportStats const&);
129 SenderReportStats(SenderReportStats const&);
130 SenderReportStats();
131 };
132
133public:
134 // virtual functions
135 // NOLINTBEGIN
136 virtual void IncomingRtcpPacket(::rtc::ArrayView<uchar const>) = 0;
137
138 virtual void SetRemoteSSRC(uint) = 0;
139
140 virtual void SetLocalSsrc(uint) = 0;
141
142 virtual void SetMaxRtpPacketSize(uint64) = 0;
143
144 virtual uint64 MaxRtpPacketSize() const = 0;
145
146 virtual void RegisterSendPayloadFrequency(int, int) = 0;
147
148 virtual int DeRegisterSendPayload(schar) = 0;
149
150 virtual void SetExtmapAllowMixed(bool) = 0;
151
152 virtual void RegisterRtpHeaderExtension(::std::string_view, int) = 0;
153
154 virtual void DeregisterSendRtpHeaderExtension(::std::string_view) = 0;
155
156 virtual bool SupportsPadding() const = 0;
157
158 virtual bool SupportsRtxPayloadPadding() const = 0;
159
160 virtual uint StartTimestamp() const = 0;
161
162 virtual void SetStartTimestamp(uint) = 0;
163
164 virtual ushort SequenceNumber() const = 0;
165
166 virtual void SetSequenceNumber(ushort) = 0;
167
168 virtual void SetRtpState(::webrtc::RtpState const&) = 0;
169
170 virtual void SetRtxState(::webrtc::RtpState const&) = 0;
171
172 virtual ::webrtc::RtpState GetRtpState() const = 0;
173
174 virtual ::webrtc::RtpState GetRtxState() const = 0;
175
176 virtual void SetNonSenderRttMeasurement(bool) = 0;
177
178 virtual uint SSRC() const = 0;
179
180 virtual void SetMid(::std::string_view) = 0;
181
182 virtual void SetRtxSendStatus(int) = 0;
183
184 virtual int RtxSendStatus() const = 0;
185
186 virtual ::std::optional<uint> RtxSsrc() const = 0;
187
188 virtual void SetRtxSendPayloadType(int, int) = 0;
189
190 virtual ::std::optional<uint> FlexfecSsrc() const = 0;
191
192 virtual int SetSendingStatus(bool) = 0;
193
194 virtual bool Sending() const = 0;
195
196 virtual void SetSendingMediaStatus(bool) = 0;
197
198 virtual bool SendingMedia() const = 0;
199
200 virtual bool IsAudioConfigured() const = 0;
201
202 virtual void SetAsPartOfAllocation(bool) = 0;
203
204 virtual ::webrtc::RtpSendRates GetSendRates() const = 0;
205
206 virtual ::webrtc::RTPSender* RtpSender() = 0;
207
208 virtual ::webrtc::RTPSender const* RtpSender() const = 0;
209
210 virtual bool OnSendingRtpFrame(uint, int64, int, bool) = 0;
211
212 virtual bool TrySendPacket(::std::unique_ptr<::webrtc::RtpPacketToSend>, ::webrtc::PacedPacketInfo const&) = 0;
213
214 virtual bool CanSendPacket(::webrtc::RtpPacketToSend const&) const = 0;
215
216 virtual void AssignSequenceNumber(::webrtc::RtpPacketToSend&) = 0;
217
218 virtual void SendPacket(::std::unique_ptr<::webrtc::RtpPacketToSend>, ::webrtc::PacedPacketInfo const&) = 0;
219
220 virtual void OnBatchComplete() = 0;
221
222 virtual void SetFecProtectionParams(::webrtc::FecProtectionParams const&, ::webrtc::FecProtectionParams const&) = 0;
223
224 virtual ::std::vector<::std::unique_ptr<::webrtc::RtpPacketToSend>> FetchFecPackets() = 0;
225
226 virtual void OnAbortedRetransmissions(::rtc::ArrayView<ushort const>) = 0;
227
228 virtual void OnPacketsAcknowledged(::rtc::ArrayView<ushort const>) = 0;
229
230 virtual ::std::vector<::std::unique_ptr<::webrtc::RtpPacketToSend>> GeneratePadding(uint64) = 0;
231
232 virtual ::std::vector<::webrtc::RtpSequenceNumberMap::Info>
233 GetSentRtpPacketInfos(::rtc::ArrayView<ushort const>) const = 0;
234
235 virtual uint64 ExpectedPerPacketOverhead() const = 0;
236
237 virtual void OnPacketSendingThreadSwitched() = 0;
238
239 virtual ::webrtc::RtcpMode RTCP() const = 0;
240
241 virtual void SetRTCPStatus(::webrtc::RtcpMode) = 0;
242
243 virtual int SetCNAME(::std::string_view) = 0;
244
245 virtual ::std::optional<::webrtc::TimeDelta> LastRtt() const = 0;
246
247 virtual ::webrtc::TimeDelta ExpectedRetransmissionTime() const = 0;
248
249 virtual int SendRTCP(::webrtc::RTCPPacketType) = 0;
250
251 virtual void GetSendStreamDataCounters(::webrtc::StreamDataCounters*, ::webrtc::StreamDataCounters*) const = 0;
252
253 virtual ::std::vector<::webrtc::ReportBlockData> GetLatestReportBlockData() const = 0;
254
255 virtual ::std::optional<::webrtc::RtpRtcpInterface::SenderReportStats> GetSenderReportStats() const = 0;
256
257 virtual ::std::optional<::webrtc::RtpRtcpInterface::NonSenderRttStats> GetNonSenderRttStats() const = 0;
258
259 virtual void SetRemb(int64, ::std::vector<uint>) = 0;
260
261 virtual void UnsetRemb() = 0;
262
263 virtual int SendNACK(ushort const*, ushort) = 0;
264
265 virtual void SendNack(::std::vector<ushort> const&) = 0;
266
267 virtual void SetStorePacketsStatus(bool, ushort) = 0;
268
269 virtual void SetVideoBitrateAllocation(::webrtc::VideoBitrateAllocation const&) = 0;
270
271 virtual int SendLossNotification(ushort, ushort, bool, bool) = 0;
272
273 virtual ~RtpRtcpInterface() /*override*/ = default;
274 // NOLINTEND
275
276public:
277 // virtual function thunks
278 // NOLINTBEGIN
279
280 // NOLINTEND
281};
282
283} // namespace webrtc
Definition _HeaderOutputPredefine.h:309
Definition RTPSender.h:19
Definition ReportBlockData.h:14
Definition RtcpFeedbackSenderInterface.h:12
Definition RtpPacketToSend.h:16
Definition RtpRtcpInterface.h:27
Definition RtpSendRates.h:7
Definition TimeDelta.h:10
Definition VideoBitrateAllocation.h:7
Definition Alias.h:14
Definition FecProtectionParams.h:7
Definition PacedPacketInfo.h:7
Definition RtpRtcpInterface.h:37
Definition RtpRtcpInterface.h:98
Definition RtpRtcpInterface.h:114
Definition RtpState.h:7
Definition StreamDataCounters.h:7