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/webrtc/DataChannelInterface.h"
8#include "mc/external/webrtc/DataChannelObserver.h"
9#include "mc/external/webrtc/DataMessageType.h"
10#include "mc/external/webrtc/WeakPtr.h"
11#include "mc/external/webrtc/scoped_refptr.h"
12
13// auto generated forward declare list
14// clang-format off
15namespace webrtc { class CopyOnWriteBuffer; }
16namespace webrtc { class PendingTaskSafetyFlag; }
17namespace webrtc { class PriorityValue; }
18namespace webrtc { class RTCError; }
19namespace webrtc { class SctpDataChannelControllerInterface; }
20namespace webrtc { class StreamId; }
21namespace webrtc { class Thread; }
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 ::std::optional<int> maxPacketLifeTime() const /*override*/;
178
179 virtual ::std::optional<int> maxRetransmitsOpt() const /*override*/;
180
181 virtual ::std::string protocol() const /*override*/;
182
183 virtual bool negotiated() const /*override*/;
184
185 virtual int id() const /*override*/;
186
187 virtual ::webrtc::PriorityValue priority() const /*override*/;
188
189 virtual uint64 buffered_amount() const /*override*/;
190
191 virtual void Close() /*override*/;
192
193 virtual ::webrtc::DataChannelInterface::DataState state() const /*override*/;
194
195 virtual ::webrtc::RTCError error() const /*override*/;
196
197 virtual uint messages_sent() const /*override*/;
198
199 virtual uint64 bytes_sent() const /*override*/;
200
201 virtual uint messages_received() const /*override*/;
202
203 virtual uint64 bytes_received() const /*override*/;
204
205 virtual uint64 bytes_send_buffer() const /*override*/;
206
207 virtual bool Send(::webrtc::DataBuffer const& buffer) /*override*/;
208
209 virtual void
210 SendAsync(::webrtc::DataBuffer buffer, ::absl::AnyInvocable<void(::webrtc::RTCError) &&> on_complete) /*override*/;
211
212 virtual ~SctpDataChannel() /*override*/;
213 // NOLINTEND
214
215public:
216 // member functions
217 // NOLINTBEGIN
218 MCNAPI void CloseAbruptlyWithDataChannelFailure(::std::string const& message);
219
220 MCNAPI void CloseAbruptlyWithError(::webrtc::RTCError error);
221
223
224 MCNAPI ::webrtc::DataChannelStats GetStats() const;
225
227
228 MCNAPI void OnBufferedAmountLow();
229
231
233
234 MCNAPI void OnDataReceived(::webrtc::DataMessageType type, ::webrtc::CopyOnWriteBuffer const& payload);
235
236 MCNAPI void OnTransportChannelClosed(::webrtc::RTCError error);
237
239
240 MCNAPI void OnTransportReady();
241
242 MCNAPI SctpDataChannel(
243 ::webrtc::InternalDataChannelInit const& config,
244 ::webrtc::WeakPtr<::webrtc::SctpDataChannelControllerInterface> controller,
245 ::std::string const& label,
246 bool connected_to_transport,
247 ::webrtc::Thread* signaling_thread,
248 ::webrtc::Thread* network_thread
249 );
250
251 MCNAPI bool SendControlMessage(::webrtc::CopyOnWriteBuffer const& buffer);
252
253 MCNAPI ::webrtc::RTCError SendDataMessage(::webrtc::DataBuffer const& buffer, bool queue_if_blocked);
254
255 MCNAPI ::webrtc::RTCError SendImpl(::webrtc::DataBuffer buffer);
256
257 MCNAPI void SetSctpSid_n(::webrtc::StreamId sid);
258
259 MCNAPI void SetState(::webrtc::DataChannelInterface::DataState state);
260
261 MCNAPI void UpdateState();
262 // NOLINTEND
263
264public:
265 // static functions
266 // NOLINTBEGIN
267 MCNAPI static ::webrtc::scoped_refptr<::webrtc::SctpDataChannel> Create(
268 ::webrtc::WeakPtr<::webrtc::SctpDataChannelControllerInterface> controller,
269 ::std::string const& label,
270 bool connected_to_transport,
271 ::webrtc::InternalDataChannelInit const& config,
272 ::webrtc::Thread* signaling_thread,
273 ::webrtc::Thread* network_thread
274 );
275
276 MCNAPI static ::webrtc::scoped_refptr<::webrtc::DataChannelInterface> CreateProxy(
277 ::webrtc::scoped_refptr<::webrtc::SctpDataChannel> channel,
278 ::webrtc::scoped_refptr<::webrtc::PendingTaskSafetyFlag> signaling_safety
279 );
280 // NOLINTEND
281
282public:
283 // constructor thunks
284 // NOLINTBEGIN
285 MCNAPI void* $ctor(
286 ::webrtc::InternalDataChannelInit const& config,
287 ::webrtc::WeakPtr<::webrtc::SctpDataChannelControllerInterface> controller,
288 ::std::string const& label,
289 bool connected_to_transport,
290 ::webrtc::Thread* signaling_thread,
291 ::webrtc::Thread* network_thread
292 );
293 // NOLINTEND
294
295public:
296 // destructor thunk
297 // NOLINTBEGIN
298 MCNAPI void $dtor();
299 // NOLINTEND
300
301public:
302 // virtual function thunks
303 // NOLINTBEGIN
304 MCNAPI void $RegisterObserver(::webrtc::DataChannelObserver* observer);
305
306 MCNAPI void $UnregisterObserver();
307
308 MCNAPI ::std::string $label() const;
309
310 MCNAPI bool $reliable() const;
311
312 MCNAPI bool $ordered() const;
313
314 MCNAPI ::std::optional<int> $maxPacketLifeTime() const;
315
316 MCNAPI ::std::optional<int> $maxRetransmitsOpt() const;
317
318 MCNAPI ::std::string $protocol() const;
319
320 MCNAPI bool $negotiated() const;
321
322 MCNAPI int $id() const;
323
324 MCNAPI ::webrtc::PriorityValue $priority() const;
325
326 MCNAPI uint64 $buffered_amount() const;
327
328 MCNAPI void $Close();
329
330 MCNAPI ::webrtc::DataChannelInterface::DataState $state() const;
331
332 MCNAPI ::webrtc::RTCError $error() const;
333
334 MCNAPI uint $messages_sent() const;
335
336 MCNAPI uint64 $bytes_sent() const;
337
338 MCNAPI uint $messages_received() const;
339
340 MCNAPI uint64 $bytes_received() const;
341
342 MCNAPI uint64 $bytes_send_buffer() const;
343
344 MCNAPI bool $Send(::webrtc::DataBuffer const& buffer);
345
346 MCNAPI void $SendAsync(::webrtc::DataBuffer buffer, ::absl::AnyInvocable<void(::webrtc::RTCError) &&> on_complete);
347
348
349 // NOLINTEND
350
351public:
352 // vftables
353 // NOLINTBEGIN
354 MCNAPI static void** $vftable();
355 // NOLINTEND
356};
357
358} // namespace webrtc
Definition CopyOnWriteBuffer.h:11
Definition DataChannelInterface.h:19
Definition DataChannelObserver.h:12
Definition PendingTaskSafetyFlag.h:16
Definition PriorityValue.h:16
Definition RTCError.h:10
Definition SctpDataChannelControllerInterface.h:20
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 OnDataReceived(::webrtc::DataMessageType type, ::webrtc::CopyOnWriteBuffer const &payload)
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 void DeliverQueuedReceivedData()
MCAPI void MaybeSendOnBufferedAmountChanged()
MCAPI void OnClosingProcedureComplete()
MCAPI uint64 $bytes_received() const
MCAPI bool SendControlMessage(::webrtc::CopyOnWriteBuffer const &buffer)
MCAPI uint $messages_received() const
MCAPI void UpdateState()
MCAPI void SetState(::webrtc::DataChannelInterface::DataState state)
MCAPI::webrtc::DataChannelStats GetStats() const
MCAPI::webrtc::PriorityValue $priority() const
MCAPI::std::string $label() const
MCAPI::std::string $protocol() const
MCAPI ::std::optional< int > $maxPacketLifeTime() const
MCAPI void * $ctor(::webrtc::InternalDataChannelInit const &config, ::webrtc::WeakPtr<::webrtc::SctpDataChannelControllerInterface > controller, ::std::string const &label, bool connected_to_transport, ::webrtc::Thread *signaling_thread, ::webrtc::Thread *network_thread)
MCAPI uint $messages_sent() const
static MCAPI ::webrtc::scoped_refptr<::webrtc::SctpDataChannel > Create(::webrtc::WeakPtr<::webrtc::SctpDataChannelControllerInterface > controller, ::std::string const &label, bool connected_to_transport, ::webrtc::InternalDataChannelInit const &config, ::webrtc::Thread *signaling_thread, ::webrtc::Thread *network_thread)
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 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
MCAPI void $SendAsync(::webrtc::DataBuffer buffer, ::absl::AnyInvocable< void(::webrtc::RTCError) && > on_complete)
MCAPI void CloseAbruptlyWithError(::webrtc::RTCError error)
Definition StreamId.h:7
Definition Thread.h:20
Definition WeakPtr.h:8
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