LeviLamina
Loading...
Searching...
No Matches
P2PTransportChannel.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/external/cricket/IceSwitchReason.h"
7#include "mc/external/cricket/IceTransportState.h"
8#include "mc/external/cricket/ProtocolType.h"
9#include "mc/external/webrtc/IceCandidatePairConfigType.h"
10#include "mc/external/webrtc/IceTransportState.h"
11#include "mc/external/webrtc/RTCErrorOr.h"
12
13// auto generated forward declare list
14// clang-format off
15namespace cricket { class ActiveIceControllerFactoryInterface; }
16namespace cricket { class Candidate; }
17namespace cricket { class Connection; }
18namespace cricket { class IceControllerFactoryInterface; }
19namespace cricket { class IceMessage; }
20namespace cricket { class PortAllocator; }
21namespace cricket { class PortAllocatorSession; }
22namespace cricket { class PortInterface; }
23namespace cricket { class StunAttribute; }
24namespace cricket { class StunByteStringAttribute; }
25namespace cricket { class StunUInt64Attribute; }
26namespace cricket { struct IceCandidateErrorEvent; }
27namespace cricket { struct IceConfig; }
28namespace cricket { struct IceParameters; }
29namespace rtc { class ReceivedPacket; }
30namespace rtc { class SocketAddress; }
31namespace rtc { struct NetworkRoute; }
32namespace rtc { struct SentPacket; }
33namespace webrtc { class AsyncDnsResolverFactoryInterface; }
34namespace webrtc { class AsyncDnsResolverInterface; }
35namespace webrtc { class AsyncDnsResolverResult; }
36namespace webrtc { class FieldTrialsView; }
37namespace webrtc { class RTCError; }
38namespace webrtc { class RtcEventLog; }
39namespace webrtc { struct IceTransportInit; }
40// clang-format on
41
42namespace cricket {
43
45public:
46 // P2PTransportChannel inner types declare
47 // clang-format off
49 // clang-format on
50
51 // P2PTransportChannel inner types define
53 public:
54 // member functions
55 // NOLINTBEGIN
56 MCAPI
57 CandidateAndResolver(::cricket::Candidate const&, ::std::unique_ptr<::webrtc::AsyncDnsResolverInterface>&&);
58
60 // NOLINTEND
61
62 public:
63 // constructor thunks
64 // NOLINTBEGIN
65 MCAPI void* $ctor(::cricket::Candidate const&, ::std::unique_ptr<::webrtc::AsyncDnsResolverInterface>&&);
66 // NOLINTEND
67
68 public:
69 // destructor thunk
70 // NOLINTBEGIN
71 MCAPI void $dtor();
72 // NOLINTEND
73 };
74
75public:
76 // member functions
77 // NOLINTBEGIN
78 MCAPI void AddAllocatorSession(::std::unique_ptr<::cricket::PortAllocatorSession>);
79
80 MCAPI void AddConnection(::cricket::Connection*);
81
82 MCAPI void AddRemoteCandidateWithResult(::cricket::Candidate, ::webrtc::AsyncDnsResolverResult const&);
83
84 MCAPI bool AllowedToPruneConnections() const;
85
86 MCAPI int64 ComputeEstimatedDisconnectedTimeMs(int64, ::cricket::Connection*);
87
88 MCAPI ::webrtc::IceTransportState ComputeIceTransportState() const;
89
90 MCAPI ::cricket::IceTransportState ComputeState() const;
91
92 MCAPI ::rtc::NetworkRoute ConfigureNetworkRoute(::cricket::Connection const*);
93
94 MCAPI bool CreateConnection(::cricket::PortInterface*, ::cricket::Candidate const&, ::cricket::PortInterface*);
95
96 MCAPI bool CreateConnections(::cricket::Candidate const&, ::cricket::PortInterface*);
97
98 MCAPI bool FindConnection(::cricket::Connection const*) const;
99
100 MCAPI ::cricket::IceParameters const* FindRemoteIceFromUfrag(::std::string_view, uint*);
101
102 MCAPI void FinishAddingRemoteCandidate(::cricket::Candidate const&);
103
104 MCAPI uint GetNominationAttr(::cricket::Connection*) const;
105
106 MCAPI uint GetRemoteCandidateGeneration(::cricket::Candidate const&);
107
108 MCAPI bool GetUseCandidateAttr(::cricket::Connection*) const;
109
111
112 MCAPI ::std::unique_ptr<::cricket::StunAttribute> GoogDeltaReceived(::cricket::StunByteStringAttribute const*);
113
114 MCAPI void HandleAllTimedOut();
115
116 MCAPI bool IsDuplicateRemoteCandidate(::cricket::Candidate const&);
117
118 MCAPI bool IsPortPruned(::cricket::PortInterface const*) const;
119
120 MCAPI bool IsRemoteCandidatePruned(::cricket::Candidate const&) const;
121
122 MCAPI void LogCandidatePairConfig(::cricket::Connection*, ::webrtc::IceCandidatePairConfigType);
123
124 MCAPI void MarkConnectionPinged(::cricket::Connection*);
125
126 MCAPI void MaybeStopPortAllocatorSessions();
127
128 MCAPI void OnCandidateError(::cricket::PortAllocatorSession*, ::cricket::IceCandidateErrorEvent const&);
129
130 MCAPI void OnCandidateFilterChanged(uint, uint);
131
132 MCAPI void OnCandidateResolved(::webrtc::AsyncDnsResolverInterface*);
133
134 MCAPI void OnCandidatesAllocationDone(::cricket::PortAllocatorSession*);
135
136 MCAPI void OnCandidatesReady(::cricket::PortAllocatorSession*, ::std::vector<::cricket::Candidate> const&);
137
138 MCAPI void OnCandidatesRemoved(::cricket::PortAllocatorSession*, ::std::vector<::cricket::Candidate> const&);
139
140 MCAPI void OnConnectionDestroyed(::cricket::Connection*);
141
142 MCAPI void OnConnectionStateChange(::cricket::Connection*);
143
144 MCAPI void OnNominated(::cricket::Connection*);
145
146 MCAPI void OnPortDestroyed(::cricket::PortInterface*);
147
149
150 MCAPI void OnPortsPruned(::cricket::PortAllocatorSession*, ::std::vector<::cricket::PortInterface*> const&);
151
152 MCAPI void OnReadPacket(::cricket::Connection*, ::rtc::ReceivedPacket const&);
153
154 MCAPI void OnReadyToSend(::cricket::Connection*);
155
156 MCAPI void OnRoleConflict(::cricket::PortInterface*);
157
158 MCAPI void OnSelectedConnectionDestroyed();
159
160 MCAPI void OnSentPacket(::rtc::SentPacket const&);
161
162 MCAPI void OnUnknownAddress(
165 ::cricket::ProtocolType,
167 ::std::string const&,
168 bool
169 );
170
171 MCAPI
173
174 MCAPI void ParseFieldTrials(::webrtc::FieldTrialsView const*);
175
176 MCAPI void PingConnection(::cricket::Connection*);
177
178 MCAPI bool PresumedWritable(::cricket::Connection const*) const;
179
180 MCAPI void PruneAllPorts();
181
182 MCAPI bool PrunePort(::cricket::PortInterface*);
183
184 MCAPI bool ReadyToSend(::cricket::Connection const*) const;
185
186 MCAPI void RememberRemoteCandidate(::cricket::Candidate const&, ::cricket::PortInterface*);
187
188 MCAPI void RemoveConnection(::cricket::Connection*);
189
190 MCAPI void ResolveHostnameCandidate(::cricket::Candidate const&);
191
192 MCAPI ::cricket::Candidate SanitizeLocalCandidate(::cricket::Candidate const&) const;
193
194 MCAPI ::cricket::Candidate SanitizeRemoteCandidate(::cricket::Candidate const&) const;
195
196 MCAPI void SendPingRequestInternal(::cricket::Connection*);
197
198 MCAPI void SetReceiving(bool);
199
200 MCAPI void SetWritable(bool);
201
202 MCAPI void SwitchSelectedConnectionInternal(::cricket::Connection*, ::cricket::IceSwitchReason);
203
204 MCAPI ::std::string ToString() const;
205
206 MCAPI void UpdateTransportState();
207 // NOLINTEND
208
209public:
210 // static functions
211 // NOLINTBEGIN
212 MCAPI static ::std::unique_ptr<::cricket::P2PTransportChannel>
213 Create(::std::string_view, int, ::webrtc::IceTransportInit);
214
215 MCAPI static ::webrtc::RTCError ValidateIceConfig(::cricket::IceConfig const&);
216 // NOLINTEND
217
218public:
219 // constructor thunks
220 // NOLINTBEGIN
221 MCAPI void*
223 // NOLINTEND
224
225public:
226 // vftables
227 // NOLINTBEGIN
228 MCAPI static void** $vftableForIceTransportInternal();
229
230 MCAPI static void** $vftableForIceAgentInterface();
231 // NOLINTEND
232};
233
234} // namespace cricket
Definition ActiveIceControllerFactoryInterface.h:7
Definition Candidate.h:15
Definition Connection.h:38
Definition IceControllerFactoryInterface.h:7
Definition IceMessage.h:11
Definition P2PTransportChannel.h:44
Definition PortAllocatorSession.h:18
Definition PortAllocator.h:25
Definition PortInterface.h:29
Definition StunByteStringAttribute.h:17
Definition ReceivedPacket.h:16
Definition SocketAddress.h:12
Definition AsyncDnsResolverFactoryInterface.h:16
Definition AsyncDnsResolverInterface.h:16
Definition AsyncDnsResolverResult.h:12
Definition FieldTrialsView.h:7
Definition RTCErrorOr.h:8
Definition RtcEventLog.h:13
Definition IceCandidateErrorEvent.h:7
Definition IceConfig.h:10
Definition P2PTransportChannel.h:52
Definition SentPacket.h:12
Definition IceTransportInit.h:7