OLD | NEW |
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 329 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
340 uint16_t sequence_number; | 340 uint16_t sequence_number; |
341 // Size of the packet excluding RTP headers. | 341 // Size of the packet excluding RTP headers. |
342 size_t payload_size; | 342 size_t payload_size; |
343 // The network route ids that this packet is associated with. | 343 // The network route ids that this packet is associated with. |
344 uint16_t local_net_id; | 344 uint16_t local_net_id; |
345 uint16_t remote_net_id; | 345 uint16_t remote_net_id; |
346 // Pacing information about this packet. | 346 // Pacing information about this packet. |
347 PacedPacketInfo pacing_info; | 347 PacedPacketInfo pacing_info; |
348 }; | 348 }; |
349 | 349 |
| 350 class PacketFeedbackComparator { |
| 351 public: |
| 352 inline bool operator()(const PacketFeedback& lhs, const PacketFeedback& rhs) { |
| 353 if (lhs.arrival_time_ms != rhs.arrival_time_ms) |
| 354 return lhs.arrival_time_ms < rhs.arrival_time_ms; |
| 355 if (lhs.send_time_ms != rhs.send_time_ms) |
| 356 return lhs.send_time_ms < rhs.send_time_ms; |
| 357 return lhs.sequence_number < rhs.sequence_number; |
| 358 } |
| 359 }; |
| 360 |
350 class TransportFeedbackObserver { | 361 class TransportFeedbackObserver { |
351 public: | 362 public: |
352 TransportFeedbackObserver() {} | 363 TransportFeedbackObserver() {} |
353 virtual ~TransportFeedbackObserver() {} | 364 virtual ~TransportFeedbackObserver() {} |
354 | 365 |
355 // Note: Transport-wide sequence number as sequence number. | 366 // Note: Transport-wide sequence number as sequence number. |
356 virtual void AddPacket(uint32_t ssrc, | 367 virtual void AddPacket(uint32_t ssrc, |
357 uint16_t sequence_number, | 368 uint16_t sequence_number, |
358 size_t length, | 369 size_t length, |
359 const PacedPacketInfo& pacing_info) = 0; | 370 const PacedPacketInfo& pacing_info) = 0; |
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
444 class TransportSequenceNumberAllocator { | 455 class TransportSequenceNumberAllocator { |
445 public: | 456 public: |
446 TransportSequenceNumberAllocator() {} | 457 TransportSequenceNumberAllocator() {} |
447 virtual ~TransportSequenceNumberAllocator() {} | 458 virtual ~TransportSequenceNumberAllocator() {} |
448 | 459 |
449 virtual uint16_t AllocateSequenceNumber() = 0; | 460 virtual uint16_t AllocateSequenceNumber() = 0; |
450 }; | 461 }; |
451 | 462 |
452 } // namespace webrtc | 463 } // namespace webrtc |
453 #endif // WEBRTC_MODULES_RTP_RTCP_INCLUDE_RTP_RTCP_DEFINES_H_ | 464 #endif // WEBRTC_MODULES_RTP_RTCP_INCLUDE_RTP_RTCP_DEFINES_H_ |
OLD | NEW |