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

Side by Side Diff: media/cast/net/rtp/receiver_stats.h

Issue 1515433002: Replace uses of raw uint32's with a type-checked RtpTimeTicks data type. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years 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
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef MEDIA_CAST_NET_RTP_RECEIVER_STATS_H_ 5 #ifndef MEDIA_CAST_NET_RTP_RECEIVER_STATS_H_
6 #define MEDIA_CAST_NET_RTP_RECEIVER_STATS_H_ 6 #define MEDIA_CAST_NET_RTP_RECEIVER_STATS_H_
7 7
8 #include "base/time/tick_clock.h" 8 #include "base/time/tick_clock.h"
9 #include "base/time/time.h" 9 #include "base/time/time.h"
10 #include "media/cast/common/rtp_time.h"
10 #include "media/cast/net/rtcp/rtcp.h" 11 #include "media/cast/net/rtcp/rtcp.h"
11 #include "media/cast/net/rtp/rtp_defines.h" 12 #include "media/cast/net/rtp/rtp_defines.h"
12 13
13 namespace media { 14 namespace media {
14 namespace cast { 15 namespace cast {
15 16
17 // TODO(miu): Document this class.
16 class ReceiverStats { 18 class ReceiverStats {
17 public: 19 public:
18 explicit ReceiverStats(base::TickClock* clock); 20 explicit ReceiverStats(base::TickClock* clock);
19 21
20 RtpReceiverStatistics GetStatistics(); 22 RtpReceiverStatistics GetStatistics();
21 void UpdateStatistics(const RtpCastHeader& header); 23 void UpdateStatistics(const RtpCastHeader& header, int rtp_timebase);
22 24
23 private: 25 private:
24 base::TickClock* const clock_; // Not owned by this class. 26 base::TickClock* const clock_; // Not owned by this class.
25 27
26 // Global metrics. 28 // Global metrics.
27 uint16 min_sequence_number_; 29 uint16 min_sequence_number_;
28 uint16 max_sequence_number_; 30 uint16 max_sequence_number_;
29 uint32 total_number_packets_; 31 uint32 total_number_packets_;
30 uint16 sequence_number_cycles_; 32 uint16 sequence_number_cycles_;
31 base::TimeDelta last_received_timestamp_; 33 RtpTimeTicks last_received_rtp_timestamp_;
32 base::TimeTicks last_received_packet_time_; 34 base::TimeTicks last_received_packet_time_;
33 base::TimeDelta jitter_; 35 base::TimeDelta jitter_;
34 36
35 // Intermediate metrics - between RTCP reports. 37 // Intermediate metrics - between RTCP reports.
36 int interval_min_sequence_number_; 38 int interval_min_sequence_number_;
37 int interval_number_packets_; 39 int interval_number_packets_;
38 int interval_wrap_count_; 40 int interval_wrap_count_;
39 41
40 DISALLOW_COPY_AND_ASSIGN(ReceiverStats); 42 DISALLOW_COPY_AND_ASSIGN(ReceiverStats);
41 }; 43 };
42 44
43 } // namespace cast 45 } // namespace cast
44 } // namespace media 46 } // namespace media
45 47
46 #endif // MEDIA_CAST_NET_RTP_RECEIVER_STATS_H_ 48 #endif // MEDIA_CAST_NET_RTP_RECEIVER_STATS_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698