OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2015 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2015 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 13 matching lines...) Expand all Loading... |
24 class SendTimeHistory { | 24 class SendTimeHistory { |
25 public: | 25 public: |
26 SendTimeHistory(Clock* clock, int64_t packet_age_limit_ms); | 26 SendTimeHistory(Clock* clock, int64_t packet_age_limit_ms); |
27 ~SendTimeHistory(); | 27 ~SendTimeHistory(); |
28 | 28 |
29 void Clear(); | 29 void Clear(); |
30 | 30 |
31 // Cleanup old entries, then add new packet info with provided parameters. | 31 // Cleanup old entries, then add new packet info with provided parameters. |
32 void AddAndRemoveOld(uint16_t sequence_number, | 32 void AddAndRemoveOld(uint16_t sequence_number, |
33 size_t payload_size, | 33 size_t payload_size, |
34 int probe_cluster_id); | 34 const PacedPacketInfo& pacing_info); |
35 | 35 |
36 // Updates packet info identified by |sequence_number| with |send_time_ms|. | 36 // Updates packet info identified by |sequence_number| with |send_time_ms|. |
37 // Return false if not found. | 37 // Return false if not found. |
38 bool OnSentPacket(uint16_t sequence_number, int64_t send_time_ms); | 38 bool OnSentPacket(uint16_t sequence_number, int64_t send_time_ms); |
39 | 39 |
40 // Look up PacketInfo for a sent packet, based on the sequence number, and | 40 // Look up PacketInfo for a sent packet, based on the sequence number, and |
41 // populate all fields except for arrival_time. The packet parameter must | 41 // populate all fields except for arrival_time. The packet parameter must |
42 // thus be non-null and have the sequence_number field set. | 42 // thus be non-null and have the sequence_number field set. |
43 bool GetInfo(PacketInfo* packet_info, bool remove); | 43 bool GetInfo(PacketInfo* packet_info, bool remove); |
44 | 44 |
45 private: | 45 private: |
46 Clock* const clock_; | 46 Clock* const clock_; |
47 const int64_t packet_age_limit_ms_; | 47 const int64_t packet_age_limit_ms_; |
48 SequenceNumberUnwrapper seq_num_unwrapper_; | 48 SequenceNumberUnwrapper seq_num_unwrapper_; |
49 std::map<int64_t, PacketInfo> history_; | 49 std::map<int64_t, PacketInfo> history_; |
50 | 50 |
51 RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(SendTimeHistory); | 51 RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(SendTimeHistory); |
52 }; | 52 }; |
53 | 53 |
54 } // namespace webrtc | 54 } // namespace webrtc |
55 #endif // WEBRTC_MODULES_REMOTE_BITRATE_ESTIMATOR_INCLUDE_SEND_TIME_HISTORY_H_ | 55 #endif // WEBRTC_MODULES_REMOTE_BITRATE_ESTIMATOR_INCLUDE_SEND_TIME_HISTORY_H_ |
OLD | NEW |