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

Side by Side Diff: talk/app/webrtc/webrtcsession.h

Issue 1671173002: Track pending ICE restarts independently for different media sections. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Revising some comments. Created 4 years, 10 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 | « no previous file | talk/app/webrtc/webrtcsession.cc » ('j') | talk/app/webrtc/webrtcsession.cc » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * libjingle 2 * libjingle
3 * Copyright 2012 Google Inc. 3 * Copyright 2012 Google Inc.
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met: 6 * modification, are permitted provided that the following conditions are met:
7 * 7 *
8 * 1. Redistributions of source code must retain the above copyright notice, 8 * 1. Redistributions of source code must retain the above copyright notice,
9 * this list of conditions and the following disclaimer. 9 * this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright notice, 10 * 2. Redistributions in binary form must reproduce the above copyright notice,
(...skipping 283 matching lines...) Expand 10 before | Expand all | Expand 10 after
294 virtual bool GetLocalCertificate( 294 virtual bool GetLocalCertificate(
295 const std::string& transport_name, 295 const std::string& transport_name,
296 rtc::scoped_refptr<rtc::RTCCertificate>* certificate); 296 rtc::scoped_refptr<rtc::RTCCertificate>* certificate);
297 297
298 // Caller owns returned certificate 298 // Caller owns returned certificate
299 virtual bool GetRemoteSSLCertificate(const std::string& transport_name, 299 virtual bool GetRemoteSSLCertificate(const std::string& transport_name,
300 rtc::SSLCertificate** cert); 300 rtc::SSLCertificate** cert);
301 301
302 cricket::DataChannelType data_channel_type() const; 302 cricket::DataChannelType data_channel_type() const;
303 303
304 bool IceRestartPending() const; 304 // TODO(deadbeef): Replace these with:
305 305 // bool IceRestartPending(const std::string& mid) const;
honghaiz3 2016/02/10 01:01:48 Does this need a lot of work? If not, maybe it can
Taylor Brandstetter 2016/02/10 21:18:32 I couldn't do this before because there was an iss
306 void ResetIceRestartLatch(); 306 bool AudioIceRestartPending() const;
307 bool VideoIceRestartPending() const;
308 bool DataIceRestartPending() const;
307 309
308 // Called when an RTCCertificate is generated or retrieved by 310 // Called when an RTCCertificate is generated or retrieved by
309 // WebRTCSessionDescriptionFactory. Should happen before setLocalDescription. 311 // WebRTCSessionDescriptionFactory. Should happen before setLocalDescription.
310 void OnCertificateReady( 312 void OnCertificateReady(
311 const rtc::scoped_refptr<rtc::RTCCertificate>& certificate); 313 const rtc::scoped_refptr<rtc::RTCCertificate>& certificate);
312 void OnDtlsSetupFailure(cricket::BaseChannel*, bool rtcp); 314 void OnDtlsSetupFailure(cricket::BaseChannel*, bool rtcp);
313 315
314 // For unit test. 316 // For unit test.
315 bool waiting_for_certificate_for_testing() const; 317 bool waiting_for_certificate_for_testing() const;
316 const rtc::scoped_refptr<rtc::RTCCertificate>& certificate_for_testing(); 318 const rtc::scoped_refptr<rtc::RTCCertificate>& certificate_for_testing();
(...skipping 179 matching lines...) Expand 10 before | Expand all | Expand 10 after
496 bool older_version_remote_peer_; 498 bool older_version_remote_peer_;
497 bool dtls_enabled_; 499 bool dtls_enabled_;
498 // Specifies which kind of data channel is allowed. This is controlled 500 // Specifies which kind of data channel is allowed. This is controlled
499 // by the chrome command-line flag and constraints: 501 // by the chrome command-line flag and constraints:
500 // 1. If chrome command-line switch 'enable-sctp-data-channels' is enabled, 502 // 1. If chrome command-line switch 'enable-sctp-data-channels' is enabled,
501 // constraint kEnableDtlsSrtp is true, and constaint kEnableRtpDataChannels is 503 // constraint kEnableDtlsSrtp is true, and constaint kEnableRtpDataChannels is
502 // not set or false, SCTP is allowed (DCT_SCTP); 504 // not set or false, SCTP is allowed (DCT_SCTP);
503 // 2. If constraint kEnableRtpDataChannels is true, RTP is allowed (DCT_RTP); 505 // 2. If constraint kEnableRtpDataChannels is true, RTP is allowed (DCT_RTP);
504 // 3. If both 1&2 are false, data channel is not allowed (DCT_NONE). 506 // 3. If both 1&2 are false, data channel is not allowed (DCT_NONE).
505 cricket::DataChannelType data_channel_type_; 507 cricket::DataChannelType data_channel_type_;
506 rtc::scoped_ptr<IceRestartAnswerLatch> ice_restart_latch_; 508 rtc::scoped_ptr<IceRestartAnswerLatch> audio_ice_restart_latch_;
509 rtc::scoped_ptr<IceRestartAnswerLatch> video_ice_restart_latch_;
510 rtc::scoped_ptr<IceRestartAnswerLatch> data_ice_restart_latch_;
507 511
508 rtc::scoped_ptr<WebRtcSessionDescriptionFactory> 512 rtc::scoped_ptr<WebRtcSessionDescriptionFactory>
509 webrtc_session_desc_factory_; 513 webrtc_session_desc_factory_;
510 514
511 // Member variables for caching global options. 515 // Member variables for caching global options.
512 cricket::AudioOptions audio_options_; 516 cricket::AudioOptions audio_options_;
513 cricket::VideoOptions video_options_; 517 cricket::VideoOptions video_options_;
514 MetricsObserverInterface* metrics_observer_; 518 MetricsObserverInterface* metrics_observer_;
515 519
516 // Declares the bundle policy for the WebRTCSession. 520 // Declares the bundle policy for the WebRTCSession.
517 PeerConnectionInterface::BundlePolicy bundle_policy_; 521 PeerConnectionInterface::BundlePolicy bundle_policy_;
518 522
519 // Declares the RTCP mux policy for the WebRTCSession. 523 // Declares the RTCP mux policy for the WebRTCSession.
520 PeerConnectionInterface::RtcpMuxPolicy rtcp_mux_policy_; 524 PeerConnectionInterface::RtcpMuxPolicy rtcp_mux_policy_;
521 525
522 RTC_DISALLOW_COPY_AND_ASSIGN(WebRtcSession); 526 RTC_DISALLOW_COPY_AND_ASSIGN(WebRtcSession);
523 }; 527 };
524 } // namespace webrtc 528 } // namespace webrtc
525 529
526 #endif // TALK_APP_WEBRTC_WEBRTCSESSION_H_ 530 #endif // TALK_APP_WEBRTC_WEBRTCSESSION_H_
OLDNEW
« no previous file with comments | « no previous file | talk/app/webrtc/webrtcsession.cc » ('j') | talk/app/webrtc/webrtcsession.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698