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 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
45 // interesting points. Implementations must not mutate the state of | 45 // interesting points. Implementations must not mutate the state of |
46 // the packet manager or connection as a result of these callbacks. | 46 // the packet manager or connection as a result of these callbacks. |
47 class NET_EXPORT_PRIVATE DebugDelegate { | 47 class NET_EXPORT_PRIVATE DebugDelegate { |
48 public: | 48 public: |
49 virtual ~DebugDelegate() {} | 49 virtual ~DebugDelegate() {} |
50 | 50 |
51 // Called when a spurious retransmission is detected. | 51 // Called when a spurious retransmission is detected. |
52 virtual void OnSpuriousPacketRetransmition( | 52 virtual void OnSpuriousPacketRetransmition( |
53 TransmissionType transmission_type, | 53 TransmissionType transmission_type, |
54 QuicByteCount byte_size) {} | 54 QuicByteCount byte_size) {} |
| 55 |
| 56 virtual void OnSentPacket( |
| 57 QuicPacketSequenceNumber sequence_number, |
| 58 QuicTime sent_time, |
| 59 QuicByteCount bytes) {} |
| 60 |
| 61 virtual void OnRetransmittedPacket( |
| 62 QuicPacketSequenceNumber old_sequence_number, |
| 63 QuicPacketSequenceNumber new_sequence_number, |
| 64 TransmissionType transmission_type, |
| 65 QuicTime time) {} |
| 66 |
| 67 virtual void OnIncomingAck( |
| 68 const ReceivedPacketInfo& received_info, |
| 69 QuicTime ack_receive_time, |
| 70 QuicPacketSequenceNumber largest_observed, |
| 71 bool largest_observed_acked, |
| 72 QuicPacketSequenceNumber least_unacked_sent_packet) {} |
55 }; | 73 }; |
56 | 74 |
57 // Struct to store the pending retransmission information. | 75 // Struct to store the pending retransmission information. |
58 struct PendingRetransmission { | 76 struct PendingRetransmission { |
59 PendingRetransmission(QuicPacketSequenceNumber sequence_number, | 77 PendingRetransmission(QuicPacketSequenceNumber sequence_number, |
60 TransmissionType transmission_type, | 78 TransmissionType transmission_type, |
61 const RetransmittableFrames& retransmittable_frames, | 79 const RetransmittableFrames& retransmittable_frames, |
62 QuicSequenceNumberLength sequence_number_length) | 80 QuicSequenceNumberLength sequence_number_length) |
63 : sequence_number(sequence_number), | 81 : sequence_number(sequence_number), |
64 transmission_type(transmission_type), | 82 transmission_type(transmission_type), |
(...skipping 259 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
324 // Sets of packets acked and lost as a result of the last congestion event. | 342 // Sets of packets acked and lost as a result of the last congestion event. |
325 SendAlgorithmInterface::CongestionMap packets_acked_; | 343 SendAlgorithmInterface::CongestionMap packets_acked_; |
326 SendAlgorithmInterface::CongestionMap packets_lost_; | 344 SendAlgorithmInterface::CongestionMap packets_lost_; |
327 | 345 |
328 DISALLOW_COPY_AND_ASSIGN(QuicSentPacketManager); | 346 DISALLOW_COPY_AND_ASSIGN(QuicSentPacketManager); |
329 }; | 347 }; |
330 | 348 |
331 } // namespace net | 349 } // namespace net |
332 | 350 |
333 #endif // NET_QUIC_QUIC_SENT_PACKET_MANAGER_H_ | 351 #endif // NET_QUIC_QUIC_SENT_PACKET_MANAGER_H_ |
OLD | NEW |