MCPcopy Create free account
hub / github.com/OpenLoco/OpenLoco / resendUndeliveredPackets

Method resendUndeliveredPackets

src/OpenLoco/src/Network/NetworkConnection.cpp:134–152  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

132}
133
134void NetworkConnection::resendUndeliveredPackets()
135{
136 std::unique_lock<std::mutex> lk(_sentPacketsSync);
137 auto now = getTime();
138 auto timestamp = now - kRedeliverTimeout;
139
140 for (size_t i = 0; i < _sentPackets.size(); i++)
141 {
142 auto& sentPacket = _sentPackets[i];
143 if (sentPacket.timestamp < timestamp)
144 {
145 size_t packetSize = sizeof(PacketHeader) + sentPacket.packet.header.dataSize;
146 _socket->sendData(*_endpoint, &sentPacket.packet, packetSize);
147 logPacket(sentPacket.packet, true, true);
148
149 sentPacket.timestamp = now;
150 }
151 }
152}
153
154std::optional<Packet> NetworkConnection::takeNextPacket()
155{

Callers

nothing calls this directly

Calls 3

sendDataMethod · 0.80
getTimeFunction · 0.50
sizeMethod · 0.45

Tested by

no test coverage detected