LeviLamina
Loading...
Searching...
No Matches
SctpDataChannel.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/external/absl/AnyInvocable.h"
7#include "mc/external/rtc/WeakPtr.h"
8#include "mc/external/webrtc/DataChannelInterface.h"
9#include "mc/external/webrtc/DataChannelObserver.h"
10#include "mc/external/webrtc/DataMessageType.h"
11#include "mc/external/webrtc/Priority.h"
12#include "mc/external/webrtc/scoped_refptr.h"
13
14// auto generated forward declare list
15// clang-format off
16namespace rtc { class CopyOnWriteBuffer; }
17namespace rtc { class Thread; }
18namespace webrtc { class PendingTaskSafetyFlag; }
19namespace webrtc { class RTCError; }
20namespace webrtc { class SctpDataChannelControllerInterface; }
21namespace webrtc { class StreamId; }
22namespace webrtc { struct DataBuffer; }
23namespace webrtc { struct DataChannelStats; }
24namespace webrtc { struct InternalDataChannelInit; }
25// clang-format on
26
27namespace webrtc {
28
29class SctpDataChannel : public ::webrtc::DataChannelInterface {
30public:
31 // SctpDataChannel inner types declare
32 // clang-format off
33 class ObserverAdapter;
34 // clang-format on
35
36 // SctpDataChannel inner types define
37 enum class HandshakeState : int {
38 KHandshakeInit = 0,
39 KHandshakeShouldSendOpen = 1,
40 KHandshakeShouldSendAck = 2,
41 KHandshakeWaitingForAck = 3,
42 KHandshakeReady = 4,
43 };
44
45 class ObserverAdapter : public ::webrtc::DataChannelObserver {
46 public:
47 // ObserverAdapter inner types declare
48 // clang-format off
49 class CachedGetters;
50 // clang-format on
51
52 // ObserverAdapter inner types define
53 class CachedGetters {
54 public:
55 // member variables
56 // NOLINTBEGIN
61 // NOLINTEND
62
63 public:
64 // prevent constructor by default
65 CachedGetters& operator=(CachedGetters const&);
66 CachedGetters(CachedGetters const&);
67 CachedGetters();
68 };
69
70 public:
71 // member variables
72 // NOLINTBEGIN
79 // NOLINTEND
80
81 public:
82 // prevent constructor by default
83 ObserverAdapter& operator=(ObserverAdapter const&);
84 ObserverAdapter(ObserverAdapter const&);
85 ObserverAdapter();
86
87 public:
88 // virtual functions
89 // NOLINTBEGIN
90 virtual void OnStateChange() /*override*/;
91
92 virtual void OnMessage(::webrtc::DataBuffer const& buffer) /*override*/;
93
94 virtual void OnBufferedAmountChange(uint64 sent_data_size) /*override*/;
95
96 virtual bool IsOkToCallOnTheNetworkThread() /*override*/;
97
98 virtual ~ObserverAdapter() /*override*/ = default;
99 // NOLINTEND
100
101 public:
102 // member functions
103 // NOLINTBEGIN
105 // NOLINTEND
106
107 public:
108 // virtual function thunks
109 // NOLINTBEGIN
110 MCNAPI void $OnStateChange();
111
113
114 MCNAPI void $OnBufferedAmountChange(uint64 sent_data_size);
115
117
118
119 // NOLINTEND
120
121 public:
122 // vftables
123 // NOLINTBEGIN
124 MCNAPI static void** $vftable();
125 // NOLINTEND
126 };
127
128public:
129 // member variables
130 // NOLINTBEGIN
156 // NOLINTEND
157
158public:
159 // prevent constructor by default
160 SctpDataChannel& operator=(SctpDataChannel const&);
161 SctpDataChannel(SctpDataChannel const&);
162 SctpDataChannel();
163
164public:
165 // virtual functions
166 // NOLINTBEGIN
167 virtual void RegisterObserver(::webrtc::DataChannelObserver* observer) /*override*/;
168
169 virtual void UnregisterObserver() /*override*/;
170
171 virtual ::std::string label() const /*override*/;
172
173 virtual bool reliable() const /*override*/;
174
175 virtual bool ordered() const /*override*/;
176
177 virtual ushort maxRetransmitTime() const /*override*/;
178
179 virtual ushort maxRetransmits() const /*override*/;
180
181 virtual ::std::optional<int> maxPacketLifeTime() const /*override*/;
182
183 virtual ::std::optional<int> maxRetransmitsOpt() const /*override*/;
184
185 virtual ::std::string protocol() const /*override*/;
186
187 virtual bool negotiated() const /*override*/;
188
189 virtual int id() const /*override*/;
190
191 virtual ::webrtc::Priority priority() const /*override*/;
192
193 virtual uint64 buffered_amount() const /*override*/;
194
195 virtual void Close() /*override*/;
196
197 virtual ::webrtc::DataChannelInterface::DataState state() const /*override*/;
198
199 virtual ::webrtc::RTCError error() const /*override*/;
200
201 virtual uint messages_sent() const /*override*/;
202
203 virtual uint64 bytes_sent() const /*override*/;
204
205 virtual uint messages_received() const /*override*/;
206
207 virtual uint64 bytes_received() const /*override*/;
208
209 virtual uint64 bytes_send_buffer() const /*override*/;
210
211 virtual bool Send(::webrtc::DataBuffer const& buffer) /*override*/;
212
213 virtual void
214 SendAsync(::webrtc::DataBuffer buffer, ::absl::AnyInvocable<void(::webrtc::RTCError) &&> on_complete) /*override*/;
215
216 virtual ~SctpDataChannel() /*override*/;
217 // NOLINTEND
218
219public:
220 // member functions
221 // NOLINTBEGIN
222 MCNAPI void CloseAbruptlyWithDataChannelFailure(::std::string const& message);
223
224 MCNAPI void CloseAbruptlyWithError(::webrtc::RTCError error);
225
227
228 MCNAPI ::webrtc::DataChannelStats GetStats() const;
229
231
232 MCNAPI void OnBufferedAmountLow();
233
235
237
238 MCNAPI void OnDataReceived(::webrtc::DataMessageType type, ::rtc::CopyOnWriteBuffer const& payload);
239
240 MCNAPI void OnTransportChannelClosed(::webrtc::RTCError error);
241
243
244 MCNAPI void OnTransportReady();
245
246 MCNAPI SctpDataChannel(
247 ::webrtc::InternalDataChannelInit const& config,
248 ::rtc::WeakPtr<::webrtc::SctpDataChannelControllerInterface> controller,
249 ::std::string const& label,
250 bool connected_to_transport,
251 ::rtc::Thread* signaling_thread,
252 ::rtc::Thread* network_thread
253 );
254
255 MCNAPI bool SendControlMessage(::rtc::CopyOnWriteBuffer const& buffer);
256
257 MCNAPI ::webrtc::RTCError SendDataMessage(::webrtc::DataBuffer const& buffer, bool queue_if_blocked);
258
259 MCNAPI ::webrtc::RTCError SendImpl(::webrtc::DataBuffer buffer);
260
261 MCNAPI void SetSctpSid_n(::webrtc::StreamId sid);
262
263 MCNAPI void SetState(::webrtc::DataChannelInterface::DataState state);
264
265 MCNAPI void UpdateState();
266 // NOLINTEND
267
268public:
269 // static functions
270 // NOLINTBEGIN
271 MCNAPI static ::webrtc::scoped_refptr<::webrtc::SctpDataChannel> Create(
272 ::rtc::WeakPtr<::webrtc::SctpDataChannelControllerInterface> controller,
273 ::std::string const& label,
274 bool connected_to_transport,
275 ::webrtc::InternalDataChannelInit const& config,
276 ::rtc::Thread* signaling_thread,
277 ::rtc::Thread* network_thread
278 );
279
280 MCNAPI static ::webrtc::scoped_refptr<::webrtc::DataChannelInterface> CreateProxy(
281 ::webrtc::scoped_refptr<::webrtc::SctpDataChannel> channel,
282 ::webrtc::scoped_refptr<::webrtc::PendingTaskSafetyFlag> signaling_safety
283 );
284 // NOLINTEND
285
286public:
287 // constructor thunks
288 // NOLINTBEGIN
289 MCNAPI void* $ctor(
290 ::webrtc::InternalDataChannelInit const& config,
291 ::rtc::WeakPtr<::webrtc::SctpDataChannelControllerInterface> controller,
292 ::std::string const& label,
293 bool connected_to_transport,
294 ::rtc::Thread* signaling_thread,
295 ::rtc::Thread* network_thread
296 );
297 // NOLINTEND
298
299public:
300 // destructor thunk
301 // NOLINTBEGIN
302 MCNAPI void $dtor();
303 // NOLINTEND
304
305public:
306 // virtual function thunks
307 // NOLINTBEGIN
308 MCNAPI void $RegisterObserver(::webrtc::DataChannelObserver* observer);
309
310 MCNAPI void $UnregisterObserver();
311
312 MCNAPI ::std::string $label() const;
313
314 MCNAPI bool $reliable() const;
315
316 MCNAPI bool $ordered() const;
317
318 MCNAPI ushort $maxRetransmitTime() const;
319
320 MCNAPI ushort $maxRetransmits() const;
321
322 MCNAPI ::std::optional<int> $maxPacketLifeTime() const;
323
324 MCNAPI ::std::optional<int> $maxRetransmitsOpt() const;
325
326 MCNAPI ::std::string $protocol() const;
327
328 MCNAPI bool $negotiated() const;
329
330 MCNAPI int $id() const;
331
332 MCNAPI ::webrtc::Priority $priority() const;
333
334 MCNAPI uint64 $buffered_amount() const;
335
336 MCNAPI void $Close();
337
338 MCNAPI ::webrtc::DataChannelInterface::DataState $state() const;
339
340 MCNAPI ::webrtc::RTCError $error() const;
341
342 MCNAPI uint $messages_sent() const;
343
344 MCNAPI uint64 $bytes_sent() const;
345
346 MCNAPI uint $messages_received() const;
347
348 MCNAPI uint64 $bytes_received() const;
349
350 MCNAPI uint64 $bytes_send_buffer() const;
351
352 MCNAPI bool $Send(::webrtc::DataBuffer const& buffer);
353
354 MCNAPI void $SendAsync(::webrtc::DataBuffer buffer, ::absl::AnyInvocable<void(::webrtc::RTCError) &&> on_complete);
355
356
357 // NOLINTEND
358
359public:
360 // vftables
361 // NOLINTBEGIN
362 MCNAPI static void** $vftable();
363 // NOLINTEND
364};
365
366} // namespace webrtc
Definition WeakPtr.h:10
Definition CopyOnWriteBuffer.h:11
Definition Thread.h:20
Definition DataChannelInterface.h:19
Definition DataChannelObserver.h:12
Definition PendingTaskSafetyFlag.h:16
Definition RTCError.h:10
Definition SctpDataChannelControllerInterface.h:19
Definition SctpDataChannel.h:45
MCAPI void $OnBufferedAmountChange(uint64 sent_data_size)
MCAPI void $OnMessage(::webrtc::DataBuffer const &buffer)
MCAPI void SetDelegate(::webrtc::DataChannelObserver *delegate)
MCAPI void OnClosingProcedureStartedRemotely()
MCAPI void $UnregisterObserver()
static MCAPI void ** $vftable()
MCAPI void OnTransportChannelClosed(::webrtc::RTCError error)
MCAPI uint64 $bytes_sent() const
MCAPI void OnTransportReady()
MCAPI void SetSctpSid_n(::webrtc::StreamId sid)
MCAPI bool $ordered() const
MCAPI bool $reliable() const
MCAPI ushort $maxRetransmits() const
MCAPI void DeliverQueuedReceivedData()
MCAPI void MaybeSendOnBufferedAmountChanged()
MCAPI void OnClosingProcedureComplete()
MCAPI void * $ctor(::webrtc::InternalDataChannelInit const &config, ::rtc::WeakPtr<::webrtc::SctpDataChannelControllerInterface > controller, ::std::string const &label, bool connected_to_transport, ::rtc::Thread *signaling_thread, ::rtc::Thread *network_thread)
MCAPI uint64 $bytes_received() const
MCAPI uint $messages_received() const
MCAPI void UpdateState()
MCAPI void SetState(::webrtc::DataChannelInterface::DataState state)
MCAPI::webrtc::DataChannelStats GetStats() const
MCAPI bool SendControlMessage(::rtc::CopyOnWriteBuffer const &buffer)
MCAPI::std::string $label() const
MCAPI::std::string $protocol() const
MCAPI ::std::optional< int > $maxPacketLifeTime() const
MCAPI uint $messages_sent() const
static MCAPI ::webrtc::scoped_refptr<::webrtc::DataChannelInterface > CreateProxy(::webrtc::scoped_refptr<::webrtc::SctpDataChannel > channel, ::webrtc::scoped_refptr<::webrtc::PendingTaskSafetyFlag > signaling_safety)
MCAPI void $RegisterObserver(::webrtc::DataChannelObserver *observer)
MCAPI uint64 $bytes_send_buffer() const
MCAPI bool $Send(::webrtc::DataBuffer const &buffer)
MCAPI bool $negotiated() const
MCAPI void OnBufferedAmountLow()
MCAPI::webrtc::RTCError SendImpl(::webrtc::DataBuffer buffer)
MCAPI uint64 $buffered_amount() const
MCAPI ushort $maxRetransmitTime() const
MCAPI void OnDataReceived(::webrtc::DataMessageType type, ::rtc::CopyOnWriteBuffer const &payload)
MCAPI void OnTransportChannelCreated()
MCAPI void CloseAbruptlyWithDataChannelFailure(::std::string const &message)
MCAPI::webrtc::RTCError $error() const
MCAPI::webrtc::DataChannelInterface::DataState $state() const
MCAPI ::std::optional< int > $maxRetransmitsOpt() const
MCAPI::webrtc::RTCError SendDataMessage(::webrtc::DataBuffer const &buffer, bool queue_if_blocked)
MCAPI int $id() const
static MCAPI ::webrtc::scoped_refptr<::webrtc::SctpDataChannel > Create(::rtc::WeakPtr<::webrtc::SctpDataChannelControllerInterface > controller, ::std::string const &label, bool connected_to_transport, ::webrtc::InternalDataChannelInit const &config, ::rtc::Thread *signaling_thread, ::rtc::Thread *network_thread)
MCAPI::webrtc::Priority $priority() const
MCAPI void $SendAsync(::webrtc::DataBuffer buffer, ::absl::AnyInvocable< void(::webrtc::RTCError) && > on_complete)
MCAPI void CloseAbruptlyWithError(::webrtc::RTCError error)
Definition StreamId.h:7
Definition scoped_refptr.h:8
STL namespace.
Definition buffer.h:5
Definition Alias.h:14
Definition DataBuffer.h:7
Definition DataChannelStats.h:7
Definition InternalDataChannelInit.h:10