Add thread safety annotations for some more PeerConnection members (part 4)
Plus all the annotations that were necessary to make things compile again. Bug: webrtc:9987 Change-Id: Ia421e4dc0e1bbc81c3976cc7530d44de934d33bb Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/128882 Reviewed-by: Steve Anton <steveanton@webrtc.org> Commit-Queue: Karl Wiberg <kwiberg@webrtc.org> Cr-Commit-Position: refs/heads/master@{#27257}
This commit is contained in:
@ -246,6 +246,7 @@ class PeerConnection : public PeerConnectionInternal,
|
||||
|
||||
std::vector<rtc::scoped_refptr<DataChannel>> sctp_data_channels()
|
||||
const override {
|
||||
RTC_DCHECK_RUN_ON(signaling_thread());
|
||||
return sctp_data_channels_;
|
||||
}
|
||||
|
||||
@ -594,17 +595,18 @@ class PeerConnection : public PeerConnectionInternal,
|
||||
absl::optional<size_t>* audio_index,
|
||||
absl::optional<size_t>* video_index,
|
||||
absl::optional<size_t>* data_index,
|
||||
cricket::MediaSessionOptions* session_options);
|
||||
cricket::MediaSessionOptions* session_options)
|
||||
RTC_RUN_ON(signaling_thread());
|
||||
|
||||
// Generates the active MediaDescriptionOptions for the local data channel
|
||||
// given the specified MID.
|
||||
cricket::MediaDescriptionOptions GetMediaDescriptionOptionsForActiveData(
|
||||
const std::string& mid) const;
|
||||
const std::string& mid) const RTC_RUN_ON(signaling_thread());
|
||||
|
||||
// Generates the rejected MediaDescriptionOptions for the local data channel
|
||||
// given the specified MID.
|
||||
cricket::MediaDescriptionOptions GetMediaDescriptionOptionsForRejectedData(
|
||||
const std::string& mid) const;
|
||||
const std::string& mid) const RTC_RUN_ON(signaling_thread());
|
||||
|
||||
// Returns the MID for the data section associated with either the
|
||||
// RtpDataChannel or SCTP data channel, if it has been set. If no data
|
||||
@ -672,12 +674,13 @@ class PeerConnection : public PeerConnectionInternal,
|
||||
void OnLocalSenderRemoved(const RtpSenderInfo& sender_info,
|
||||
cricket::MediaType media_type);
|
||||
|
||||
void UpdateLocalRtpDataChannels(const cricket::StreamParamsVec& streams);
|
||||
void UpdateLocalRtpDataChannels(const cricket::StreamParamsVec& streams)
|
||||
RTC_RUN_ON(signaling_thread());
|
||||
void UpdateRemoteRtpDataChannels(const cricket::StreamParamsVec& streams)
|
||||
RTC_RUN_ON(signaling_thread());
|
||||
void UpdateClosingRtpDataChannels(
|
||||
const std::vector<std::string>& active_channels,
|
||||
bool is_local_update);
|
||||
bool is_local_update) RTC_RUN_ON(signaling_thread());
|
||||
void CreateRemoteRtpDataChannel(const std::string& label,
|
||||
uint32_t remote_ssrc)
|
||||
RTC_RUN_ON(signaling_thread());
|
||||
@ -689,12 +692,13 @@ class PeerConnection : public PeerConnectionInternal,
|
||||
const InternalDataChannelInit* config) RTC_RUN_ON(signaling_thread());
|
||||
|
||||
// Checks if any data channel has been added.
|
||||
bool HasDataChannels() const;
|
||||
bool HasDataChannels() const RTC_RUN_ON(signaling_thread());
|
||||
|
||||
void AllocateSctpSids(rtc::SSLRole role);
|
||||
void OnSctpDataChannelClosed(DataChannel* channel);
|
||||
void AllocateSctpSids(rtc::SSLRole role) RTC_RUN_ON(signaling_thread());
|
||||
void OnSctpDataChannelClosed(DataChannel* channel)
|
||||
RTC_RUN_ON(signaling_thread());
|
||||
|
||||
void OnDataChannelDestroyed();
|
||||
void OnDataChannelDestroyed() RTC_RUN_ON(signaling_thread());
|
||||
// Called when a valid data channel OPEN message is received.
|
||||
void OnDataChannelOpenMessage(const std::string& label,
|
||||
const InternalDataChannelInit& config)
|
||||
@ -749,7 +753,8 @@ class PeerConnection : public PeerConnectionInternal,
|
||||
|
||||
// Returns the specified SCTP DataChannel in sctp_data_channels_,
|
||||
// or nullptr if not found.
|
||||
DataChannel* FindDataChannelBySid(int sid) const;
|
||||
DataChannel* FindDataChannelBySid(int sid) const
|
||||
RTC_RUN_ON(signaling_thread());
|
||||
|
||||
// Called when first configuring the port allocator.
|
||||
struct InitializePortAllocatorResult {
|
||||
@ -869,7 +874,7 @@ class PeerConnection : public PeerConnectionInternal,
|
||||
void EnableSending();
|
||||
|
||||
// Destroys all BaseChannels and destroys the SCTP data channel, if present.
|
||||
void DestroyAllChannels();
|
||||
void DestroyAllChannels() RTC_RUN_ON(signaling_thread());
|
||||
|
||||
// Returns the media index for a local ice candidate given the content name.
|
||||
// Returns false if the local session description does not have a media
|
||||
@ -1010,7 +1015,7 @@ class PeerConnection : public PeerConnectionInternal,
|
||||
transceiver);
|
||||
|
||||
// Destroys the RTP data channel and/or the SCTP data channel and clears it.
|
||||
void DestroyDataChannel();
|
||||
void DestroyDataChannel() RTC_RUN_ON(signaling_thread());
|
||||
|
||||
// Destroys the given ChannelInterface.
|
||||
// The channel cannot be accessed after this method is called.
|
||||
@ -1134,13 +1139,16 @@ class PeerConnection : public PeerConnectionInternal,
|
||||
std::vector<RtpSenderInfo> local_video_sender_infos_
|
||||
RTC_GUARDED_BY(signaling_thread());
|
||||
|
||||
SctpSidAllocator sid_allocator_;
|
||||
SctpSidAllocator sid_allocator_ RTC_GUARDED_BY(signaling_thread());
|
||||
// label -> DataChannel
|
||||
std::map<std::string, rtc::scoped_refptr<DataChannel>> rtp_data_channels_;
|
||||
std::vector<rtc::scoped_refptr<DataChannel>> sctp_data_channels_;
|
||||
std::vector<rtc::scoped_refptr<DataChannel>> sctp_data_channels_to_free_;
|
||||
std::map<std::string, rtc::scoped_refptr<DataChannel>> rtp_data_channels_
|
||||
RTC_GUARDED_BY(signaling_thread());
|
||||
std::vector<rtc::scoped_refptr<DataChannel>> sctp_data_channels_
|
||||
RTC_GUARDED_BY(signaling_thread());
|
||||
std::vector<rtc::scoped_refptr<DataChannel>> sctp_data_channels_to_free_
|
||||
RTC_GUARDED_BY(signaling_thread());
|
||||
|
||||
bool remote_peer_supports_msid_ = false;
|
||||
bool remote_peer_supports_msid_ RTC_GUARDED_BY(signaling_thread()) = false;
|
||||
|
||||
std::unique_ptr<Call> call_;
|
||||
std::unique_ptr<StatsCollector> stats_; // A pointer is passed to senders_
|
||||
|
||||
Reference in New Issue
Block a user