MCPcopy Create free account
hub / github.com/OpenTTD/OpenTTD / TransferIn

Method TransferIn

src/network/core/packet.h:157–168  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

155 */
156 template <typename F>
157 ssize_t TransferIn(F transfer_function)
158 {
159 size_t amount = this->RemainingBytesToTransfer();
160 if (amount == 0) return 0;
161
162 assert(this->pos < this->buffer.size());
163 assert(this->pos + amount <= this->buffer.size());
164 auto input_buffer = std::span<uint8_t>(this->buffer.data() + this->pos, amount);
165 ssize_t bytes = transfer_function(input_buffer);
166 if (bytes > 0) this->pos += bytes;
167 return bytes;
168 }
169};
170
171#endif /* NETWORK_CORE_PACKET_H */

Callers 3

ReceivePacketsMethod · 0.80
ReceivePacketMethod · 0.80
CreatePacketForReadingFunction · 0.80

Calls 3

sizeMethod · 0.45
dataMethod · 0.45

Tested by 1

CreatePacketForReadingFunction · 0.64