Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(368)

Side by Side Diff: webrtc/api/peerconnection.h

Issue 1930463002: Replace scoped_ptr with unique_ptr in webrtc/api/ (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « webrtc/api/mediastreamprovider.h ('k') | webrtc/api/peerconnection.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2012 The WebRTC project authors. All Rights Reserved. 2 * Copyright 2012 The WebRTC project authors. All Rights Reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
11 #ifndef WEBRTC_API_PEERCONNECTION_H_ 11 #ifndef WEBRTC_API_PEERCONNECTION_H_
12 #define WEBRTC_API_PEERCONNECTION_H_ 12 #define WEBRTC_API_PEERCONNECTION_H_
13 13
14 #include <string> 14 #include <string>
15 #include <map> 15 #include <map>
16 #include <memory>
16 #include <vector> 17 #include <vector>
17 18
18 #include "webrtc/api/dtlsidentitystore.h" 19 #include "webrtc/api/dtlsidentitystore.h"
19 #include "webrtc/api/peerconnectionfactory.h" 20 #include "webrtc/api/peerconnectionfactory.h"
20 #include "webrtc/api/peerconnectioninterface.h" 21 #include "webrtc/api/peerconnectioninterface.h"
21 #include "webrtc/api/rtpreceiverinterface.h" 22 #include "webrtc/api/rtpreceiverinterface.h"
22 #include "webrtc/api/rtpsenderinterface.h" 23 #include "webrtc/api/rtpsenderinterface.h"
23 #include "webrtc/api/statscollector.h" 24 #include "webrtc/api/statscollector.h"
24 #include "webrtc/api/streamcollection.h" 25 #include "webrtc/api/streamcollection.h"
25 #include "webrtc/api/webrtcsession.h" 26 #include "webrtc/api/webrtcsession.h"
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
62 // It uses WebRtcSession to implement the PeerConnection functionality. 63 // It uses WebRtcSession to implement the PeerConnection functionality.
63 class PeerConnection : public PeerConnectionInterface, 64 class PeerConnection : public PeerConnectionInterface,
64 public IceObserver, 65 public IceObserver,
65 public rtc::MessageHandler, 66 public rtc::MessageHandler,
66 public sigslot::has_slots<> { 67 public sigslot::has_slots<> {
67 public: 68 public:
68 explicit PeerConnection(PeerConnectionFactory* factory); 69 explicit PeerConnection(PeerConnectionFactory* factory);
69 70
70 bool Initialize( 71 bool Initialize(
71 const PeerConnectionInterface::RTCConfiguration& configuration, 72 const PeerConnectionInterface::RTCConfiguration& configuration,
72 rtc::scoped_ptr<cricket::PortAllocator> allocator, 73 std::unique_ptr<cricket::PortAllocator> allocator,
73 rtc::scoped_ptr<DtlsIdentityStoreInterface> dtls_identity_store, 74 std::unique_ptr<DtlsIdentityStoreInterface> dtls_identity_store,
74 PeerConnectionObserver* observer); 75 PeerConnectionObserver* observer);
75 76
76 rtc::scoped_refptr<StreamCollectionInterface> local_streams() override; 77 rtc::scoped_refptr<StreamCollectionInterface> local_streams() override;
77 rtc::scoped_refptr<StreamCollectionInterface> remote_streams() override; 78 rtc::scoped_refptr<StreamCollectionInterface> remote_streams() override;
78 bool AddStream(MediaStreamInterface* local_stream) override; 79 bool AddStream(MediaStreamInterface* local_stream) override;
79 void RemoveStream(MediaStreamInterface* local_stream) override; 80 void RemoveStream(MediaStreamInterface* local_stream) override;
80 81
81 rtc::scoped_refptr<RtpSenderInterface> AddTrack( 82 rtc::scoped_refptr<RtpSenderInterface> AddTrack(
82 MediaStreamTrackInterface* track, 83 MediaStreamTrackInterface* track,
83 std::vector<MediaStreamInterface*> streams) override; 84 std::vector<MediaStreamInterface*> streams) override;
(...skipping 274 matching lines...) Expand 10 before | Expand all | Expand 10 after
358 // will refer to the same reference count. 359 // will refer to the same reference count.
359 rtc::scoped_refptr<PeerConnectionFactory> factory_; 360 rtc::scoped_refptr<PeerConnectionFactory> factory_;
360 PeerConnectionObserver* observer_; 361 PeerConnectionObserver* observer_;
361 UMAObserver* uma_observer_; 362 UMAObserver* uma_observer_;
362 SignalingState signaling_state_; 363 SignalingState signaling_state_;
363 // TODO(bemasc): Remove ice_state_. 364 // TODO(bemasc): Remove ice_state_.
364 IceState ice_state_; 365 IceState ice_state_;
365 IceConnectionState ice_connection_state_; 366 IceConnectionState ice_connection_state_;
366 IceGatheringState ice_gathering_state_; 367 IceGatheringState ice_gathering_state_;
367 368
368 rtc::scoped_ptr<cricket::PortAllocator> port_allocator_; 369 std::unique_ptr<cricket::PortAllocator> port_allocator_;
369 rtc::scoped_ptr<MediaControllerInterface> media_controller_; 370 std::unique_ptr<MediaControllerInterface> media_controller_;
370 371
371 // Streams added via AddStream. 372 // Streams added via AddStream.
372 rtc::scoped_refptr<StreamCollection> local_streams_; 373 rtc::scoped_refptr<StreamCollection> local_streams_;
373 // Streams created as a result of SetRemoteDescription. 374 // Streams created as a result of SetRemoteDescription.
374 rtc::scoped_refptr<StreamCollection> remote_streams_; 375 rtc::scoped_refptr<StreamCollection> remote_streams_;
375 376
376 std::vector<rtc::scoped_ptr<MediaStreamObserver>> stream_observers_; 377 std::vector<std::unique_ptr<MediaStreamObserver>> stream_observers_;
377 378
378 // These lists store track info seen in local/remote descriptions. 379 // These lists store track info seen in local/remote descriptions.
379 TrackInfos remote_audio_tracks_; 380 TrackInfos remote_audio_tracks_;
380 TrackInfos remote_video_tracks_; 381 TrackInfos remote_video_tracks_;
381 TrackInfos local_audio_tracks_; 382 TrackInfos local_audio_tracks_;
382 TrackInfos local_video_tracks_; 383 TrackInfos local_video_tracks_;
383 384
384 SctpSidAllocator sid_allocator_; 385 SctpSidAllocator sid_allocator_;
385 // label -> DataChannel 386 // label -> DataChannel
386 std::map<std::string, rtc::scoped_refptr<DataChannel>> rtp_data_channels_; 387 std::map<std::string, rtc::scoped_refptr<DataChannel>> rtp_data_channels_;
387 std::vector<rtc::scoped_refptr<DataChannel>> sctp_data_channels_; 388 std::vector<rtc::scoped_refptr<DataChannel>> sctp_data_channels_;
388 std::vector<rtc::scoped_refptr<DataChannel>> sctp_data_channels_to_free_; 389 std::vector<rtc::scoped_refptr<DataChannel>> sctp_data_channels_to_free_;
389 390
390 bool remote_peer_supports_msid_ = false; 391 bool remote_peer_supports_msid_ = false;
391 392
392 std::vector<rtc::scoped_refptr<RtpSenderInterface>> senders_; 393 std::vector<rtc::scoped_refptr<RtpSenderInterface>> senders_;
393 std::vector<rtc::scoped_refptr<RtpReceiverInterface>> receivers_; 394 std::vector<rtc::scoped_refptr<RtpReceiverInterface>> receivers_;
394 395
395 // The session_ scoped_ptr is declared at the bottom of PeerConnection 396 // The session_ unique_ptr is declared at the bottom of PeerConnection
396 // because its destruction fires signals (such as VoiceChannelDestroyed) 397 // because its destruction fires signals (such as VoiceChannelDestroyed)
397 // which will trigger some final actions in PeerConnection... 398 // which will trigger some final actions in PeerConnection...
398 rtc::scoped_ptr<WebRtcSession> session_; 399 std::unique_ptr<WebRtcSession> session_;
399 // ... But stats_ depends on session_ so it should be destroyed even earlier. 400 // ... But stats_ depends on session_ so it should be destroyed even earlier.
400 rtc::scoped_ptr<StatsCollector> stats_; 401 std::unique_ptr<StatsCollector> stats_;
401 }; 402 };
402 403
403 } // namespace webrtc 404 } // namespace webrtc
404 405
405 #endif // WEBRTC_API_PEERCONNECTION_H_ 406 #endif // WEBRTC_API_PEERCONNECTION_H_
OLDNEW
« no previous file with comments | « webrtc/api/mediastreamprovider.h ('k') | webrtc/api/peerconnection.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698