55 enum class SignalingState :
int {
58 KHaveLocalPrAnswer = 2,
60 KHaveRemotePrAnswer = 4,
64 enum class IceGatheringState :
int {
66 KIceGatheringGathering = 1,
67 KIceGatheringComplete = 2,
70 enum class PeerConnectionState :
int {
79 enum class IceConnectionState :
int {
80 KIceConnectionNew = 0,
81 KIceConnectionChecking = 1,
82 KIceConnectionConnected = 2,
83 KIceConnectionCompleted = 3,
84 KIceConnectionFailed = 4,
85 KIceConnectionDisconnected = 5,
86 KIceConnectionClosed = 6,
87 KIceConnectionMax = 7,
90 enum class TlsCertPolicy :
int {
91 KTlsCertPolicySecure = 0,
92 KTlsCertPolicyInsecureNoCheck = 1,
116 MCNAPI ::webrtc::PeerConnectionInterface::IceServer&
139 enum class IceTransportsType :
int {
146 enum class BundlePolicy :
int {
147 KBundlePolicyBalanced = 0,
148 KBundlePolicyMaxBundle = 1,
149 KBundlePolicyMaxCompat = 2,
152 enum class RtcpMuxPolicy :
int {
153 KRtcpMuxPolicyNegotiate = 0,
154 KRtcpMuxPolicyRequire = 1,
157 enum class TcpCandidatePolicy :
int {
158 KTcpCandidatePolicyEnabled = 0,
159 KTcpCandidatePolicyDisabled = 1,
162 enum class CandidateNetworkPolicy :
int {
163 KCandidateNetworkPolicyAll = 0,
164 KCandidateNetworkPolicyLowCost = 1,
167 enum class ContinualGatheringPolicy :
int {
188 enum class RTCConfigurationType :
int {
256 MCNAPI ::webrtc::PeerConnectionInterface::RTCConfiguration&
300 enum class StatsOutputLevel :
int {
301 KStatsOutputLevelStandard = 0,
302 KStatsOutputLevelDebug = 1,
309 virtual ::webrtc::scoped_refptr<::webrtc::StreamCollectionInterface> local_streams() = 0;
312 virtual ::webrtc::scoped_refptr<::webrtc::StreamCollectionInterface> remote_streams() = 0;
321 virtual ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::RtpSenderInterface>>
325 virtual ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::RtpSenderInterface>> AddTrack(
327 ::std::vector<::std::string>
const&,
328 ::std::vector<::webrtc::RtpEncodingParameters>
const&
335 virtual ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::RtpTransceiverInterface>>
339 virtual ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::RtpTransceiverInterface>> AddTransceiver(
345 virtual ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::RtpTransceiverInterface>>
346 AddTransceiver(::cricket::MediaType) = 0;
349 virtual ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::RtpTransceiverInterface>>
353 virtual ::webrtc::scoped_refptr<::webrtc::RtpSenderInterface>
354 CreateSender(::std::string
const&, ::std::string
const&) = 0;
357 virtual ::std::vector<::webrtc::scoped_refptr<::webrtc::RtpSenderInterface>> GetSenders()
const = 0;
360 virtual ::std::vector<::webrtc::scoped_refptr<::webrtc::RtpReceiverInterface>> GetReceivers()
const = 0;
363 virtual ::std::vector<::webrtc::scoped_refptr<::webrtc::RtpTransceiverInterface>> GetTransceivers()
const = 0;
366 virtual bool GetStats(
369 ::webrtc::PeerConnectionInterface::StatsOutputLevel
376 virtual void GetStats(
382 virtual void GetStats(
388 virtual void ClearStatsCache();
391 virtual ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::DataChannelInterface>>
395 virtual ::webrtc::scoped_refptr<::webrtc::DataChannelInterface>
399 virtual ::webrtc::SessionDescriptionInterface
const* local_description()
const = 0;
402 virtual ::webrtc::SessionDescriptionInterface
const* remote_description()
const = 0;
405 virtual ::webrtc::SessionDescriptionInterface
const* current_local_description()
const = 0;
408 virtual ::webrtc::SessionDescriptionInterface
const* current_remote_description()
const = 0;
411 virtual ::webrtc::SessionDescriptionInterface
const* pending_local_description()
const = 0;
414 virtual ::webrtc::SessionDescriptionInterface
const* pending_remote_description()
const = 0;
417 virtual void RestartIce() = 0;
420 virtual void CreateOffer(
426 virtual void CreateAnswer(
432 virtual void SetLocalDescription(
433 ::std::unique_ptr<::webrtc::SessionDescriptionInterface>,
448 virtual void SetRemoteDescription(
449 ::std::unique_ptr<::webrtc::SessionDescriptionInterface>,
457 virtual bool ShouldFireNegotiationNeededEvent(uint) = 0;
460 virtual ::webrtc::PeerConnectionInterface::RTCConfiguration GetConfiguration() = 0;
470 AddIceCandidate(::std::unique_ptr<::webrtc::IceCandidateInterface>, ::std::function<
void(
::webrtc::RTCError)>);
473 virtual bool RemoveIceCandidates(::std::vector<::cricket::Candidate>
const&) = 0;
482 virtual void SetAudioPlayout(
bool) = 0;
485 virtual void SetAudioRecording(
bool) = 0;
488 virtual ::webrtc::scoped_refptr<::webrtc::DtlsTransportInterface>
489 LookupDtlsTransportByMid(::std::string
const&) = 0;
492 virtual ::webrtc::scoped_refptr<::webrtc::SctpTransportInterface> GetSctpTransport()
const = 0;
495 virtual ::webrtc::PeerConnectionInterface::SignalingState signaling_state() = 0;
498 virtual ::webrtc::PeerConnectionInterface::IceConnectionState ice_connection_state() = 0;
501 virtual ::webrtc::PeerConnectionInterface::IceConnectionState standardized_ice_connection_state() = 0;
504 virtual ::webrtc::PeerConnectionInterface::PeerConnectionState peer_connection_state() = 0;
507 virtual ::webrtc::PeerConnectionInterface::IceGatheringState ice_gathering_state() = 0;
510 virtual ::std::optional<bool> can_trickle_ice_candidates() = 0;
516 virtual bool StartRtcEventLog(::std::unique_ptr<::webrtc::RtcEventLogOutput>, int64) = 0;
519 virtual bool StartRtcEventLog(::std::unique_ptr<::webrtc::RtcEventLogOutput>) = 0;
522 virtual void StopRtcEventLog() = 0;
525 virtual void Close() = 0;
528 virtual ::rtc::Thread* signaling_thread()
const = 0;
537 MCNAPI static ::std::string_view
AsString(::webrtc::PeerConnectionInterface::SignalingState);