Index: scripts/MsgUtils/msgutils/templates/MsgDefs_cpp.jinja =================================================================== diff -u -rbde1243eb2ff6af2868f6c6ad0cb4f5760aaf68b -r088513e6ea7bad08b4fb7862127c726eabad18fd --- scripts/MsgUtils/msgutils/templates/MsgDefs_cpp.jinja (.../MsgDefs_cpp.jinja) (revision bde1243eb2ff6af2868f6c6ad0cb4f5760aaf68b) +++ scripts/MsgUtils/msgutils/templates/MsgDefs_cpp.jinja (.../MsgDefs_cpp.jinja) (revision 088513e6ea7bad08b4fb7862127c726eabad18fd) @@ -93,19 +93,20 @@ void {{ msg['msg_name'] }}Payload::dump() const { - QStringList params; + QStringList paramList; {%- for field in msg['payload'] %} {%- if field['type'] != "union" %} - params << QString("{{ field['name'] }}=%1").arg({{ field['name'] }}.value); + paramList << QString("{{ field['name'] }}=%1").arg({{ field['name'] }}.value); {%- endif %} {%- endfor %} - qDebug().noquote() << QString("{{ msg['msg_name'] }}Payload: %1").arg(params.count() ? params.join(", ") : ""); + qDebug().noquote() << QString("{{ msg['msg_name'] }}Payload: %1").arg(paramList.count() ? paramList.join(", ") : ""); } {%- endfor %} +{%- if proto is defined %} QByteArray canMessageToProtobufByteArray(const QDateTime ×tamp, const QString &deviceSerialNum, const Can::Message &msg) { - static const auto updateHeader = [&](messages::Header *header) { + const auto updateHeader = [&](messages::Header *header) { if (header) { const auto msecs = timestamp.toMSecsSinceEpoch(); header->set_deviceserialnum(deviceSerialNum.toStdString()); @@ -129,9 +130,9 @@ payload.dump(); auto proto = payload.toProtobuf(); updateHeader(proto.mutable_header()); - std::ostringstream out; - (void)proto.SerializeToOstream(&out); - return out.str().c_str(); + std::string out; + (void)proto.SerializeToString(&out); + return QByteArray(out.data(), static_cast(out.size())); break; } {%- endfor %} @@ -141,6 +142,7 @@ } return QByteArray(); } +{%- endif %} {%- if cpp_namespace is defined and cpp_namespace is not none %} } // namespace {{ cpp_namespace }}