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

Side by Side Diff: webrtc/modules/rtp_rtcp/source/rtcp_sender.h

Issue 1365043002: Set RtcpSender transport at construction. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Cleanup Created 5 years, 2 months 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 /* 1 /*
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2012 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 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
69 bool has_last_xr_rr; 69 bool has_last_xr_rr;
70 RtcpReceiveTimeInfo last_xr_rr; 70 RtcpReceiveTimeInfo last_xr_rr;
71 71
72 // Used when generating TMMBR. 72 // Used when generating TMMBR.
73 ModuleRtpRtcpImpl* module; 73 ModuleRtpRtcpImpl* module;
74 }; 74 };
75 75
76 RTCPSender(bool audio, 76 RTCPSender(bool audio,
77 Clock* clock, 77 Clock* clock,
78 ReceiveStatistics* receive_statistics, 78 ReceiveStatistics* receive_statistics,
79 RtcpPacketTypeCounterObserver* packet_type_counter_observer); 79 RtcpPacketTypeCounterObserver* packet_type_counter_observer,
80 Transport* outgoing_transport);
80 virtual ~RTCPSender(); 81 virtual ~RTCPSender();
81 82
82 int32_t RegisterSendTransport(Transport* outgoingTransport);
83
84 RTCPMethod Status() const; 83 RTCPMethod Status() const;
85 void SetRTCPStatus(RTCPMethod method); 84 void SetRTCPStatus(RTCPMethod method);
86 85
87 bool Sending() const; 86 bool Sending() const;
88 int32_t SetSendingStatus(const FeedbackState& feedback_state, 87 int32_t SetSendingStatus(const FeedbackState& feedback_state,
89 bool enabled); // combine the functions 88 bool enabled); // combine the functions
90 89
91 int32_t SetNackStatus(bool enable); 90 int32_t SetNackStatus(bool enable);
92 91
93 void SetStartTimestamp(uint32_t start_timestamp); 92 void SetStartTimestamp(uint32_t start_timestamp);
(...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after
223 BuildResult BuildReceiverReferenceTime(RtcpContext* context) 222 BuildResult BuildReceiverReferenceTime(RtcpContext* context)
224 EXCLUSIVE_LOCKS_REQUIRED(critical_section_rtcp_sender_); 223 EXCLUSIVE_LOCKS_REQUIRED(critical_section_rtcp_sender_);
225 BuildResult BuildDlrr(RtcpContext* context) 224 BuildResult BuildDlrr(RtcpContext* context)
226 EXCLUSIVE_LOCKS_REQUIRED(critical_section_rtcp_sender_); 225 EXCLUSIVE_LOCKS_REQUIRED(critical_section_rtcp_sender_);
227 226
228 private: 227 private:
229 const bool audio_; 228 const bool audio_;
230 Clock* const clock_; 229 Clock* const clock_;
231 RTCPMethod method_ GUARDED_BY(critical_section_rtcp_sender_); 230 RTCPMethod method_ GUARDED_BY(critical_section_rtcp_sender_);
232 231
233 rtc::scoped_ptr<CriticalSectionWrapper> critical_section_transport_; 232 Transport* const transport_;
234 Transport* cbTransport_ GUARDED_BY(critical_section_transport_);
235 233
236 rtc::scoped_ptr<CriticalSectionWrapper> critical_section_rtcp_sender_; 234 rtc::scoped_ptr<CriticalSectionWrapper> critical_section_rtcp_sender_;
237 bool using_nack_ GUARDED_BY(critical_section_rtcp_sender_); 235 bool using_nack_ GUARDED_BY(critical_section_rtcp_sender_);
238 bool sending_ GUARDED_BY(critical_section_rtcp_sender_); 236 bool sending_ GUARDED_BY(critical_section_rtcp_sender_);
239 bool remb_enabled_ GUARDED_BY(critical_section_rtcp_sender_); 237 bool remb_enabled_ GUARDED_BY(critical_section_rtcp_sender_);
240 238
241 int64_t next_time_to_send_rtcp_ GUARDED_BY(critical_section_rtcp_sender_); 239 int64_t next_time_to_send_rtcp_ GUARDED_BY(critical_section_rtcp_sender_);
242 240
243 uint32_t start_timestamp_ GUARDED_BY(critical_section_rtcp_sender_); 241 uint32_t start_timestamp_ GUARDED_BY(critical_section_rtcp_sender_);
244 uint32_t last_rtp_timestamp_ GUARDED_BY(critical_section_rtcp_sender_); 242 uint32_t last_rtp_timestamp_ GUARDED_BY(critical_section_rtcp_sender_);
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
321 std::set<ReportFlag> report_flags_ GUARDED_BY(critical_section_rtcp_sender_); 319 std::set<ReportFlag> report_flags_ GUARDED_BY(critical_section_rtcp_sender_);
322 320
323 typedef BuildResult (RTCPSender::*Builder)(RtcpContext*); 321 typedef BuildResult (RTCPSender::*Builder)(RtcpContext*);
324 std::map<RTCPPacketType, Builder> builders_; 322 std::map<RTCPPacketType, Builder> builders_;
325 323
326 class PacketBuiltCallback; 324 class PacketBuiltCallback;
327 }; 325 };
328 } // namespace webrtc 326 } // namespace webrtc
329 327
330 #endif // WEBRTC_MODULES_RTP_RTCP_SOURCE_RTCP_SENDER_H_ 328 #endif // WEBRTC_MODULES_RTP_RTCP_SOURCE_RTCP_SENDER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698