OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 #ifndef NET_QUIC_QUIC_SENT_PACKET_MANAGER_H_ | 5 #ifndef NET_QUIC_QUIC_SENT_PACKET_MANAGER_H_ |
6 #define NET_QUIC_QUIC_SENT_PACKET_MANAGER_H_ | 6 #define NET_QUIC_QUIC_SENT_PACKET_MANAGER_H_ |
7 | 7 |
8 #include <deque> | 8 #include <deque> |
9 #include <list> | 9 #include <list> |
10 #include <map> | 10 #include <map> |
(...skipping 216 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
227 | 227 |
228 // Invokes the loss detection algorithm and loses and retransmits packets if | 228 // Invokes the loss detection algorithm and loses and retransmits packets if |
229 // necessary. | 229 // necessary. |
230 void InvokeLossDetection(QuicTime time); | 230 void InvokeLossDetection(QuicTime time); |
231 | 231 |
232 // Marks |sequence_number| as being fully handled, either due to receipt | 232 // Marks |sequence_number| as being fully handled, either due to receipt |
233 // by the peer, or having been discarded as indecipherable. Returns an | 233 // by the peer, or having been discarded as indecipherable. Returns an |
234 // iterator to the next remaining unacked packet. | 234 // iterator to the next remaining unacked packet. |
235 QuicUnackedPacketMap::const_iterator MarkPacketHandled( | 235 QuicUnackedPacketMap::const_iterator MarkPacketHandled( |
236 QuicPacketSequenceNumber sequence_number, | 236 QuicPacketSequenceNumber sequence_number, |
| 237 QuicTime::Delta delta_largest_observed, |
237 ReceivedByPeer received_by_peer); | 238 ReceivedByPeer received_by_peer); |
238 | 239 |
239 // Request that |sequence_number| be retransmitted after the other pending | 240 // Request that |sequence_number| be retransmitted after the other pending |
240 // retransmissions. Does not add it to the retransmissions if it's already | 241 // retransmissions. Does not add it to the retransmissions if it's already |
241 // a pending retransmission. | 242 // a pending retransmission. |
242 void MarkForRetransmission(QuicPacketSequenceNumber sequence_number, | 243 void MarkForRetransmission(QuicPacketSequenceNumber sequence_number, |
243 TransmissionType transmission_type); | 244 TransmissionType transmission_type); |
244 | 245 |
245 // Newly serialized retransmittable and fec packets are added to this map, | 246 // Newly serialized retransmittable and fec packets are added to this map, |
246 // which contains owning pointers to any contained frames. If a packet is | 247 // which contains owning pointers to any contained frames. If a packet is |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
279 // Maximum number of tail loss probes to send before firing an RTO. | 280 // Maximum number of tail loss probes to send before firing an RTO. |
280 size_t max_tail_loss_probes_; | 281 size_t max_tail_loss_probes_; |
281 bool using_pacing_; | 282 bool using_pacing_; |
282 | 283 |
283 DISALLOW_COPY_AND_ASSIGN(QuicSentPacketManager); | 284 DISALLOW_COPY_AND_ASSIGN(QuicSentPacketManager); |
284 }; | 285 }; |
285 | 286 |
286 } // namespace net | 287 } // namespace net |
287 | 288 |
288 #endif // NET_QUIC_QUIC_SENT_PACKET_MANAGER_H_ | 289 #endif // NET_QUIC_QUIC_SENT_PACKET_MANAGER_H_ |
OLD | NEW |