* - 0x8: Is a packet that was re-sent
*/
uint32_t flags;
+ /*!
+ * \brief The packet's id.
+ *
+ * Packets start with id = 0, and will wrap around.
+ * This can be used to determine specifically how out of order a packet may
+ * be.
+ */
+ uint32_t id;
/*!
* \brief The size in bytes of the received packet's data inside the \ref data
* pointer member variable.
recPktInfo.sender.port = ntohs(receivedData.sin6_port);
recPktInfo.receiver.port = ntohs(socketInfo.sin6_port);
recPktInfo.rtt = durationToMS(iter->second.rtt);
+ recPktInfo.id = seqID;
std::lock_guard<std::mutex> receivedPktsLock(receivedPktsMutex);
receivedPkts.push_back(recPktInfo);
recPktInfo.sender.port = ntohs(receivedData.sin6_port);
recPktInfo.receiver.port = ntohs(socketInfo.sin6_port);
recPktInfo.rtt = durationToMS(iter->second.rtt);
+ recPktInfo.id = seqID;
std::lock_guard<std::mutex> receivedPktsLock(receivedPktsMutex);
receivedPkts.push_back(recPktInfo);
return UDPC_PacketInfo {
0, // data (ptr)
0, // flags
+ 0, // id
0, // dataSize
0, // rtt
{ // sender