| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 #include "net/quic/core/quic_unacked_packet_map.h" | 5 #include "net/quic/core/quic_unacked_packet_map.h" |
| 6 | 6 |
| 7 #include "base/logging.h" | 7 #include "base/logging.h" |
| 8 #include "base/stl_util.h" | 8 #include "base/stl_util.h" |
| 9 #include "net/quic/chromium/quic_utils_chromium.h" | 9 #include "net/quic/chromium/quic_utils_chromium.h" |
| 10 #include "net/quic/core/quic_bug_tracker.h" | 10 #include "net/quic/core/quic_bug_tracker.h" |
| 11 #include "net/quic/core/quic_connection_stats.h" | 11 #include "net/quic/core/quic_connection_stats.h" |
| 12 #include "net/quic/core/quic_flags.h" | 12 #include "net/quic/core/quic_flags.h" |
| 13 #include "net/quic/core/quic_utils.h" | 13 #include "net/quic/core/quic_utils.h" |
| 14 | 14 |
| 15 using std::max; | 15 using std::max; |
| 16 | 16 |
| 17 namespace net { | 17 namespace net { |
| 18 | 18 |
| 19 QuicUnackedPacketMap::QuicUnackedPacketMap() | 19 QuicUnackedPacketMap::QuicUnackedPacketMap() |
| 20 : largest_sent_packet_(0), | 20 : largest_sent_packet_(0), |
| 21 largest_sent_retransmittable_packet_(0), | 21 largest_sent_retransmittable_packet_(0), |
| 22 largest_observed_(0), | 22 largest_observed_(0), |
| 23 least_unacked_(1), | 23 least_unacked_(1), |
| 24 bytes_in_flight_(0), | 24 bytes_in_flight_(0), |
| 25 pending_crypto_packet_count_(0) {} | 25 pending_crypto_packet_count_(0) {} |
| 26 | 26 |
| 27 QuicUnackedPacketMap::~QuicUnackedPacketMap() { | 27 QuicUnackedPacketMap::~QuicUnackedPacketMap() { |
| 28 QuicPacketNumber index = least_unacked_; | 28 for (QuicTransmissionInfo& transmission_info : unacked_packets_) { |
| 29 for (UnackedPacketMap::iterator it = unacked_packets_.begin(); | 29 DeleteFrames(&(transmission_info.retransmittable_frames)); |
| 30 it != unacked_packets_.end(); ++it, ++index) { | |
| 31 DeleteFrames(&it->retransmittable_frames); | |
| 32 } | 30 } |
| 33 } | 31 } |
| 34 | 32 |
| 35 void QuicUnackedPacketMap::AddSentPacket(SerializedPacket* packet, | 33 void QuicUnackedPacketMap::AddSentPacket(SerializedPacket* packet, |
| 36 QuicPacketNumber old_packet_number, | 34 QuicPacketNumber old_packet_number, |
| 37 TransmissionType transmission_type, | 35 TransmissionType transmission_type, |
| 38 QuicTime sent_time, | 36 QuicTime sent_time, |
| 39 bool set_in_flight) { | 37 bool set_in_flight) { |
| 40 QuicPacketNumber packet_number = packet->packet_number; | 38 QuicPacketNumber packet_number = packet->packet_number; |
| 41 QuicPacketLength bytes_sent = packet->encrypted_length; | 39 QuicPacketLength bytes_sent = packet->encrypted_length; |
| (...skipping 313 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 355 } | 353 } |
| 356 } | 354 } |
| 357 return false; | 355 return false; |
| 358 } | 356 } |
| 359 | 357 |
| 360 QuicPacketNumber QuicUnackedPacketMap::GetLeastUnacked() const { | 358 QuicPacketNumber QuicUnackedPacketMap::GetLeastUnacked() const { |
| 361 return least_unacked_; | 359 return least_unacked_; |
| 362 } | 360 } |
| 363 | 361 |
| 364 } // namespace net | 362 } // namespace net |
| OLD | NEW |