| 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 // The pure virtual class for send side loss detection algorithm. | 5 // The pure virtual class for send side loss detection algorithm. |
| 6 | 6 |
| 7 #ifndef NET_QUIC_CONGESTION_CONTROL_LOSS_DETECTION_INTERFACE_H_ | 7 #ifndef NET_QUIC_CONGESTION_CONTROL_LOSS_DETECTION_INTERFACE_H_ |
| 8 #define NET_QUIC_CONGESTION_CONTROL_LOSS_DETECTION_INTERFACE_H_ | 8 #define NET_QUIC_CONGESTION_CONTROL_LOSS_DETECTION_INTERFACE_H_ |
| 9 | 9 |
| 10 #include "net/quic/congestion_control/send_algorithm_interface.h" | 10 #include "net/quic/congestion_control/send_algorithm_interface.h" |
| (...skipping 10 matching lines...) Expand all Loading... |
| 21 // Creates a TCP loss detector. | 21 // Creates a TCP loss detector. |
| 22 static LossDetectionInterface* Create(LossDetectionType loss_type); | 22 static LossDetectionInterface* Create(LossDetectionType loss_type); |
| 23 | 23 |
| 24 virtual ~LossDetectionInterface() {} | 24 virtual ~LossDetectionInterface() {} |
| 25 | 25 |
| 26 virtual LossDetectionType GetLossDetectionType() const = 0; | 26 virtual LossDetectionType GetLossDetectionType() const = 0; |
| 27 | 27 |
| 28 // Called when a new ack arrives or the loss alarm fires. | 28 // Called when a new ack arrives or the loss alarm fires. |
| 29 virtual void DetectLosses( | 29 virtual void DetectLosses( |
| 30 const QuicUnackedPacketMap& unacked_packets, | 30 const QuicUnackedPacketMap& unacked_packets, |
| 31 const QuicTime& time, | 31 QuicTime time, |
| 32 const RttStats& rtt_stats, | 32 const RttStats& rtt_stats, |
| 33 SendAlgorithmInterface::CongestionVector* packets_lost) = 0; | 33 SendAlgorithmInterface::CongestionVector* packets_lost) = 0; |
| 34 | 34 |
| 35 // Get the time the LossDetectionAlgorithm wants to re-evaluate losses. | 35 // Get the time the LossDetectionAlgorithm wants to re-evaluate losses. |
| 36 // Returns QuicTime::Zero if no alarm needs to be set. | 36 // Returns QuicTime::Zero if no alarm needs to be set. |
| 37 virtual QuicTime GetLossTimeout() const = 0; | 37 virtual QuicTime GetLossTimeout() const = 0; |
| 38 }; | 38 }; |
| 39 | 39 |
| 40 } // namespace net | 40 } // namespace net |
| 41 | 41 |
| 42 #endif // NET_QUIC_CONGESTION_CONTROL_LOSS_DETECTION_INTERFACE_H_ | 42 #endif // NET_QUIC_CONGESTION_CONTROL_LOSS_DETECTION_INTERFACE_H_ |
| OLD | NEW |