LeviLamina
Loading...
Searching...
No Matches
Port.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/external/cricket/IceRole.h"
7#include "mc/external/cricket/PortInterface.h"
8#include "mc/external/cricket/ProtocolType.h"
9#include "mc/external/rtc/DiffServCodePoint.h"
10#include "mc/external/rtc/WeakPtr.h"
11#include "mc/external/sigslot/has_slots.h"
12#include "mc/external/sigslot/single_threaded.h"
13#include "mc/external/webrtc/IceCandidateType.h"
14
15// auto generated forward declare list
16// clang-format off
17namespace cricket { class Candidate; }
18namespace cricket { class Connection; }
19namespace cricket { class IceMessage; }
20namespace cricket { class StunMessage; }
21namespace cricket { class StunStats; }
22namespace rtc { class AsyncPacketSocket; }
23namespace rtc { class Network; }
24namespace rtc { class PacketSocketFactory; }
25namespace rtc { class ReceivedPacket; }
26namespace rtc { class SocketAddress; }
27namespace rtc { struct PacketInfo; }
28namespace rtc { struct ProxyInfo; }
29namespace rtc { struct SentPacket; }
30namespace webrtc { class FieldTrialsView; }
31namespace webrtc { class TaskQueueBase; }
32// clang-format on
33
34namespace cricket {
35
36class Port : public ::cricket::PortInterface, public ::sigslot::has_slots<::sigslot::single_threaded> {
37public:
38 // Port inner types define
39 enum class State : int {
40 Init = 0,
42 Pruned = 2,
43 };
44
45public:
46 // member variables
47 // NOLINTBEGIN
80 // NOLINTEND
81
82public:
83 // prevent constructor by default
84 Port& operator=(Port const&);
85 Port(Port const&);
86 Port();
87
88public:
89 // virtual functions
90 // NOLINTBEGIN
91 // vIndex: 0
92 virtual ~Port() /*override*/;
93
94 // vIndex: 1
95 virtual ::webrtc::IceCandidateType Type() const /*override*/;
96
97 // vIndex: 2
98 virtual ::rtc::Network const* Network() const /*override*/;
99
100 // vIndex: 4
101 virtual ::cricket::IceRole GetIceRole() const /*override*/;
102
103 // vIndex: 3
104 virtual void SetIceRole(::cricket::IceRole role) /*override*/;
105
106 // vIndex: 5
107 virtual void SetIceTiebreaker(uint64 tiebreaker) /*override*/;
108
109 // vIndex: 6
110 virtual uint64 IceTiebreaker() const /*override*/;
111
112 // vIndex: 7
113 virtual bool SharedSocket() const /*override*/;
114
115 // vIndex: 25
116 virtual ::webrtc::TaskQueueBase* thread() /*override*/;
117
118 // vIndex: 26
119 virtual ::rtc::PacketSocketFactory* socket_factory() const /*override*/;
120
121 // vIndex: 32
122 virtual ::std::string const& content_name() const /*override*/;
123
124 // vIndex: 31
125 virtual bool send_retransmit_count_attribute() const /*override*/;
126
127 // vIndex: 29
128 virtual uint generation() const /*override*/;
129
130 // vIndex: 30
131 virtual void set_generation(uint generation) /*override*/;
132
133 // vIndex: 16
134 virtual ::std::vector<::cricket::Candidate> const& Candidates() const /*override*/;
135
136 // vIndex: 19
137 virtual void SubscribePortDestroyed(::std::function<void(::cricket::PortInterface*)> callback) /*override*/;
138
139 // vIndex: 10
140 virtual ::cricket::Connection* GetConnection(::rtc::SocketAddress const& remote_addr) /*override*/;
141
142 // vIndex: 23
143 virtual void DestroyConnection(::cricket::Connection* conn) /*override*/;
144
145 // vIndex: 24
146 virtual void DestroyConnectionAsync(::cricket::Connection* conn) /*override*/;
147
148 // vIndex: 41
149 virtual bool HandleIncomingPacket(::rtc::AsyncPacketSocket* socket, ::rtc::ReceivedPacket const& packet);
150
151 // vIndex: 42
152 virtual bool CanHandleIncomingPacketsFrom(::rtc::SocketAddress const&) const;
153
154 // vIndex: 18
155 virtual void SendBindingErrorResponse(
156 ::cricket::StunMessage* message,
157 ::rtc::SocketAddress const& addr,
158 int error_code,
159 ::std::string_view reason
160 ) /*override*/;
161
162 // vIndex: 27
163 virtual ::std::string const& user_agent() /*override*/;
164
165 // vIndex: 28
166 virtual ::rtc::ProxyInfo const& proxy() /*override*/;
167
168 // vIndex: 20
169 virtual void EnablePortPackets() /*override*/;
170
171 // vIndex: 21
172 virtual ::std::string ToString() const /*override*/;
173
174 // vIndex: 37
175 virtual bool ParseStunUsername(
176 ::cricket::StunMessage const* stun_msg,
177 ::std::string* local_ufrag,
178 ::std::string* remote_ufrag
179 ) const /*override*/;
180
181 // vIndex: 38
182 virtual ::std::string CreateStunUsername(::std::string_view remote_username) const /*override*/;
183
184 // vIndex: 39
185 virtual bool MaybeIceRoleConflict(
186 ::rtc::SocketAddress const& addr,
187 ::cricket::IceMessage* stun_msg,
188 ::std::string_view remote_ufrag
189 ) /*override*/;
190
191 // vIndex: 43
192 virtual void OnSentPacket(::rtc::AsyncPacketSocket*, ::rtc::SentPacket const&) = 0;
193
194 // vIndex: 33
195 virtual void AddPrflxCandidate(::cricket::Candidate const& local) /*override*/;
196
197 // vIndex: 40
198 virtual short network_cost() const /*override*/;
199
200 // vIndex: 22
201 virtual void GetStunStats(::std::optional<::cricket::StunStats>* stats) /*override*/;
202
203 // vIndex: 34
204 virtual void UpdateNetworkCost() /*override*/;
205
206 // vIndex: 44
207 virtual void PostAddAddress(bool is_final);
208
209 // vIndex: 36
210 virtual bool GetStunMessage(
211 char const* data,
212 uint64 size,
213 ::rtc::SocketAddress const& addr,
214 ::std::unique_ptr<::cricket::IceMessage>* out_msg,
215 ::std::string* out_username
216 ) /*override*/;
217
218 // vIndex: 35
219 virtual ::rtc::DiffServCodePoint StunDscpValue() const /*override*/;
220
221 // vIndex: 45
222 virtual void HandleConnectionDestroyed(::cricket::Connection* conn);
223 // NOLINTEND
224
225public:
226 // member functions
227 // NOLINTBEGIN
228 MCNAPI void AddAddress(
229 ::rtc::SocketAddress const& address,
230 ::rtc::SocketAddress const& base_address,
231 ::rtc::SocketAddress const& related_address,
232 ::std::string_view protocol,
233 ::std::string_view relay_protocol,
234 ::std::string_view tcptype,
235 ::webrtc::IceCandidateType type,
236 uint type_preference,
237 uint relay_preference,
238 ::std::string_view url,
239 bool is_final
240 );
241
243
244 MCNAPI void CancelPendingTasks();
245
247
248 MCNAPI void Destroy();
249
251
252 MCNAPI void DestroyConnectionInternal(::cricket::Connection* conn, bool async);
253
254 MCNAPI void DestroyIfDead();
255
256 MCNAPI void FinishAddingAddress(::cricket::Candidate const& c, bool is_final);
257
259
260 MCNAPI void KeepAliveUntilPruned();
261
262 MCNAPI bool MaybeObfuscateAddress(::cricket::Candidate const& c, bool is_final);
263
264 MCNAPI ::rtc::WeakPtr<::cricket::Port> NewWeakPtr();
265
267
268 MCNAPI void OnNetworkTypeChanged(::rtc::Network const* network);
269
270 MCNAPI void OnReadPacket(::rtc::ReceivedPacket const& packet, ::cricket::ProtocolType proto);
271
272 MCNAPI void OnReadyToSend();
273
274 MCNAPI Port(
276 ::webrtc::IceCandidateType type,
278 ::rtc::Network const* network,
279 ::std::string_view username_fragment,
280 ::std::string_view password,
281 ::webrtc::FieldTrialsView const* field_trials
282 );
283
284 MCNAPI Port(
286 ::webrtc::IceCandidateType type,
288 ::rtc::Network const* network,
289 ushort min_port,
290 ushort max_port,
291 ::std::string_view username_fragment,
292 ::std::string_view password,
293 ::webrtc::FieldTrialsView const* field_trials,
294 bool shared_socket
295 );
296
297 MCNAPI void PostDestroyIfDead(bool delayed);
298
299 MCNAPI void Prune();
300
302
304 ::cricket::StunMessage* message,
305 ::rtc::SocketAddress const& addr,
306 ::std::vector<ushort> const& unknown_types
307 );
308
309 MCNAPI void SetIceParameters(int component, ::std::string_view username_fragment, ::std::string_view password);
310
311 MCNAPI void set_content_name(::std::string_view content_name);
312
313 MCNAPI ::std::string const& username_fragment() const;
314 // NOLINTEND
315
316public:
317 // constructor thunks
318 // NOLINTBEGIN
319 MCNAPI void* $ctor(
321 ::webrtc::IceCandidateType type,
323 ::rtc::Network const* network,
324 ::std::string_view username_fragment,
325 ::std::string_view password,
326 ::webrtc::FieldTrialsView const* field_trials
327 );
328
329 MCNAPI void* $ctor(
331 ::webrtc::IceCandidateType type,
333 ::rtc::Network const* network,
334 ushort min_port,
335 ushort max_port,
336 ::std::string_view username_fragment,
337 ::std::string_view password,
338 ::webrtc::FieldTrialsView const* field_trials,
339 bool shared_socket
340 );
341 // NOLINTEND
342
343public:
344 // destructor thunk
345 // NOLINTBEGIN
346 MCNAPI void $dtor();
347 // NOLINTEND
348
349public:
350 // virtual function thunks
351 // NOLINTBEGIN
352 MCNAPI ::webrtc::IceCandidateType $Type() const;
353
354 MCNAPI ::rtc::Network const* $Network() const;
355
356 MCNAPI ::cricket::IceRole $GetIceRole() const;
357
358 MCNAPI void $SetIceRole(::cricket::IceRole role);
359
360 MCNAPI void $SetIceTiebreaker(uint64 tiebreaker);
361
362 MCNAPI uint64 $IceTiebreaker() const;
363
364 MCNAPI bool $SharedSocket() const;
365
366 MCNAPI ::webrtc::TaskQueueBase* $thread();
367
368 MCNAPI ::rtc::PacketSocketFactory* $socket_factory() const;
369
370 MCNAPI ::std::string const& $content_name() const;
371
373
374 MCNAPI uint $generation() const;
375
376 MCNAPI void $set_generation(uint generation);
377
378 MCNAPI ::std::vector<::cricket::Candidate> const& $Candidates() const;
379
380 MCNAPI void $SubscribePortDestroyed(::std::function<void(::cricket::PortInterface*)> callback);
381
382 MCNAPI ::cricket::Connection* $GetConnection(::rtc::SocketAddress const& remote_addr);
383
385
387
389
391
393 ::cricket::StunMessage* message,
394 ::rtc::SocketAddress const& addr,
395 int error_code,
396 ::std::string_view reason
397 );
398
399 MCNAPI ::std::string const& $user_agent();
400
401 MCNAPI ::rtc::ProxyInfo const& $proxy();
402
403 MCNAPI void $EnablePortPackets();
404
405 MCNAPI ::std::string $ToString() const;
406
408 ::cricket::StunMessage const* stun_msg,
409 ::std::string* local_ufrag,
410 ::std::string* remote_ufrag
411 ) const;
412
413 MCNAPI ::std::string $CreateStunUsername(::std::string_view remote_username) const;
414
416 ::rtc::SocketAddress const& addr,
417 ::cricket::IceMessage* stun_msg,
418 ::std::string_view remote_ufrag
419 );
420
421 MCNAPI void $AddPrflxCandidate(::cricket::Candidate const& local);
422
423 MCNAPI short $network_cost() const;
424
425 MCNAPI void $GetStunStats(::std::optional<::cricket::StunStats>* stats);
426
427 MCNAPI void $UpdateNetworkCost();
428
429 MCNAPI void $PostAddAddress(bool is_final);
430
431 MCNAPI bool $GetStunMessage(
432 char const* data,
433 uint64 size,
434 ::rtc::SocketAddress const& addr,
435 ::std::unique_ptr<::cricket::IceMessage>* out_msg,
436 ::std::string* out_username
437 );
438
439 MCNAPI ::rtc::DiffServCodePoint $StunDscpValue() const;
440
442 // NOLINTEND
443
444public:
445 // vftables
446 // NOLINTBEGIN
447 MCNAPI static void** $vftableForHasSlots();
448
449 MCNAPI static void** $vftableForPortInterface();
450 // NOLINTEND
451};
452
453} // namespace cricket
Definition Candidate.h:15
Definition Connection.h:38
Definition IceMessage.h:11
Definition PortInterface.h:29
Definition Port.h:36
MCAPI bool $GetStunMessage(char const *data, uint64 size, ::rtc::SocketAddress const &addr, ::std::unique_ptr<::cricket::IceMessage > *out_msg, ::std::string *out_username)
MCAPI::std::string $ToString() const
MCAPI void $SendBindingErrorResponse(::cricket::StunMessage *message, ::rtc::SocketAddress const &addr, int error_code, ::std::string_view reason)
MCAPI void $PostAddAddress(bool is_final)
MCAPI void DestroyConnectionInternal(::cricket::Connection *conn, bool async)
MCAPI bool $HandleIncomingPacket(::rtc::AsyncPacketSocket *socket, ::rtc::ReceivedPacket const &packet)
MCAPI bool $CanHandleIncomingPacketsFrom(::rtc::SocketAddress const &) const
static MCAPI void ** $vftableForPortInterface()
MCAPI Port(::webrtc::TaskQueueBase *thread, ::webrtc::IceCandidateType type, ::rtc::PacketSocketFactory *factory, ::rtc::Network const *network, ushort min_port, ushort max_port, ::std::string_view username_fragment, ::std::string_view password, ::webrtc::FieldTrialsView const *field_trials, bool shared_socket)
MCAPI void OnReadPacket(::rtc::ReceivedPacket const &packet, ::cricket::ProtocolType proto)
MCAPI::rtc::ProxyInfo const & $proxy()
MCAPI bool $ParseStunUsername(::cricket::StunMessage const *stun_msg, ::std::string *local_ufrag, ::std::string *remote_ufrag) const
MCAPI void OnNetworkTypeChanged(::rtc::Network const *network)
MCAPI void $DestroyConnection(::cricket::Connection *conn)
MCAPI void $dtor()
MCAPI void FinishAddingAddress(::cricket::Candidate const &c, bool is_final)
MCAPI void SetIceParameters(int component, ::std::string_view username_fragment, ::std::string_view password)
MCAPI void $set_generation(uint generation)
MCAPI::std::string $CreateStunUsername(::std::string_view remote_username) const
MCAPI void KeepAliveUntilPruned()
MCAPI void set_content_name(::std::string_view content_name)
MCAPI void $EnablePortPackets()
MCAPI void $AddPrflxCandidate(::cricket::Candidate const &local)
MCAPI void SendUnknownAttributesErrorResponse(::cricket::StunMessage *message, ::rtc::SocketAddress const &addr, ::std::vector< ushort > const &unknown_types)
MCAPI void CopyPortInformationToPacketInfo(::rtc::PacketInfo *info) const
MCAPI uint64 $IceTiebreaker() const
MCAPI::webrtc::IceCandidateType $Type() const
MCAPI void $GetStunStats(::std::optional<::cricket::StunStats > *stats)
MCAPI void Destroy()
MCAPI::cricket::IceRole $GetIceRole() const
MCAPI::cricket::Connection * $GetConnection(::rtc::SocketAddress const &remote_addr)
MCAPI::std::string const & $content_name() const
MCAPI bool OnConnectionDestroyed(::cricket::Connection *conn)
MCAPI::std::string const & username_fragment() const
MCAPI short $network_cost() const
MCAPI void * $ctor(::webrtc::TaskQueueBase *thread, ::webrtc::IceCandidateType type, ::rtc::PacketSocketFactory *factory, ::rtc::Network const *network, ::std::string_view username_fragment, ::std::string_view password, ::webrtc::FieldTrialsView const *field_trials)
MCAPI::std::string const & $user_agent()
MCAPI bool $SharedSocket() const
MCAPI::webrtc::TaskQueueBase * $thread()
MCAPI bool IsCompatibleAddress(::rtc::SocketAddress const &addr)
MCAPI void DestroyAllConnections()
MCAPI void $SetIceRole(::cricket::IceRole role)
MCAPI ::std::vector<::cricket::Candidate > const & $Candidates() const
MCAPI void $DestroyConnectionAsync(::cricket::Connection *conn)
MCAPI void $UpdateNetworkCost()
MCAPI void AddOrReplaceConnection(::cricket::Connection *conn)
MCAPI void PostDestroyIfDead(bool delayed)
MCAPI bool MaybeObfuscateAddress(::cricket::Candidate const &c, bool is_final)
MCAPI void SendPortDestroyed(::cricket::Port *port)
static MCAPI void ** $vftableForHasSlots()
MCAPI bool $send_retransmit_count_attribute() const
MCAPI void $SubscribePortDestroyed(::std::function< void(::cricket::PortInterface *)> callback)
MCAPI void CancelPendingTasks()
MCAPI::rtc::DiffServCodePoint $StunDscpValue() const
MCAPI::rtc::PacketSocketFactory * $socket_factory() const
MCAPI void Prune()
MCAPI ::rtc::WeakPtr<::cricket::Port > NewWeakPtr()
MCAPI Port(::webrtc::TaskQueueBase *thread, ::webrtc::IceCandidateType type, ::rtc::PacketSocketFactory *factory, ::rtc::Network const *network, ::std::string_view username_fragment, ::std::string_view password, ::webrtc::FieldTrialsView const *field_trials)
MCAPI void $HandleConnectionDestroyed(::cricket::Connection *conn)
MCAPI bool $MaybeIceRoleConflict(::rtc::SocketAddress const &addr, ::cricket::IceMessage *stun_msg, ::std::string_view remote_ufrag)
MCAPI::rtc::Network const * $Network() const
MCAPI uint $generation() const
MCAPI void AddAddress(::rtc::SocketAddress const &address, ::rtc::SocketAddress const &base_address, ::rtc::SocketAddress const &related_address, ::std::string_view protocol, ::std::string_view relay_protocol, ::std::string_view tcptype, ::webrtc::IceCandidateType type, uint type_preference, uint relay_preference, ::std::string_view url, bool is_final)
MCAPI void OnReadyToSend()
MCAPI void DestroyIfDead()
MCAPI void * $ctor(::webrtc::TaskQueueBase *thread, ::webrtc::IceCandidateType type, ::rtc::PacketSocketFactory *factory, ::rtc::Network const *network, ushort min_port, ushort max_port, ::std::string_view username_fragment, ::std::string_view password, ::webrtc::FieldTrialsView const *field_trials, bool shared_socket)
MCAPI void $SetIceTiebreaker(uint64 tiebreaker)
Definition StunMessage.h:23
Definition AsyncPacketSocket.h:20
Definition Network.h:18
Definition PacketSocketFactory.h:17
Definition ReceivedPacket.h:16
Definition SocketAddress.h:12
Definition has_slots.h:8
Definition FieldTrialsView.h:7
Definition TaskQueueBase.h:16
Definition Alias.h:14
Definition PacketInfo.h:7
Definition SentPacket.h:12