diff options
author | Peter Boström <pbos@webrtc.org> | 2015-12-09 12:13:30 +0100 |
---|---|---|
committer | Peter Boström <pbos@webrtc.org> | 2015-12-09 11:13:40 +0000 |
commit | 7623ce4aeb9130c937ba5836490cbb3a35679e79 (patch) | |
tree | f7d20b01beef47a88bc30fdc58fe9c8bc1e546ce /webrtc/video_engine/call_stats.h | |
parent | d3c944755ec546f46d5bdd84bff359fe6c4639e9 (diff) | |
download | webrtc-7623ce4aeb9130c937ba5836490cbb3a35679e79.tar.gz |
Reland of Merge webrtc/video_engine/ into webrtc/video/ (patchset #2 id:300001 of https://codereview.webrtc.org/1507903005/ )
Reason for revert:
Bot breakage caused by TickTime::UseFakeClock has been removed.
Original issue's description:
> Revert of Merge webrtc/video_engine/ into webrtc/video/ (patchset #2 id:20001 of https://codereview.webrtc.org/1506773002/ )
>
> Reason for revert:
> Breaks Dr Memory Light https://build.chromium.org/p/client.webrtc/builders/Win%20DrMemory%20Light/builds/4643 and all the Android Tests bots.
>
> Original issue's description:
> > Merge webrtc/video_engine/ into webrtc/video/
> >
> > BUG=webrtc:1695
> > R=mflodman@webrtc.org
> >
> > Committed: https://crrev.com/03ef053202bc5d5ab43460eebf5403232f157646
> > Cr-Commit-Position: refs/heads/master@{#10926}
>
> TBR=mflodman@webrtc.org,pbos@webrtc.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:1695
>
> Committed: https://crrev.com/8237abf563bf4782ee104408b53cc8e55ce44518
> Cr-Commit-Position: refs/heads/master@{#10937}
BUG=webrtc:1695
TBR=mflodman@webrtc.org,kjellander@webrtc.org
NOPRESUBMIT=true
Review URL: https://codereview.webrtc.org/1510183002 .
Cr-Commit-Position: refs/heads/master@{#10948}
Diffstat (limited to 'webrtc/video_engine/call_stats.h')
-rw-r--r-- | webrtc/video_engine/call_stats.h | 83 |
1 files changed, 0 insertions, 83 deletions
diff --git a/webrtc/video_engine/call_stats.h b/webrtc/video_engine/call_stats.h deleted file mode 100644 index 0dd7bdbaae..0000000000 --- a/webrtc/video_engine/call_stats.h +++ /dev/null @@ -1,83 +0,0 @@ -/* - * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. - * - * Use of this source code is governed by a BSD-style license - * that can be found in the LICENSE file in the root of the source - * tree. An additional intellectual property rights grant can be found - * in the file PATENTS. All contributing project authors may - * be found in the AUTHORS file in the root of the source tree. - */ - -#ifndef WEBRTC_VIDEO_ENGINE_CALL_STATS_H_ -#define WEBRTC_VIDEO_ENGINE_CALL_STATS_H_ - -#include <list> - -#include "webrtc/base/constructormagic.h" -#include "webrtc/base/scoped_ptr.h" -#include "webrtc/modules/include/module.h" -#include "webrtc/system_wrappers/include/clock.h" - -namespace webrtc { - -class CallStatsObserver; -class CriticalSectionWrapper; -class RtcpRttStats; - -// CallStats keeps track of statistics for a call. -class CallStats : public Module { - public: - friend class RtcpObserver; - - explicit CallStats(Clock* clock); - ~CallStats(); - - // Implements Module, to use the process thread. - int64_t TimeUntilNextProcess() override; - int32_t Process() override; - - // Returns a RtcpRttStats to register at a statistics provider. The object - // has the same lifetime as the CallStats instance. - RtcpRttStats* rtcp_rtt_stats() const; - - // Registers/deregisters a new observer to receive statistics updates. - void RegisterStatsObserver(CallStatsObserver* observer); - void DeregisterStatsObserver(CallStatsObserver* observer); - - // Helper struct keeping track of the time a rtt value is reported. - struct RttTime { - RttTime(int64_t new_rtt, int64_t rtt_time) - : rtt(new_rtt), time(rtt_time) {} - const int64_t rtt; - const int64_t time; - }; - - protected: - void OnRttUpdate(int64_t rtt); - - int64_t avg_rtt_ms() const; - - private: - Clock* const clock_; - // Protecting all members. - rtc::scoped_ptr<CriticalSectionWrapper> crit_; - // Observer receiving statistics updates. - rtc::scoped_ptr<RtcpRttStats> rtcp_rtt_stats_; - // The last time 'Process' resulted in statistic update. - int64_t last_process_time_; - // The last RTT in the statistics update (zero if there is no valid estimate). - int64_t max_rtt_ms_; - int64_t avg_rtt_ms_; - - // All Rtt reports within valid time interval, oldest first. - std::list<RttTime> reports_; - - // Observers getting stats reports. - std::list<CallStatsObserver*> observers_; - - RTC_DISALLOW_COPY_AND_ASSIGN(CallStats); -}; - -} // namespace webrtc - -#endif // WEBRTC_VIDEO_ENGINE_CALL_STATS_H_ |