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

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

Issue 2366563002: Move class RTCPHelp::RTCPPacketInformation into RTCPReceiver (Closed)
Patch Set: Remove rtcp_receiver from lint exceptions Created 4 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 94 matching lines...) Expand 10 before | Expand all | Expand 10 after
105 bool UpdateRTCPReceiveInformationTimers(); 105 bool UpdateRTCPReceiveInformationTimers();
106 106
107 std::vector<rtcp::TmmbItem> BoundingSet(bool* tmmbr_owner); 107 std::vector<rtcp::TmmbItem> BoundingSet(bool* tmmbr_owner);
108 108
109 void UpdateTmmbr(); 109 void UpdateTmmbr();
110 110
111 void RegisterRtcpStatisticsCallback(RtcpStatisticsCallback* callback); 111 void RegisterRtcpStatisticsCallback(RtcpStatisticsCallback* callback);
112 RtcpStatisticsCallback* GetRtcpStatisticsCallback(); 112 RtcpStatisticsCallback* GetRtcpStatisticsCallback();
113 113
114 private: 114 private:
115 class PacketInformation;
115 using ReceivedInfoMap = std::map<uint32_t, RTCPHelp::RTCPReceiveInformation*>; 116 using ReceivedInfoMap = std::map<uint32_t, RTCPHelp::RTCPReceiveInformation*>;
116 // RTCP report block information mapped by remote SSRC. 117 // RTCP report block information mapped by remote SSRC.
117 using ReportBlockInfoMap = 118 using ReportBlockInfoMap =
118 std::map<uint32_t, RTCPHelp::RTCPReportBlockInformation*>; 119 std::map<uint32_t, RTCPHelp::RTCPReportBlockInformation*>;
119 // RTCP report block information map mapped by source SSRC. 120 // RTCP report block information map mapped by source SSRC.
120 using ReportBlockMap = std::map<uint32_t, ReportBlockInfoMap>; 121 using ReportBlockMap = std::map<uint32_t, ReportBlockInfoMap>;
121 122
122 bool ParseCompoundPacket(const uint8_t* packet_begin, 123 bool ParseCompoundPacket(const uint8_t* packet_begin,
123 const uint8_t* packet_end, 124 const uint8_t* packet_end,
124 RTCPHelp::RTCPPacketInformation* packet_information); 125 PacketInformation* packet_information);
125 126
126 void TriggerCallbacksFromRTCPPacket( 127 void TriggerCallbacksFromRTCPPacket(
127 RTCPHelp::RTCPPacketInformation& rtcpPacketInformation); 128 const PacketInformation& packet_information);
128 129
129 RTCPUtility::RTCPCnameInformation* CreateCnameInformation( 130 RTCPUtility::RTCPCnameInformation* CreateCnameInformation(
130 uint32_t remoteSSRC); 131 uint32_t remoteSSRC);
131 RTCPUtility::RTCPCnameInformation* GetCnameInformation( 132 RTCPUtility::RTCPCnameInformation* GetCnameInformation(
132 uint32_t remoteSSRC) const; 133 uint32_t remoteSSRC) const;
133 134
134 RTCPHelp::RTCPReceiveInformation* CreateReceiveInformation( 135 RTCPHelp::RTCPReceiveInformation* CreateReceiveInformation(
135 uint32_t remoteSSRC); 136 uint32_t remoteSSRC);
136 RTCPHelp::RTCPReceiveInformation* GetReceiveInformation(uint32_t remoteSSRC); 137 RTCPHelp::RTCPReceiveInformation* GetReceiveInformation(uint32_t remoteSSRC);
137 138
138 void HandleSenderReport( 139 void HandleSenderReport(const rtcp::CommonHeader& rtcp_block,
139 const rtcp::CommonHeader& rtcp_block, 140 PacketInformation* packet_information)
140 RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
141 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver); 141 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
142 142
143 void HandleReceiverReport( 143 void HandleReceiverReport(const rtcp::CommonHeader& rtcp_block,
144 const rtcp::CommonHeader& rtcp_block, 144 PacketInformation* packet_information)
145 RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
146 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver); 145 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
147 146
148 void HandleReportBlock(const rtcp::ReportBlock& report_block, 147 void HandleReportBlock(const rtcp::ReportBlock& report_block,
149 RTCPHelp::RTCPPacketInformation& rtcpPacketInformation, 148 PacketInformation* packet_information,
150 uint32_t remoteSSRC) 149 uint32_t remoteSSRC)
151 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver); 150 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
152 151
153 void HandleSDES(const rtcp::CommonHeader& rtcp_block, 152 void HandleSDES(const rtcp::CommonHeader& rtcp_block,
154 RTCPHelp::RTCPPacketInformation& rtcpPacketInformation) 153 PacketInformation* packet_information)
155 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver); 154 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
156 155
157 void HandleXr(const rtcp::CommonHeader& rtcp_block, 156 void HandleXr(const rtcp::CommonHeader& rtcp_block,
158 RTCPHelp::RTCPPacketInformation& rtcpPacketInformation) 157 PacketInformation* packet_information)
159 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver); 158 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
160 159
161 void HandleXrReceiveReferenceTime( 160 void HandleXrReceiveReferenceTime(const rtcp::Rrtr& rrtr,
162 const rtcp::Rrtr& rrtr, 161 PacketInformation* packet_information)
163 RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
164 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver); 162 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
165 163
166 void HandleXrDlrrReportBlock( 164 void HandleXrDlrrReportBlock(const rtcp::ReceiveTimeInfo& rti,
167 const rtcp::ReceiveTimeInfo& rti, 165 PacketInformation* packet_information)
168 RTCPHelp::RTCPPacketInformation& rtcpPacketInformation)
169 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver); 166 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
170 167
171 void HandleNACK(const rtcp::CommonHeader& rtcp_block, 168 void HandleNACK(const rtcp::CommonHeader& rtcp_block,
172 RTCPHelp::RTCPPacketInformation& rtcpPacketInformation) 169 PacketInformation* packet_information)
173 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver); 170 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
174 171
175 void HandleBYE(const rtcp::CommonHeader& rtcp_block) 172 void HandleBYE(const rtcp::CommonHeader& rtcp_block)
176 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver); 173 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
177 174
178 void HandlePLI(const rtcp::CommonHeader& rtcp_block, 175 void HandlePLI(const rtcp::CommonHeader& rtcp_block,
179 RTCPHelp::RTCPPacketInformation& rtcpPacketInformation) 176 PacketInformation* packet_information)
180 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver); 177 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
181 178
182 void HandleSLI(const rtcp::CommonHeader& rtcp_block, 179 void HandleSLI(const rtcp::CommonHeader& rtcp_block,
183 RTCPHelp::RTCPPacketInformation& rtcpPacketInformation) 180 PacketInformation* packet_information)
184 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver); 181 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
185 182
186 void HandleRPSI(const rtcp::CommonHeader& rtcp_block, 183 void HandleRPSI(const rtcp::CommonHeader& rtcp_block,
187 RTCPHelp::RTCPPacketInformation& rtcpPacketInformation) 184 PacketInformation* packet_information)
188 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver); 185 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
189 186
190 void HandlePsfbApp(const rtcp::CommonHeader& rtcp_block, 187 void HandlePsfbApp(const rtcp::CommonHeader& rtcp_block,
191 RTCPHelp::RTCPPacketInformation& rtcpPacketInformation) 188 PacketInformation* packet_information)
192 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver); 189 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
193 190
194 void HandleTMMBR(const rtcp::CommonHeader& rtcp_block, 191 void HandleTMMBR(const rtcp::CommonHeader& rtcp_block,
195 RTCPHelp::RTCPPacketInformation& rtcpPacketInformation) 192 PacketInformation* packet_information)
196 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver); 193 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
197 194
198 void HandleTMMBN(const rtcp::CommonHeader& rtcp_block, 195 void HandleTMMBN(const rtcp::CommonHeader& rtcp_block,
199 RTCPHelp::RTCPPacketInformation& rtcpPacketInformation) 196 PacketInformation* packet_information)
200 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver); 197 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
201 198
202 void HandleSR_REQ(const rtcp::CommonHeader& rtcp_block, 199 void HandleSR_REQ(const rtcp::CommonHeader& rtcp_block,
203 RTCPHelp::RTCPPacketInformation& rtcpPacketInformation) 200 PacketInformation* packet_information)
204 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver); 201 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
205 202
206 void HandleFIR(const rtcp::CommonHeader& rtcp_block, 203 void HandleFIR(const rtcp::CommonHeader& rtcp_block,
207 RTCPHelp::RTCPPacketInformation& rtcpPacketInformation) 204 PacketInformation* packet_information)
208 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver); 205 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
209 206
210 void HandleTransportFeedback( 207 void HandleTransportFeedback(const rtcp::CommonHeader& rtcp_block,
211 const rtcp::CommonHeader& rtcp_block, 208 PacketInformation* packet_information)
212 RTCPHelp::RTCPPacketInformation* rtcp_packet_information)
213 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver); 209 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
214 210
215 RTCPHelp::RTCPReportBlockInformation* CreateOrGetReportBlockInformation( 211 RTCPHelp::RTCPReportBlockInformation* CreateOrGetReportBlockInformation(
216 uint32_t remote_ssrc, 212 uint32_t remote_ssrc,
217 uint32_t source_ssrc) 213 uint32_t source_ssrc)
218 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver); 214 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
219 RTCPHelp::RTCPReportBlockInformation* GetReportBlockInformation( 215 RTCPHelp::RTCPReportBlockInformation* GetReportBlockInformation(
220 uint32_t remote_ssrc, 216 uint32_t remote_ssrc,
221 uint32_t source_ssrc) const 217 uint32_t source_ssrc) const
222 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver); 218 EXCLUSIVE_LOCKS_REQUIRED(_criticalSectionRTCPReceiver);
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
268 RtcpPacketTypeCounterObserver* const packet_type_counter_observer_; 264 RtcpPacketTypeCounterObserver* const packet_type_counter_observer_;
269 RtcpPacketTypeCounter packet_type_counter_; 265 RtcpPacketTypeCounter packet_type_counter_;
270 266
271 RTCPUtility::NackStats nack_stats_; 267 RTCPUtility::NackStats nack_stats_;
272 268
273 size_t num_skipped_packets_; 269 size_t num_skipped_packets_;
274 int64_t last_skipped_packets_warning_; 270 int64_t last_skipped_packets_warning_;
275 }; 271 };
276 } // namespace webrtc 272 } // namespace webrtc
277 #endif // WEBRTC_MODULES_RTP_RTCP_SOURCE_RTCP_RECEIVER_H_ 273 #endif // WEBRTC_MODULES_RTP_RTCP_SOURCE_RTCP_RECEIVER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698