11 #ifndef hifi_SentPacketHistory_h
12 #define hifi_SentPacketHistory_h
16 #include <QtCore/QByteArray>
17 #include <QtCore/QReadWriteLock>
20 #include "RingBufferHistory.h"
21 #include "SequenceNumberStats.h"
25 class SentPacketHistory {
28 SentPacketHistory(
int size = MAX_REASONABLE_SEQUENCE_GAP);
30 void untrackedPacketSent(uint16_t sequenceNumber);
32 void packetSent(uint16_t sequenceNumber,
const NLPacket& packet);
33 const NLPacket* getPacket(uint16_t sequenceNumber)
const;
36 mutable QReadWriteLock _packetsLock { QReadWriteLock::Recursive };
37 RingBufferHistory<std::unique_ptr<NLPacket>> _sentPackets;
39 uint16_t _newestSequenceNumber;