mirror of
https://github.com/dragonpilot/dragonpilot.git
synced 2026-06-22 22:42:05 +08:00
can_list_to_can_capnp_cpp: write message directly to the output string (#19912)
This commit is contained in:
@@ -22,8 +22,10 @@ void can_list_to_can_capnp_cpp(const std::vector<can_frame> &can_list, std::stri
|
||||
c.setDat(kj::arrayPtr((uint8_t*)it->dat.data(), it->dat.size()));
|
||||
c.setSrc(it->src);
|
||||
}
|
||||
auto bytes = msg.toBytes();
|
||||
out.append((const char *)bytes.begin(), bytes.size());
|
||||
const uint64_t msg_size = capnp::computeSerializedSizeInWords(msg) * sizeof(capnp::word);
|
||||
out.resize(msg_size);
|
||||
kj::ArrayOutputStream output_stream(kj::ArrayPtr<capnp::byte>((unsigned char *)out.data(), msg_size));
|
||||
capnp::writeMessage(output_stream, msg);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user