如何更改 WAVE 消息的长度。方法setWsmLength
不行。从这里的答案我认为这是不可能的,因为该功能未在 WAVE 中实现。但提供的答案非常模糊。它要求创建一个 .msg 文件,这很清楚。但其余的不是很清楚。有人可以澄清或解释吗?
PS:我无法在该线程中发表评论,因此不得不提出新问题。
如何更改 WAVE 消息的长度。方法setWsmLength
不行。从这里的答案我认为这是不可能的,因为该功能未在 WAVE 中实现。但提供的答案非常模糊。它要求创建一个 .msg 文件,这很清楚。但其余的不是很清楚。有人可以澄清或解释吗?
PS:我无法在该线程中发表评论,因此不得不提出新问题。
WaveShortMessage
是一个OMNeT++
数据包,因此可以随时使用addByteLength()
来增加其现有大小或setByteLength()
设置其新大小,OMNeT++
手册中的描述。不需要定义新消息。
一个例子:
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);