LeviLamina
Loading...
Searching...
No Matches
BasicPortAllocatorSession.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/external/webrtc/PortAllocatorSession.h"
7
8// auto generated forward declare list
9// clang-format off
10namespace webrtc { class AllocationSequence; }
11namespace webrtc { class BasicPortAllocator; }
12namespace webrtc { class Candidate; }
13namespace webrtc { class CandidateStats; }
14namespace webrtc { class Network; }
15namespace webrtc { class Port; }
16namespace webrtc { class PortInterface; }
17namespace webrtc { struct PortConfiguration; }
18// clang-format on
19
20namespace webrtc {
21
22class BasicPortAllocatorSession : public ::webrtc::PortAllocatorSession {
23public:
24 // BasicPortAllocatorSession inner types declare
25 // clang-format off
26 class PortData;
27 // clang-format on
28
29 // BasicPortAllocatorSession inner types define
30 class PortData {
31 public:
32 // PortData inner types define
33 enum class State : int {
34 Inprogress = 0,
35 Complete = 1,
36 Error = 2,
37 Pruned = 3,
38 };
39
40 public:
41 // member variables
42 // NOLINTBEGIN
47 // NOLINTEND
48
49 public:
50 // prevent constructor by default
51 PortData& operator=(PortData const&);
52 PortData(PortData const&);
53 PortData();
54 };
55
56public:
57 // member variables
58 // NOLINTBEGIN
74 // NOLINTEND
75
76public:
77 // prevent constructor by default
78 BasicPortAllocatorSession& operator=(BasicPortAllocatorSession const&);
79 BasicPortAllocatorSession(BasicPortAllocatorSession const&);
80 BasicPortAllocatorSession();
81
82public:
83 // virtual functions
84 // NOLINTBEGIN
85 virtual ~BasicPortAllocatorSession() /*override*/;
86
87 virtual ::webrtc::BasicPortAllocator* allocator();
88
89 virtual void SetCandidateFilter(uint filter) /*override*/;
90
91 virtual void StartGettingPorts() /*override*/;
92
93 virtual void StopGettingPorts() /*override*/;
94
95 virtual void ClearGettingPorts() /*override*/;
96
97 virtual bool IsGettingPorts() /*override*/;
98
99 virtual bool IsCleared() const /*override*/;
100
101 virtual bool IsStopped() const /*override*/;
102
103 virtual ::std::vector<::webrtc::PortInterface*> ReadyPorts() const /*override*/;
104
105 virtual ::std::vector<::webrtc::Candidate> ReadyCandidates() const /*override*/;
106
107 virtual bool CandidatesAllocationDone() const /*override*/;
108
109 virtual void RegatherOnFailedNetworks() /*override*/;
110
111 virtual void GetCandidateStatsFromReadyPorts(::std::vector<::webrtc::CandidateStats>* candidate_stats_list) const
112 /*override*/;
113
114 virtual void
115 SetStunKeepaliveIntervalForReadyPorts(::std::optional<int> const& stun_keepalive_interval) /*override*/;
116
117 virtual void PruneAllPorts() /*override*/;
118
119 virtual void UpdateIceParametersInternal() /*override*/;
120
121 virtual void GetPortConfigurations();
122 // NOLINTEND
123
124public:
125 // member functions
126 // NOLINTBEGIN
127 MCNAPI void AddAllocatedPort(::webrtc::Port* port, ::webrtc::AllocationSequence* seq);
128
129 MCNAPI BasicPortAllocatorSession(
130 ::webrtc::BasicPortAllocator* allocator,
131 ::std::string_view content_name,
132 int component,
133 ::std::string_view ice_ufrag,
134 ::std::string_view ice_pwd
135 );
136
137 MCNAPI bool CandidatePairable(::webrtc::Candidate const& c, ::webrtc::Port const* port) const;
138
139 MCNAPI void ConfigReady(::std::unique_ptr<::webrtc::PortConfiguration> config);
140
141 MCNAPI void DoAllocate();
142
144 ::webrtc::BasicPortAllocatorSession::PortData const& data,
145 ::std::vector<::webrtc::Candidate>* candidates
146 ) const;
147
148 MCNAPI ::std::vector<::webrtc::Network const*> GetFailedNetworks();
149
150 MCNAPI ::std::vector<::webrtc::Network const*> GetNetworks();
151
152 MCNAPI ::std::vector<::webrtc::BasicPortAllocatorSession::PortData*>
153 GetUnprunedPorts(::std::vector<::webrtc::Network const*> const& networks);
154
156
157 MCNAPI void OnCandidateReady(::webrtc::Port* port, ::webrtc::Candidate const& c);
158
159 MCNAPI void OnNetworksChanged();
160
161 MCNAPI void OnPortComplete(::webrtc::Port* port);
162
163 MCNAPI void OnPortError(::webrtc::Port* port);
164
165 MCNAPI bool PruneNewlyPairableTurnPort(::webrtc::BasicPortAllocatorSession::PortData* newly_pairable_port_data);
166
167 MCNAPI void
168 PrunePortsAndRemoveCandidates(::std::vector<::webrtc::BasicPortAllocatorSession::PortData*> const& port_data_list);
169
170 MCNAPI bool PruneTurnPorts(::webrtc::Port* newly_pairable_turn_port);
171 // NOLINTEND
172
173public:
174 // static functions
175 // NOLINTBEGIN
176 MCNAPI static ::std::vector<::webrtc::Network const*>
177 SelectIPv6Networks(::std::vector<::webrtc::Network const*>& all_ipv6_networks, int max_ipv6_networks);
178 // NOLINTEND
179
180public:
181 // constructor thunks
182 // NOLINTBEGIN
183 MCNAPI void* $ctor(
184 ::webrtc::BasicPortAllocator* allocator,
185 ::std::string_view content_name,
186 int component,
187 ::std::string_view ice_ufrag,
188 ::std::string_view ice_pwd
189 );
190 // NOLINTEND
191
192public:
193 // destructor thunk
194 // NOLINTBEGIN
195 MCNAPI void $dtor();
196 // NOLINTEND
197
198public:
199 // virtual function thunks
200 // NOLINTBEGIN
201 MCNAPI ::webrtc::BasicPortAllocator* $allocator();
202
203 MCNAPI void $SetCandidateFilter(uint filter);
204
205 MCNAPI void $StartGettingPorts();
206
207 MCNAPI void $StopGettingPorts();
208
209 MCNAPI void $ClearGettingPorts();
210
211 MCNAPI bool $IsGettingPorts();
212
213 MCNAPI bool $IsCleared() const;
214
215 MCNAPI bool $IsStopped() const;
216
217 MCNAPI ::std::vector<::webrtc::PortInterface*> $ReadyPorts() const;
218
219 MCNAPI ::std::vector<::webrtc::Candidate> $ReadyCandidates() const;
220
221 MCNAPI bool $CandidatesAllocationDone() const;
222
224
225 MCNAPI void $GetCandidateStatsFromReadyPorts(::std::vector<::webrtc::CandidateStats>* candidate_stats_list) const;
226
227 MCNAPI void $SetStunKeepaliveIntervalForReadyPorts(::std::optional<int> const& stun_keepalive_interval);
228
229 MCNAPI void $PruneAllPorts();
230
232
234
235
236 // NOLINTEND
237
238public:
239 // vftables
240 // NOLINTBEGIN
241 MCNAPI static void** $vftable();
242 // NOLINTEND
243};
244
245} // namespace webrtc
Definition AllocationSequence.h:20
Definition BasicPortAllocatorSession.h:30
MCAPI bool $CandidatesAllocationDone() const
MCAPI void OnCandidateReady(::webrtc::Port *port, ::webrtc::Candidate const &c)
MCAPI ::std::vector<::webrtc::Candidate > $ReadyCandidates() const
static MCAPI void ** $vftable()
MCAPI void $SetCandidateFilter(uint filter)
MCAPI bool CandidatePairable(::webrtc::Candidate const &c, ::webrtc::Port const *port) const
MCAPI void OnPortComplete(::webrtc::Port *port)
MCAPI bool PruneNewlyPairableTurnPort(::webrtc::BasicPortAllocatorSession::PortData *newly_pairable_port_data)
MCAPI void PrunePortsAndRemoveCandidates(::std::vector<::webrtc::BasicPortAllocatorSession::PortData * > const &port_data_list)
MCAPI void * $ctor(::webrtc::BasicPortAllocator *allocator, ::std::string_view content_name, int component, ::std::string_view ice_ufrag, ::std::string_view ice_pwd)
MCAPI void ConfigReady(::std::unique_ptr<::webrtc::PortConfiguration > config)
MCAPI ::std::vector<::webrtc::PortInterface * > $ReadyPorts() const
MCAPI ::std::vector<::webrtc::Network const * > GetNetworks()
MCAPI void AddAllocatedPort(::webrtc::Port *port, ::webrtc::AllocationSequence *seq)
MCAPI void $SetStunKeepaliveIntervalForReadyPorts(::std::optional< int > const &stun_keepalive_interval)
MCAPI void OnPortError(::webrtc::Port *port)
MCAPI ::std::vector<::webrtc::Network const * > GetFailedNetworks()
MCAPI void $GetCandidateStatsFromReadyPorts(::std::vector<::webrtc::CandidateStats > *candidate_stats_list) const
MCAPI bool PruneTurnPorts(::webrtc::Port *newly_pairable_turn_port)
MCAPI ::std::vector<::webrtc::BasicPortAllocatorSession::PortData * > GetUnprunedPorts(::std::vector<::webrtc::Network const * > const &networks)
MCAPI void MaybeSignalCandidatesAllocationDone()
MCAPI::webrtc::BasicPortAllocator * $allocator()
static MCAPI ::std::vector<::webrtc::Network const * > SelectIPv6Networks(::std::vector<::webrtc::Network const * > &all_ipv6_networks, int max_ipv6_networks)
MCAPI void GetCandidatesFromPort(::webrtc::BasicPortAllocatorSession::PortData const &data, ::std::vector<::webrtc::Candidate > *candidates) const
Definition BasicPortAllocator.h:22
Definition CandidateStats.h:7
Definition Candidate.h:12
Definition Network.h:18
Definition PortAllocatorSession.h:18
Definition PortInterface.h:29
Definition Port.h:37
STL namespace.
Definition Alias.h:14
Definition PortConfiguration.h:18