更改 WAVE 消息的长度(VEINS/OMNET++)
Changing length of WAVE message(VEINS/OMNET++)
如何更改 WAVE 消息的长度。方法 setWsmLength
无效。根据 中的回答,我认为这是不可能的,因为该功能未在 WAVE 中实现。但是提供的答案非常模糊。它要求创建一个 .msg 文件,这很清楚。但其余的不是很清楚。有人可以澄清或解释一下吗?
P.S:我无法在该线程中发表评论,因此不得不提出新问题。
WaveShortMessage
是一个 OMNeT++
数据包,所以总是可以使用 addByteLength()
来增加它现有的大小或 setByteLength()
来设置它的新大小,描述在OMNeT++
manual。无需定义新消息。
一个例子:
WaveShortMessage* wsm = prepareWSM("data", dataLengthBits, channel, dataPriority, -1,2);
wsm->setWsmData(blockedRoadId.c_str());
int byteLen = blockedRoadId.length(); // assuming that one char = one byte
wsm->addByteLength(byteLen);
如何更改 WAVE 消息的长度。方法 setWsmLength
无效。根据
P.S:我无法在该线程中发表评论,因此不得不提出新问题。
WaveShortMessage
是一个 OMNeT++
数据包,所以总是可以使用 addByteLength()
来增加它现有的大小或 setByteLength()
来设置它的新大小,描述在OMNeT++
manual。无需定义新消息。
一个例子:
WaveShortMessage* wsm = prepareWSM("data", dataLengthBits, channel, dataPriority, -1,2);
wsm->setWsmData(blockedRoadId.c_str());
int byteLen = blockedRoadId.length(); // assuming that one char = one byte
wsm->addByteLength(byteLen);