我正在使用OMNET++ & VEINS模拟器来实现以下场景。
与执行有关的问题:
WaveShortMessage.msg文件?.cc、.h、.ned文件,或者我可以修改traci的例子(静脉)。发布于 2015-06-09 15:04:53
是否需要为上述每个阶段(用于RSU广播、车辆查询和车辆响应)定义一个新的.msg文件?还是我只需要修改WaveShortMessage.msg文件?
强烈建议您为特定应用程序创建通用消息类型。您可以扩展WaveShortMessage.msg,然后在消息中添加一个type字段,它表示应用程序的不同类型的消息:RSUbroadcast、VehicleQueryFrame等等。这个决定最终取决于你的选择。但是,尽可能地指定消息(将它们保持为特定任务的原子性)是很好的做法。
cplusplus {{
#include "veins/modules/heterogeneous/messages/WaveShortMessage_m.h" // include the base message
#define RSU_BROADCAST_FRAMETYPE 50
#define VEHICLE_QUERY_FRAMETYPE 51
}}
class WaveShortMessage; // Making the C++ Declarations Available
message MyAppGeneralMessage extends WaveShortMessage
{
int frameType;
}拥有不同的类型将允许您根据不同的消息类型控制应用程序的行为。
if(msg->getType() == foo)
{
/* do smth for foo */
}我是否需要为RSU和CAR定义我自己的.cc、.h、.ned文件,或者我可以修改traci的例子(静脉)。
总的来说,是的。您可能需要为application(s)定义.ned、.cc、.h,而不是重新定义RSU和汽车的真正含义。
如果你不愿意,你可以从寻找和演示文件和静脉中的例子开始。
https://stackoverflow.com/questions/30733460
复制相似问题