LeviLamina
Loading...
Searching...
No Matches
PeerConnection.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/AudioDeviceModule.h"
8#include "mc/external/webrtc/Call.h"
9#include "mc/external/webrtc/DataChannelInterface.h"
10#include "mc/external/webrtc/IceConnectionState.h"
11#include "mc/external/webrtc/JsepTransportController.h"
12#include "mc/external/webrtc/MediaType.h"
13#include "mc/external/webrtc/PeerConnectionFactoryInterface.h"
14#include "mc/external/webrtc/PeerConnectionInterface.h"
15#include "mc/external/webrtc/PeerConnectionInternal.h"
16#include "mc/external/webrtc/RTCErrorOr.h"
17#include "mc/external/webrtc/RtpTransceiverProxyWithInternal.h"
18#include "mc/external/webrtc/SSLRole.h"
19#include "mc/external/webrtc/UsageEvent.h"
20#include "mc/external/webrtc/scoped_refptr.h"
21
22// auto generated forward declare list
23// clang-format off
24namespace webrtc { class Call; }
25namespace webrtc { class Candidate; }
26namespace webrtc { class CandidateStats; }
27namespace webrtc { class ConnectionContext; }
28namespace webrtc { class ContentGroup; }
29namespace webrtc { class CreateSessionDescriptionObserver; }
30namespace webrtc { class DataChannelController; }
31namespace webrtc { class DataChannelEventObserverInterface; }
32namespace webrtc { class DataChannelInterface; }
33namespace webrtc { class DataChannelTransportInterface; }
34namespace webrtc { class DtlsTransport; }
35namespace webrtc { class DtlsTransportInterface; }
36namespace webrtc { class Environment; }
37namespace webrtc { class FieldTrialsView; }
38namespace webrtc { class IceCandidate; }
39namespace webrtc { class JsepTransportController; }
40namespace webrtc { class LegacyStatsCollector; }
41namespace webrtc { class MediaStreamInterface; }
42namespace webrtc { class MediaStreamTrackInterface; }
43namespace webrtc { class NetworkControllerInterface; }
44namespace webrtc { class PayloadTypePicker; }
45namespace webrtc { class PeerConnectionMessageHandler; }
46namespace webrtc { class PeerConnectionObserver; }
47namespace webrtc { class PortAllocator; }
48namespace webrtc { class RTCCertificate; }
49namespace webrtc { class RTCError; }
50namespace webrtc { class RTCStatsCollectorCallback; }
51namespace webrtc { class Resource; }
52namespace webrtc { class RtcEventLogOutput; }
53namespace webrtc { class RtpReceiverInterface; }
54namespace webrtc { class RtpSenderInterface; }
55namespace webrtc { class RtpTransceiver; }
56namespace webrtc { class RtpTransceiverInterface; }
57namespace webrtc { class RtpTransmissionManager; }
58namespace webrtc { class RtpTransportInternal; }
59namespace webrtc { class SSLCertChain; }
60namespace webrtc { class SctpTransportInterface; }
61namespace webrtc { class SessionDescription; }
62namespace webrtc { class SessionDescriptionInterface; }
63namespace webrtc { class SetLocalDescriptionObserverInterface; }
64namespace webrtc { class SetRemoteDescriptionObserverInterface; }
65namespace webrtc { class SetSessionDescriptionObserver; }
66namespace webrtc { class SocketAddress; }
67namespace webrtc { class StaticStunServer; }
68namespace webrtc { class StatsObserver; }
69namespace webrtc { class StreamCollectionInterface; }
70namespace webrtc { class Thread; }
71namespace webrtc { struct BandwidthEstimationSettings; }
72namespace webrtc { struct BitrateSettings; }
73namespace webrtc { struct CryptoOptions; }
74namespace webrtc { struct DataChannelInit; }
75namespace webrtc { struct DataChannelStats; }
76namespace webrtc { struct PeerConnectionDependencies; }
77namespace webrtc { struct RelayServerConfig; }
78namespace webrtc { struct RtpEncodingParameters; }
79namespace webrtc { struct RtpTransceiverInit; }
80namespace webrtc { struct SctpOptions; }
81namespace webrtc { struct TransportStats; }
82// clang-format on
83
84namespace webrtc {
85
87public:
88 // PeerConnection inner types declare
89 // clang-format off
91 // clang-format on
92
93 // PeerConnection inner types define
94 struct InitializePortAllocatorResult {
95 public:
96 // member variables
97 // NOLINTBEGIN
99 // NOLINTEND
100
101 public:
102 // prevent constructor by default
103 InitializePortAllocatorResult& operator=(InitializePortAllocatorResult const&);
104 InitializePortAllocatorResult(InitializePortAllocatorResult const&);
105 InitializePortAllocatorResult();
106 };
107
108public:
109 // member variables
110 // NOLINTBEGIN
150 // NOLINTEND
151
152public:
153 // prevent constructor by default
154 PeerConnection& operator=(PeerConnection const&);
155 PeerConnection(PeerConnection const&);
156 PeerConnection();
157
158public:
159 // virtual functions
160 // NOLINTBEGIN
161 virtual ::webrtc::scoped_refptr<::webrtc::StreamCollectionInterface> local_streams() /*override*/;
162
163 virtual ::webrtc::scoped_refptr<::webrtc::StreamCollectionInterface> remote_streams() /*override*/;
164
165 virtual bool AddStream(::webrtc::MediaStreamInterface* local_stream) /*override*/;
166
167 virtual void RemoveStream(::webrtc::MediaStreamInterface* local_stream) /*override*/;
168
169 virtual ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::RtpSenderInterface>> AddTrack(
171 ::std::vector<::std::string> const& stream_ids,
172 ::std::vector<::webrtc::RtpEncodingParameters> const& init_send_encodings
173 ) /*override*/;
174
175 virtual ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::RtpSenderInterface>> AddTrack(
177 ::std::vector<::std::string> const& stream_ids
178 ) /*override*/;
179
180 virtual ::webrtc::RTCError
181 RemoveTrackOrError(::webrtc::scoped_refptr<::webrtc::RtpSenderInterface> sender) /*override*/;
182
183 virtual ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::RtpTransceiverInterface>> AddTransceiver(
184 ::webrtc::MediaType media_type,
187 bool update_negotiation_needed
188 ) /*override*/;
189
190 virtual ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::RtpTransceiverInterface>>
191 AddTransceiver(::webrtc::MediaType media_type, ::webrtc::RtpTransceiverInit const& init) /*override*/;
192
193 virtual ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::RtpTransceiverInterface>>
194 AddTransceiver(::webrtc::MediaType media_type) /*override*/;
195
196 virtual ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::RtpTransceiverInterface>> AddTransceiver(
199 ) /*override*/;
200
201 virtual ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::RtpTransceiverInterface>>
202 AddTransceiver(::webrtc::scoped_refptr<::webrtc::MediaStreamTrackInterface> track) /*override*/;
203
204 virtual ::webrtc::scoped_refptr<::webrtc::RtpSenderInterface>
205 CreateSender(::std::string const& kind, ::std::string const& stream_id) /*override*/;
206
207 virtual ::std::vector<::webrtc::scoped_refptr<::webrtc::RtpSenderInterface>> GetSenders() const /*override*/;
208
209 virtual ::std::vector<::webrtc::scoped_refptr<::webrtc::RtpReceiverInterface>> GetReceivers() const /*override*/;
210
211 virtual ::std::vector<::webrtc::scoped_refptr<::webrtc::RtpTransceiverInterface>> GetTransceivers() const
212 /*override*/;
213
214 virtual ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::DataChannelInterface>>
215 CreateDataChannelOrError(::std::string const& label, ::webrtc::DataChannelInit const* config) /*override*/;
216
217 virtual void GetStats(
218 ::webrtc::scoped_refptr<::webrtc::RtpReceiverInterface> selector,
219 ::webrtc::scoped_refptr<::webrtc::RTCStatsCollectorCallback> callback
220 ) /*override*/;
221
222 virtual void GetStats(
223 ::webrtc::scoped_refptr<::webrtc::RtpSenderInterface> selector,
224 ::webrtc::scoped_refptr<::webrtc::RTCStatsCollectorCallback> callback
225 ) /*override*/;
226
227 virtual void GetStats(::webrtc::RTCStatsCollectorCallback* callback) /*override*/;
228
229 virtual bool GetStats(
230 ::webrtc::StatsObserver* observer,
231 ::webrtc::MediaStreamTrackInterface* track,
232 ::webrtc::PeerConnectionInterface::StatsOutputLevel level
233 ) /*override*/;
234
235 virtual void ClearStatsCache() /*override*/;
236
237 virtual ::webrtc::PeerConnectionInterface::SignalingState signaling_state() /*override*/;
238
239 virtual ::webrtc::PeerConnectionInterface::IceConnectionState ice_connection_state() /*override*/;
240
241 virtual ::webrtc::PeerConnectionInterface::IceConnectionState ice_connection_state_internal() /*override*/;
242
243 virtual ::webrtc::PeerConnectionInterface::IceConnectionState standardized_ice_connection_state() /*override*/;
244
245 virtual ::webrtc::PeerConnectionInterface::PeerConnectionState peer_connection_state() /*override*/;
246
247 virtual ::webrtc::PeerConnectionInterface::IceGatheringState ice_gathering_state() /*override*/;
248
249 virtual ::std::optional<bool> can_trickle_ice_candidates() /*override*/;
250
251 virtual ::webrtc::SessionDescriptionInterface const* local_description() const /*override*/;
252
253 virtual ::webrtc::SessionDescriptionInterface const* remote_description() const /*override*/;
254
255 virtual ::webrtc::SessionDescriptionInterface const* current_local_description() const /*override*/;
256
257 virtual ::webrtc::SessionDescriptionInterface const* current_remote_description() const /*override*/;
258
259 virtual ::webrtc::SessionDescriptionInterface const* pending_local_description() const /*override*/;
260
261 virtual ::webrtc::SessionDescriptionInterface const* pending_remote_description() const /*override*/;
262
263 virtual void RestartIce() /*override*/;
264
265 virtual void CreateOffer(
266 ::webrtc::CreateSessionDescriptionObserver* observer,
267 ::webrtc::PeerConnectionInterface::RTCOfferAnswerOptions const& options
268 ) /*override*/;
269
270 virtual void CreateAnswer(
271 ::webrtc::CreateSessionDescriptionObserver* observer,
272 ::webrtc::PeerConnectionInterface::RTCOfferAnswerOptions const& options
273 ) /*override*/;
274
275 virtual void SetLocalDescription(::webrtc::SetSessionDescriptionObserver* observer) /*override*/;
276
277 virtual void SetLocalDescription(
278 ::webrtc::SetSessionDescriptionObserver* observer,
279 ::webrtc::SessionDescriptionInterface* desc_ptr
280 ) /*override*/;
281
282 virtual void
283 SetLocalDescription(::webrtc::scoped_refptr<::webrtc::SetLocalDescriptionObserverInterface> observer) /*override*/;
284
285 virtual void SetLocalDescription(
286 ::std::unique_ptr<::webrtc::SessionDescriptionInterface> desc,
287 ::webrtc::scoped_refptr<::webrtc::SetLocalDescriptionObserverInterface> observer
288 ) /*override*/;
289
290 virtual void SetRemoteDescription(
291 ::webrtc::SetSessionDescriptionObserver* observer,
292 ::webrtc::SessionDescriptionInterface* desc_ptr
293 ) /*override*/;
294
295 virtual void SetRemoteDescription(
296 ::std::unique_ptr<::webrtc::SessionDescriptionInterface> desc,
297 ::webrtc::scoped_refptr<::webrtc::SetRemoteDescriptionObserverInterface> observer
298 ) /*override*/;
299
300 virtual ::webrtc::PeerConnectionInterface::RTCConfiguration GetConfiguration() /*override*/;
301
302 virtual ::webrtc::RTCError
303 SetConfiguration(::webrtc::PeerConnectionInterface::RTCConfiguration const& configuration) /*override*/;
304
305 virtual void AddIceCandidate(
306 ::std::unique_ptr<::webrtc::IceCandidate> candidate,
307 ::std::function<void(::webrtc::RTCError)> callback
308 ) /*override*/;
309
310 virtual bool AddIceCandidate(::webrtc::IceCandidate const* ice_candidate) /*override*/;
311
312 virtual bool RemoveIceCandidate(::webrtc::IceCandidate const* candidate) /*override*/;
313
314 virtual bool RemoveIceCandidates(::std::vector<::webrtc::Candidate> const& candidates) /*override*/;
315
316 virtual ::webrtc::RTCError SetBitrate(::webrtc::BitrateSettings const& bitrate) /*override*/;
317
318 virtual void ReconfigureBandwidthEstimation(::webrtc::BandwidthEstimationSettings const& settings) /*override*/;
319
320 virtual void SetAudioPlayout(bool playout) /*override*/;
321
322 virtual void SetAudioRecording(bool recording) /*override*/;
323
324 virtual ::webrtc::scoped_refptr<::webrtc::DtlsTransportInterface>
325 LookupDtlsTransportByMid(::std::string const& mid) /*override*/;
326
327 virtual ::webrtc::scoped_refptr<::webrtc::SctpTransportInterface> GetSctpTransport() const /*override*/;
328
329 virtual void AddAdaptationResource(::webrtc::scoped_refptr<::webrtc::Resource> resource) /*override*/;
330
331 virtual bool StartRtcEventLog(::std::unique_ptr<::webrtc::RtcEventLogOutput> output) /*override*/;
332
333 virtual bool
334 StartRtcEventLog(::std::unique_ptr<::webrtc::RtcEventLogOutput> output, int64 output_period_ms) /*override*/;
335
336 virtual void StopRtcEventLog() /*override*/;
337
338 virtual void
339 SetDataChannelEventObserver(::std::unique_ptr<::webrtc::DataChannelEventObserverInterface> observer) /*override*/;
340
341 virtual void Close() /*override*/;
342
343 virtual ::webrtc::Thread* signaling_thread() const /*override*/;
344
345 virtual ::webrtc::Thread* network_thread() const /*override*/;
346
347 virtual ::webrtc::Thread* worker_thread() const /*override*/;
348
349 virtual ::std::string session_id() const /*override*/;
350
351 virtual bool initial_offerer() const /*override*/;
352
353 virtual ::std::vector<::webrtc::scoped_refptr<::webrtc::RtpTransceiverProxyWithInternal<::webrtc::RtpTransceiver>>>
354 GetTransceiversInternal() const /*override*/;
355
356 virtual ::std::vector<::webrtc::DataChannelStats> GetDataChannelStats() const /*override*/;
357
358 virtual ::std::optional<::std::string> sctp_transport_name() const /*override*/;
359
360 virtual ::std::optional<::std::string> sctp_mid() const /*override*/;
361
362 virtual ::std::vector<::webrtc::CandidateStats> GetPooledCandidateStats() const /*override*/;
363
364 virtual ::std::map<::std::string, ::webrtc::TransportStats>
365 GetTransportStatsByNames(::std::set<::std::string> const& transport_names) /*override*/;
366
367 virtual ::webrtc::Call::Stats GetCallStats() /*override*/;
368
369 virtual ::std::optional<::webrtc::AudioDeviceModule::Stats> GetAudioDeviceStats() /*override*/;
370
371 virtual bool GetLocalCertificate(
372 ::std::string const& transport_name,
373 ::webrtc::scoped_refptr<::webrtc::RTCCertificate>* certificate
374 ) /*override*/;
375
376 virtual ::std::unique_ptr<::webrtc::SSLCertChain>
377 GetRemoteSSLCertChain(::std::string const& transport_name) /*override*/;
378
379 virtual bool IceRestartPending(::std::string const& content_name) const /*override*/;
380
381 virtual bool NeedsIceRestart(::std::string const& content_name) const /*override*/;
382
383 virtual bool GetSslRole(::std::string const& content_name, ::webrtc::SSLRole* role) /*override*/;
384
385 virtual void NoteDataAddedEvent() /*override*/;
386
387 virtual void RunWithObserver(::absl::AnyInvocable<void(::webrtc::PeerConnectionObserver*) &&> task) /*override*/;
388
389 virtual bool IsClosed() const /*override*/;
390
391 virtual ::std::optional<::webrtc::SSLRole> GetSctpSslRole_n() /*override*/;
392
393 virtual void
394 OnSctpDataChannelStateChanged(int channel_id, ::webrtc::DataChannelInterface::DataState state) /*override*/;
395
396 virtual bool ShouldFireNegotiationNeededEvent(uint event_id) /*override*/;
397
398 virtual ::webrtc::LegacyStatsCollector* legacy_stats() /*override*/;
399
400 virtual ::webrtc::DataChannelController* data_channel_controller() /*override*/;
401
402 virtual bool dtls_enabled() const /*override*/;
403
404 virtual ::webrtc::PeerConnectionInterface::RTCConfiguration const* configuration() const /*override*/;
405
406 virtual ::webrtc::PeerConnectionMessageHandler* message_handler() /*override*/;
407
408 virtual ::webrtc::RtpTransmissionManager const* rtp_manager() const /*override*/;
409
410 virtual ::webrtc::RtpTransmissionManager* rtp_manager() /*override*/;
411
412 virtual ::webrtc::JsepTransportController* transport_controller_s() /*override*/;
413
414 virtual ::webrtc::JsepTransportController* transport_controller_n() /*override*/;
415
416 virtual ::webrtc::PortAllocator* port_allocator() /*override*/;
417
418 virtual ::webrtc::Call* call_ptr() /*override*/;
419
420 virtual ::webrtc::PeerConnectionFactoryInterface::Options const* options() const /*override*/;
421
422 virtual void SetIceConnectionState(::webrtc::PeerConnectionInterface::IceConnectionState new_state) /*override*/;
423
424 virtual void NoteUsageEvent(::webrtc::UsageEvent event) /*override*/;
425
426 virtual void AddRemoteCandidate(::std::string_view mid, ::webrtc::Candidate const& candidate) /*override*/;
427
428 virtual void ReportSdpBundleUsage(::webrtc::SessionDescriptionInterface const& remote_description) /*override*/;
429
430 virtual bool IsUnifiedPlan() const /*override*/;
431
432 virtual bool ValidateBundleSettings(
433 ::webrtc::SessionDescription const* desc,
434 ::std::map<::std::string, ::webrtc::ContentGroup const*> const& bundle_groups_by_mid
435 ) /*override*/;
436
437 virtual bool CreateDataChannelTransport(::std::string_view mid) /*override*/;
438
439 virtual void DestroyDataChannelTransport(::webrtc::RTCError error) /*override*/;
440
441 virtual ::webrtc::RTCError StartSctpTransport(::webrtc::SctpOptions const& options) /*override*/;
442
443 virtual ::webrtc::CryptoOptions GetCryptoOptions() /*override*/;
444
445 virtual bool SrtpRequired() const /*override*/;
446
447 virtual ::webrtc::FieldTrialsView const& trials() const /*override*/;
448
449 virtual ::webrtc::NetworkControllerInterface* GetNetworkController() /*override*/;
450
451 virtual ::webrtc::PayloadTypePicker& payload_type_picker() /*override*/;
452
453 virtual ~PeerConnection() /*override*/;
454
455 virtual bool OnTransportChanged(
456 ::std::string const& mid,
457 ::webrtc::RtpTransportInternal* rtp_transport,
458 ::webrtc::scoped_refptr<::webrtc::DtlsTransport> dtls_transport,
459 ::webrtc::DataChannelTransportInterface* data_channel_transport
460 ) /*override*/;
461 // NOLINTEND
462
463public:
464 // member functions
465 // NOLINTBEGIN
466 MCNAPI ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::RtpSenderInterface>> AddTrack(
467 ::webrtc::scoped_refptr<::webrtc::MediaStreamTrackInterface> track,
468 ::std::vector<::std::string> const& stream_ids,
469 ::std::vector<::webrtc::RtpEncodingParameters> const* init_send_encodings
470 );
471
473
474 MCNAPI ::webrtc::scoped_refptr<::webrtc::RtpTransceiverProxyWithInternal<::webrtc::RtpTransceiver>>
476
478 ::std::set<::webrtc::SocketAddress> const& stun_servers,
479 ::std::vector<::webrtc::RelayServerConfig> const& turn_servers,
480 ::std::vector<::std::shared_ptr<::webrtc::StaticStunServer const>> const& static_stun_servers,
481 ::webrtc::PeerConnectionInterface::RTCConfiguration const& configuration
482 );
483
484 MCNAPI ::webrtc::JsepTransportController*
486
487 MCNAPI void OnIceGatheringChange(::webrtc::PeerConnectionInterface::IceGatheringState new_state);
488
490 ::std::string const& transport_name,
491 ::std::vector<::webrtc::Candidate> const& candidates
492 );
493
494 MCNAPI void OnTransportControllerConnectionState(::webrtc::IceConnectionState state);
495
496 MCNAPI PeerConnection(
497 ::webrtc::PeerConnectionInterface::RTCConfiguration const& configuration,
498 ::webrtc::Environment const& env,
499 ::webrtc::scoped_refptr<::webrtc::ConnectionContext> context,
500 ::webrtc::PeerConnectionFactoryInterface::Options const& options,
501 bool is_unified_plan,
502 ::std::unique_ptr<::webrtc::Call> call,
503 ::webrtc::PeerConnectionDependencies& dependencies,
504 ::std::set<::webrtc::SocketAddress> const& stun_servers,
505 ::std::vector<::webrtc::RelayServerConfig> const& turn_servers,
506 bool dtls_enabled
507 );
508
510
512 ::std::vector<::webrtc::scoped_refptr<::webrtc::RtpTransceiverProxyWithInternal<::webrtc::RtpTransceiver>>>
513 transceivers
514 );
515
516 MCNAPI void SetSctpTransportName(::std::string sctp_transport_name);
517
518 MCNAPI ::std::optional<::std::string> SetupDataChannelTransport_n(::std::string_view mid);
519
520 MCNAPI void TeardownDataChannelTransport_n(::webrtc::RTCError error);
521 // NOLINTEND
522
523public:
524 // static functions
525 // NOLINTBEGIN
526 MCNAPI static ::webrtc::scoped_refptr<::webrtc::PeerConnection> Create(
527 ::webrtc::Environment const& env,
528 ::webrtc::scoped_refptr<::webrtc::ConnectionContext> context,
529 ::webrtc::PeerConnectionFactoryInterface::Options const& options,
530 ::std::unique_ptr<::webrtc::Call> call,
531 ::webrtc::PeerConnectionInterface::RTCConfiguration const& configuration,
532 ::webrtc::PeerConnectionDependencies& dependencies,
533 ::std::set<::webrtc::SocketAddress> const& stun_servers,
534 ::std::vector<::webrtc::RelayServerConfig> const& turn_servers
535 );
536
537 MCNAPI static void ReportNegotiatedCiphers(
538 bool dtls_enabled,
539 ::webrtc::TransportStats const& stats,
540 ::std::set<::webrtc::MediaType> const& media_types
541 );
542 // NOLINTEND
543
544public:
545 // constructor thunks
546 // NOLINTBEGIN
547 MCNAPI void* $ctor(
548 ::webrtc::PeerConnectionInterface::RTCConfiguration const& configuration,
549 ::webrtc::Environment const& env,
550 ::webrtc::scoped_refptr<::webrtc::ConnectionContext> context,
551 ::webrtc::PeerConnectionFactoryInterface::Options const& options,
552 bool is_unified_plan,
553 ::std::unique_ptr<::webrtc::Call> call,
554 ::webrtc::PeerConnectionDependencies& dependencies,
555 ::std::set<::webrtc::SocketAddress> const& stun_servers,
556 ::std::vector<::webrtc::RelayServerConfig> const& turn_servers,
557 bool dtls_enabled
558 );
559 // NOLINTEND
560
561public:
562 // destructor thunk
563 // NOLINTBEGIN
564 MCNAPI void $dtor();
565 // NOLINTEND
566
567public:
568 // virtual function thunks
569 // NOLINTBEGIN
571
573
574 MCNAPI bool $AddStream(::webrtc::MediaStreamInterface* local_stream);
575
576 MCNAPI void $RemoveStream(::webrtc::MediaStreamInterface* local_stream);
577
578 MCNAPI ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::RtpSenderInterface>> $AddTrack(
579 ::webrtc::scoped_refptr<::webrtc::MediaStreamTrackInterface> track,
580 ::std::vector<::std::string> const& stream_ids,
581 ::std::vector<::webrtc::RtpEncodingParameters> const& init_send_encodings
582 );
583
584 MCNAPI ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::RtpSenderInterface>> $AddTrack(
585 ::webrtc::scoped_refptr<::webrtc::MediaStreamTrackInterface> track,
586 ::std::vector<::std::string> const& stream_ids
587 );
588
589 MCNAPI ::webrtc::RTCError $RemoveTrackOrError(::webrtc::scoped_refptr<::webrtc::RtpSenderInterface> sender);
590
591 MCNAPI ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::RtpTransceiverInterface>> $AddTransceiver(
592 ::webrtc::MediaType media_type,
593 ::webrtc::scoped_refptr<::webrtc::MediaStreamTrackInterface> track,
594 ::webrtc::RtpTransceiverInit const& init,
595 bool update_negotiation_needed
596 );
597
598 MCNAPI ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::RtpTransceiverInterface>>
599 $AddTransceiver(::webrtc::MediaType media_type, ::webrtc::RtpTransceiverInit const& init);
600
601 MCNAPI ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::RtpTransceiverInterface>>
602 $AddTransceiver(::webrtc::MediaType media_type);
603
604 MCNAPI ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::RtpTransceiverInterface>> $AddTransceiver(
605 ::webrtc::scoped_refptr<::webrtc::MediaStreamTrackInterface> track,
606 ::webrtc::RtpTransceiverInit const& init
607 );
608
609 MCNAPI ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::RtpTransceiverInterface>>
611
612 MCNAPI ::webrtc::scoped_refptr<::webrtc::RtpSenderInterface>
613 $CreateSender(::std::string const& kind, ::std::string const& stream_id);
614
615 MCNAPI ::std::vector<::webrtc::scoped_refptr<::webrtc::RtpSenderInterface>> $GetSenders() const;
616
617 MCNAPI ::std::vector<::webrtc::scoped_refptr<::webrtc::RtpReceiverInterface>> $GetReceivers() const;
618
619 MCNAPI ::std::vector<::webrtc::scoped_refptr<::webrtc::RtpTransceiverInterface>> $GetTransceivers() const;
620
621 MCNAPI ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::DataChannelInterface>>
622 $CreateDataChannelOrError(::std::string const& label, ::webrtc::DataChannelInit const* config);
623
624 MCNAPI void $GetStats(
625 ::webrtc::scoped_refptr<::webrtc::RtpReceiverInterface> selector,
626 ::webrtc::scoped_refptr<::webrtc::RTCStatsCollectorCallback> callback
627 );
628
629 MCNAPI void $GetStats(
630 ::webrtc::scoped_refptr<::webrtc::RtpSenderInterface> selector,
631 ::webrtc::scoped_refptr<::webrtc::RTCStatsCollectorCallback> callback
632 );
633
634 MCNAPI void $GetStats(::webrtc::RTCStatsCollectorCallback* callback);
635
636 MCNAPI bool $GetStats(
637 ::webrtc::StatsObserver* observer,
638 ::webrtc::MediaStreamTrackInterface* track,
639 ::webrtc::PeerConnectionInterface::StatsOutputLevel level
640 );
641
642 MCNAPI void $ClearStatsCache();
643
644 MCNAPI ::webrtc::PeerConnectionInterface::SignalingState $signaling_state();
645
646 MCNAPI ::webrtc::PeerConnectionInterface::IceConnectionState $ice_connection_state();
647
648 MCNAPI ::webrtc::PeerConnectionInterface::IceConnectionState $ice_connection_state_internal();
649
650 MCNAPI ::webrtc::PeerConnectionInterface::IceConnectionState $standardized_ice_connection_state();
651
652 MCNAPI ::webrtc::PeerConnectionInterface::PeerConnectionState $peer_connection_state();
653
654 MCNAPI ::webrtc::PeerConnectionInterface::IceGatheringState $ice_gathering_state();
655
656 MCNAPI ::std::optional<bool> $can_trickle_ice_candidates();
657
658 MCNAPI ::webrtc::SessionDescriptionInterface const* $local_description() const;
659
660 MCNAPI ::webrtc::SessionDescriptionInterface const* $remote_description() const;
661
663
665
667
669
670 MCNAPI void $RestartIce();
671
672 MCNAPI void $CreateOffer(
673 ::webrtc::CreateSessionDescriptionObserver* observer,
674 ::webrtc::PeerConnectionInterface::RTCOfferAnswerOptions const& options
675 );
676
677 MCNAPI void $CreateAnswer(
678 ::webrtc::CreateSessionDescriptionObserver* observer,
679 ::webrtc::PeerConnectionInterface::RTCOfferAnswerOptions const& options
680 );
681
682 MCNAPI void $SetLocalDescription(::webrtc::SetSessionDescriptionObserver* observer);
683
685 ::webrtc::SetSessionDescriptionObserver* observer,
686 ::webrtc::SessionDescriptionInterface* desc_ptr
687 );
688
690
692 ::std::unique_ptr<::webrtc::SessionDescriptionInterface> desc,
693 ::webrtc::scoped_refptr<::webrtc::SetLocalDescriptionObserverInterface> observer
694 );
695
697 ::webrtc::SetSessionDescriptionObserver* observer,
698 ::webrtc::SessionDescriptionInterface* desc_ptr
699 );
700
702 ::std::unique_ptr<::webrtc::SessionDescriptionInterface> desc,
703 ::webrtc::scoped_refptr<::webrtc::SetRemoteDescriptionObserverInterface> observer
704 );
705
707
708 MCNAPI ::webrtc::RTCError
710
711 MCNAPI void $AddIceCandidate(
712 ::std::unique_ptr<::webrtc::IceCandidate> candidate,
713 ::std::function<void(::webrtc::RTCError)> callback
714 );
715
716 MCNAPI bool $AddIceCandidate(::webrtc::IceCandidate const* ice_candidate);
717
718 MCNAPI bool $RemoveIceCandidate(::webrtc::IceCandidate const* candidate);
719
720 MCNAPI bool $RemoveIceCandidates(::std::vector<::webrtc::Candidate> const& candidates);
721
722 MCNAPI ::webrtc::RTCError $SetBitrate(::webrtc::BitrateSettings const& bitrate);
723
724 MCNAPI void $ReconfigureBandwidthEstimation(::webrtc::BandwidthEstimationSettings const& settings);
725
726 MCNAPI void $SetAudioPlayout(bool playout);
727
728 MCNAPI void $SetAudioRecording(bool recording);
729
730 MCNAPI ::webrtc::scoped_refptr<::webrtc::DtlsTransportInterface>
731 $LookupDtlsTransportByMid(::std::string const& mid);
732
733 MCNAPI ::webrtc::scoped_refptr<::webrtc::SctpTransportInterface> $GetSctpTransport() const;
734
735 MCNAPI void $AddAdaptationResource(::webrtc::scoped_refptr<::webrtc::Resource> resource);
736
737 MCNAPI bool $StartRtcEventLog(::std::unique_ptr<::webrtc::RtcEventLogOutput> output);
738
739 MCNAPI bool $StartRtcEventLog(::std::unique_ptr<::webrtc::RtcEventLogOutput> output, int64 output_period_ms);
740
741 MCNAPI void $StopRtcEventLog();
742
743 MCNAPI void $SetDataChannelEventObserver(::std::unique_ptr<::webrtc::DataChannelEventObserverInterface> observer);
744
745 MCNAPI void $Close();
746
747 MCNAPI ::webrtc::Thread* $signaling_thread() const;
748
749 MCNAPI ::webrtc::Thread* $network_thread() const;
750
751 MCNAPI ::webrtc::Thread* $worker_thread() const;
752
753 MCNAPI ::std::string $session_id() const;
754
755 MCNAPI bool $initial_offerer() const;
756
757 MCNAPI ::std::vector<::webrtc::scoped_refptr<::webrtc::RtpTransceiverProxyWithInternal<::webrtc::RtpTransceiver>>>
759
760 MCNAPI ::std::vector<::webrtc::DataChannelStats> $GetDataChannelStats() const;
761
762 MCNAPI ::std::optional<::std::string> $sctp_transport_name() const;
763
764 MCNAPI ::std::optional<::std::string> $sctp_mid() const;
765
766 MCNAPI ::std::vector<::webrtc::CandidateStats> $GetPooledCandidateStats() const;
767
768 MCNAPI ::std::map<::std::string, ::webrtc::TransportStats>
769 $GetTransportStatsByNames(::std::set<::std::string> const& transport_names);
770
771 MCNAPI ::webrtc::Call::Stats $GetCallStats();
772
773 MCNAPI ::std::optional<::webrtc::AudioDeviceModule::Stats> $GetAudioDeviceStats();
774
776 ::std::string const& transport_name,
777 ::webrtc::scoped_refptr<::webrtc::RTCCertificate>* certificate
778 );
779
780 MCNAPI ::std::unique_ptr<::webrtc::SSLCertChain> $GetRemoteSSLCertChain(::std::string const& transport_name);
781
782 MCNAPI bool $IceRestartPending(::std::string const& content_name) const;
783
784 MCNAPI bool $NeedsIceRestart(::std::string const& content_name) const;
785
786 MCNAPI bool $GetSslRole(::std::string const& content_name, ::webrtc::SSLRole* role);
787
788 MCNAPI void $NoteDataAddedEvent();
789
790 MCNAPI void $RunWithObserver(::absl::AnyInvocable<void(::webrtc::PeerConnectionObserver*) &&> task);
791
792 MCNAPI bool $IsClosed() const;
793
794 MCNAPI ::std::optional<::webrtc::SSLRole> $GetSctpSslRole_n();
795
796 MCNAPI void $OnSctpDataChannelStateChanged(int channel_id, ::webrtc::DataChannelInterface::DataState state);
797
798 MCNAPI bool $ShouldFireNegotiationNeededEvent(uint event_id);
799
801
803
804 MCNAPI bool $dtls_enabled() const;
805
807
809
810 MCNAPI ::webrtc::RtpTransmissionManager const* $rtp_manager() const;
811
813
815
817
818 MCNAPI ::webrtc::PortAllocator* $port_allocator();
819
820 MCNAPI ::webrtc::Call* $call_ptr();
821
822 MCNAPI ::webrtc::PeerConnectionFactoryInterface::Options const* $options() const;
823
824 MCNAPI void $SetIceConnectionState(::webrtc::PeerConnectionInterface::IceConnectionState new_state);
825
826 MCNAPI void $NoteUsageEvent(::webrtc::UsageEvent event);
827
828 MCNAPI void $AddRemoteCandidate(::std::string_view mid, ::webrtc::Candidate const& candidate);
829
830 MCNAPI void $ReportSdpBundleUsage(::webrtc::SessionDescriptionInterface const& remote_description);
831
832 MCNAPI bool $IsUnifiedPlan() const;
833
835 ::webrtc::SessionDescription const* desc,
836 ::std::map<::std::string, ::webrtc::ContentGroup const*> const& bundle_groups_by_mid
837 );
838
839 MCNAPI bool $CreateDataChannelTransport(::std::string_view mid);
840
841 MCNAPI void $DestroyDataChannelTransport(::webrtc::RTCError error);
842
843 MCNAPI ::webrtc::RTCError $StartSctpTransport(::webrtc::SctpOptions const& options);
844
846
847 MCNAPI bool $SrtpRequired() const;
848
849 MCNAPI ::webrtc::FieldTrialsView const& $trials() const;
850
852
854
856 ::std::string const& mid,
857 ::webrtc::RtpTransportInternal* rtp_transport,
858 ::webrtc::scoped_refptr<::webrtc::DtlsTransport> dtls_transport,
859 ::webrtc::DataChannelTransportInterface* data_channel_transport
860 );
861
862
863 // NOLINTEND
864
865public:
866 // vftables
867 // NOLINTBEGIN
868 MCNAPI static void** $vftable();
869
871
873 // NOLINTEND
874};
875
876} // namespace webrtc
Definition AudioDeviceModule.h:15
Definition Call.h:36
Definition CandidateStats.h:7
Definition Candidate.h:15
Definition ConnectionContext.h:17
Definition ContentGroup.h:7
Definition CreateSessionDescriptionObserver.h:16
Definition DataChannelController.h:33
Definition DataChannelEventObserverInterface.h:7
Definition DataChannelInterface.h:19
Definition DataChannelTransportInterface.h:16
Definition DtlsTransportInterface.h:18
Definition DtlsTransport.h:19
Definition Environment.h:7
Definition FieldTrialsView.h:7
Definition IceCandidate.h:12
Definition JsepTransportController.h:59
Definition JsepTransportController.h:50
Definition LegacyStatsCollector.h:30
Definition MediaStreamInterface.h:18
Definition MediaStreamTrackInterface.h:11
Definition NetworkControllerInterface.h:24
Definition PayloadTypePicker.h:18
Definition PeerConnectionFactoryInterface.h:27
Definition PeerConnectionInterface.h:46
Definition PeerConnectionInternal.h:28
Definition PeerConnectionMessageHandler.h:17
Definition PeerConnectionObserver.h:22
MCAPI::webrtc::JsepTransportController * InitializeTransportController_n(::webrtc::PeerConnectionInterface::RTCConfiguration const &configuration)
MCAPI::webrtc::SessionDescriptionInterface const * $pending_remote_description() const
MCAPI ::webrtc::scoped_refptr<::webrtc::StreamCollectionInterface > $remote_streams()
MCAPI::webrtc::PeerConnectionInterface::IceGatheringState $ice_gathering_state()
MCAPI bool $IceRestartPending(::std::string const &content_name) const
MCAPI bool $RemoveIceCandidate(::webrtc::IceCandidate const *candidate)
MCAPI bool $RemoveIceCandidates(::std::vector<::webrtc::Candidate > const &candidates)
MCAPI bool $CreateDataChannelTransport(::std::string_view mid)
MCAPI void SetSctpTransportName(::std::string sctp_transport_name)
MCAPI ::std::optional<::webrtc::AudioDeviceModule::Stats > $GetAudioDeviceStats()
MCAPI ::std::optional<::webrtc::SSLRole > $GetSctpSslRole_n()
MCAPI ::std::map<::std::string, ::webrtc::TransportStats > $GetTransportStatsByNames(::std::set<::std::string > const &transport_names)
MCAPI void $NoteDataAddedEvent()
MCAPI void $SetAudioPlayout(bool playout)
MCAPI::webrtc::SessionDescriptionInterface const * $remote_description() const
static MCAPI void ReportNegotiatedCiphers(bool dtls_enabled, ::webrtc::TransportStats const &stats, ::std::set<::webrtc::MediaType > const &media_types)
MCAPI::webrtc::RTCError $SetBitrate(::webrtc::BitrateSettings const &bitrate)
MCAPI void $NoteUsageEvent(::webrtc::UsageEvent event)
MCAPI::webrtc::NetworkControllerInterface * $GetNetworkController()
MCAPI::webrtc::SessionDescriptionInterface const * $local_description() const
MCAPI void $DestroyDataChannelTransport(::webrtc::RTCError error)
MCAPI::webrtc::Thread * $network_thread() const
MCAPI void $AddRemoteCandidate(::std::string_view mid, ::webrtc::Candidate const &candidate)
MCAPI void $CreateOffer(::webrtc::CreateSessionDescriptionObserver *observer, ::webrtc::PeerConnectionInterface::RTCOfferAnswerOptions const &options)
MCAPI::webrtc::Thread * $signaling_thread() const
MCAPI::webrtc::PeerConnectionInterface::IceConnectionState $ice_connection_state_internal()
MCAPI::webrtc::Call::Stats $GetCallStats()
MCAPI ::std::vector<::webrtc::scoped_refptr<::webrtc::RtpReceiverInterface > > $GetReceivers() const
MCAPI::webrtc::RTCError $RemoveTrackOrError(::webrtc::scoped_refptr<::webrtc::RtpSenderInterface > sender)
MCAPI::webrtc::PeerConnectionInterface::PeerConnectionState $peer_connection_state()
MCAPI::webrtc::FieldTrialsView const & $trials() const
MCAPI::std::string $session_id() const
MCAPI void $SetAudioRecording(bool recording)
MCAPI bool $SrtpRequired() const
MCAPI bool $dtls_enabled() const
MCAPI ::webrtc::scoped_refptr<::webrtc::SctpTransportInterface > $GetSctpTransport() const
MCAPI::webrtc::PeerConnectionMessageHandler * $message_handler()
MCAPI bool $ValidateBundleSettings(::webrtc::SessionDescription const *desc, ::std::map<::std::string, ::webrtc::ContentGroup const * > const &bundle_groups_by_mid)
MCAPI void $SetLocalDescription(::webrtc::SetSessionDescriptionObserver *observer)
MCAPI void $SetRemoteDescription(::webrtc::SetSessionDescriptionObserver *observer, ::webrtc::SessionDescriptionInterface *desc_ptr)
MCAPI::webrtc::JsepTransportController * $transport_controller_n()
MCAPI ::std::unique_ptr<::webrtc::SSLCertChain > $GetRemoteSSLCertChain(::std::string const &transport_name)
MCAPI void ReportTransportStats(::std::vector<::webrtc::scoped_refptr<::webrtc::RtpTransceiverProxyWithInternal<::webrtc::RtpTransceiver > > > transceivers)
MCAPI void $RestartIce()
MCAPI void OnTransportControllerCandidatesGathered(::std::string const &transport_name, ::std::vector<::webrtc::Candidate > const &candidates)
MCAPI void $OnSctpDataChannelStateChanged(int channel_id, ::webrtc::DataChannelInterface::DataState state)
MCAPI void $StopRtcEventLog()
MCAPI::webrtc::PeerConnectionInterface::IceConnectionState $ice_connection_state()
MCAPI ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::DataChannelInterface > > $CreateDataChannelOrError(::std::string const &label, ::webrtc::DataChannelInit const *config)
MCAPI bool $initial_offerer() const
MCAPI void $AddIceCandidate(::std::unique_ptr<::webrtc::IceCandidate > candidate, ::std::function< void(::webrtc::RTCError)> callback)
MCAPI ::std::vector<::webrtc::scoped_refptr<::webrtc::RtpTransceiverInterface > > $GetTransceivers() const
static MCAPI void ** $vftableForPeerConnectionSdpMethods()
MCAPI ::webrtc::scoped_refptr<::webrtc::StreamCollectionInterface > $local_streams()
MCAPI void OnIceGatheringChange(::webrtc::PeerConnectionInterface::IceGatheringState new_state)
MCAPI bool CanAttemptDtlsStunPiggybacking()
MCAPI void $ReconfigureBandwidthEstimation(::webrtc::BandwidthEstimationSettings const &settings)
MCAPI bool $NeedsIceRestart(::std::string const &content_name) const
MCAPI void $SetDataChannelEventObserver(::std::unique_ptr<::webrtc::DataChannelEventObserverInterface > observer)
static MCAPI void ** $vftable()
MCAPI ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::RtpSenderInterface > > $AddTrack(::webrtc::scoped_refptr<::webrtc::MediaStreamTrackInterface > track, ::std::vector<::std::string > const &stream_ids, ::std::vector<::webrtc::RtpEncodingParameters > const &init_send_encodings)
MCAPI::webrtc::SessionDescriptionInterface const * $pending_local_description() const
MCAPI ::std::vector<::webrtc::DataChannelStats > $GetDataChannelStats() const
MCAPI::webrtc::RTCError $SetConfiguration(::webrtc::PeerConnectionInterface::RTCConfiguration const &configuration)
MCAPI::webrtc::Thread * $worker_thread() const
static MCAPI ::webrtc::scoped_refptr<::webrtc::PeerConnection > Create(::webrtc::Environment const &env, ::webrtc::scoped_refptr<::webrtc::ConnectionContext > context, ::webrtc::PeerConnectionFactoryInterface::Options const &options, ::std::unique_ptr<::webrtc::Call > call, ::webrtc::PeerConnectionInterface::RTCConfiguration const &configuration, ::webrtc::PeerConnectionDependencies &dependencies, ::std::set<::webrtc::SocketAddress > const &stun_servers, ::std::vector<::webrtc::RelayServerConfig > const &turn_servers)
MCAPI bool $IsUnifiedPlan() const
MCAPI bool $GetLocalCertificate(::std::string const &transport_name, ::webrtc::scoped_refptr<::webrtc::RTCCertificate > *certificate)
MCAPI void TeardownDataChannelTransport_n(::webrtc::RTCError error)
MCAPI ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::RtpTransceiverInterface > > $AddTransceiver(::webrtc::MediaType media_type, ::webrtc::scoped_refptr<::webrtc::MediaStreamTrackInterface > track, ::webrtc::RtpTransceiverInit const &init, bool update_negotiation_needed)
MCAPI ::std::optional<::std::string > $sctp_transport_name() const
MCAPI::webrtc::PeerConnectionInterface::IceConnectionState $standardized_ice_connection_state()
MCAPI void * $ctor(::webrtc::PeerConnectionInterface::RTCConfiguration const &configuration, ::webrtc::Environment const &env, ::webrtc::scoped_refptr<::webrtc::ConnectionContext > context, ::webrtc::PeerConnectionFactoryInterface::Options const &options, bool is_unified_plan, ::std::unique_ptr<::webrtc::Call > call, ::webrtc::PeerConnectionDependencies &dependencies, ::std::set<::webrtc::SocketAddress > const &stun_servers, ::std::vector<::webrtc::RelayServerConfig > const &turn_servers, bool dtls_enabled)
MCAPI::webrtc::PortAllocator * $port_allocator()
static MCAPI void ** $vftableForPeerConnectionInterface()
MCAPI void $ReportSdpBundleUsage(::webrtc::SessionDescriptionInterface const &remote_description)
MCAPI void ReportFirstConnectUsageMetrics()
MCAPI bool $IsClosed() const
MCAPI ::std::vector<::webrtc::scoped_refptr<::webrtc::RtpSenderInterface > > $GetSenders() const
MCAPI bool $AddStream(::webrtc::MediaStreamInterface *local_stream)
MCAPI::webrtc::SessionDescriptionInterface const * $current_local_description() const
MCAPI ::std::vector<::webrtc::CandidateStats > $GetPooledCandidateStats() const
MCAPI::webrtc::PeerConnectionInterface::SignalingState $signaling_state()
MCAPI::webrtc::LegacyStatsCollector * $legacy_stats()
MCAPI::webrtc::JsepTransportController * $transport_controller_s()
MCAPI::webrtc::SessionDescriptionInterface const * $current_remote_description() const
MCAPI bool $StartRtcEventLog(::std::unique_ptr<::webrtc::RtcEventLogOutput > output)
MCAPI::webrtc::PeerConnection::InitializePortAllocatorResult InitializePortAllocator_n(::std::set<::webrtc::SocketAddress > const &stun_servers, ::std::vector<::webrtc::RelayServerConfig > const &turn_servers, ::std::vector<::std::shared_ptr<::webrtc::StaticStunServer const > > const &static_stun_servers, ::webrtc::PeerConnectionInterface::RTCConfiguration const &configuration)
MCAPI bool $GetSslRole(::std::string const &content_name, ::webrtc::SSLRole *role)
MCAPI ::std::optional<::std::string > SetupDataChannelTransport_n(::std::string_view mid)
MCAPI void $ClearStatsCache()
MCAPI::webrtc::RtpTransmissionManager const * $rtp_manager() const
MCAPI ::webrtc::scoped_refptr<::webrtc::RtpSenderInterface > $CreateSender(::std::string const &kind, ::std::string const &stream_id)
MCAPI void $GetStats(::webrtc::scoped_refptr<::webrtc::RtpReceiverInterface > selector, ::webrtc::scoped_refptr<::webrtc::RTCStatsCollectorCallback > callback)
MCAPI void $RemoveStream(::webrtc::MediaStreamInterface *local_stream)
MCAPI::webrtc::CryptoOptions $GetCryptoOptions()
MCAPI void $RunWithObserver(::absl::AnyInvocable< void(::webrtc::PeerConnectionObserver *) && > task)
MCAPI bool $ShouldFireNegotiationNeededEvent(uint event_id)
MCAPI::webrtc::Call * $call_ptr()
MCAPI void OnTransportControllerConnectionState(::webrtc::IceConnectionState state)
MCAPI bool $OnTransportChanged(::std::string const &mid, ::webrtc::RtpTransportInternal *rtp_transport, ::webrtc::scoped_refptr<::webrtc::DtlsTransport > dtls_transport, ::webrtc::DataChannelTransportInterface *data_channel_transport)
MCAPI::webrtc::DataChannelController * $data_channel_controller()
MCAPI void $AddAdaptationResource(::webrtc::scoped_refptr<::webrtc::Resource > resource)
MCAPI ::std::optional< bool > $can_trickle_ice_candidates()
MCAPI::webrtc::PeerConnectionInterface::RTCConfiguration const * $configuration() const
MCAPI::webrtc::PeerConnectionInterface::RTCConfiguration $GetConfiguration()
MCAPI void $SetIceConnectionState(::webrtc::PeerConnectionInterface::IceConnectionState new_state)
MCAPI void $CreateAnswer(::webrtc::CreateSessionDescriptionObserver *observer, ::webrtc::PeerConnectionInterface::RTCOfferAnswerOptions const &options)
MCAPI ::std::vector<::webrtc::scoped_refptr<::webrtc::RtpTransceiverProxyWithInternal<::webrtc::RtpTransceiver > > > $GetTransceiversInternal() const
MCAPI ::webrtc::scoped_refptr<::webrtc::DtlsTransportInterface > $LookupDtlsTransportByMid(::std::string const &mid)
MCAPI ::std::optional<::std::string > $sctp_mid() const
MCAPI::webrtc::PeerConnectionFactoryInterface::Options const * $options() const
MCAPI ::webrtc::scoped_refptr<::webrtc::RtpTransceiverProxyWithInternal<::webrtc::RtpTransceiver > > FindTransceiverBySender(::webrtc::scoped_refptr<::webrtc::RtpSenderInterface > sender)
MCAPI::webrtc::PayloadTypePicker & $payload_type_picker()
MCAPI::webrtc::RTCError $StartSctpTransport(::webrtc::SctpOptions const &options)
Definition PortAllocator.h:26
Definition RTCCertificate.h:18
Definition RTCErrorOr.h:8
Definition RTCError.h:10
Definition RTCStatsCollectorCallback.h:16
Definition Resource.h:15
Definition RtcEventLogOutput.h:7
Definition RtpReceiverInterface.h:25
Definition RtpSenderInterface.h:28
Definition RtpTransceiverInterface.h:23
Definition RtpTransceiverProxyWithInternal.h:8
Definition RtpTransceiver.h:40
Definition RtpTransmissionManager.h:40
Definition RtpTransportInternal.h:21
Definition SSLCertChain.h:13
Definition SctpTransportInterface.h:18
Definition SessionDescriptionInterface.h:17
Definition SessionDescription.h:18
Definition SetLocalDescriptionObserverInterface.h:15
Definition SetRemoteDescriptionObserverInterface.h:15
Definition SetSessionDescriptionObserver.h:15
Definition SocketAddress.h:15
Definition StaticStunServer.h:12
Definition StatsObserver.h:15
Definition StreamCollectionInterface.h:16
Definition Thread.h:20
Definition scoped_refptr.h:8
STL namespace.
Definition context.h:5
Definition Alias.h:14
Definition BandwidthEstimationSettings.h:7
Definition BitrateSettings.h:7
Definition CryptoOptions.h:12
Definition DataChannelInit.h:7
Definition DataChannelStats.h:7
Definition PeerConnectionDependencies.h:12
Definition PeerConnectionInterface.h:200
Definition PeerConnectionInterface.h:284
Definition RelayServerConfig.h:15
Definition RtpEncodingParameters.h:7
Definition RtpTransceiverInit.h:7
Definition SctpOptions.h:7
Definition TransportStats.h:7