15 std::memcpy(&netType, data, 1);
23 std::memcpy(out.
payload.data(), data, length);
34 uint8_t netType = msg.
type;
36 size_t size = msg.
payload.size();
37 std::vector<uint8_t> buffer(size + 1);
38 std::memcpy(buffer.data(), &netType, 1);
40 std::memcpy(buffer.data() + 1, msg.
payload.data(), size);
std::vector< uint8_t > encodeMessage(const Message &msg)
Encodes a Message into a raw buffer (2-byte type, 2-byte length, then payload).
bool decodeMessage(const char *data, size_t length, Message &out)
Decodes a raw buffer into a Message (2-byte type, 2-byte length, then payload).
Minimal network message with a 4-byte header (type + length) and a payload.
uint8_t type
Could map to messageType in GameMessage.hpp (CONNECT, DISCONNECT, etc.)
std::vector< uint8_t > payload
Arbitrary payload bytes.