LeviLamina
Loading...
Searching...
No Matches
RtpSenderEgress.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/external/webrtc/RtpPacketMediaType.h"
7#include "mc/external/webrtc/RtpPacketSender.h"
8#include "mc/external/webrtc/RtpRtcpInterface.h"
9#include "mc/external/webrtc/RtpSequenceNumberMap.h"
10
11// auto generated forward declare list
12// clang-format off
13namespace webrtc { class PacketSequencer; }
14namespace webrtc { class RtpPacketHistory; }
15namespace webrtc { class RtpPacketToSend; }
16namespace webrtc { class RtpSendRates; }
17namespace webrtc { class TaskQueueBase; }
18namespace webrtc { class Timestamp; }
19namespace webrtc { struct FecProtectionParams; }
20namespace webrtc { struct PacedPacketInfo; }
21namespace webrtc { struct RtpPacketCounter; }
22namespace webrtc { struct StreamDataCounters; }
23// clang-format on
24
25namespace webrtc {
26
27class RtpSenderEgress {
28public:
29 // RtpSenderEgress inner types declare
30 // clang-format off
32 struct Packet;
33 // clang-format on
34
35 // RtpSenderEgress inner types define
36 class NonPacedPacketSender : public ::webrtc::RtpPacketSender {
37 public:
38 // member variables
39 // NOLINTBEGIN
45 // NOLINTEND
46
47 public:
48 // prevent constructor by default
49 NonPacedPacketSender& operator=(NonPacedPacketSender const&);
50 NonPacedPacketSender(NonPacedPacketSender const&);
51 NonPacedPacketSender();
52
53 public:
54 // virtual functions
55 // NOLINTBEGIN
56 virtual ~NonPacedPacketSender() /*override*/;
57
58 virtual void EnqueuePackets(::std::vector<::std::unique_ptr<::webrtc::RtpPacketToSend>> packets) /*override*/;
59
60 virtual void RemovePacketsForSsrc(uint ssrc) /*override*/;
61 // NOLINTEND
62
63 public:
64 // member functions
65 // NOLINTBEGIN
67 ::webrtc::TaskQueueBase& worker_queue,
70 );
71 // NOLINTEND
72
73 public:
74 // constructor thunks
75 // NOLINTBEGIN
76 MCNAPI void* $ctor(
77 ::webrtc::TaskQueueBase& worker_queue,
80 );
81 // NOLINTEND
82
83 public:
84 // destructor thunk
85 // NOLINTBEGIN
86 MCNAPI void $dtor();
87 // NOLINTEND
88
89 public:
90 // virtual function thunks
91 // NOLINTBEGIN
92 MCNAPI void $EnqueuePackets(::std::vector<::std::unique_ptr<::webrtc::RtpPacketToSend>> packets);
93
94 MCNAPI void $RemovePacketsForSsrc(uint ssrc);
95
96
97 // NOLINTEND
98
99 public:
100 // vftables
101 // NOLINTBEGIN
102 MCNAPI static void** $vftable();
103 // NOLINTEND
104 };
105
106 struct Packet {
107 public:
108 // member variables
109 // NOLINTBEGIN
113 // NOLINTEND
114
115 public:
116 // prevent constructor by default
117 Packet& operator=(Packet const&);
118 Packet(Packet const&);
119 Packet();
120
121 public:
122 // member functions
123 // NOLINTBEGIN
124 MCNAPI ~Packet();
125 // NOLINTEND
126
127 public:
128 // destructor thunk
129 // NOLINTBEGIN
130 MCNAPI void $dtor();
131 // NOLINTEND
132 };
133
134public:
135 // member variables
136 // NOLINTBEGIN
166 // NOLINTEND
167
168public:
169 // prevent constructor by default
170 RtpSenderEgress& operator=(RtpSenderEgress const&);
171 RtpSenderEgress(RtpSenderEgress const&);
172 RtpSenderEgress();
173
174public:
175 // member functions
176 // NOLINTBEGIN
177 MCNAPI void CompleteSendPacket(::webrtc::RtpSenderEgress::Packet const& compound_packet, bool last_in_batch);
178
179 MCNAPI ::std::vector<::std::unique_ptr<::webrtc::RtpPacketToSend>> FetchFecPackets();
180
181 MCNAPI void ForceIncludeSendPacketsInAllocation(bool part_of_allocation);
182
184
185 MCNAPI ::webrtc::RtpSendRates GetSendRates(::webrtc::Timestamp now) const;
186
187 MCNAPI ::std::vector<::webrtc::RtpSequenceNumberMap::Info>
189
190 MCNAPI bool MediaHasBeenSent() const;
191
193
194 MCNAPI void OnBatchComplete();
195
198 ::webrtc::RtpPacketHistory* packet_history
199 );
200
201 MCNAPI void
202 SendPacket(::std::unique_ptr<::webrtc::RtpPacketToSend> packet, ::webrtc::PacedPacketInfo const& pacing_info);
203
205 ::webrtc::FecProtectionParams const& delta_params,
206 ::webrtc::FecProtectionParams const& key_params
207 );
208
209 MCNAPI void SetTimestampOffset(uint timestamp);
210
211 MCNAPI void UpdateRtpStats(
213 uint packet_ssrc,
214 ::webrtc::RtpPacketMediaType packet_type,
216 uint64 packet_size
217 );
218
220 // NOLINTEND
221
222public:
223 // constructor thunks
224 // NOLINTBEGIN
225 MCNAPI void*
227 // NOLINTEND
228
229public:
230 // destructor thunk
231 // NOLINTBEGIN
232 MCNAPI void $dtor();
233 // NOLINTEND
234};
235
236} // namespace webrtc
Definition _HeaderOutputPredefine.h:309
Definition PacketSequencer.h:14
Definition RtpPacketHistory.h:18
Definition RtpPacketSender.h:12
Definition RtpPacketToSend.h:16
Definition RtpSendRates.h:7
Definition RtpSenderEgress.h:36
MCAPI void * $ctor(::webrtc::TaskQueueBase &worker_queue, ::webrtc::RtpSenderEgress *sender, ::webrtc::PacketSequencer *sequencer)
MCAPI void $EnqueuePackets(::std::vector<::std::unique_ptr<::webrtc::RtpPacketToSend > > packets)
MCAPI NonPacedPacketSender(::webrtc::TaskQueueBase &worker_queue, ::webrtc::RtpSenderEgress *sender, ::webrtc::PacketSequencer *sequencer)
Definition RtpSenderEgress.h:27
MCAPI void CompleteSendPacket(::webrtc::RtpSenderEgress::Packet const &compound_packet, bool last_in_batch)
MCAPI void SetFecProtectionParameters(::webrtc::FecProtectionParams const &delta_params, ::webrtc::FecProtectionParams const &key_params)
MCAPI::webrtc::RtpSendRates GetSendRates(::webrtc::Timestamp now) const
MCAPI void SetTimestampOffset(uint timestamp)
MCAPI ::std::vector<::webrtc::RtpSequenceNumberMap::Info > GetSentRtpPacketInfos(::rtc::ArrayView< ushort const > sequence_numbers) const
MCAPI ::std::vector<::std::unique_ptr<::webrtc::RtpPacketToSend > > FetchFecPackets()
MCAPI void SendPacket(::std::unique_ptr<::webrtc::RtpPacketToSend > packet, ::webrtc::PacedPacketInfo const &pacing_info)
MCAPI bool MediaHasBeenSent() const
MCAPI void GetDataCounters(::webrtc::StreamDataCounters *rtp_stats, ::webrtc::StreamDataCounters *rtx_stats) const
MCAPI RtpSenderEgress(::webrtc::RtpRtcpInterface::Configuration const &config, ::webrtc::RtpPacketHistory *packet_history)
MCAPI void OnBatchComplete()
MCAPI void UpdateRtpStats(::webrtc::Timestamp now, uint packet_ssrc, ::webrtc::RtpPacketMediaType packet_type, ::webrtc::RtpPacketCounter counter, uint64 packet_size)
MCAPI void OnAbortedRetransmissions(::rtc::ArrayView< ushort const > sequence_numbers)
MCAPI void * $ctor(::webrtc::RtpRtcpInterface::Configuration const &config, ::webrtc::RtpPacketHistory *packet_history)
MCAPI void ForceIncludeSendPacketsInAllocation(bool part_of_allocation)
Definition TaskQueueBase.h:16
Definition Timestamp.h:15
Definition Alias.h:14
Definition FecProtectionParams.h:7
Definition PacedPacketInfo.h:7
Definition RtpPacketCounter.h:12
Definition RtpRtcpInterface.h:37
Definition RtpSenderEgress.h:106
Definition StreamDataCounters.h:7