OLD | NEW |
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 292 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
303 | 303 |
304 bool IceRestartPending() const; | 304 bool IceRestartPending() const; |
305 | 305 |
306 void ResetIceRestartLatch(); | 306 void ResetIceRestartLatch(); |
307 | 307 |
308 // Called when an RTCCertificate is generated or retrieved by | 308 // Called when an RTCCertificate is generated or retrieved by |
309 // WebRTCSessionDescriptionFactory. Should happen before setLocalDescription. | 309 // WebRTCSessionDescriptionFactory. Should happen before setLocalDescription. |
310 void OnCertificateReady( | 310 void OnCertificateReady( |
311 const rtc::scoped_refptr<rtc::RTCCertificate>& certificate); | 311 const rtc::scoped_refptr<rtc::RTCCertificate>& certificate); |
312 void OnDtlsSetupFailure(cricket::BaseChannel*, bool rtcp); | 312 void OnDtlsSetupFailure(cricket::BaseChannel*, bool rtcp); |
313 void OnChannelFirstPacketReceived(cricket::BaseChannel*); | |
314 | 313 |
315 // For unit test. | 314 // For unit test. |
316 bool waiting_for_certificate_for_testing() const; | 315 bool waiting_for_certificate_for_testing() const; |
317 const rtc::scoped_refptr<rtc::RTCCertificate>& certificate_for_testing(); | 316 const rtc::scoped_refptr<rtc::RTCCertificate>& certificate_for_testing(); |
318 | 317 |
319 void set_metrics_observer( | 318 void set_metrics_observer( |
320 webrtc::MetricsObserverInterface* metrics_observer) { | 319 webrtc::MetricsObserverInterface* metrics_observer) { |
321 metrics_observer_ = metrics_observer; | 320 metrics_observer_ = metrics_observer; |
322 } | 321 } |
323 | 322 |
324 // Called when voice_channel_, video_channel_ and data_channel_ are created | 323 // Called when voice_channel_, video_channel_ and data_channel_ are created |
325 // and destroyed. As a result of, for example, setting a new description. | 324 // and destroyed. As a result of, for example, setting a new description. |
326 sigslot::signal0<> SignalVoiceChannelCreated; | 325 sigslot::signal0<> SignalVoiceChannelCreated; |
327 sigslot::signal0<> SignalVoiceChannelDestroyed; | 326 sigslot::signal0<> SignalVoiceChannelDestroyed; |
328 sigslot::signal0<> SignalVideoChannelCreated; | 327 sigslot::signal0<> SignalVideoChannelCreated; |
329 sigslot::signal0<> SignalVideoChannelDestroyed; | 328 sigslot::signal0<> SignalVideoChannelDestroyed; |
330 sigslot::signal0<> SignalDataChannelCreated; | 329 sigslot::signal0<> SignalDataChannelCreated; |
331 sigslot::signal0<> SignalDataChannelDestroyed; | 330 sigslot::signal0<> SignalDataChannelDestroyed; |
332 | 331 |
333 // Called when a valid data channel OPEN message is received. | 332 // Called when a valid data channel OPEN message is received. |
334 // std::string represents the data channel label. | 333 // std::string represents the data channel label. |
335 sigslot::signal2<const std::string&, const InternalDataChannelInit&> | 334 sigslot::signal2<const std::string&, const InternalDataChannelInit&> |
336 SignalDataChannelOpenMessage; | 335 SignalDataChannelOpenMessage; |
337 | 336 |
338 // Called when the first RTP packet is received. | |
339 sigslot::signal0<> SignalFirstMediaPacketReceived; | |
340 | |
341 private: | 337 private: |
342 // Indicates the type of SessionDescription in a call to SetLocalDescription | 338 // Indicates the type of SessionDescription in a call to SetLocalDescription |
343 // and SetRemoteDescription. | 339 // and SetRemoteDescription. |
344 enum Action { | 340 enum Action { |
345 kOffer, | 341 kOffer, |
346 kPrAnswer, | 342 kPrAnswer, |
347 kAnswer, | 343 kAnswer, |
348 }; | 344 }; |
349 | 345 |
350 // Log session state. | 346 // Log session state. |
(...skipping 163 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
514 cricket::AudioOptions audio_options_; | 510 cricket::AudioOptions audio_options_; |
515 cricket::VideoOptions video_options_; | 511 cricket::VideoOptions video_options_; |
516 MetricsObserverInterface* metrics_observer_; | 512 MetricsObserverInterface* metrics_observer_; |
517 | 513 |
518 // Declares the bundle policy for the WebRTCSession. | 514 // Declares the bundle policy for the WebRTCSession. |
519 PeerConnectionInterface::BundlePolicy bundle_policy_; | 515 PeerConnectionInterface::BundlePolicy bundle_policy_; |
520 | 516 |
521 // Declares the RTCP mux policy for the WebRTCSession. | 517 // Declares the RTCP mux policy for the WebRTCSession. |
522 PeerConnectionInterface::RtcpMuxPolicy rtcp_mux_policy_; | 518 PeerConnectionInterface::RtcpMuxPolicy rtcp_mux_policy_; |
523 | 519 |
524 bool has_received_media_packet_ = false; | |
525 | |
526 RTC_DISALLOW_COPY_AND_ASSIGN(WebRtcSession); | 520 RTC_DISALLOW_COPY_AND_ASSIGN(WebRtcSession); |
527 }; | 521 }; |
528 } // namespace webrtc | 522 } // namespace webrtc |
529 | 523 |
530 #endif // TALK_APP_WEBRTC_WEBRTCSESSION_H_ | 524 #endif // TALK_APP_WEBRTC_WEBRTCSESSION_H_ |
OLD | NEW |