Omnet++ 如何发送静脉中的二进制数据

Omnet++ 如何发送静脉中的二进制数据,omnet++,veins,Omnet++,Veins,我有一个结构 struct info{ int id; int color; double speed; } 如何使用senddown发送它? 我目前正在使用格式化字符串发送结构 char buff[100]; info inf = {1,1,1.4} snprintf(buff , sizeof(buff), "%d,%d%f" ,inf.id, inf.color,inf.speed); wsm->setWsmData(buff); sendDown(wsm); 但我需要从字符串中

我有一个结构

struct info{
int id;
int color;
double speed;
}
如何使用senddown发送它?
我目前正在使用格式化字符串发送结构

char buff[100];
info inf = {1,1,1.4}
snprintf(buff , sizeof(buff), "%d,%d%f" ,inf.id, inf.color,inf.speed);
wsm->setWsmData(buff);
sendDown(wsm);
但我需要从字符串中提取所有参数,然后生成一个新结构。

我是否可以直接发送结构,这样就不需要在每个接收节点上解析它。

您可以创建自己的消息定义,它继承了WaveShortMessage/DemoSafeTMessage(取决于您使用的版本)。向您展示了如何做到这一点。

如果我以外的人想知道,
Veines
是一个车辆模拟框架:一般来说,将数据序列化为文本并以这种形式传输是最安全的选择。我不确定Velse可能提供什么额外的保证,但在一般情况下,您不能假设源计算机和目标计算机将以相同的方式解释您的结构或其单个成员的二进制表示。