From 40a355a42d4a9444dc753c04c6608dade2f06a23 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Fri, 19 Apr 2024 03:13:27 +0200 Subject: Adding upstream version 125.0.1. Signed-off-by: Daniel Baumann --- third_party/libwebrtc/pc/connection_context.h | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) (limited to 'third_party/libwebrtc/pc/connection_context.h') diff --git a/third_party/libwebrtc/pc/connection_context.h b/third_party/libwebrtc/pc/connection_context.h index 399e7c2b45..893a3b0e52 100644 --- a/third_party/libwebrtc/pc/connection_context.h +++ b/third_party/libwebrtc/pc/connection_context.h @@ -15,6 +15,7 @@ #include #include "api/call/call_factory_interface.h" +#include "api/environment/environment.h" #include "api/field_trials_view.h" #include "api/media_stream_interface.h" #include "api/peer_connection_interface.h" @@ -39,8 +40,6 @@ class UniqueRandomIdGenerator; namespace webrtc { -class RtcEventLog; - // This class contains resources needed by PeerConnection and associated // objects. A reference to this object is passed to each PeerConnection. The // methods on this object are assumed not to change the state in any way that @@ -54,6 +53,7 @@ class ConnectionContext final // The Dependencies class allows simple management of all new dependencies // being added to the ConnectionContext. static rtc::scoped_refptr Create( + const Environment& env, PeerConnectionFactoryDependencies* dependencies); // This class is not copyable or movable. @@ -76,11 +76,16 @@ class ConnectionContext final rtc::Thread* network_thread() { return network_thread_; } const rtc::Thread* network_thread() const { return network_thread_; } + // Environment associated with the PeerConnectionFactory. + // Note: environments are different for different PeerConnections, + // but they are not supposed to change after creating the PeerConnection. + const Environment& env() const { return env_; } + // Field trials associated with the PeerConnectionFactory. // Note: that there can be different field trials for different // PeerConnections (but they are not supposed change after creating the // PeerConnection). - const FieldTrialsView& field_trials() const { return *trials_.get(); } + const FieldTrialsView& field_trials() const { return env_.field_trials(); } // Accessors only used from the PeerConnectionFactory class rtc::NetworkManager* default_network_manager() { @@ -91,7 +96,7 @@ class ConnectionContext final RTC_DCHECK_RUN_ON(signaling_thread_); return default_socket_factory_.get(); } - CallFactoryInterface* call_factory() { + MediaFactory* call_factory() { RTC_DCHECK_RUN_ON(worker_thread()); return call_factory_.get(); } @@ -106,7 +111,8 @@ class ConnectionContext final void set_use_rtx(bool use_rtx) { use_rtx_ = use_rtx; } protected: - explicit ConnectionContext(PeerConnectionFactoryDependencies* dependencies); + ConnectionContext(const Environment& env, + PeerConnectionFactoryDependencies* dependencies); friend class rtc::RefCountedNonVirtual; ~ConnectionContext(); @@ -122,8 +128,7 @@ class ConnectionContext final AlwaysValidPointer const worker_thread_; rtc::Thread* const signaling_thread_; - // Accessed both on signaling thread and worker thread. - std::unique_ptr const trials_; + const Environment env_; // This object is const over the lifetime of the ConnectionContext, and is // only altered in the destructor. @@ -138,7 +143,7 @@ class ConnectionContext final RTC_GUARDED_BY(signaling_thread_); std::unique_ptr default_network_manager_ RTC_GUARDED_BY(signaling_thread_); - std::unique_ptr const call_factory_ + std::unique_ptr const call_factory_ RTC_GUARDED_BY(worker_thread()); std::unique_ptr default_socket_factory_ -- cgit v1.2.3