LeviLamina
Loading...
Searching...
No Matches
RTCPSender.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/external/rtc/FunctionView.h"
7#include "mc/external/webrtc/RTCPPacketType.h"
8#include "mc/external/webrtc/RtcpMode.h"
9#include "mc/external/webrtc/RtpRtcpInterface.h"
10
11// auto generated forward declare list
12// clang-format off
13namespace webrtc { class DataRate; }
14namespace webrtc { class TimeDelta; }
15namespace webrtc { class Timestamp; }
16namespace webrtc { class VideoBitrateAllocation; }
17namespace webrtc::rtcp { class ReportBlock; }
18namespace webrtc::rtcp { class RtcpPacket; }
19namespace webrtc::rtcp { class TmmbItem; }
20// clang-format on
21
22namespace webrtc {
23
25public:
26 // RTCPSender inner types declare
27 // clang-format off
28 struct Configuration;
29 struct FeedbackState;
30 class PacketSender;
31 struct ReportFlag;
32 class RtcpContext;
33 // clang-format on
34
35 // RTCPSender inner types define
37 public:
38 // member variables
39 // NOLINTBEGIN
50 // NOLINTEND
51
52 public:
53 // prevent constructor by default
54 Configuration& operator=(Configuration const&);
57
58 public:
59 // member functions
60 // NOLINTBEGIN
62 // NOLINTEND
63
64 public:
65 // static functions
66 // NOLINTBEGIN
67 MCNAPI static ::webrtc::RTCPSender::Configuration
69 // NOLINTEND
70
71 public:
72 // destructor thunk
73 // NOLINTBEGIN
74 MCNAPI void $dtor();
75 // NOLINTEND
76 };
77
79 public:
80 // member variables
81 // NOLINTBEGIN
89 // NOLINTEND
90
91 public:
92 // prevent constructor by default
93 FeedbackState& operator=(FeedbackState const&);
95
96 public:
97 // member functions
98 // NOLINTBEGIN
99 MCNAPI FeedbackState();
100
102 // NOLINTEND
103
104 public:
105 // constructor thunks
106 // NOLINTBEGIN
107 MCNAPI void* $ctor();
108 // NOLINTEND
109
110 public:
111 // destructor thunk
112 // NOLINTBEGIN
113 MCNAPI void $dtor();
114 // NOLINTEND
115 };
116
118 public:
119 // member variables
120 // NOLINTBEGIN
125 // NOLINTEND
126
127 public:
128 // prevent constructor by default
129 RtcpContext& operator=(RtcpContext const&);
130 RtcpContext(RtcpContext const&);
131 RtcpContext();
132 };
133
135 public:
136 // member variables
137 // NOLINTBEGIN
142 // NOLINTEND
143
144 public:
145 // prevent constructor by default
146 PacketSender& operator=(PacketSender const&);
148 PacketSender();
149
150 public:
151 // member functions
152 // NOLINTBEGIN
153 MCNAPI PacketSender(::rtc::FunctionView<void(::rtc::ArrayView<uchar const>)> callback, uint64 max_packet_size);
154
156 // NOLINTEND
157
158 public:
159 // constructor thunks
160 // NOLINTBEGIN
161 MCNAPI void* $ctor(::rtc::FunctionView<void(::rtc::ArrayView<uchar const>)> callback, uint64 max_packet_size);
162 // NOLINTEND
163
164 public:
165 // destructor thunk
166 // NOLINTBEGIN
167 MCNAPI void $dtor();
168 // NOLINTEND
169 };
170
171 struct ReportFlag {
172 public:
173 // member variables
174 // NOLINTBEGIN
177 // NOLINTEND
178
179 public:
180 // prevent constructor by default
181 ReportFlag& operator=(ReportFlag const&);
182 ReportFlag(ReportFlag const&);
183 ReportFlag();
184 };
185
186public:
187 // member variables
188 // NOLINTBEGIN
226 // NOLINTEND
227
228public:
229 // prevent constructor by default
230 RTCPSender& operator=(RTCPSender const&);
231 RTCPSender(RTCPSender const&);
232 RTCPSender();
233
234public:
235 // virtual functions
236 // NOLINTBEGIN
237 // vIndex: 0
238 virtual ~RTCPSender();
239 // NOLINTEND
240
241public:
242 // member functions
243 // NOLINTBEGIN
244 MCNAPI bool AllVolatileFlagsConsumed() const;
245
247
248 MCNAPI void
250
252
253 MCNAPI void
255
257
259
261
263
265
267
269
271
272 MCNAPI ::std::optional<::webrtc::VideoBitrateAllocation>
274
275 MCNAPI ::std::optional<int> ComputeCompoundRTCPPacket(
276 ::webrtc::RTCPSender::FeedbackState const& feedback_state,
277 ::webrtc::RTCPPacketType packet_type,
278 int nack_size,
279 ushort const* nack_list,
281 );
282
283 MCNAPI ::webrtc::TimeDelta ComputeTimeUntilNextReport(::webrtc::DataRate send_bitrate);
284
285 MCNAPI bool ConsumeFlag(uint type, bool forced);
286
287 MCNAPI ::std::vector<::webrtc::rtcp::ReportBlock>
289
290 MCNAPI bool IsFlagPresent(uint type) const;
291
292 MCNAPI void PrepareReport(::webrtc::RTCPSender::FeedbackState const& feedback_state);
293
295
296 MCNAPI uint SSRC() const;
297
298 MCNAPI void SendCombinedRtcpPacket(::std::vector<::std::unique_ptr<::webrtc::rtcp::RtcpPacket>> rtcp_packets);
299
301 ::webrtc::RTCPSender::FeedbackState const& feedback_state,
302 ushort last_decoded_seq_num,
303 ushort last_received_seq_num,
304 bool decodability_flag,
305 bool buffering_allowed
306 );
307
308 MCNAPI int SendRTCP(
309 ::webrtc::RTCPSender::FeedbackState const& feedback_state,
310 ::webrtc::RTCPPacketType packet_type,
311 int nack_size,
312 ushort const* nack_list
313 );
314
315 MCNAPI bool Sending() const;
316
317 MCNAPI int SetCNAME(::std::string_view c_name);
318
319 MCNAPI void SetFlag(uint type, bool is_volatile);
320
321 MCNAPI void SetLastRtpTime(
322 uint rtp_timestamp,
323 ::std::optional<::webrtc::Timestamp> capture_time,
324 ::std::optional<schar> payload_type
325 );
326
327 MCNAPI void SetMaxRtpPacketSize(uint64 max_packet_size);
328
330
331 MCNAPI void SetNonSenderRttMeasurement(bool enabled);
332
333 MCNAPI void SetRTCPStatus(::webrtc::RtcpMode new_method);
334
335 MCNAPI void SetRemb(int64 bitrate_bps, ::std::vector<uint> ssrcs);
336
337 MCNAPI void SetRemoteSSRC(uint ssrc);
338
339 MCNAPI void SetRtpClockRate(schar payload_type, int rtp_clock_rate_hz);
340
341 MCNAPI void SetSendingStatus(::webrtc::RTCPSender::FeedbackState const& feedback_state, bool sending);
342
343 MCNAPI void SetSsrc(uint ssrc);
344
345 MCNAPI void SetTimestampOffset(uint timestamp_offset);
346
347 MCNAPI void SetTmmbn(::std::vector<::webrtc::rtcp::TmmbItem> bounding_set);
348
350
351 MCNAPI ::webrtc::RtcpMode Status() const;
352
353 MCNAPI bool TimeToSendRTCPReport(bool send_keyframe_before_rtp) const;
354
355 MCNAPI void UnsetRemb();
356 // NOLINTEND
357
358public:
359 // constructor thunks
360 // NOLINTBEGIN
362 // NOLINTEND
363
364public:
365 // destructor thunk
366 // NOLINTBEGIN
367 MCNAPI void $dtor();
368 // NOLINTEND
369
370public:
371 // vftables
372 // NOLINTBEGIN
373 MCNAPI static void** $vftable();
374 // NOLINTEND
375};
376
377} // namespace webrtc
Definition _HeaderOutputPredefine.h:260
Definition FunctionView.h:8
Definition DataRate.h:10
Definition RTCPSender.h:134
MCAPI void * $ctor(::rtc::FunctionView< void(::rtc::ArrayView< uchar const >)> callback, uint64 max_packet_size)
MCAPI PacketSender(::rtc::FunctionView< void(::rtc::ArrayView< uchar const >)> callback, uint64 max_packet_size)
Definition RTCPSender.h:117
Definition RTCPSender.h:24
MCAPI void SetRtpClockRate(schar payload_type, int rtp_clock_rate_hz)
MCAPI void BuildSR(::webrtc::RTCPSender::RtcpContext const &ctx, ::webrtc::RTCPSender::PacketSender &sender)
MCAPI void SetRTCPStatus(::webrtc::RtcpMode new_method)
MCAPI void SetSsrc(uint ssrc)
MCAPI void SetTmmbn(::std::vector<::webrtc::rtcp::TmmbItem > bounding_set)
static MCAPI void ** $vftable()
MCAPI void BuildREMB(::webrtc::RTCPSender::RtcpContext const &ctx, ::webrtc::RTCPSender::PacketSender &sender)
MCAPI void SetVideoBitrateAllocation(::webrtc::VideoBitrateAllocation const &bitrate)
MCAPI void BuildTMMBR(::webrtc::RTCPSender::RtcpContext const &ctx, ::webrtc::RTCPSender::PacketSender &sender)
MCAPI bool AllVolatileFlagsConsumed() const
MCAPI void SetTimestampOffset(uint timestamp_offset)
MCAPI void UnsetRemb()
MCAPI void * $ctor(::webrtc::RTCPSender::Configuration config)
MCAPI::webrtc::TimeDelta ComputeTimeUntilNextReport(::webrtc::DataRate send_bitrate)
MCAPI void BuildTMMBN(::webrtc::RTCPSender::RtcpContext const &ctx, ::webrtc::RTCPSender::PacketSender &sender)
MCAPI void SetNonSenderRttMeasurement(bool enabled)
MCAPI ::std::optional< int > ComputeCompoundRTCPPacket(::webrtc::RTCPSender::FeedbackState const &feedback_state, ::webrtc::RTCPPacketType packet_type, int nack_size, ushort const *nack_list, ::webrtc::RTCPSender::PacketSender &sender)
MCAPI uint SSRC() const
MCAPI int SendRTCP(::webrtc::RTCPSender::FeedbackState const &feedback_state, ::webrtc::RTCPPacketType packet_type, int nack_size, ushort const *nack_list)
MCAPI void SetRemoteSSRC(uint ssrc)
MCAPI ::std::vector<::webrtc::rtcp::ReportBlock > CreateReportBlocks(::webrtc::RTCPSender::FeedbackState const &feedback_state)
MCAPI void PrepareReport(::webrtc::RTCPSender::FeedbackState const &feedback_state)
MCAPI bool TimeToSendRTCPReport(bool send_keyframe_before_rtp) const
MCAPI void BuildRR(::webrtc::RTCPSender::RtcpContext const &ctx, ::webrtc::RTCPSender::PacketSender &sender)
MCAPI void BuildNACK(::webrtc::RTCPSender::RtcpContext const &ctx, ::webrtc::RTCPSender::PacketSender &sender)
MCAPI bool Sending() const
MCAPI int SetCNAME(::std::string_view c_name)
MCAPI void SetNextRtcpSendEvaluationDuration(::webrtc::TimeDelta duration)
MCAPI void BuildLossNotification(::webrtc::RTCPSender::RtcpContext const &ctx, ::webrtc::RTCPSender::PacketSender &sender)
MCAPI::webrtc::RtcpMode Status() const
MCAPI void BuildExtendedReports(::webrtc::RTCPSender::RtcpContext const &ctx, ::webrtc::RTCPSender::PacketSender &sender)
MCAPI void $dtor()
MCAPI bool IsFlagPresent(uint type) const
MCAPI void SetLastRtpTime(uint rtp_timestamp, ::std::optional<::webrtc::Timestamp > capture_time, ::std::optional< schar > payload_type)
MCAPI void BuildBYE(::webrtc::RTCPSender::RtcpContext const &ctx, ::webrtc::RTCPSender::PacketSender &sender)
MCAPI void SetRemb(int64 bitrate_bps, ::std::vector< uint > ssrcs)
MCAPI void SendCombinedRtcpPacket(::std::vector<::std::unique_ptr<::webrtc::rtcp::RtcpPacket > > rtcp_packets)
MCAPI bool ConsumeFlag(uint type, bool forced)
MCAPI void BuildFIR(::webrtc::RTCPSender::RtcpContext const &ctx, ::webrtc::RTCPSender::PacketSender &sender)
MCAPI void SetSendingStatus(::webrtc::RTCPSender::FeedbackState const &feedback_state, bool sending)
MCAPI int SendLossNotification(::webrtc::RTCPSender::FeedbackState const &feedback_state, ushort last_decoded_seq_num, ushort last_received_seq_num, bool decodability_flag, bool buffering_allowed)
MCAPI ::std::optional<::webrtc::VideoBitrateAllocation > CheckAndUpdateLayerStructure(::webrtc::VideoBitrateAllocation const &bitrate) const
MCAPI void SetFlag(uint type, bool is_volatile)
MCAPI void BuildPLI(::webrtc::RTCPSender::RtcpContext const &ctx, ::webrtc::RTCPSender::PacketSender &sender)
MCAPI void SetMaxRtpPacketSize(uint64 max_packet_size)
MCAPI RTCPSender(::webrtc::RTCPSender::Configuration config)
MCAPI void BuildSDES(::webrtc::RTCPSender::RtcpContext const &ctx, ::webrtc::RTCPSender::PacketSender &sender)
Definition TimeDelta.h:10
Definition VideoBitrateAllocation.h:7
Definition ctx.h:5
Definition Alias.h:14
Definition RTCPSender.h:36
static MCAPI ::webrtc::RTCPSender::Configuration FromRtpRtcpConfiguration(::webrtc::RtpRtcpInterface::Configuration const &configuration)
Definition RTCPSender.h:78
Definition RTCPSender.h:171
Definition RtpRtcpInterface.h:37