也许我错了,但我注意到函数getSenderPos()已从版本4.5中的WaveShortMessage移除/移动到BasicSafetyMessage
在4.4版本中 – 我使用getSenderPos()来计算2个节点之间的距离,但是想知道4.6版本的最佳方法是什么?
我应该在我的VEINS应用程序中重写为WSM交换编写的代码来进行BSM交换,还是我错过了什么?
谢谢您的帮助.
最佳答案 你是对的:与早期版本相比,Veins 4.6要求将更小的
set of fields从应用程序传递到MAC层.实现这组字段的基类型(有点令人困惑)称为WaveShortMessage.您可以根据需要继承基类型来扩展字段集,然后将收到的消息转换为onWSM方法中的类型.
为了快速实验,Veins附带的示例应用程序层BaseWaveApplLayer已经实现了模拟WSA和BSM的消息,但是很可能你想要使用全新类型的消息,所以我不建议建立这些类型的消息除了最简单的调查之外的任何事情(即使这样,也要检查你是否正确设置了消息长度等参数).