OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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_RTCP_RTCP_H_ | 5 #ifndef MEDIA_CAST_RTCP_RTCP_H_ |
6 #define MEDIA_CAST_RTCP_RTCP_H_ | 6 #define MEDIA_CAST_RTCP_RTCP_H_ |
7 | 7 |
8 #include <list> | 8 #include <list> |
9 #include <map> | 9 #include <map> |
10 #include <queue> | 10 #include <queue> |
11 #include <set> | 11 #include <set> |
12 #include <string> | 12 #include <string> |
13 | 13 |
14 #include "base/basictypes.h" | 14 #include "base/basictypes.h" |
15 #include "base/memory/scoped_ptr.h" | 15 #include "base/memory/scoped_ptr.h" |
16 #include "base/time/tick_clock.h" | 16 #include "base/time/tick_clock.h" |
17 #include "base/time/time.h" | 17 #include "base/time/time.h" |
18 #include "media/cast/cast_config.h" | 18 #include "media/cast/cast_config.h" |
19 #include "media/cast/cast_defines.h" | 19 #include "media/cast/cast_defines.h" |
20 #include "media/cast/cast_environment.h" | 20 #include "media/cast/cast_environment.h" |
21 #include "media/cast/rtcp/rtcp_defines.h" | 21 #include "media/cast/rtcp/rtcp_defines.h" |
22 | 22 |
23 namespace media { | 23 namespace media { |
24 namespace cast { | 24 namespace cast { |
25 | 25 |
26 class LocalRtcpReceiverFeedback; | 26 class LocalRtcpReceiverFeedback; |
27 class LocalRtcpRttFeedback; | 27 class LocalRtcpRttFeedback; |
| 28 class RtcpBuilder; |
28 class PacedPacketSender; | 29 class PacedPacketSender; |
29 class RtcpReceiver; | 30 class RtcpReceiver; |
30 class RtcpSender; | 31 class RtcpSender; |
31 | 32 |
32 typedef std::pair<uint32, base::TimeTicks> RtcpSendTimePair; | 33 typedef std::pair<uint32, base::TimeTicks> RtcpSendTimePair; |
33 typedef std::map<uint32, base::TimeTicks> RtcpSendTimeMap; | 34 typedef std::map<uint32, base::TimeTicks> RtcpSendTimeMap; |
34 typedef std::queue<RtcpSendTimePair> RtcpSendTimeQueue; | 35 typedef std::queue<RtcpSendTimePair> RtcpSendTimeQueue; |
35 | 36 |
36 class RtcpSenderFeedback { | 37 class RtcpSenderFeedback { |
37 public: | 38 public: |
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
142 const uint32 local_ssrc_; | 143 const uint32 local_ssrc_; |
143 const uint32 remote_ssrc_; | 144 const uint32 remote_ssrc_; |
144 | 145 |
145 // Not owned by this class. | 146 // Not owned by this class. |
146 RtpSenderStatistics* const rtp_sender_statistics_; | 147 RtpSenderStatistics* const rtp_sender_statistics_; |
147 RtpReceiverStatistics* const rtp_receiver_statistics_; | 148 RtpReceiverStatistics* const rtp_receiver_statistics_; |
148 | 149 |
149 scoped_ptr<LocalRtcpRttFeedback> rtt_feedback_; | 150 scoped_ptr<LocalRtcpRttFeedback> rtt_feedback_; |
150 scoped_ptr<LocalRtcpReceiverFeedback> receiver_feedback_; | 151 scoped_ptr<LocalRtcpReceiverFeedback> receiver_feedback_; |
151 scoped_ptr<RtcpSender> rtcp_sender_; | 152 scoped_ptr<RtcpSender> rtcp_sender_; |
| 153 scoped_ptr<RtcpBuilder> rtcp_builder_; |
152 scoped_ptr<RtcpReceiver> rtcp_receiver_; | 154 scoped_ptr<RtcpReceiver> rtcp_receiver_; |
153 | 155 |
154 base::TimeTicks next_time_to_send_rtcp_; | 156 base::TimeTicks next_time_to_send_rtcp_; |
155 RtcpSendTimeMap last_reports_sent_map_; | 157 RtcpSendTimeMap last_reports_sent_map_; |
156 RtcpSendTimeQueue last_reports_sent_queue_; | 158 RtcpSendTimeQueue last_reports_sent_queue_; |
157 base::TimeTicks time_last_report_received_; | 159 base::TimeTicks time_last_report_received_; |
158 uint32 last_report_received_; | 160 uint32 last_report_received_; |
159 | 161 |
160 uint32 last_received_rtp_timestamp_; | 162 uint32 last_received_rtp_timestamp_; |
161 uint32 last_received_ntp_seconds_; | 163 uint32 last_received_ntp_seconds_; |
162 uint32 last_received_ntp_fraction_; | 164 uint32 last_received_ntp_fraction_; |
163 | 165 |
164 base::TimeDelta rtt_; | 166 base::TimeDelta rtt_; |
165 base::TimeDelta min_rtt_; | 167 base::TimeDelta min_rtt_; |
166 base::TimeDelta max_rtt_; | 168 base::TimeDelta max_rtt_; |
167 int number_of_rtt_in_avg_; | 169 int number_of_rtt_in_avg_; |
168 float avg_rtt_ms_; | 170 float avg_rtt_ms_; |
169 | 171 |
170 DISALLOW_COPY_AND_ASSIGN(Rtcp); | 172 DISALLOW_COPY_AND_ASSIGN(Rtcp); |
171 }; | 173 }; |
172 | 174 |
173 } // namespace cast | 175 } // namespace cast |
174 } // namespace media | 176 } // namespace media |
175 | 177 |
176 #endif // MEDIA_CAST_RTCP_RTCP_H_ | 178 #endif // MEDIA_CAST_RTCP_RTCP_H_ |
OLD | NEW |