Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 /* | 1 /* |
| 2 * Copyright 2016 The WebRTC Project Authors. All rights reserved. | 2 * Copyright 2016 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 |
| (...skipping 412 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 423 rtc::Bind(&RTCStatsCollector::ProducePartialResultsOnNetworkThread, | 423 rtc::Bind(&RTCStatsCollector::ProducePartialResultsOnNetworkThread, |
| 424 rtc::scoped_refptr<RTCStatsCollector>(this), timestamp_us)); | 424 rtc::scoped_refptr<RTCStatsCollector>(this), timestamp_us)); |
| 425 } | 425 } |
| 426 } | 426 } |
| 427 | 427 |
| 428 void RTCStatsCollector::ClearCachedStatsReport() { | 428 void RTCStatsCollector::ClearCachedStatsReport() { |
| 429 RTC_DCHECK(signaling_thread_->IsCurrent()); | 429 RTC_DCHECK(signaling_thread_->IsCurrent()); |
| 430 cached_report_ = nullptr; | 430 cached_report_ = nullptr; |
| 431 } | 431 } |
| 432 | 432 |
| 433 void RTCStatsCollector::WaitForPendingRequest() { | |
| 434 RTC_DCHECK(signaling_thread_->IsCurrent()); | |
| 435 if (num_pending_partial_reports_) { | |
| 436 rtc::Thread::Current()->ProcessMessages(0); | |
| 437 while (num_pending_partial_reports_) { | |
| 438 rtc::Thread::Current()->SleepMs(1); | |
|
Taylor Brandstetter
2016/12/16 18:53:27
nit: Could use an rtc::Event that's set when a par
hbos
2016/12/19 09:52:48
rtc::Event's wait does not process messages. In or
| |
| 439 rtc::Thread::Current()->ProcessMessages(0); | |
| 440 } | |
| 441 } | |
| 442 } | |
| 443 | |
| 433 void RTCStatsCollector::ProducePartialResultsOnSignalingThread( | 444 void RTCStatsCollector::ProducePartialResultsOnSignalingThread( |
| 434 int64_t timestamp_us) { | 445 int64_t timestamp_us) { |
| 435 RTC_DCHECK(signaling_thread_->IsCurrent()); | 446 RTC_DCHECK(signaling_thread_->IsCurrent()); |
| 436 rtc::scoped_refptr<RTCStatsReport> report = RTCStatsReport::Create( | 447 rtc::scoped_refptr<RTCStatsReport> report = RTCStatsReport::Create( |
| 437 timestamp_us); | 448 timestamp_us); |
| 438 | 449 |
| 439 SessionStats session_stats; | 450 SessionStats session_stats; |
| 440 if (pc_->session()->GetTransportStats(&session_stats)) { | 451 if (pc_->session()->GetTransportStats(&session_stats)) { |
| 441 std::map<std::string, CertificateStatsPair> transport_cert_stats = | 452 std::map<std::string, CertificateStatsPair> transport_cert_stats = |
| 442 PrepareTransportCertificateStats(session_stats); | 453 PrepareTransportCertificateStats(session_stats); |
| (...skipping 485 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 928 const std::string& type) { | 939 const std::string& type) { |
| 929 return CandidateTypeToRTCIceCandidateType(type); | 940 return CandidateTypeToRTCIceCandidateType(type); |
| 930 } | 941 } |
| 931 | 942 |
| 932 const char* DataStateToRTCDataChannelStateForTesting( | 943 const char* DataStateToRTCDataChannelStateForTesting( |
| 933 DataChannelInterface::DataState state) { | 944 DataChannelInterface::DataState state) { |
| 934 return DataStateToRTCDataChannelState(state); | 945 return DataStateToRTCDataChannelState(state); |
| 935 } | 946 } |
| 936 | 947 |
| 937 } // namespace webrtc | 948 } // namespace webrtc |
| OLD | NEW |